Learning DHTMLX Suite UI - Eli Geske - E-Book

Learning DHTMLX Suite UI E-Book

Eli Geske

0,0
23,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

JavaScript applications provide an excellent user experience for small to large scale enterprise applications. The amazing growth of JavaScript has opened the door for many great libraries such as DHTMLX.

"Learning DHTMLX Suite UI" will teach you how to use these libraries effectively so you can make presentations that will take your employer's/ client's breath away!

"Learning DHTMLX Suite UI" is a step-by-step guide that will teach you the basics of DHTMLX library components and how to apply them in a real-world scenario. This book will start with the installation of DHTMLX before moving on to explore the features of DHTMLX and helping you to create your first user management application.

"Learning DHTMLX Suite UI" will guide you through the installation of DHTMLX as a single-page application. As you progress from one chapter to the next, you will gradually build a simple user management application. You will also learn how to create forums with validation and how to use grids to add and edit users. The book will also suggest the best practices for using toolbars and refreshing data. With "Learning DHTMLX Suite UI Guide", you will be inspired to come up with your own great ideas for your future application development projects.

Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:

EPUB
MOBI

Seitenzahl: 120

Veröffentlichungsjahr: 2013

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Table of Contents

Learning DHTMLX Suite UI
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. User Management Web App
About DHTMLX
DHTMLX and other component libraries
The components
What will we be building?
Summary
2. Download, Setup, and Test
Installing a web server
Creating the application directory structure
Downloading the DHTMLX library
Creating the application file app.js
The data storage file
Creating the index.html file
Testing the DHTMLX installation
Summary
3. Data Structures, Storage, and Callbacks
localStorage
Creating the storage object
The storage methods and properties
lastStoredId
setDateFormat
The user methods
The user model
createUser
The user parameter
getUser
updateUser
removeUser
The grid methods
The grid JSON data structure
gridRow
getUserGrid
The chart methods
barChartItem
createUserBarChart
The storage object
The callbacks object
Summary
4. The DHTMLX Layout
The DHTMLX layout
The methods and events
Initialization
Methods
Cell sizing
setHeight
setWidth
fixSize
Cell header
showHeader and hideHeader
setText
progressOn and progressOff
Overview of methods
Layout events
attachEvent and detachEvent
dhtmlxEvent
The application code
Create the layout
Summary
5. The DHTMLX Toolbar
The DHTMLX toolbar
The methods and events
Initialization choices
Initialization on a DOM element
Initialization on a layout object
Initialization on a cell object
Toolbar items
addButton
addButtonTwoState
getItemState
addSeparator
addText
addButtonSelect
getListOptionSelected
addSpacer
removeSpacer
addSlider
addInput
getValue
hideItem and showItem
removeItem
Toolbar events
onClick
onValueChange
onStateChange
onEnter
The application code
Creating the toolbar
Summary
6. The DHTMLX Grid
The DHTMLX grid
The grid methods and events
Initialization choices
Initialization on a DOM element
Initialization on a cell object
Grid methods
attachGrid
setImagePath
setHeader
setInitWidths
setColAlign
init
addRow
setColTypes
getSelectedRowId
clearSelection
clearAll
parse
Grid events
onRowDblClicked
onRowSelect
The application code
Create the grid
callbacks.setToolbarItemStates
callbacks.removeClick
callbacks.refreshGrid
callbacks.dataChanged
Testing the grid
Creating a user
Removing a user
Summary
7. The DHTMLX Window
The DHTMLX window
The methods and events
Initialization
Creating the base object
Create windows through methods
Methods
createWindow (base object method)
setDimension
denyResize
centerOnScreen
setModal
hide
show
setText
hideHeader
showHeader
Events
onClose
The application code
Creating the pop-up window
callbacks
showPopup
hidePopup
addClick
Test our popup
Summary
8. The DHTMLX Form and Calendar
The DHTMLX form
Initialization of the DHTMLX form
attachForm
Form items and attributes
settings
input
hidden
checkbox
calendar
select
button
block
newcolumn
Form methods
setItemFocus()
validate()
clear()
enableLiveValidation()
setFormData()
getFormData()
The application code
app.js
callbacks
showPopup()
hidePopup()
editClick()
Edit the CSS form
index.html
Test the application form
Summary
9. The DHTMLX Chart
The methods and events
Initialization of the DHTMLX chart
dhtmlXChart()
addChart()
Methods
refresh()
add()
define()
Define a series
Define chart type
addSeries()
idByIndex()
get()
Events
onItemClick
The application code
Creating the chart
callbacks.refreshChart()
callbacks.dataChanged()
Test the application
Summary
10. The Finish Line
Testing
Troubleshooting
More features
Server side
Adding icons
Event tweaks
Chart ideas
Summary
Index

