Ext GWT 2.0: Beginner's Guide

Take the user experience of your website to a new level with Ext GWT using this book and eBook

Ext GWT 2.0: Beginner's Guide

Beginner's Guide
Daniel Vaughan

Take the user experience of your website to a new level with Ext GWT using this book and eBook
$10.00
$39.99
RRP $23.99
RRP $39.99
eBook
Print + eBook
$12.99 p/month

Get Access

Get Unlimited Access to every Packt eBook and Video course

Enjoy full and instant access to over 3000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

+ Collection
Free Sample

Book Details

ISBN 139781849511841
Paperback320 pages

About This Book

  • Explore the full range of features of the Ext GWT library through practical, step-by-step examples
  • Discover how to combine simple building blocks into powerful components
  • Create powerful Rich Internet Applications with features normally only found in desktop applications
  • Learn how to structure applications using MVC for maximum reliability and maintainability

Who This Book Is For

If you are a Java developer aspiring to build intuitive web applications with Ext GWT, then this book is for you. It assumes that you are familiar with HTML and CSS. Developers who wish to add an RIA look to their existing GWT applications with Ext GWT will find this book extremely useful.

Table of Contents

Chapter 1: Getting Started with Ext GWT
What is GWT missing?
What does Ext GWT offer?
How is Ext GWT licensed?
Alternatives to Ext GWT
Ext GWT or GXT?
Working with GXT: A different type of web development
How GXT fits into GWT
Downloading what you need
Eclipse setup
GWT setup
Time for action – setting up GWT
GXT setup
Time for action – setting up GXT
GWT project creation
Time for action – creating a GWT project
GXT project configuration
Time for action – preparing the project to use GXT
Differences of GXT controls
Time for action – adapting the GWT app to use GXT controls
Summary
Chapter 2: The Building Blocks
The Ext GWT Explorer Demo
Essential knowledge
GXT building block 1: Component
GXT building block 2: Container
GXT building block 3: Events
Introducing the example application
Blank project
Time for action – creating a blank project
Viewport
Time for action – adding a Viewport
Layout
BorderLayoutData
Time for action – using BorderLayout
Loading message
Time for action – adding a loading message
Custom components
Time for action – creating custom components
First field components
Button
Creating a Link feed button
Time for action – adding a button
Tooltip
Time for action – adding a tooltip
Popup
Time for action – creating a popup
SelectionListener
Time for action – adding a SelectionListener
Field
TextField
Time for action – adding components to the Link feed popup
Popup positioning and alignment
Time for action – positioning the popup
Summary
Chapter 3: Forms and Windows
Change of requirements
FormPanel
Fields
Expanding the example application
Creating a Create feed button
Time for action – adding a Create feed button
Creating a Feed class
Time for action – creating a feed data object
Window
FitLayout
Creating the FeedWindow component
Time for action – creating a Window
Creating FeedForm
Time for action – creating a feed form
Validating fields
Time for action – adding field validation
Using FieldMessages
Time for action – adding FieldMessages to the fields
Submitting a form using HTTP
Alternative to submitting a form using HTTP
Creating a Feed service
Time for action – creating service for feed objects
The Registry
Storing the service in the Registry
Time for action – using the Feed object
Saving a Feed
Time for action – saving an object to the registry
Creating RSS XML
Time for action – saving a Feed
Time for action – adding to the LinkFeedPopup
Summary
Chapter 4: Data-backed Components
Working with data
ModelData interface
BeanModel class
Time for action – creating a BeanModelMarker for Feed objects
Stores
Time for action – creating and populating a ListStore
Data-backed ComboBox
Data-backed ListField
Time for action – creating a ListField for feeds
Server-side persistence
Time for action – persisting a link to an existing feed
Time for action – persisting a feed as an XML document
Server-side retrieval
Time for action – loading feeds
Using remote data
LoadConfig
How they fit together
Time for action – using remote data with a ListField
Grid
ColumnConfig
Grid Example
Time for action – creating the ItemGrid
GridCellRenderer
Time for action – using a GridCellRenderer
Summary
Chapter 5: More Components
Trees
Time for action – creating a BaseTreeModel
Time for action – providing categorized items
Time for action – using an ImageBundle
Time for action – replacing the Feed List with a Feed Tree
Advanced grid features
Time for action – providing paged data
Time for action – creating a paging grid
Menus and toolbars
Time for action – adding a toolbar
TabPanel class
TabItem class
Time for action – adding a Status component
Summary
Chapter 6: Templates
Time for action – adding to the Feed and Item
Template class
Time for action – creating the ItemPanel
Time for action – using a Template with a ListField
XTemplate class
The RowExpander class
Time for action – using a RowExpander
The ListView class
Time for action – creating a Feed overview ListView
The ModelProcessor class
Time for action – pre-processing model data
Item selectors
Time for action – making ListView items selectable
CheckBoxListView
Summary
Chapter 7: Model View Controller
The need for good application structure
The classic Model View Controller pattern
The GXT Model View Controller
The AppEvent class
The EventType class
Time for action – defining application events
Controller class
Time for action – creating a controller
Time for action – handling events
The View class
Time for action – creating a View
Dispatcher
Incorporating MVC
Time for action – registering a Controller with the Dispatcher
Time for action – refactoring UI setup
Time for action – creating the navigation Controller and View
Time for action – creating the FeedPanel Controller and View
Allowing viewing of multiple feeds
Time for action – adding tabs
Wiring it together
Time for action – responding to selections
Keeping things in sync
Time for action – responding to a Feed being added
Time for action – creating a status toolbar Controller and View
Summary
Chapter 8: Portal and Drag-and-Drop
Portlet class
The Portal class
ToolButton
Time for action – creating a Portal Controller and a Portlet View
Time for action – creating the Navigation Portlet
Time for action – creating more portlets
Drag-and-drop
Using drag-and-drop
Time for action – dragging and dropping of feeds
Time for action – dragging and dropping items
Summary
Chapter 9: Charts
Time for action – including the chart module
Time for action – including the chart resources
Time for action – loading the chart JavaScript library
Chart class
Time for action – creating a chart Portlet
ChartModel class
ChartConfig class
BarChart class
PieChart class
PieChart.Slice class
LineChart class
AreaChart class
ScatterChart class
StackedBarChart class
Using a PieChart
Time for action – creating PieChart data
Summary
Chapter 10: Putting It All Together
Using Google App Engine
Time for action – registering a Google App Engine application
Time for action – getting the application ready for GAE
Time for action – using the Google App Engine data store
Time for action – publishing the example application
Google Chrome
Time for action – creating a Google Chrome application shortcut
Gears
Mobile applications
The future for GXT
Getting more information
Summary

