gecko-dev/calendar/resources/content/calendar.xul

760 строки
37 KiB
XML

<?xml version="1.0"?>
<!-- ***** BEGIN LICENSE BLOCK *****
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
-
- The contents of this file are subject to the Mozilla Public License Version
- 1.1 (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS" basis,
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- for the specific language governing rights and limitations under the
- License.
-
- The Original Code is OEone Calendar Code, released October 31st, 2001.
-
- The Initial Developer of the Original Code is
- OEone Corporation.
- Portions created by the Initial Developer are Copyright (C) 2001
- the Initial Developer. All Rights Reserved.
-
- Contributor(s): Garth Smedley <garths@oeone.com>
- Mike Potter <mikep@oeone.com>
- Colin Phillips <colinp@oeone.com>
- Chris Charabaruk <coldacid@djfly.org>
- Karl Guertin <grayrest@grayrest.com>
- Dan Parent <danp@oeone.com>
- ArentJan Banck <ajbanck@planet.nl>
- Eric Belhaire <belhaire@ief.u-psud.fr>
-
- Alternatively, the contents of this file may be used under the terms of
- either the GNU General Public License Version 2 or later (the "GPL"), or
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- in which case the provisions of the GPL or the LGPL are applicable instead
- of those above. If you wish to allow use of your version of this file only
- under the terms of either the GPL or the LGPL, and not to allow others to
- use your version of this file under the terms of the MPL, indicate your
- decision by deleting the provisions above and replace them with the notice
- and other provisions required by the LGPL or the GPL. If you do not delete
- the provisions above, a recipient may use your version of this file under
- the terms of any one of the MPL, the GPL or the LGPL.
-
- ***** END LICENSE BLOCK ***** -->
<!-- Style sheets -->
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/skin/calendar.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/content/datetimepickers/minimonth.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/content/calendar-view-bindings.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/skin/calendar-views.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/content/calendar-decorated-views.css" type="text/css"?>
<!-- Overlays -->
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
<?xul-overlay href="chrome://calendar/content/menuOverlay.xul"?>
<!-- DTDs -->
<!-- DTD File with all strings specific to the calendar -->
<!DOCTYPE window
[
<!ENTITY % dtd1 SYSTEM "chrome://calendar/locale/global.dtd" > %dtd1;
<!ENTITY % dtd2 SYSTEM "chrome://calendar/locale/calendar.dtd" > %dtd2;
<!ENTITY % calendarMenuOverlayDTD SYSTEM "chrome://calendar/locale/menuOverlay.dtd" > %calendarMenuOverlayDTD;
]>
<!-- The Window -->
<window id="calendar-window"
title="&window.title;"
onload="calendarInit()"
onunload="calendarFinish()"
windowtype="calendarMainWindow"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
persist="screenX screenY width height sizemode"
height="550"
width="710">
<broadcasterset id="calendar_broadcasters">
<broadcaster id="is_editable" hidden="false"/>
</broadcasterset>
<commandset id="calendar_commands">
<command id="new_command" oncommand="newEvent()"/>
<command id="delete_command" oncommand="deleteEventCommand( )" disabled="true" disabledwhennoeventsselected="true"/>
<command id="delete_command_no_confirm" oncommand="deleteEventCommand( true )" disabled="true" disabledwhennoeventsselected="true"/>
<command id="modify_command" oncommand="editEvent()" disabled="true" disabledwhennoeventsselected="true"/>
<command id="send_event_command" oncommand="sendEvent()" disabled="true" disabledwhennoeventsselected="true"/>
<command id="print_command" oncommand="print()"/>
<command id="undo_command" oncommand="undo()" disabled="true"/>
<command id="redo_command" oncommand="redo()" disabled="true"/>
<command id="cut_command" oncommand="cutToClipboard()" disabled="true" disabledwhennoeventsselected="true"/>
<command id="copy_command" oncommand="copyToClipboard()" disabled="true" disabledwhennoeventsselected="true"/>
<command id="paste_command" oncommand="pasteFromClipboard()"/>
<command id="select_all_command" oncommand="selectAllEvents()"/>
<command id="new_todo_command" oncommand="newToDo()"/>
<command id="modify_todo_command" oncommand="editToDo()"/>
<command id="delete_todo_command" oncommand="deleteToDoCommand()" disabled="true"/>
<command id="new_calendar_command" oncommand="newCalendarDialog()"/>
<command id="open_local_calendar_command" oncommand="openLocalCalendar()"/>
<command id="edit_calendar_command" oncommand="editCalendarDialog(event)"/>
<command id="delete_calendar_command" oncommand="deleteCalendar(event)"/>
<command id="next_command" oncommand="gCalendarWindow.currentView.goToNext()"/>
<command id="previous_command" oncommand="gCalendarWindow.currentView.goToPrevious()"/>
<command id="go_today_command" oncommand="gCalendarWindow.goToToday()"/>
<command id="go_date_command" oncommand="gCalendarWindow.pickAndGoToDate()"/>
<command id="day_view_command" oncommand="gCalendarWindow.switchToDayView()"/>
<command id="week_view_command" oncommand="gCalendarWindow.switchToWeekView()"/>
<command id="month_view_command" oncommand="gCalendarWindow.switchToMonthView()"/>
<command id="multiweek_view_command" oncommand="gCalendarWindow.switchToMultiweekView()"/>
<command id="import_command" oncommand="loadEventsFromFile()"/>
<command id="export_command" oncommand="saveEventsToFile(gCalendarWindow.EventSelection.selectedEvents)" disabled="true" disabledwhennoeventsselected="true"/>
<command id="reload_remote_calendars" oncommand="reloadCalendars()"/>
<command id="publish_calendar" oncommand="publishEntireCalendar(getDefaultCalendar())"/>
<command id="publish_events_command" oncommand="publishCalendarData()" disabled="true" disabledwhennoeventsselected="true"/>
<command id="toggle_tasks_in_view"
oncommand="changeDisplayToDoInViewCheckbox()"
checked="true"
persist="checked"/>
<command id="toggle_workdays_only"
oncommand="changeOnlyWorkdayCheckbox()"
persist="checked"/>
<command id="close_calendar_command" oncommand="closeCalendar()"/>
<command id="wizard_command" oncommand="launchWizard()" collapsed="true"/>
#ifdef XP_MACOSX
<command id="minimizeWindowCmd" oncommand="window.minimize();"/>
<command id="zoomWindowCmd" oncommand="zoomWindow();"/>
#endif
<command id="timezone_command" oncommand="openTimezoneWindow()"/>
</commandset>
<keyset>
<key id="new_event_key" key="&event.new.event.key;" observes="new_command" modifiers="accel"/>
<key id="new_todo_key" key="&event.new.todo.key;" observes="new_todo_command" modifiers="accel"/>
<key id="modify_event_key" key="&event.edit.event.key;" observes="modify_command" modifiers="accel"/>
<key id="new_calendar_key" key="&calendar.new.server.key;" observes="new_calendar_command" modifiers="accel"/>
<key id="open_calendar_key" key="&calendar.open.file.key;" observes="open_local_calendar_command" modifiers="accel"/>
<key id="key_close" key="&calendar.menu.options.close.key;" observes="close_calendar_command" modifiers="accel"/>
#ifdef XP_MACOSX
<key id="send_event_key" key="&event.mail.event.key;" observes="send_event_command" modifiers="shift, accel"/>
#else
<key id="send_event_key" key="&event.mail.event.key;" observes="send_event_command" modifiers="accel"/>
#endif
<key id="print_key" key="&calendar.print.key;" observes="print_command" modifiers="accel"/>
<key id="key_undo" key="&calendar.undo.key;" observes="undo_command" modifiers="accel"/>
#ifdef XP_UNIX
<key id="key_redo" key="&calendar.undo.key;" observes="redo_command" modifiers="accel,shift"/>
#else
<key id="key_redo" key="&calendar.redo.key;" observes="redo_command" modifiers="accel"/>
#endif
<key id="key_cut" key="&calendar.cut.key;" observes="cut_command" modifiers="accel"/>
<key id="key_copy" key="&calendar.copy.key;" observes="copy_command" modifiers="accel"/>
<key id="key_paste" key="&calendar.paste.key;" observes="paste_command" modifiers="accel"/>
<key id="key_selectAll" key="&calendar.selectall.key;" observes="select_all_command" modifiers="accel"/>
# calendar.xpi adds shift as an accelerator to these 4 keys so we don't conflict with Seamonkey
<key id="view_day_key" key="&calendar.dayView.key;" observes="day_view_command" modifiers="shift, accel"/>
<key id="view_week_key" key="&calendar.weekView.key;" observes="week_view_command" modifiers="shift, accel"/>
<key id="view_multiweek_key" key="&calendar.multiweekView.key;" observes="multiweek_view_command" modifiers="shift, accel"/>
<key id="view_month_key" key="&calendar.monthView.key;" observes="month_view_command" modifiers="shift, accel"/>
<key id="go_to_today_key" keycode="VK_DOWN" observes="go_today_command" modifiers="accel"/>
<key id="go_to_date_key" keycode="VK_UP" observes="go_date_command" modifiers="accel"/>
<key id="go_backward_key" keycode="VK_PAGE_UP" observes="previous_command"/>
<key id="go_forward_key" keycode="VK_PAGE_DOWN" observes="next_command"/>
<key id="import_key" key="&calendar.import.key;" observes="import_command" modifiers="accel"/>
<key id="reload_server_key" key="&calendar.reloadserver.key;" observes="reload_remote_calendars" modifiers="accel"/>
#ifdef XP_MACOSX
<key id="key_minimizeWindow" key="&minimizeWindow.key;" command="minimizeWindow" modifiers="accel"/>
#endif
</keyset>
<keyset id="tasksKeys"/>
<!-- Javascript DTD To Variable -->
<script type="application/x-javascript">
var confirmDeleteAllEvents = "&calendar.confirm.deleteallevents;";
var confirmDeleteEvent = "&calendar.confirm.deleteevent;";
var confirmDeleteUntitledEvent = "&calendar.confirm.deleteuntitledevent;";
var defaultCalendarFileName = "&calendar.file.default.name;";
</script>
<!-- STRING BUNDLE for calendar properties -->
<stringbundleset id="stringbundleset">
<stringbundle id="bundle_calendar" src="chrome://calendar/locale/calendar.properties"/>
<stringbundle id="bundle_calendar_email" src="chrome://calendar/locale/email.properties"/>
</stringbundleset>
<script type="application/x-javascript">
var gCalendarBundle = document.getElementById("bundle_calendar");
var gCalendarEmailBundle = document.getElementById("bundle_calendar_email");
</script>
<!-- Javascript includes -->
<!-- NEEDED FOR MULTIPLE CALENDAR SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/calendarManagement.js"/>
<!-- NEEDED FOR CLIPBOARD SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/clipboard.js"/>
<!-- NEEDED FOR IMPORT / EXPORT SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/import-export.js"/>
<!-- NEEDED FOR MAIL SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/calendarMail.js"/>
<!-- NEEDED FOR PUBLICATION SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/publish.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendarUtils.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendar.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendar-item-editing.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendarSelection.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendarWindow.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/mouseoverPreviews.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/unifinder.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/unifinderToDo.js"/>
<!--<script type="application/x-javascript" src="chrome://calendar/content/email.js"/>-->
<!-- NEEDED ALARMS ERIC -->
<script type="application/x-javascript" src="chrome://calendar/content/calendarOverlay.js"/>
<!-- NEEDED FOR APPLICATION SUPPORT -->
<script type="application/x-javascript" src="chrome://calendar/content/applicationUtil.js"/>
<script type="application/x-javascript" src="chrome://global/content/globalOverlay.js"/>
<script type="application/x-javascript" src="chrome://communicator/content/utilityOverlay.js"/>
<!-- GENERAL CONTEXT MENU -->
<popup id="context-menu"
onpopuphidden="gNewDateVariable = null;"
onpopupshowing="dump(document.popupNode.getAttribute('id'));
document.getElementById('is_editable').hidden = (document.popupNode.getAttribute('id') == 'lefthandcalendar')">
<menuitem label="&calendar.context.newevent.label;"
accesskey="&calendar.context.newevent.accesskey;"
observes="new_command"/>
<menuitem label="&calendar.context.newtodo.label;"
accesskey="&calendar.context.newtodo.accesskey;"
observes="new_todo_command"/>
<menuitem label="&calendar.context.modifyevent.label;"
accesskey="&calendar.context.modifyevent.accesskey;"
observes="modify_command" />
<menuitem label="&calendar.context.deleteevent.label;"
accesskey="&calendar.context.deleteevent.accesskey;"
observes="delete_command"/>
<menuseparator/>
<menuitem label="&calendar.context.cutevent.label;"
accesskey="&calendar.context.cutevent.accesskey;"
observes="cut_command">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuitem label="&calendar.context.copyevent.label;"
accesskey="&calendar.context.copyevent.accesskey;"
observes="copy_command">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuitem label="&calendar.context.pasteevent.label;"
accesskey="&calendar.context.pasteevent.accesskey;"
observes="paste_command">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuseparator>
<observes element="is_editable" attribute="hidden"/>
</menuseparator>
<menuitem label="&calendar.context.selectall.label;"
accesskey="&calendar.context.selectall.accesskey;"
observes="select_all_command">
<observes element="is_editable" attribute="hidden"/>
</menuitem>
<menuseparator>
<observes element="is_editable" attribute="hidden"/>
</menuseparator>
<menuitem label="&calendar.context.gototoday.label;"
accesskey="&calendar.context.gototoday.accesskey;"
observes="go_today_command"/>
<menuseparator/>
<menuitem id="only-workday-checkbox-2"
type="checkbox"
label="&calendar.onlyworkday.checkbox.label;"
accesskey="&calendar.onlyworkday.checkbox.accesskey;"
observes="toggle_workdays_only"/>
<menuitem id="display-todo-inview-checkbox-2"
type="checkbox"
label="&calendar.displaytodos.checkbox.label;"
accesskey="&calendar.displaytodos.checkbox.accesskey;"
observes="toggle_tasks_in_view"/>
<menuseparator/>
<menuitem label="&calendar.context.emailevent.label;"
accesskey="&calendar.context.emailevent.accesskey;"
observes="send_event_command"/>
</popup>
<!-- TASK ITEM CONTEXT MENU -->
<popup id="taskitem-context-menu" onpopupshowing="changeContextMenuForToDo( event );">
<menuitem label="&calendar.context.newtodo.label;"
accesskey="&calendar.context.newtodo.accesskey;"
observes="new_todo_command"/>
<menuitem id="task-context-menu-modify"
label="&calendar.context.modifytask.label;"
accesskey="&calendar.context.modifytask.accesskey;"
oncommand="modifyTaskFromContext()"/>
<menuitem label="&calendar.context.deletetask.label;"
accesskey="&calendar.context.deletetask.accesskey;"
observes="delete_todo_command"/>
<menu label="&calendar.context.progress.label;"
accesskey="&calendar.context.progress.accesskey;"
observes="is_editable">
<menupopup>
<menuitem type="checkbox"
id="percent-0-menuitem"
label="&progress.level.0;"
accesskey="&progress.level.0.accesskey;"
oncommand="contextChangeProgress( event, 0 );"/>
<menuitem type="checkbox"
id="percent-25-menuitem"
label="&progress.level.25;"
accesskey="&progress.level.25.accesskey;"
oncommand="contextChangeProgress( event, 25 );"/>
<menuitem type="checkbox"
id="percent-50-menuitem"
label="&progress.level.50;"
accesskey="&progress.level.50.accesskey;"
oncommand="contextChangeProgress( event, 50 );"/>
<menuitem type="checkbox"
id="percent-75-menuitem"
label="&progress.level.75;"
accesskey="&progress.level.75.accesskey;"
oncommand="contextChangeProgress( event, 75 );"/>
<menuitem type="checkbox"
id="percent-100-menuitem"
label="&progress.level.100;"
accesskey="&progress.level.100.accesskey;"
oncommand="contextChangeProgress( event, 100 );"/>
</menupopup>
</menu>
<menu label="&calendar.context.priority.label;"
accesskey="&calendar.context.priority.accesskey;"
observes="is_editable">
<menupopup>
<menuitem type="checkbox"
id="priority-0-menuitem"
label="&priority.level.none;"
accesskey="&priority.level.none.accesskey;"
oncommand="contextChangePriority( event, 0 );"/>
<menuitem type="checkbox"
id="priority-9-menuitem"
label="&priority.level.low;"
accesskey="&priority.level.low.accesskey;"
oncommand="contextChangePriority( event, 9 );"/>
<menuitem type="checkbox"
id="priority-5-menuitem"
label="&priority.level.medium;"
accesskey="&priority.level.medium.accesskey;"
oncommand="contextChangePriority( event, 5 );"/>
<menuitem type="checkbox"
id="priority-1-menuitem"
label="&priority.level.high;"
accesskey="&priority.level.high.accesskey;"
oncommand="contextChangePriority( event, 1 );"/>
</menupopup>
</menu>
</popup>
<!-- CALENDAR LIST CONTEXT MENU -->
<popup id="calendarlist-context-menu" onpopupshowing="checkCalListTarget()">
<menuitem label="&calendar.context.newserver.label;"
id="calpopup-new"
accesskey="&calendar.context.newserver.accesskey;"
observes="new_calendar_command"/>
<menuitem label="&calendar.context.editserver.label;"
id="calpopup-edit"
accesskey="&calendar.context.editserver.accesskey;"
observes="edit_calendar_command"/>
<menuitem label="&calendar.context.deleteserver.label;"
id="calpopup-delete"
accesskey="&calendar.context.deleteserver.accesskey;"
observes="delete_calendar_command"/>
<menuitem label="&calendar.context.reloadserver.label;"
id="calpopup-reload"
accesskey="&calendar.context.reloadserver.accesskey;"
observes="reload_remote_calendars"/>
<menuitem label="&calendar.context.publish.label;"
id="calpopup-publish"
accesskey="&calendar.context.publish.accesskey;"
observes="publish_calendar"/>
<menuitem label="&calendar.import.into.label;"
id="calpopup-import"
oncommand="loadEventsFromFile(getSelectedCalendarOrNull())"/>
<menuitem label="&calendar.export.calendar;"
id="calpopup-export"
oncommand="exportEntireCalendar(getSelectedCalendarOrNull())"/>
</popup>
<commandset id="commands"/>
<toolbox id="calendar-toolbox" class="toolbox-top" deferattached="true">
<!-- Menu -->
<menubar id="main-menubar" persist="collapsed"/>
<toolbar class="toolbar-primary chromeclass-toolbar" id="calendar-bar" persist="collapsed" tbalign="stretch">
<!--<toolbarbutton class="toolbarbutton-1" id="calendar-new-task-button" label="&calendar.newtask.button.label;" tooltiptext="&calendar.newtask.button.tooltip;" observes="new_todo_command"/>-->
<toolbarbutton class="toolbarbutton-1"
id="calendar-new-event-button"
label="&calendar.newevent.button.label;"
tooltiptext="&calendar.newevent.button.tooltip;"
observes="new_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-new-task-button"
label="&calendar.newtask.button.label;"
tooltiptext="&calendar.newtask.button.tooltip;"
observes="new_todo_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-edit-event-button"
label="&calendar.edit.button.label;"
tooltiptext="&calendar.edit.button.tooltip;"
observes="modify_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-delete-event-button"
label="&calendar.delete.button.label;"
tooltiptext="&calendar.delete.button.tooltip;"
observes="delete_command"/>
<toolbarseparator class="toolbarseparator-primary"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-day-view-button"
type="radio"
group="calendarViews"
label="&calendar.dayview.button.label;"
tooltiptext="&calendar.dayview.button.tooltip;"
observes="day_view_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-week-view-button"
type="radio"
group="calendarViews"
label="&calendar.weekview.button.label;"
tooltiptext="&calendar.weekview.button.tooltip;"
observes="week_view_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-multiweek-view-button"
type="radio"
group="calendarViews"
label="&calendar.multiweekview.button.label;"
tooltiptext="&calendar.multiweekview.button.tooltip;"
observes="multiweek_view_command"/>
<toolbarbutton class="toolbarbutton-1"
id="calendar-month-view-button"
type="radio"
group="calendarViews"
label="&calendar.monthview.button.label;"
tooltiptext="&calendar.monthview.button.tooltip;"
observes="month_view_command"/>
<spacer flex="1"/>
<hbox id="throbber-box" align="center">
<button id="navigator-throbber"
oncommand="displayCalendarVersion()"
tooltiptext="&throbber.tooltip;"/>
</hbox>
</toolbar>
</toolbox>
<!-- tooltips to show cropped text behave as a titletip: don't hide until mouse moved away -->
<tooltip id="eventTreeTooltip"
onpopupshowing="return onMouseOverEventTree( this, event )"
noautohide="true"/>
<tooltip id="taskTreeTooltip"
onpopupshowing="return onMouseOverTaskTree( this, event )"
noautohide="true"/>
<tooltip id="itemTooltip"
noautohide="true"/>
<!-- V I S I B L E C O N T E N T -->
<vbox id="calendar-top-box"
flex="1"
context="context-menu">
<!--Bug 306877: Removed drag and drop support for 0.3a1. Reimplement this!
<vbox id="calendar-top-box"
flex="1"
context="context-menu"
ondraggesture="nsDragAndDrop.startDrag(event,calendarManagerDNDObserver);"
ondragover="nsDragAndDrop.dragOver(event,calendarManagerDNDObserver)"
ondragdrop="nsDragAndDrop.drop(event,calendarManagerDNDObserver)">-->
<!-- Calendar Controls-->
<hbox id="calendar-content-box" flex="1">
<vbox id="left-hand-content" persist="width">
<tabbox id="tablist" persist="selectedIndex">
<tabs>
<tab label="&calendar.calendartab.label;"/>
<tab label="&calendar.listofcalendarstab.label;"/>
</tabs>
<tabpanels flex="1">
<tabpanel>
<vbox flex="1">
<spacer id="spaceaboveleftminimonth" flex="1" orient="vertical"/>
<minimonth id="lefthandcalendar"
flex="8"
maxheight="300"
onchange="gCalendarWindow.goToDay( this.value );"/>
<button observes="go_today_command" label="&calendar.gototoday.button.label;"/>
<spacer id="spacebelowleftminimonth" flex="1" orient="vertical"/>
</vbox>
</tabpanel>
<tabpanel>
<!--<vbox id="left-hand-above-splitter" flex="1">-->
<listbox id="list-calendars-listbox" class="unifinder-tree-class" flex="1"
contextmenu="calendarlist-context-menu"
ondblclick="calendarListboxDoubleClick(event)">
<listcols>
<listcol/>
<listcol/>
<listcol flex="1"/>
</listcols>
</listbox>
<!--</vbox>-->
</tabpanel>
</tabpanels>
</tabbox>
<splitter id="calendar-todo-splitter" collapse="before" persist="state"
class="chromeclass-extrachrome" orient="vertical">
<grippy/>
</splitter>
<vbox id="left-hand-below-splitter" flex="1" persist="height">
<box align="left">
<label flex="1" crop="end" style="font-weight: bold" value="&calendar.unifinder.todoitems.label;"/>
</box>
<box align="center">
<checkbox id="hide-completed-checkbox"
label="&calendar.unifinder.hidecompletedtodos.label;"
flex="1"
crop="end"
oncommand="toDoUnifinderRefresh( event )"
persist="checked"/>
</box>
<tree id="unifinder-todo-tree" flex="1" enableColumnDrag="false"
ondblclick="modifyToDoCommand( event )"
context="taskitem-context-menu">
<treecols id="unifinder-todo-tree-cols">
<treecol id="unifinder-todo-tree-col-completed"
persist="hidden ordinal width sortDirection sortActive" width="18" cycler="true"
label="&calendar.unifinder.tree.done.label;">
<image id="checkboximg" />
</treecol>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-priority"
persist="hidden ordinal width sortDirection sortActive" width="18"
label="&calendar.unifinder.tree.priority.label;">
<image id="priorityimg"/>
</treecol>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-title"
persist="hidden ordinal width sortDirection sortActive" flex="1"
label="&calendar.unifinder.tree.title.label;" />
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-startdate"
persist="hidden ordinal width sortDirection sortActive"
hidden="true"
flex="1" label="&calendar.unifinder.tree.startdate.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-duedate"
persist="hidden ordinal width sortDirection sortActive"
hidden="true"
flex="1" label="&calendar.unifinder.tree.duedate.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-completeddate"
persist="hidden ordinal width sortDirection sortActive"
hidden="true"
flex="1" label="&calendar.unifinder.tree.completeddate.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-percentcomplete"
persist="hidden ordinal width sortDirection sortActive"
hidden="true"
flex="1" label="&calendar.unifinder.tree.percentcomplete.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-categories"
persist="hidden ordinal width sortDirection sortActive"
hidden="true"
flex="1" label="&calendar.unifinder.tree.categories.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-location"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.location.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-status"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.status.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-todo-tree-col-calendarname"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.calendarname.label;"/>
</treecols>
<treechildren tooltip="taskTreeTooltip"
onmousedown="unifinderMouseDownToDo( event )"/>
</tree>
</vbox>
</vbox>
<splitter id="calendar-splitter" collapse="before" persist="state"
class="chromeclass-extrachrome sidebar-splitter" orient="horizontal"
onmouseup="setTimeout( 'gCalendarWindow.onMouseUpCalendarSplitter()', 1 );">
<grippy class="sidebar-splitter-grippy"/>
</splitter>
<vbox flex="1">
<vbox id="bottom-events-box" persist="height">
<hbox>
<box align="center">
<menulist id="event-filter-menulist" persist="value">
<menupopup id="event-filter-menupopup" oncommand="changeEventFilter( event );">
<menuitem id="event-filter-all"
label="&calendar.events.filter.all.label;"
value="all"/>
<menuitem id="event-filter-today"
label="&calendar.events.filter.today.label;"
value="today"/>
<menuitem id="event-filter-next7Days"
label="&calendar.events.filter.next7Days.label;"
value="next7Days"/>
<menuitem id="event-filter-next14Days"
label="&calendar.events.filter.next14Days.label;"
value="next14Days"/>
<menuitem id="event-filter-next31Days"
label="&calendar.events.filter.next31Days.label;"
value="next31Days"/>
<menuitem id="event-filter-thisCalendarMonth"
label="&calendar.events.filter.thisCalendarMonth.label;"
value="thisCalendarMonth"/>
<menuitem id="event-filter-future"
label="&calendar.events.filter.future.label;"
value="future"/>
<menuitem id="event-filter-current"
label="&calendar.events.filter.current.label;"
value="current"/>
</menupopup>
</menulist>
</box>
<box align="center" flex="1">
<label control="unifinder-search-field" value="&calendar.search.options.searchfor;"/>
<textbox id="unifinder-search-field" onkeypress="searchKeyPress( this, event )" flex="1"/>
</box>
</hbox>
<tree id="unifinder-search-results-listbox" flex="1"
onselect="unifinderOnSelect( event )"
onkeypress="unifinderKeyPress(event)"
enableColumnDrag="true">
<treecols id="unifinder-search-results-tree-cols">
<treecol id="unifinder-search-results-tree-col-title"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
label="&calendar.unifinder.tree.title.label;" />
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-startdate"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
label="&calendar.unifinder.tree.startdate.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-enddate"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
label="&calendar.unifinder.tree.enddate.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-categories"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
label="&calendar.unifinder.tree.categories.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-location"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.location.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-status"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.status.label;"/>
<splitter class="tree-splitter"/>
<treecol id="unifinder-search-results-tree-col-calendarname"
persist="hidden ordinal width sortDirection sortActive"
flex="1"
hidden="true"
label="&calendar.unifinder.tree.calendarname.label;"/>
</treecols>
<!-- on mousedown here happens before onclick above -->
<treechildren tooltip="eventTreeTooltip"
onkeypress="if (event.keyCode == 13) unifinderEditCommand();"
ondragover="return( false );"
ondblclick="unifinderDoubleClickEvent( event )"
onfocus="focusFirstItemIfNoSelection( );"/>
</tree>
</vbox>
<splitter id="calendar-view-splitter" collapse="before" persist="state"
class="chromeclass-extrachrome sidebar-splitter" orient="vertical" onmouseup="setTimeout( 'gCalendarWindow.onMouseUpCalendarViewSplitter()', 1 );">
<grippy class="sidebar-splitter-grippy"/>
</splitter>
<deck id="view-deck" flex="1" persist="selectedIndex">
<calendar-decorated-day-view id="day-view" flex="1"
context="context-menu"/>
<calendar-decorated-week-view id="week-view" flex="1"
context="context-menu"/>
<calendar-decorated-multiweek-view id="multiweek-view" flex="1"
context="context-menu"/>
<calendar-decorated-month-view id="month-view" flex="1"
context="context-menu"/>
</deck>
</vbox>
</hbox> <!-- End: box with unifinder on left, calendar on right -->
</vbox>
<statusbar id="status-bar" class="chromeclass-status">
<statusbarpanel id="component-bar"/>
<statusbarpanel id="statusText"
flex="1"
value="&statusText.label;"/>
<statusbarpanel id="offline-status"
class="statusbarpanel-iconic"
hidden="true"
offline="true"/>
</statusbar>
</window>