grid_list
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 18 Jul 2005 12:28:53 +0000 (12:28 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 18 Jul 2005 12:28:53 +0000 (12:28 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@1252 dcc99617-32d9-48b4-a31d-7c20da2025e4

Evergreen/staff_client/chrome/content/evergreen/Open-ILS/OpenILS_scripts_overlay.xul
Evergreen/staff_client/chrome/content/evergreen/main/grid_list.js [new file with mode: 0644]
Evergreen/staff_client/chrome/content/evergreen/main/grid_list_overlay.xul [new file with mode: 0644]

index 3329f7b..dff25a0 100644 (file)
@@ -10,6 +10,7 @@
                <script src="chrome://evergreen/content/main/app_shell.js" />
                <script src="chrome://evergreen/content/main/clam_shell.js" />
                <script src="chrome://evergreen/content/main/paged_tree.js" />
+               <script src="chrome://evergreen/content/main/grid_list.js" />
                <script src="chrome://evergreen/content/opac/opac.js" />
                <script src="chrome://evergreen/content/patron/patron_utils.js" />
                <script src="chrome://evergreen/content/patron/patron_search.js" />
diff --git a/Evergreen/staff_client/chrome/content/evergreen/main/grid_list.js b/Evergreen/staff_client/chrome/content/evergreen/main/grid_list.js
new file mode 100644 (file)
index 0000000..315cd93
--- /dev/null
@@ -0,0 +1,73 @@
+sdump('D_TRACE','Loading grid_list.js\n');
+
+function grid_list_init(p) {
+       sdump('D_GRID_LIST',"TESTING: grid_list.js: " + mw.G['main_test_variable'] + '\n');
+       sdump('D_CONSTRUCTOR',arg_dump(arguments));
+
+       p.grid = p.node.getElementsByAttribute('name','grid')[0];
+       p.popup = p.node.getElementsByTagName('popup')[0];
+       p.grid_columns = p.grid.firstChild;
+       p.grid_rows = p.grid.lastChild;
+
+       p._context_function = function (ev) { alert('default _context_function'); };
+       p.popup.addEventListener('popupshowing',function (ev) { return p._context_function(ev); },false);
+
+       grid_list_make_columns( p, p.grid_columns, p.cols )
+
+       p.clear_grid = function () {
+               sdump('D_GRID_LIST','p.clear_grid()\n');
+               empty_widget( p.grid_rows );
+       }
+
+       p.add_rows = function (new_rows) { 
+               sdump('D_GRID_LIST','p.add_rows()\n');
+               return grid_list_add_rows(p,p.grid_rows,new_rows); 
+       }
+
+       p.register_context_builder = function (f) {
+               sdump('D_GRID_LIST','p.register_context_builder(' + f + ')\n');
+               return p._context_function = f;
+       }
+
+       sdump('D_TRACE_EXIT',arg_dump(arguments));
+       return p;
+}
+
+function grid_list_make_columns( p, gridcols, cols ) {
+       sdump('D_GRID_LIST',arg_dump(arguments,{2:'.length'}));
+       sdump('D_TRACE_ENTER',arg_dump(arguments));
+       var d = p.w.document;
+       // cols[ idx ] = { 'id':???, 'label':???, 'primary':???, 'flex':??? }
+       for (var i = 0; i < cols.length; i++) {
+               var col = cols[i];
+               sdump('D_GRID_LIST','Col ' + i + ' : ' + js2JSON( col ) + '\n');
+               var gridcol = d.createElement( 'column' );
+               gridcols.appendChild( gridcol );
+               for (var j in col) {
+                       gridcol.setAttribute( j, col[j] );
+               }
+       }
+       sdump('D_TRACE_EXIT',arg_dump(arguments));
+       return gridcols;
+}
+
+function grid_list_add_rows( p, grid_rows, new_rows ) {
+       sdump('D_GRID_LIST',arg_dump(arguments,{2:'.length'}));
+       sdump('D_TRACE_ENTER',arg_dump(arguments));
+       var d = p.w.document;
+       var offset = 0;
+       if (grid_rows.childNodes.length > 0) { offset = grid_rows.lastChild.id; }
+       for (var i = 0; i < new_rows.length; i++) {
+               var new_row = new_rows[i];
+
+               gridrows.appendChild( newrow );
+
+       }
+       sdump('D_TRACE_EXIT',arg_dump(arguments));
+}
+
+function grid_list_remove_row_by_id( p, grid_rows, id ) {
+       sdump('D_GRID_LIST',arg_dump(arguments));
+       var row = grid_rows.getElementsByAttribute('id',id)[0];
+       grid_rows.removeChild( row );
+}
diff --git a/Evergreen/staff_client/chrome/content/evergreen/main/grid_list_overlay.xul b/Evergreen/staff_client/chrome/content/evergreen/main/grid_list_overlay.xul
new file mode 100644 (file)
index 0000000..4e0d03a
--- /dev/null
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<overlay id="grid_list_overlay" 
+       xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+       <script>mw.sdump('D_TRACE','Loading grid_list_overlay.xul\n');</script>
+
+<commandset id="universal_cmds">
+
+       <command id="cmd_broken" oncommand="
+               alert('Not Yet Implemented'); "/>
+
+</commandset>
+
+<!-- main widget for grid_list -->
+<box id="GridList_main" flex="1" orient="vertical">
+       <popupset>
+               <popup id="GridList_popup"/>
+       </popupset>
+       <hbox id="GridList_insert1" />
+       <hbox id="GridList_nav" name="nav"/>
+       <hbox id="GridList_insert2" />
+       <grid id="GridList_grid" flex="1" name="grid">
+               <columns id="GridList_columns" />
+               <rows id="GridList_rows" />
+       </grid>
+       <hbox id="GridList_insert3" />
+</box>
+
+<!-- Context menus -->
+<popupset id="universal_popupset">
+</popupset>
+
+<!-- Accelerator Keys (Accessor Keys are in DTD's) -->
+<keyset id="GridList_keys">
+</keyset>
+
+</overlay>