Book Image

Mastering Ext JS

By : Loiane Groner
Book Image

Mastering Ext JS

By: Loiane Groner

Overview of this book

<p>Ext JS 4 is a JavaScript framework that provides you with the resources to build multi-browser, high-performance, and rich Internet applications.<br /><br />Mastering Ext JS is a practical, hands-on guide that will teach you how to develop a complete application with Ext JS. You’ll begin by learning how to create the project’s structure and login screen before mastering advanced level features such as dynamic menus and master-detail grids, before finally preparing the application for production.<br /><br />Mastering Ext JS will help you to utilize Ext JS to its full potential and will show you how to create a complete Ext JS application from the scratch, as well as explaining how to create a Wordpress theme.</p> <p><br />You will learn how to create user and group security, master-detail grids and forms, charts, trees, and how to export data to excel including PDF and images, always focusing on best practices.</p> <p><br />You will also learn how to customize themes and how to prepare the application to be ready for deployment upon completion. Each chapter of the book is focused on one task and helps you understand and master an individual aspect of the application.</p> <p><br />By the end of the book, you will have learned everything you need to know to truly master Ext JS and to start building advanced applications.</p>
Table of Contents (20 chapters)
Mastering Ext JS
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
Index

Creating the inbox – list of e-mails


Before we get started, let's take a look at a screenshot of the final result we will have once we finish this chapter:

The e-mail client module is composed of four major pieces: the Mail menu, the Inbox (which is the list of e-mails), the preview mail panel and the New Message window. The first thing we are going to implement is Inbox, which is a Grid panel with some enhancements. So, following our development workflow, we will first create the model, then the store, then the view, and finally, the controller to listen to the events for which we are interested in taking some action.

The mail message model

So first, we need to create a model to represent an e-mail message that is going to be displayed on the Grid panel. We will create a new model class named Packt.model.mail.MailMessage:

Ext.define('Packt.model.mail.MailMessage', {
    extend: 'Ext.data.Model',
    fields: [
        { name: 'importance' },
        { name: 'icon'  },
        { name: 'attachment...