Frames Runtime HTML5
For Developers
What’s Needed Tools and Technologies
What’s Needed? JavaScript • •
JQuery JQuery UI - Widgets
Tooling •
•
HTML/CSS • • •
Twitter Bootstrap SASS Webfont (for icons)
Node JS • Grunt • Bower Browser - Developer Tools • Debug • Console • Network
Source Code Files and Structure
Source Code chart dialogs mode objects services utils widgets
Important: • application.js • core.js • validation.js • utils/format.js • objects/* • widgets/*
Core Objects
Source Code – Core Objects objects/ block.js canvas.js item.js paging.js task.js view.js
Source Code – Core Objects Window Control
View Widget
Canvas
Task
Bindable
Control Info
Item Instance
Record
Block Item Paging
Widgets
Source Code – Widgets widgets/ accordion.js button.js buttoninput.js checkbox.js collapsiblepanel.js combobox.js component.js datagrid.js datefield.js
editinput.js fileinput.js framepanel.js image.js listbox.js lovinput.js menu.js panel.js radiogroup.js repeater.js tabpanel.js
text.js textarea.js textfield.js textinput.js tree.js
Source Code – Widgets A Widget is: • JQuery UI Widget • Bindable • Multiple or Single Item/record • • •
Textbox is a single Item (binded to selected record) Repeater and Datagrid are multiple Item and records There are Items and Instances
Source Code – Widgets $.widget("namespace.widgetname", { options:{},
},
Frames.WidgetClass = $.inherit( Frames.Item, { input: function() { return this._call('input'); } };
input: function() {
Frames.regtype(”widgetname", Frames. WidgetClass);
_create: function() { this._inp = $('input', this.element);
return this._inp;
} });
Core
Source Code – Core core.js config.js (config.xml) locale.js logger.js
Application and Service
Source Code – Application and Service services/ msmvc.js service.js application.js
_commands_pre_viewready: function(task) _viewReady: function(task, view, status) _commands_post_viewready: function(task) _messages: function(task) execute: function( action, task, model, block, item, validation, kind, delay)
Focus and Navigation
Source Code – Focus and Navigation focus.js _itemUnknownNavigation: function(event) needsServer: function(curr, next) execute: function(item, next, action)
navigation.js
nextFocusKey: function (ev, item)
Format and Validation
Source Code – Format and Validation utils/ format.js format.number.js format.date.js validation.js
rules: function(item, frm, req) validate: function(item)
Other
Source Code - Charts chart/ barchart.js linechart.js piechart.js
Source Code - Dialogs dialog/ edit.js lov.js
Source Code - Modes modes/ base.js edit.js new.js read.js search.js
Frames.Modes.NAME = $.inherit( Frames.Modes.BaseMode, { __constructor: function(item) { this.item = item; }, enter: function() { // store current properties // change something }, leave: function() { // restore properties } }); Frames.Modes.regtype(”", Frames.Modes.NAME);
Message
Message - Control
Message – Window Control
Message – Block Control
Message – Commands 543f689a-d47b-4859-a711-da59893be9ff /net/hedtech/.../Ppaiden/views/ViewMainWindow G$_IDEN_TAB_CANVAS
Message – Messages