]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/xul/staff_client/chrome/content/main/menu_frame.xul
make maximized versus non-maximized state of main window sticky, as well as the windo...
[Evergreen.git] / Open-ILS / xul / staff_client / chrome / content / main / menu_frame.xul
1 <?xml version="1.0"?>
2 <!-- Application: Evergreen Staff Client -->
3 <!-- Screen: Main, Menu and Tab Navigation -->
4 <!-- 
5  vim:noet:sw=4:ts=4:
6 -->
7
8 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
9 <!-- STYLESHEETS -->
10 <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
11 <?xml-stylesheet href="chrome://open_ils_staff_client/skin/global.css" type="text/css"?>
12 <!--
13 <?xml-stylesheet href="/xul/server/skin/global.css" type="text/css"?>
14 <?xml-stylesheet href="/xul/server/skin/menu_frame.css" type="text/css"?>
15 -->
16
17 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
18 <!-- LOCALIZATION -->
19 <!DOCTYPE window SYSTEM "chrome://open_ils_staff_client/locale/lang.dtd">
20
21 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
22 <!-- OVERLAYS -->
23 <?xul-overlay href="chrome://open_ils_staff_client/content/main/menu_frame_overlay.xul"?>
24 <?xul-overlay href="chrome://open_ils_staff_client/content/OpenILS/util_overlay_chrome.xul"?>
25 <!--
26 <?xul-overlay href="/xul/server/main/menu_frame_overlay.xul"?>
27 <?xul-overlay href="/xul/server/OpenILS/util_overlay.xul"?>
28 -->
29
30 <window id="menu_frame_win"
31     onload="try { my_init(); font_helper(); } catch(E) { alert(E); }"
32     orient="vertical" width="1024" height="740"
33     sizemode="maximized" persist="width height sizemode" title="&staff.main.menu.title;"
34     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
35
36     <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
37     <!-- BEHAVIOR -->
38     <script type="text/javascript">var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {}; var idleService = null; var idleObserver = null;</script>
39     <scripts id="openils_util_scripts"/>
40
41     <script type="text/javascript" src="JSAN.js"/>
42     <script type="text/javascript" src="constants.js"/>
43     <script type="text/javascript" src="../OpenILS/util/fmall.js"/>
44     <script type="text/javascript">
45     <![CDATA[
46         function setup_idle_observer(delay) {
47             dump("will minimize after " + delay + " idle seconds\n");
48             idleService = Components.classes[
49                 "@mozilla.org/widget/idleservice;1"
50             ].getService(Components.interfaces.nsIIdleService);
51             idleObserver = {
52                 observe: function(subject, topic, data) {
53                     if (topic == "idle") {
54                         window.minimize();
55                         dump("minimizing window; subject: " + subject +
56                             ", topic: " + topic +
57                             ", data: " + data + "\n");
58                     }
59                 }
60             };
61             try { // prevent scary popup from invalid delay time
62                 idleService.addIdleObserver(idleObserver, delay); // seconds
63             } catch(E) {
64                 dump("Idle delay of '" + delay + "' is not a valid delay time");
65             }
66             // You could remove the IdleObserver with the following line...
67             // idleService.removeIdleObserver(idleObserver, delay);
68             // ... but why would we?
69         }
70         function my_init() {
71             try {
72
73                 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
74                 if (typeof JSAN == 'undefined') { throw(document.getElementById('offlineStrings').getString('common.jsan.missing')); }
75                 JSAN.errorLevel = "die"; // none, warn, or die
76                 /*
77                 JSAN.addRepository('/xul/server/');
78                 */
79                 JSAN.addRepository('..');
80                 JSAN.use('util.error'); g.error = new util.error();
81                 g.error.sdump('D_TRACE','my_init() for menu_frame.xul');
82
83                 g.cgi = new CGI();
84
85                 JSAN.use('main.menu'); g.menu = new main.menu();
86                 g.menu.init( { 
87                     'server' : g.cgi.param('server'),
88                 } );
89
90                 JSAN.use('util.window'); g.window = new util.window();
91
92                 JSAN.use('OpenILS.data'); g.data = new OpenILS.data(); g.data.init({'via':'stash'});
93                 XML_HTTP_SERVER = g.data.server_unadorned;
94
95                 document.title = g.window.appshell_name_increment() + ': ' + g.data.list.au[0].usrname() + '@' + g.data.ws_name + '.' + g.data.server_unadorned;
96
97                 var delay = g.data.hash.aous["ui.general.idle_timeout"];
98                 if (delay) setup_idle_observer(delay);
99             } catch(E) {
100                 var err_msg = document.getElementById("offlineStrings").getFormattedString("common.exception", ["menu_frame.xul", E]);
101                 try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
102                 alert(err_msg);
103             }
104         }
105     ]]>
106     </script>
107
108     <messagecatalog id="offlineStrings" src="chrome://open_ils_staff_client/locale/offline.properties" />    
109
110     <commandset id="universal_cmds" />
111
112     <keyset id="menu_frame_keys" />
113
114     <popupset id="universal_popupset" />
115
116     <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
117     <!-- CONTENT -->
118
119     <box id="menu_frame_main" class="my_overflow"/>
120
121 </window>
122