gecko-dev/calendar/base/content/calendar-recurrence-dialog.xul

204 lines
7.4 KiB
XML

<?xml version="1.0"?>
<!-- -*- Mode: xml; indent-tabs-mode: nil; -*- -->
<!--
- ***** 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 calendar views.
-
- The Initial Developer of the Original Code is Oracle Corporation
- Portions created by the Initial Developer are Copyright (C) 2005
- the Initial Developer. All Rights Reserved.
-
- Contributor(s):
- Stuart Parmenter <stuart.parmenter@oracle.com>
- Simon Paquet <bugzilla@babylonsounds.com>
-
- 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 GPL or the LGPL. 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 ***** -->
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
<?xml-stylesheet href="chrome://calendar/content/datetimepickers/datetimepickers.css" ?>
<!DOCTYPE dialog
[
<!ENTITY % dtd1 SYSTEM "chrome://calendar/locale/global.dtd" > %dtd1;
<!ENTITY % dtd2 SYSTEM "chrome://calendar/locale/calendar.dtd" > %dtd2;
]>
<dialog
id="calendar-recurrence-dialog"
title="&newevent.recurrence.title;"
buttons="accept,cancel"
ondialogaccept="return onAccept();"
ondialogcancel="return onCancel();"
onload="onLoad()"
persist="screenX screenY"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://calendar/content/calendar-recurrence-dialog.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendar-dialog-utils.js"/>
<script type="application/x-javascript" src="chrome://calendar/content/calendarUtils.js"/>
<vbox>
<grid flex="1">
<columns>
<column/>
<column flex="1"/>
</columns>
<rows>
<row align="center">
<label value="&newevent.recurrence.occurs.label;"/>
<menulist id="period-list" oncommand="updateDeck();">
<menupopup>
<menuitem label="&newevent.recurrence.day.label;" value="0"/>
<menuitem label="&newevent.recurrence.week.label;" value="1"/>
<menuitem label="&newevent.recurrence.month.label;" value="2"/>
<menuitem label="&newevent.recurrence.year.label;" value="3"/>
</menupopup>
</menulist>
</row>
<row>
<spacer/>
<deck id="period-deck">
<!-- Daily -->
<hbox align="top">
<label value="&newevent.recurrence.every.label;"/>
<textbox id="daily-days" size="3" oninput="validateIntegers(event);"/>
<label value="&repeat.units.days;"/>
<spacer flex="1"/>
</hbox>
<!-- Weekly -->
<hbox>
<label value="&newevent.recurrence.on.label;"/>
<vbox>
<checkbox id="weekly-mon" label="&day.2.name;" value="2"/>
<checkbox id="weekly-tue" label="&day.3.name;" value="3"/>
<checkbox id="weekly-wed" label="&day.4.name;" value="4"/>
<checkbox id="weekly-thu" label="&day.5.name;" value="5"/>
</vbox>
<vbox>
<checkbox id="weekly-fri" label="&day.6.name;" value="6"/>
<checkbox id="weekly-sat" label="&day.7.name;" value="7"/>
<checkbox id="weekly-sun" label="&day.1.name;" value="1"/>
</vbox>
</hbox>
<vbox align="center">
<menulist>
<menupopup>
<menuitem label="&newevent.recurrence.every.label;"/>
<menuitem label="&newevent.repeat.first.label;"/>
<menuitem label="&newevent.repeat.second.label;"/>
<menuitem label="&newevent.repeat.third.label;"/>
<menuitem label="&newevent.repeat.fourth.label;"/>
<menuitem label="&newevent.repeat.fifth.label;"/>
<menuitem label="&newevent.repeat.last.label;"/>
</menupopup>
</menulist>
<hbox>
<label value="&newevent.repeat.onthe.label;"/>
<textbox value="10,23,29" size="3"/>
</hbox>
</vbox>
<hbox align="top">
<label value="&newevent.recurrence.every.label;"/>
<textbox id="yearly-years" size="3" oninput="validateIntegers(event);"/>
<label value="&repeat.units.years;"/>
<spacer flex="1"/>
</hbox>
</deck>
</row>
</rows>
</grid>
</vbox>
<spacer flex="1"/>
<vbox>
<radiogroup id="recurrence-duration" oncommand="updateDuration()">
<grid flex="1">
<columns>
<column/>
<column flex="1"/>
</columns>
<rows equalsize="always">
<row align="center">
<radio label="&newevent.repeat.forever.label;" value="forever" selected="true"/>
<spacer/>
</row>
<row>
<radio label="&newevent.repeat.for.label;" value="ntimes"/>
<hbox>
<textbox id="repeat-ntimes-count" size="3" oninput="validateIntegers(event);"/>
<spacer flex="0.5"/>
<menulist id="repeat-ntimes-units">
<menupopup>
<menuitem label="&repeat.units.days.both;"/>
<menuitem label="&repeat.units.weeks.both;"/>
<menuitem label="&repeat.units.months.both;"/>
<menuitem label="&repeat.units.years.both;"/>
</menupopup>
</menulist>
<spacer flex="1"/>
</hbox>
</row>
<row>
<radio label="&newevent.repeat.until.label;" value="until"/>
<hbox>
<datepicker id="repeat-until-date" value=""/>
<spacer flex="1"/>
</hbox>
</row>
</rows>
</grid>
</radiogroup>
</vbox>
<spacer flex="1"/>
<vbox>
<label value="&newevent.recurrence.exceptions.label;"/>
<hbox align="center">
<listbox id="recurrence-exceptions-listbox" rows="8" flex="1"/>
<vbox align="top">
<button label="&newevent.recurrence.remove.label;" oncommand="removeSelectedException();"/>
</vbox>
</hbox>
</vbox>
</dialog>