Portál AbcLinuxu, 29. května 2024 08:07


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
8.8.2010 11:16 __dark__
Rozbalit Rozbalit vše Re: qooxdoo 1.2 - nová verze Ajax frameworku
Odpovědět | Sbalit | Link | Blokovat | Admin
Tento framework má jedinou nevýhodu - velikost a rychlost. I tak se mi ale zdá, že to je jeden z nejlepších.
8.8.2010 11:27 chrono
Rozbalit Rozbalit vše Re: qooxdoo 1.2 - nová verze Ajax frameworku
Podľa mňa má hnusný štandardný vzhľad a aj programovanie s použitím toho frameworku je zvláštne. Vzhľad sa upraviť dá, ale so spôsobom programovania sa asi nič špeciálne urobiť nedá (v tomto smere je Ext JS úplne inde, ale tam sa zase diali zvláštne veci s licenciou).
8.8.2010 19:57 __dark__
Rozbalit Rozbalit vše Re: qooxdoo 1.2 - nová verze Ajax frameworku
V čem konkrétně je programovací model zvláštní? Qooxdoo je pro vývoj webových aplikací, pro obyčejné html stránky se nehodí.

BTW: Vzhled se mi taky nelíbil, tak jsem vytvořil QxET, ale ten se taky jistě nebude líbit každému.

Mimochodem, když tu byla zprávička o nové verzi qooxdoo, tak vyšlo i DOJO.
8.8.2010 21:49 chrono
Rozbalit Rozbalit vše Re: qooxdoo 1.2 - nová verze Ajax frameworku
Pre mňa osobne je prehľadnejšie skôr niečo ako:
var simple = new Ext.form.FormPanel({


	standardSubmit: true,


	frame: true,
	title: 'Register',

	width: 350,
	defaults: {
		width: 230
	},
	defaultType: 'textfield',
	items: [{
		fieldLabel: 'Username',
		name: 'username',
		allowBlank: false
	},
	{
		inputType: 'hidden',
		id: 'submitbutton',
		name: 'myhiddenbutton',
		value: 'hiddenvalue'
	}

	],
	buttons: [{
		text: 'Submit',
		handler: function () {
			simple.getForm().getEl().dom.action = 'test.php';
			simple.getForm().getEl().dom.method = 'POST';
			simple.getForm().submit();
		}
	}]


});
ako
qx.Class.define("twitter.LoginWindow", {
	extend: qx.ui.window.Window,
	construct: function () {
		this.base(arguments, "Login", "twitter/t_small-c.png");
	}
});

var layout = new qx.ui.layout.Basic();
this.setLayout(layout);
this.setModal(true);

var form = new qx.ui.form.Form();
var username = new qx.ui.form.TextField();
username.setRequired(true);
form.add(username, "Username", null, "username");
var password = new qx.ui.form.PasswordField();
password.setRequired(true);
form.add(password, "Password", null, "password");

var controller = new qx.data.controller.Form(null, form);
var model = controller.createModel();

var loginbutton = new qx.ui.form.Button("Login");
form.addButton(loginbutton);
var cancelbutton = new qx.ui.form.Button("Cancel");
form.addButton(cancelbutton);
cancelbutton.addListener("execute", function () {
	this.close();
}, this);
Oba kódy robia formuláre, ale keďže sa mi nechce čítať dokumentácia k qooxdoo, tak vyzerajú a fungujú mierne inak, ale snáď sa na tom kóde dá vidieť, v čom je hlavný rozdiel. Hlavná výhoda (pre mňa) je to, že si nemusím pamätať poradie parametrov funkcií (a keďže to funguje práve takto, tak sa dá celá tá štruktúra poslať ako JSON zo serveru a jedným volaním funkcie sa potom vytvorí nové okno...).
9.8.2010 00:37 __dark__
Rozbalit Rozbalit vše Re: qooxdoo 1.2 - nová verze Ajax frameworku
Já používám mix obou variant, můj formulář vypadá třeba takto:
qx.Class.define("ex.template.Editor",
{
  extend: ex.data.form.DaoFormWindow,

  construct: function(dao, data)
  {
    // Call superclass constructor.
    this.base(arguments, dao, data);
  },

  members:
  {
    createForm: function()
    {
      this.createItems({
        items: [
          { className: "ex.data.form.TextField"      , id: "name"         , autoLabel: true },
          { className: "ex.data.form.TextField"      , id: "title"        , autoLabel: true },
          { className: "ex.data.form.TextArea"       , id: "content"      , autoLabel: true, rowFlex: 1 }
        ]
      });

      this.createRules({
        rules: [
          { className: "ex.data.form.Rule"           , id: "name"         , required: true }
        ]
      });
    },

    applyPersistent: function(persistent)
    {
      this.setItemsEnabled(["name"], !persistent);
    }
  }
});
Já chápu qooxdoo jako low level toolkit, kde si člověk musí naprogramovat vlastní datovou a formulářovou vrstvu. To co tam je mi přijde jako hodně jednoduché. Na druhou stranu moje vrstva má asi 2000 řádků a řeší formuláře, jejich layout a data access.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.