CallBackery
view release on metacpan or search on metacpan
CallBackery
===========

[](https://coveralls.io/github/oetiker/callbackery?branch=master)
CallBackery is a perl library for writing CRUD style single page web
applications with a desktopish look and feel. For many applications, all
you have todo is write a few lines of perl code and all the rest is taken
care of by CallBackery.
To get you started, have a look at the CallBackery sample application. It is contained
in the Mojolicious::Command::Author::generate::automake_app package.
Quickstart
----------
Follow the instructions in <https://github.com/oposs/mojolicious-automake>
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/Application.js view on Meta::CPAN
qx.log.appender.Native;
// support additional cross-browser console. Press F7 to toggle visibility
qx.log.appender.Console;
}
var rpc = callbackery.data.Server.getInstance();
var root = this.getRoot();
root.set({
blockerColor : '#fff',
blockerOpacity : 0.7
});
var desktopContainer = new qx.ui.container.Composite(new qx.ui.layout.VBox(0));
root.add(desktopContainer,{top: 0, left: 0, right: 0, bottom: 0});
/* give the History object a more relaxed attitude towards encoding stuff */
qx.Class.patch(qx.bom.History,callbackery.data.MHistoryRelaxedEncoding);
qx.bom.History.getInstance().addListener('changeState', this.__changeLanguage, this);
this.__changeLanguage();
rpc.callAsyncSmart(function(baseCfg){
var cfg = callbackery.data.Config.getInstance();
cfg.setBaseConfig(baseCfg);
if (baseCfg.TRANSLATIONS){
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/Application.js view on Meta::CPAN
colors: baseCfg.COLORS
});
var colorTheme = qx.theme.manager.Color.getInstance().getTheme();
qx.Theme.patch(colorTheme,callbackery.theme.CustomColor);
// reset/set theme to get the changes visible in to ui
qx.theme.manager.Color.getInstance().resetTheme();
qx.theme.manager.Color.getInstance().setTheme(colorTheme);
}
rpc.callAsyncSmart(function(userCfg){
cfg.setUserConfig(userCfg);
desktopContainer.add(callbackery.ui.Desktop.getInstance(),{flex: 1});
}, 'getUserConfig',{urlConfig: cfg.getUrlConfig()});
}, 'getBaseConfig');
},
registerPlugin: function(type, func) {
return callbackery.ui.Plugins.getInstance().register(type, func);
},
__changeLanguage: function() {
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/ui/Desktop.js view on Meta::CPAN
/* ************************************************************************
Copyright: 2011 OETIKER+PARTNER AG
License: GPLv3 or later
Authors: Tobi Oetiker <tobi@oetiker.ch>
Utf8Check: äöü
************************************************************************ */
/**
* Build the desktop. This is a singleton. So that the desktop
* object and with it the treeView and the searchView are universaly accessible
*/
qx.Class.define("callbackery.ui.Desktop", {
extend : qx.ui.container.Composite,
type : 'singleton',
construct : function() {
this.base(arguments,new qx.ui.layout.VBox());
this.set({
padding: [5,10,0,10],
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/ui/Footer.js view on Meta::CPAN
/* ************************************************************************
Copyright: 2011 OETIKER+PARTNER AG
License: GPLv3 or later
Authors: Tobi Oetiker <tobi@oetiker.ch>
Utf8Check: äöü
************************************************************************ */
/**
* Build the desktop. This is a singleton. So that the desktop
* object and with it the treeView and the searchView are universaly accessible
*/
qx.Class.define("callbackery.ui.Footer", {
extend : qx.ui.container.Composite,
type : 'singleton',
construct : function() {
this.base(arguments,new qx.ui.layout.HBox().set({
alignX: 'right'
}));
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/ui/Header.js view on Meta::CPAN
/* ************************************************************************
Copyright: 2011 OETIKER+PARTNER AG
License: GPLv3 or later
Authors: Tobi Oetiker <tobi@oetiker.ch>
Utf8Check: äöü
************************************************************************ */
/**
* Build the desktop. This is a singleton. So that the desktop
* object and with it the treeView and the searchView are universaly accessible
*/
qx.Class.define("callbackery.ui.Header", {
extend : qx.ui.container.Composite,
type : 'singleton',
construct : function() {
this.base(arguments, new qx.ui.layout.HBox());
var cfg = callbackery.data.Config.getInstance().getBaseConfig();
if (cfg.title){
lib/CallBackery/qooxdoo/callbackery/source/class/callbackery/ui/TabView.js view on Meta::CPAN
/* ************************************************************************
Copyright: 2011 OETIKER+PARTNER AG
License: GPLv3 or later
Authors: Tobi Oetiker <tobi@oetiker.ch>
Utf8Check: äöü
************************************************************************ */
/**
* Build the desktop. This is a singleton
*/
qx.Class.define("callbackery.ui.TabView", {
extend : qx.ui.tabview.TabView,
type : 'singleton',
construct : function() {
this.base(arguments);
var cfg = callbackery.data.Config.getInstance();
var baseCfg = cfg.getBaseConfig();
var userCfg = cfg.getUserConfig();
( run in 0.401 second using v1.01-cache-2.11-cpan-299005ec8e3 )