20120210
========
Der Button "Update reminders" funktioniert jetzt. Unschön ist noch,
dass die Aktion ziemlich lange dauert und der Benutzer kein Feedback kriegt.
Außerdem eine kleine Spielerei vor dem Frühstück: das About-Fenster zeigt
jetzt eine Liste aller Modelle. Das ist der Start zu einem allgemeinen
Modul zur Introspection, das auch zur Auswertung der XML-Responses der
BCSS nützlich werden könnte.
Checkin um 9.20 Uhr.
Ein Container, der in einer vbox saß, bekam sein flex nicht gesetzt.
Oder besser gesagt: ein vbox-Panel setzte das flex seiner Kinder nicht immer korrekt::
Lino.lino.About.FormPanel = Ext.extend(Lino.FormPanel,{
layout: 'fit',
initComponent : function() {
var containing_panel = this;
var startup_time186 = new Ext.form.DisplayField({ "disabled": true, "readOnly": true, "fieldLabel": "Server up since", "name": "startup_time", "anchor": "100%", "value": "
" });
var main_1_panel187 = new Ext.Container({
"flex": 60, // fehlte
"border": false, "autoHeight": true, "labelWidth": 144,
"items": [
{ "flex": 25, "autoHeight": true, "html": "Lino version 1.3.8 using Python 2.7.1, Django 1.4 pre-alpha SVN-16714, python-dateutil 1.5, Cheetah 2.4.4, docutils 0.7, PyYaml 3.08, xhtml2pdf 3.0.32, ReportLab Toolkit 2.4, appy.pod 0.8.0 (2011/12/15 22:41)", "xtype": "label" },
{ "flex": 75, "autoHeight": true, "layout": "form", "xtype": "panel", "items": startup_time186, "labelAlign": "top" } ],
"layout": "hbox", "frame": false, "layoutConfig": { "align": "stretchmax" } });
var Models_htmlbox189 = new Lino.HtmlBoxPanel({ "flex": 90, "layout": "fit", "name": "Models", "containing_panel": this, "items": new Ext.BoxComponent(), "title": "Models", "master_panel": this, "bodyStyle": "overflow-x:hidden !important;", "autoScroll": true, "tools": [ Lino.show_in_own_window_button(Lino.lino.Models.grid) ] });
var main_panel190 = new Ext.Panel({ "border": false, "layout": "vbox", "items": [ main_1_panel187, Models_htmlbox189 ], "autoScroll": true, "labelWidth": 63, "frame": true, "layoutConfig": { "align": "stretch" }, "bodyBorder": false });
this.items = main_panel190;
this.before_row_edit = function(record) {
Models_htmlbox189.refresh();
}
Lino.lino.About.FormPanel.superclass.initComponent.call(this);
}
});
Um das obige Problem zu verstehen, habe ich mir einen Inspector gemacht.
quick_search und order_by werden jetzt in AbstracTable geparst.
Damit das in einer VirtualTable funktioniert, muss deren get_data_rows diese berücksichtigen.