What You Will Learn

  • Get a development environment up and running quickly
  • Understand the working of Ext GWT and avoid common pitfalls
  • Make web applications behave like desktop applications by using the many UI widgets of Ext GWT
  • Design powerful, flexible forms to capture data
  • Easily load and manipulate data in the browser from multiple sources
  • Present information elegantly using templates
  • Structure larger applications using the Model-View-Controller pattern to ensure that different components are independent of each other
  • Create intuitive interfaces using drag and drop: a feature usually found only in desktop applications
  • Display plenty of information in a very simple way with the wide range of charts available in EXT GWT
  • Deploy applications to the world using Google App Engine

 

In Detail

Ext GWT, also known as GXT, takes Google Web Toolkit one step further by providing a wide range of powerful user interface components. It allows a developer to create powerful web applications that are almost like desktop applications. However to leverage all the features of this powerful Java library for creating desktop-style web applications, you need to learn how and when to use the right user interface component.

Ext GWT 2.0: Beginner's Guide is a practical book that teaches you how to use the EXT GWT library to its full potential. It provides a thorough and no-nonsense explanation of the Ext GWT library, what it offers and how to use it through practical examples. This book provides clear, step-by-step instructions for getting the most out of Ext GWT and offers practical examples and techniques that can be used for building your own applications in EXT GWT

This book gets you up and running instantly to build powerful Rich Internet Applications (RIA) with Ext GWT. It then takes you through all the interface-building widgets and components of Ext GWT using practical examples to demonstrate when, where, and how to use each of them. Layouts, forms, panels, grids, trees, toolbars, menus, and many other components are covered in the many examples packed in this book. You will also learn to present your data in a better way with templates and use some of the most sought-after features of Ext GWT in your web applications such as drag-and-drop and charts. Throughout the book a real application is built step by step using Ext GWT and deployed to Google App Engine.

Imagine how great you'll feel when you're able to create great-looking desktop-style user interfaces for your web applications with Ext GWT!

Authors

Table of Contents

