Part I. Developer's Guide

Table of Contents

1. Introduction
Overview
Goals and Philosophy
Background
Changes in IT Mill Toolkit Release 5
Example Application Walkthrough
Hello World!
Calculator
What's Inside the IT Mill Toolkit Package?
Installing
Package Contents
Starting the Content Browser
Running the Demo Applications
Getting Development Environment Up and Running
Installing Java SDK
Installing Eclipse IDE
Installing Apache Tomcat
Firefox and Firebug
QuickStart with Eclipse
Importing IT Mill Toolkit as a Project
How to Run the Demo Applications in Eclipse?
How to Debug the Demo Applications in Eclipse?
Using QuickStart as a Project Skeleton
Your First Project with IT Mill Toolkit
Creating the Project
Including IT Mill Toolkit Libraries
Writing the Code
Defining Deployment Descriptor
Ready to Go!
Starting the Web Server
Running and Debugging
2. Architecture
Overview
Technological Background
AJAX
Google Web Toolkit
JSON
Client-Side Engine
Events and Listeners
3. Writing a Web Application
Overview
Managing the Main Window
Child Windows
Opening and Closing a Child Window
Window Positioning
Modal Windows
Application-Level Windows
Creating New Application-Level Windows
Creating Windows Dynamically
Caveats in Using Multiple Windows
Referencing Resources
Resource Interfaces and Classes
File Resources
Class Loader Resources
Theme Resources
Stream Resources
Error Handling
Error Indicator
Application Environment
Creating Deployable WAR in Eclipse
Web Application Contents
Deployment Descriptor web.xml
Embedding Applications in Web Pages
Embedding Inside a <div> Element
Embedding Inside an <iframe> Element
4. User Interface Components
Overview
Label
Link
TextField
DateField
Calendar
Button
Check Box
Selecting Items
Basic Select Component
Native Selection Component NativeSelect
Radio Button and Check Box Groups with OptionGroup
Twin Column Selection with TwinColSelect
Allowing Adding New Items
Multiple Selection Mode
Table
Scrollable Tables
Paging Tables
List Tables
Tree
Embedded
Upload
Progress Indicator
Doing Heavy Computation
Custom Composite Components
CustomComponent
Common Component Features
Sizing Components Through Sizeable
5. Managing Layout
Background for Layout
Layout Components
Ordered Layout
Grid layout
Panel
Tab Sheet
Expanding Layout
Controlling Layout Formatting
Layout Cell Alignment
Layout Cell Spacing
Layout Margins
Custom Layouts
6. Themes
Overview
Introduction to Cascading Style Sheets
Basic CSS Rules
Matching by Element Class
Matching by Descendant Relationship
Notes on Compatibility
Creating and Using Themes
Styling Standard Components
Using Themes
Theme Inheritance
7. Data Model
Overview
Properties
Holding properties in Items
Collecting items in Containers
8. Developing Custom Components
Overview
Google Web Toolkit Widgets
Extending an IT Mill Toolkit Widget
Example: A Color Picker GWT Widget
Styling GWT Widgets
Integrating a GWT Widget
Deserialization of Component State from Server
Serialization of Component State to Server
Example: Integrating the Color Picker Widget
Defining a Widget Set
GWT Module Descriptor
Server-Side Components
Server-Client Serialization
Client-Server Deserialization
Extending Standard Components
Example: Color Picker Server-Side Component
Using a Custom Component
Example: Color Picker Application
Web Application Deployment
GWT Widget Development
Creating a Widget Project in Eclipse
Importing GWT Installation Package
Creating a GWT Module
Compiling GWT Widget Sets
Ready to Run
Hosted Mode Browser
9. Advanced Web Application Topics
Special Characteristics of AJAX Applications
Resources
URI Handlers
Parameter Handlers
Java Servlet Parameters
Shortcut Keys
10. User Interface Definition Language (UIDL)
API for Painting Components
JSON Rendering
UIDL Syntax
Bibliography