Learning DHTMLX Suite UI

Learning DHTMLX Suite UI

Copyright © 2013 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: October 2013

Production Reference: 1221013

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-84969-933-4

www.packtpub.com

Cover Image by Eli Geske (<[email protected]>)

Credits

Author

Eli Geske

Reviewers

Asen Bozhilov

Ali Farhadi

Ed Wildgoose

Acquisition Editor

Kartikey Pandey

Julian Ursell

Commissioning Editor

Govindan K

Technical Editors

Dipika Gaonkar

Mrunmayee Patil

Project Coordinator

Amey Sawant

Proofreader

Lauren Harkins

Indexer

Hemangini Bari

Graphics

Ronak Dhruv

Production Coordinator

Kyle Albuquerque

Cover Work

Kyle Albuquerque

About the Author

Eli Geske is an entrepreneurial graphics designer turned programmer. He has been involved in web applications from creating and enhancing online gaming communities, to building applications that improve company's efficiency. He has also invented products, put in for patents, and pushed them to market. His programming skills range from JavaScript, PHP, and C# which he uses in the medical industry, payment processing industry, and on custom order management sites. He also has a degree in computer science, focusing on networking and web server administration.

His knowledge of DHTMLX springs from his daily engagements in a current large scale medical application.

Some other of Eli's writings and public offerings can be viewed on his blog www.eligeske.com or on eligeske.github.com.

Throughout the past couple of years, my daily involvement with the DHTMLX components Suite has included working with a wonderful development team locally and abroad. These people have given me the ability to expand my knowledge and learn new things. I'd like 
to send out thanks to Igor Lopez, Bruno Spinelli, Tengiz Tutisani, Jaya Uradhanda, Sergey Bilida, Dmitry Shumarov, and Sergio Reyes who are a part of that great team! I would also like to thank, 
Roberto and Victor Beraja, whose visions have stretched the DHTMLX library to its limits on more than one occasion. Cheers!

About the Reviewers

Asen Bozhilov is web developer with years of experience in web technologies. Currently, he is working on XULRunner applications using JavaScript and XUL. He has a bachelor's degree in computer science. In his spare time, he likes to experiment with new technologies and programming languages. His interests are mostly in the computer sciences, but he also enjoys sport activities.

He has reviewed other JavaScript books, such as Maintainable JavaScript, JavaScript Patterns, and JavaScript for PHP developers.

Ali Farhadi is a senior web developer and system administrator living in Mashhad, Iran. He is passionate about working on open source technology and has contributed to the major php frameworks, CakePHP, and Lithium.

He is also one of the pioneers in the Persian node.js community and has contributed to the core project since 2009. He has also authored a few open source projects notably the HTML5Sortable jQuery plugin and SMPP module for node.js.

You can read more about him and his works at his website http://farhadi.ir.

Ed Wildgoose grew up in the time when a ZX81 was cutting edge and spent his formative years slaving away in the finance world, before deciding that the way ahead was to start slaving away for even longer hours and less money as his own boss. He enjoys learning about the art of IT for its own sake and has played with most common (and uncommon) programming languages and tools over the years (Did anyone else enjoy using Haskell in the early 90s?). He has developed projects on Mac, Windows, and Linux over past years, but most currently favors Linux for backend servers and Mac on the desktop.