Chapter 1: Getting Started with Ext GWT
What is GWT missing?
What does Ext GWT offer?
How is Ext GWT licensed?
Alternatives to Ext GWT
Ext GWT or GXT?
Working with GXT: A different type of web development
How GXT fits into GWT
Downloading what you need
Eclipse setup
GWT setup
Time for action – setting up GWT
GXT setup
Time for action – setting up GXT
GWT project creation
Time for action – creating a GWT project
GXT project configuration
Time for action – preparing the project to use GXT
Differences of GXT controls
Time for action – adapting the GWT app to use GXT controls
Summary
Chapter 2: The Building Blocks
The Ext GWT Explorer Demo
Essential knowledge
GXT building block 1: Component
GXT building block 2: Container
GXT building block 3: Events
Introducing the example application
Blank project
Time for action – creating a blank project
Viewport
Time for action – adding a Viewport
Layout
BorderLayoutData
Time for action – using BorderLayout
Loading message
Time for action – adding a loading message
Custom components
Time for action – creating custom components
First field components
Button
Creating a Link feed button
Time for action – adding a button
Tooltip
Time for action – adding a tooltip
Popup
Time for action – creating a popup
SelectionListener
Time for action – adding a SelectionListener
Field
TextField
Time for action – adding components to the Link feed popup
Popup positioning and alignment
Time for action – positioning the popup
Summary
Chapter 3: Forms and Windows
Change of requirements
FormPanel
Fields
Expanding the example application
Creating a Create feed button
Time for action – adding a Create feed button
Creating a Feed class
Time for action – creating a feed data object
Window
FitLayout
Creating the FeedWindow component
Time for action – creating a Window
Creating FeedForm
Time for action – creating a feed form
Validating fields
Time for action – adding field validation
Using FieldMessages
Time for action – adding FieldMessages to the fields
Submitting a form using HTTP
Alternative to submitting a form using HTTP
Creating a Feed service
Time for action – creating service for feed objects
The Registry
Storing the service in the Registry
Time for action – using the Feed object
Saving a Feed
Time for action – saving an object to the registry
Creating RSS XML
Time for action – saving a Feed
Time for action – adding to the LinkFeedPopup
Summary
Chapter 4: Data-backed Components
Working with data
ModelData interface
BeanModel class
Time for action – creating a BeanModelMarker for Feed objects
Stores
Time for action – creating and populating a ListStore
Data-backed ComboBox
Data-backed ListField
Time for action – creating a ListField for feeds
Server-side persistence
Time for action – persisting a link to an existing feed
Time for action – persisting a feed as an XML document
Server-side retrieval
Time for action – loading feeds
Using remote data
LoadConfig
How they fit together
Time for action – using remote data with a ListField
Grid
ColumnConfig
Grid Example
Time for action – creating the ItemGrid
GridCellRenderer
Time for action – using a GridCellRenderer
Summary
Chapter 5: More Components
Trees
Time for action – creating a BaseTreeModel
Time for action – providing categorized items
Time for action – using an ImageBundle
Time for action – replacing the Feed List with a Feed Tree
Advanced grid features
Time for action – providing paged data
Time for action – creating a paging grid
Menus and toolbars
Time for action – adding a toolbar
TabPanel class
TabItem class
Time for action – adding a Status component
Summary
Chapter 6: Templates
Time for action – adding to the Feed and Item
Template class
Time for action – creating the ItemPanel
Time for action – using a Template with a ListField
XTemplate class
The RowExpander class
Time for action – using a RowExpander
The ListView class
Time for action – creating a Feed overview ListView
The ModelProcessor class
Time for action – pre-processing model data
Item selectors
Time for action – making ListView items selectable
CheckBoxListView
Summary
Chapter 7: Model View Controller
The need for good application structure
The classic Model View Controller pattern
The GXT Model View Controller
The AppEvent class
The EventType class
Time for action – defining application events
Controller class
Time for action – creating a controller
Time for action – handling events
The View class
Time for action – creating a View
Dispatcher
Incorporating MVC
Time for action – registering a Controller with the Dispatcher
Time for action – refactoring UI setup
Time for action – creating the navigation Controller and View
Time for action – creating the FeedPanel Controller and View
Allowing viewing of multiple feeds
Time for action – adding tabs
Wiring it together
Time for action – responding to selections
Keeping things in sync
Time for action – responding to a Feed being added
Time for action – creating a status toolbar Controller and View
Summary
Chapter 8: Portal and Drag-and-Drop
Portlet class
The Portal class
ToolButton
Time for action – creating a Portal Controller and a Portlet View
Time for action – creating the Navigation Portlet
Time for action – creating more portlets
Drag-and-drop
Using drag-and-drop
Time for action – dragging and dropping of feeds
Time for action – dragging and dropping items
Summary
Chapter 9: Charts
Time for action – including the chart module
Time for action – including the chart resources
Time for action – loading the chart JavaScript library
Chart class
Time for action – creating a chart Portlet
ChartModel class
ChartConfig class
BarChart class
PieChart class
PieChart.Slice class
LineChart class
AreaChart class
ScatterChart class
StackedBarChart class
Using a PieChart
Time for action – creating PieChart data
Summary
Chapter 10: Putting It All Together
Using Google App Engine
Time for action – registering a Google App Engine application
Time for action – getting the application ready for GAE
Time for action – using the Google App Engine data store
Time for action – publishing the example application
Google Chrome
Time for action – creating a Google Chrome application shortcut
Gears
Mobile applications
The future for GXT
Getting more information
Summary

Book Details

ISBN 139781849511841
Paperback320 pages
Read More