Changeset 2782
- Timestamp:
- 04/05/13 17:36:58 (11 years ago)
- File:
-
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
DASISH/t5.6/client/trunk/chrome/markingcollection/content/markingcollection/serverDialogOverlay.xul
r2762 r2782 1 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE overlay SYSTEM "chrome://markingcollection/locale/markingcollection.dtd"> 3 <overlay 4 id="autocacheDialogOverlay" 5 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 6 xmlns:html="http://www.w3.org/1999/xhtml"> 7 <script type="application/x-javascript" src="chrome://global/content/nsUserSettings.js" /> 8 <script type="application/x-javascript"> 9 <![CDATA[ 10 function _autocacheDialogOverlayInit(aEvent){ 2 <!-- TODO: move stylesheet sourcing to settingDialog.xul (test) --> 3 <?xml-stylesheet href="chrome://markingcollection/skin/annotator-skin/dasish.css" type="text/css"?> 4 <!-- uncomment at a later stage, dtd file needs to be used for ENTITY translation --> 5 <!-- <!DOCTYPE overlay SYSTEM "chrome://markingcollection/locale/markingcollection.dtd"> --> 6 <overlay id="serverDialogOverlay" 7 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 8 xmlns:html="http://www.w3.org/1999/xhtml"> 9 10 <script type="application/x-javascript" src="chrome://global/content/nsUserSettings.js" /> <!-- Required for access to the Preference Manager component. --> 11 12 <script type="application/x-javascript"> 13 <![CDATA[ 14 // var def_title_mode; 15 // var def_serverpathtext_mode; 16 /* 17 * var def_title_mode; 18 var def_note_mode; 19 function _markerDialogOverlayInit(aEvent){ ... } 20 21 function _markerDialogOverlayDone(aEvent){ ... } 22 */ 23 24 function _serverDialogOverlayServerSelectCommand(aEvent){ 25 if(aEvent.target.id=="mcMarkerTitleFormat"){ 26 document.getElementById("mcMarkerTitleFormatText").disabled = false; 27 document.getElementById("mcMarkerTitleFormatText").focus(); 28 }else{ 29 document.getElementById("mcMarkerTitleFormatText").disabled = true; 30 def_title_mode = aEvent.target.value; 31 } 32 nsPreferences.setUnicharPref("wiredmarker.marker.initdata.title", aEvent.target.value); 33 } 34 35 // window.addEventListener("load", _markerDialogOverlayInit, false); 36 // window.addEventListener("unload", _markerDialogOverlayDone, false); 37 38 39 40 ]]> 41 </script> 42 43 <!-- +++ TODO +++ --> 44 <!-- TODO (script section above): if default is selected User-spec field cannot be written to; if user spec field radio is selected cursor gets to user spec textbox, textbox becomes writable (like in markerinitDataDialogOverlay.xul) --> 45 <!-- +++ END: TODO +++ --> 46 47 <!-- container used to display a set of tabbed pages of elements --> 48 <tabbox id="mcSettingTabbox"> 49 50 <!-- Create server top level tab in settings window. --> 51 <tabs id="mcSettingTabs"> 52 <!-- use <!ENTITY markingcollection.server.tab "Server"> in markingcollection.dtd; i.e. label="&markingcollection.server.tab;" --> 53 <tab id="mcServerTab" label="Server" image="chrome://markingcollection/skin/annotator-skin/server.png"/> 54 </tabs> 55 56 <!-- container to hold the set of pages, i.e. the contents of the pages, in a tabbox --> 57 <tabpanels id="mcSettingTabPanels"> 58 59 <!-- individual panel in a tabpanels element: holds elements in parent tabpanels container --> 60 <tabpanel id="mcServerTabPanel" orient="vertical" flex="1"> 61 62 <!-- use groupbox xul element to group related elements together --> 63 <groupbox id="serverSelectOption" flex="1"> 64 65 <!-- caption appears along the top of the parent groupbox --> 66 <caption label="Select the back-end server for the annotation client" id="selectServerGbCaption"/> 67 68 <!-- hbox element can contain any number of child elements, this container element defaults to horizontal orientation --> 69 <hbox> 70 71 <!-- <radiogroup id="mcMarkerTitleRadiogroup" oncommand="_markerDialogOverlayTitleCommand(event);"> --> 72 <!-- radiogroup element comprises a group of radio buttons, only one radio button inside the group can be selected at a time, defaults to vertical orientation --> 73 <radiogroup flex="1" id="mcServerRadiogroup" oncommand="_serverDialogOverlayServerSelectCommand(event);"> 74 75 <grid> 76 77 <columns> 78 <column/> 79 <column flex="1" id="textboxColumn"/> 80 </columns> 81 82 <rows> 11 83 12 var manually_exec = nsPreferences.getBoolPref("wiredmarker.autocache.manually.exec", false); 13 document.getElementById("bitsSelectDisplayAutocacheManually").checked = manually_exec; 14 document.getElementById("bitsSelectDisplayAutocacheManually").setAttribute("disabled","true"); 84 <row> 85 <radio id="defaultServerRadio" value="valid" label="Default" selected="true"/> 86 <textbox id="defaultServerTextbox" value="http://pelle.ssd.gu.se:8080/exist/rest/db/annotation-framework/api/annotations.xql" readonly="true" onfocus="this.select()"/> 87 </row> 88 89 <row> 90 <radio id="userSpecifiedServerRadio" value="valid" label="User-specified"/> 91 <textbox id="userSpecifiedServerTextbox" onfocus="this.select()"/> 92 </row> 93 94 </rows> 95 96 </grid> 97 98 </radiogroup> 99 100 </hbox> 101 102 </groupbox> 103 104 </tabpanel> 105 106 </tabpanels> 107 108 </tabbox> 15 109 16 17 var manually_confirm = nsPreferences.getBoolPref("wiredmarker.autocache.manually.confirm", true);18 document.getElementById("bitsSelectDisplayAutocacheManuallyConfirm").checked = manually_confirm;19 document.getElementById("bitsSelectDisplayAutocacheManuallyConfirm").setAttribute("disabled","true");20 21 22 document.getElementById("bitsSelectDisplayAutocacheMarkingDisabled").removeAttribute("disabled");23 document.getElementById("bitsSelectDisplayAutocacheMarkingConfirm").removeAttribute("disabled");24 document.getElementById("bitsSelectDisplayAutocacheMarkingValid").removeAttribute("disabled");25 26 document.getElementById("bitsAutocacheSaveFolderCheckbox").setAttribute("disabled","true");27 document.getElementById("bitsAutocacheSaveFolderTextbox").setAttribute("disabled","true");28 document.getElementById("bitsAutocacheSaveFolderUserTextbox").setAttribute("disabled","true");29 document.getElementById("bitsAutocacheSaveFolderUserButton").setAttribute("disabled","true");30 31 document.getElementById("bitsAutocacheTopmenuDisplay").setAttribute("disabled","true");32 document.getElementById("bitsAutocacheTopmenuDisplayNumber").setAttribute("disabled","true");33 34 var autocache_use = nsPreferences.copyUnicharPref("wiredmarker.autocache.use","valid");35 switch(autocache_use){36 case "switching":37 document.getElementById("bitsSelectDisplayAutocacheDisabled").removeAttribute("selected");38 document.getElementById("bitsSelectDisplayAutocacheSwitching").setAttribute("selected","true");39 document.getElementById("bitsSelectDisplayAutocacheValid").removeAttribute("selected");40 41 document.getElementById("bitsSelectDisplayAutocacheManuallyConfirm").removeAttribute("disabled");42 break;43 case "valid":44 document.getElementById("bitsSelectDisplayAutocacheDisabled").removeAttribute("selected");45 document.getElementById("bitsSelectDisplayAutocacheSwitching").removeAttribute("selected");46 document.getElementById("bitsSelectDisplayAutocacheValid").setAttribute("selected","true");47 document.getElementById("bitsSelectDisplayAutocacheMarking").removeAttribute("disabled");48 break;49 default:50 document.getElementById("bitsSelectDisplayAutocacheDisabled").setAttribute("selected","true");51 document.getElementById("bitsSelectDisplayAutocacheSwitching").removeAttribute("selected");52 document.getElementById("bitsSelectDisplayAutocacheValid").removeAttribute("selected");53 54 55 document.getElementById("bitsSelectDisplayAutocacheManually").removeAttribute("disabled");56 if(manually_exec){57 document.getElementById("bitsSelectDisplayAutocacheManuallyConfirm").removeAttribute("disabled");58 }else{59 document.getElementById("bitsSelectDisplayAutocacheManuallyConfirm").setAttribute("disabled","true");60 document.getElementById("bitsSelectDisplayAutocacheMarkingDisabled").setAttribute("disabled","true");61 document.getElementById("bitsSelectDisplayAutocacheMarkingConfirm").setAttribute("disabled","true");62 document.getElementById("bitsSelectDisplayAutocacheMarkingValid").setAttribute("disabled","true");63 }64 break;65 }66 var autocache_marking = nsPreferences.copyUnicharPref("wiredmarker.autocache.marking","confirm");67 switch(autocache_marking){68 case "confirm":69 document.getElementById("bitsSelectDisplayAutocacheMarkingDisabled").removeAttribute("selected");70 document.getElementById("bitsSelectDisplayAutocacheMarkingConfirm").setAttribute("selected","true");71 document.getElementById("bitsSelectDisplayAutocacheMarkingValid").removeAttribute("selected");72 break;73 case "valid":74 document.getElementById("bitsSelectDisplayAutocacheMarkingDisabled").removeAttribute("selected");75 document.getElementById("bitsSelectDisplayAutocacheMarkingConfirm").removeAttribute("selected");76 document.getElementById("bitsSelectDisplayAutocacheMarkingValid").setAttribute("selected","true");77 break;78 default:79 document.getElementById("bitsSelectDisplayAutocacheMarkingDisabled").setAttribute("selected","true");80 document.getElementById("bitsSelectDisplayAutocacheMarkingConfirm").removeAttribute("selected");81 document.getElementById("bitsSelectDisplayAutocacheMarkingValid").removeAttribute("selected");82 break;83 }84 85 86 if(autocache_use != "disabled"){87 document.getElementById("bitsAutocacheSaveFolderCheckbox").removeAttribute("disabled");88 var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);89 var browserWindow = wm.getMostRecentWindow("navigator:browser");90 if(browserWindow && browserWindow.bitsAutocacheService){91 document.getElementById("bitsAutocacheSaveFolderTextbox").value = browserWindow.bitsAutocacheService.default_cachedir.path;92 }93 94 var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);95 try{96 var save_folder = prefs.getComplexValue("wiredmarker.autocache.save.folder", Components.interfaces.nsILocalFile);97 document.getElementById("bitsAutocacheSaveFolderUserTextbox").value = save_folder.path;98 }catch(e){99 nsPreferences.setBoolPref("wiredmarker.autocache.save.default", true);100 }101 102 var save_default = nsPreferences.getBoolPref("wiredmarker.autocache.save.default", true);103 document.getElementById("bitsAutocacheSaveFolderCheckbox").checked = save_default;104 if(save_default){105 document.getElementById("bitsAutocacheSaveFolderTextbox").removeAttribute("disabled");106 }else{107 document.getElementById("bitsAutocacheSaveFolderUserTextbox").removeAttribute("disabled");108 document.getElementById("bitsAutocacheSaveFolderUserButton").removeAttribute("disabled");109 }110 }111 112 if(autocache_use != "disabled"){113 document.getElementById("bitsAutocacheTopmenuDisplay").removeAttribute("disabled");114 var topmenu_display = nsPreferences.getBoolPref("wiredmarker.autocache.topmenu.display", false);115 document.getElementById("bitsAutocacheTopmenuDisplay").checked = topmenu_display;116 if(topmenu_display) document.getElementById("bitsAutocacheTopmenuDisplayNumber").removeAttribute("disabled");117 118 var topmenu_number = nsPreferences.getIntPref("wiredmarker.autocache.topmenu.number", 0);119 var elem = document.getElementById("bitsAutocacheTopmenuDisplayNumber");120 elem.valueNumber = topmenu_number;121 elem.value = topmenu_number;122 }123 window.sizeToContent();124 }125 function _autocacheDialogOverlayDone(aEvent){126 127 }128 function _SelectAutocacheCommand(aEvent){129 nsPreferences.setUnicharPref("wiredmarker.autocache.use", aEvent.target.value);130 _autocacheDialogOverlayInit();131 }132 function _CheckAutocacheManuallyCommand(aEvent){133 nsPreferences.setBoolPref("wiredmarker.autocache.manually.exec", aEvent.target.checked);134 _autocacheDialogOverlayInit();135 }136 function _CheckAutocacheManuallyConfirmCommand(aEvent){137 nsPreferences.setBoolPref("wiredmarker.autocache.manually.confirm", aEvent.target.checked);138 }139 function _SelectAutocacheMarkingCommand(aEvent){140 nsPreferences.setUnicharPref("wiredmarker.autocache.marking", aEvent.target.value);141 }142 143 function _GetAutocacheSaveFolder(){144 var picker = Components.classes["@mozilla.org/filepicker;1"].createInstance(Components.interfaces.nsIFilePicker);145 var result = null;146 try{147 picker.init(window, "Selected Save Folder", picker.modeGetFolder);148 var showResult = picker.show();149 if(showResult == picker.returnOK) result = picker.file;150 }catch(e){151 result = null;152 alert(e);153 }154 return result;155 }156 157 function _CommandAutocacheSaveFolder(aEvent){158 var folder = _GetAutocacheSaveFolder();159 var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);160 if(folder){161 prefs.setComplexValue("wiredmarker.autocache.save.folder", Components.interfaces.nsILocalFile, folder);162 }else{163 try{164 var save_folder = prefs.getComplexValue("wiredmarker.autocache.save.folder", Components.interfaces.nsILocalFile);165 }catch(e){166 nsPreferences.setBoolPref("wiredmarker.autocache.save.default", true);167 try{prefs.clearUserPref("wiredmarker.autocache.save.folder");}catch(e){}168 }169 }170 _autocacheDialogOverlayInit();171 }172 173 function _CheckAutocacheSaveFolder(aEvent){174 nsPreferences.setBoolPref("wiredmarker.autocache.save.default", aEvent.target.checked);175 if(!aEvent.target.checked){176 try{177 var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);178 var save_folder = prefs.getComplexValue("wiredmarker.autocache.save.folder", Components.interfaces.nsILocalFile);179 }catch(e){180 save_folder = undefined;181 }182 if(!save_folder){183 _CommandAutocacheSaveFolder();184 }else{185 _autocacheDialogOverlayInit();186 }187 }else{188 _autocacheDialogOverlayInit();189 }190 }191 192 function _CheckAutocacheDisplay(aEvent){193 nsPreferences.setBoolPref("wiredmarker.autocache.topmenu.display", aEvent.target.checked);194 _autocacheDialogOverlayInit();195 }196 197 function _InputAutocacheDisplayNumber(aEvent){198 if(parseInt(aEvent.target.value)>50) aEvent.target.value = 50;199 if(parseInt(aEvent.target.value)<0) aEvent.target.value = 0;200 nsPreferences.setIntPref("wiredmarker.autocache.topmenu.number", aEvent.target.value);201 _autocacheDialogOverlayInit();202 }203 204 function _dump(aString){205 var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);206 var browserWindow = wm.getMostRecentWindow("navigator:browser");207 if(browserWindow && browserWindow.bitsMarkingCollection) browserWindow.bitsMarkingCollection._dump(aString);208 }209 210 window.addEventListener("load", _autocacheDialogOverlayInit, false);211 window.addEventListener("unload", _autocacheDialogOverlayDone, false);212 ]]>213 </script>214 <tabbox id="mcSettingTabbox">215 <tabs id="mcSettingTabs">216 <tab id="mcProjectTab" label="&markingcollection.autocache.tab;" image="chrome://markingcollection/skin/autocache.png"/>217 </tabs>218 <tabpanels id="mcSettingTabPanels">219 <tabpanel id="mcAutocacheTabPanel" orient="vertical" flex="1">220 <hbox align="center">221 <groupbox>222 <caption label="&markingcollection.autocache.caption;" style="background-color:#fff;"/>223 <hbox>224 <radiogroup id="" orient="horizontal" oncommand="_SelectAutocacheCommand(event)">225 <radio id="bitsSelectDisplayAutocacheValid" value="valid" label="&markingcollection.autocache.valid;"/>226 <radio id="bitsSelectDisplayAutocacheDisabled" value="disabled" label="&markingcollection.autocache.disabled;"/>227 <radio id="bitsSelectDisplayAutocacheSwitching" value="switching" label="&markingcollection.autocache.switching;" hidden="true"/>228 </radiogroup>229 <checkbox id="bitsSelectDisplayAutocacheManually" label="&markingcollection.autocache.manually.caption;" oncommand="_CheckAutocacheManuallyCommand(event)" disabled="true" hidden="true"/>230 <checkbox id="bitsSelectDisplayAutocacheManuallyConfirm" label="&markingcollection.autocache.manually.confirm;" oncommand="_CheckAutocacheManuallyConfirmCommand(event)" disabled="true" hidden="true"/>231 </hbox>232 </groupbox>233 <groupbox id="bitsSelectDisplayAutocacheMarking">234 <caption label="&markingcollection.autocache.marking;" style="background-color:#fff;"/>235 <radiogroup id="" orient="horizontal" oncommand="_SelectAutocacheMarkingCommand(event)">236 <radio id="bitsSelectDisplayAutocacheMarkingDisabled" value="disabled" label="&markingcollection.autocache.marking.disabled;"/>237 <radio id="bitsSelectDisplayAutocacheMarkingConfirm" value="confirm" label="&markingcollection.autocache.marking.confirm;"/>238 <radio id="bitsSelectDisplayAutocacheMarkingValid" value="valid" label="&markingcollection.autocache.marking.valid;"/>239 </radiogroup>240 </groupbox>241 </hbox>242 <groupbox id="bitsAutocacheSaveFolder">243 <caption label="&markingcollection.autocache.save.folder;" style="background-color:#fff;"/>244 <hbox align="center">245 <checkbox id="bitsAutocacheSaveFolderCheckbox" label="&markingcollection.autocache.save.default;:" oncommand="_CheckAutocacheSaveFolder(event);"/>246 <textbox id="bitsAutocacheSaveFolderTextbox" flex="1" readonly="true"/>247 </hbox>248 <hbox align="center">249 <label control="bitsAutocacheSaveFolderUserTextbox" value="&markingcollection.autocache.save.user;:"/>250 <textbox id="bitsAutocacheSaveFolderUserTextbox" flex="1" readonly="true"/>251 <button id="bitsAutocacheSaveFolderUserButton" label="&markingcollection.autocache.save.folder;" oncommand="_CommandAutocacheSaveFolder(event);"/>252 </hbox>253 </groupbox>254 <hbox>255 <groupbox id="bitsAutocacheTopmenu">256 <caption label="&markingcollection.autocache.topmenu.caption;" style="background-color:#fff;"/>257 <hbox align="center">258 <checkbox id="bitsAutocacheTopmenuDisplay" label="&markingcollection.autocache.topmenu.display;" oncommand="_CheckAutocacheDisplay(event)"/>259 <label control="bitsAutocacheSaveFolderUserTextbox" value="&markingcollection.autocache.topmenu.number;:"/>260 <textbox id="bitsAutocacheTopmenuDisplayNumber" type="number" wraparound="true" min="0" max="50" size="2" maxlength="2" onchange="_InputAutocacheDisplayNumber(event)"/>261 </hbox>262 <hbox align="center">263 <description style="color:#ff0000;padding-left:1em;">&markingcollection.autocache.topmenu.attention;</description>264 </hbox>265 </groupbox>266 </hbox>267 </tabpanel>268 </tabpanels>269 </tabbox>270 110 </overlay>
Note: See TracChangeset
for help on using the changeset viewer.