He currently owns MailASail (http://mailasail.com), a boutique, which supplies services for users with satellite phones and roaming cellular devices. MailASail is a leading supplier of satellite hardware and airtime, but specialize in offering in-house solutions, which optimize TCP data over the expensive satellite links, that is, you can grab your iPhone and read your email from the middle of an ocean, desert, or glacier, for a very affordable cost! Their customers range from BBC nature documentary creators through to ocean rowers.

I would like to thank my wife Sue, and, my children, Katie and 
Luke, for putting up without their father while he spent far too 
long working.

www.PacktPub.com

Support files, eBooks, discount offers, and more

You might want to visit www.PacktPub.com for support files and downloads related to your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com, and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at <[email protected]> for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books.

Why Subscribe?

Fully searchable across every book published by PacktCopy and paste, print and bookmark contentOn demand and accessible via web browser

Free Access for Packt account holders

If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.

Preface

The DHTMLX components library is fast, fun, and exciting! If you are looking to build a user friendly, highly interactive web application, then DHTMLX is one of the best choices in the market today.

DHTMLX provides great individual components from grids, charts, forms, layouts, toolbars, and more that can all be used together or individually. Each of the components has great online documentation with many samples.

When starting to use new tools for programming, there is always a learning curve on how to use the documentation and where to start. This book aims to speed up your knowledge and shorten that learning curve exponentially! Welcome to the wonderful world of client-side programming!

What this book covers

Chapter 1, User Management Web App, provides a more in-depth look into why we chose DHTMLX over other libraries and explains exactly what we will be building.

Chapter 2, Download, Setup, and Test, covers how to get going with the DHTMLX library and where to put the downloaded files. It also touches on Chrome's developer tools.

Chapter 3, Data Structures, Storage, and Callbacks, jumps into the application code and creating our storage and callback methods. It also gives a crash course in HTML5 and local storage.

Chapter 4, The DHTMLX Layout, shows how to create a layout and its different initializations and then attach one to the application.

Chapter 5, The DHTMLX Toolbar, is all about the toolbar and how to create, disable, and listen to when they are clicked.

Chapter 6, The DHTMLX Grid, goes in-depth into the grid component and its methods and events, and then coding a grid to the application.

Chapter 7, The DHTMLX Window, goes in-depth into creating a pop-up window with the window component.

Chapter 8, The DHTMLX Form and Calendar, covers the form component and its different validation types and items, including a calendar or date picker.

Chapter 9, The DHTMLX Chart, covers the chart component showing different chart types, adding multiple data series, and manipulating the look and feel.

Chapter 10, The Finish Line, goes over the entire application, and discusses some common troubleshooting and how to enhance the application further on your own.

What you need for this book

HTML, CSS, and JavaScript knowledge is assumed, as this book will be using these three fields. The goal of this book is to show us how DHMTLX's components work. Therefore, we will not be focusing on structure of code or advanced JavaScript objects and in-depth explanations.

JSON and HTML5 will be used for data storage locally, as to not involve the server-side database. If you are not an expert on any of these, don't fret. Throughout the book, if you have any issues or don't understand something, go do a little studying and come back. This will not be hard; I promise.

A web server is needed. Unlike normal HTML files with inline JavaScript, DHTMLX should be run on a web server. There are many web server options out there for you to install. If using Mac, there is a built-in web server, or, if using Windows, you can use options such as WAMP. These are both extremely easy to set up. It is not in the scope of this book to go into installation of these.

A code editor and web browser with development tools is needed. You will need some type of code editor and a web browser with developer tools to debug our JavaScript. Since you may either be using a Mac or Windows, let's use Notepad++ as our editor and Google Chrome for our web browser and tools. This will make it easier to follow. But if you are set in your tools already and comfortable with them, please use those instead.

Who this book is for

This book targets anyone looking to build good looking web apps quickly, easily, and cleanly, with minimal cross-browser compatibility maintenance. The code you will write will be simple and not too advanced. If you are an expert backend developer, you will find better and more efficient ways to implement the application. For those of you who are not advanced developers, the code is clean and efficient enough to run this application without any issues at all in a production environment.