Upgrade to ExtJS 3.3.1 - Released 11/30/2010
[extjs.git] / examples / docs / source / ReminderField.html
1 <html>
2 <head>
3   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
4   <title>The source code</title>
5     <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
6     <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
7 </head>
8 <body  onload="prettyPrint();">
9     <pre class="prettyprint lang-js">/*!
10  * Ext JS Library 3.3.1
11  * Copyright(c) 2006-2010 Sencha Inc.
12  * licensing@sencha.com
13  * http://www.sencha.com/license
14  */
15 <div id="cls-Ext.calendar.ReminderField"></div>/**
16  * @class Ext.calendar.ReminderField
17  * @extends Ext.form.ComboBox
18  * <p>A custom combo used for choosing a reminder setting for an event.</p>
19  * <p>This is pretty much a standard combo that is simply pre-configured for the options needed by the
20  * calendar components. The default configs are as follows:<pre><code>
21     width: 200,
22     fieldLabel: 'Reminder',
23     mode: 'local',
24     triggerAction: 'all',
25     forceSelection: true,
26     displayField: 'desc',
27     valueField: 'value'
28 </code></pre>
29  * @constructor
30  * @param {Object} config The config object
31  */
32 Ext.calendar.ReminderField = Ext.extend(Ext.form.ComboBox, {
33     width: 200,
34     fieldLabel: 'Reminder',
35     mode: 'local',
36     triggerAction: 'all',
37     forceSelection: true,
38     displayField: 'desc',
39     valueField: 'value',
40
41     // private
42     initComponent: function() {
43         Ext.calendar.ReminderField.superclass.initComponent.call(this);
44
45         this.store = this.store || new Ext.data.ArrayStore({
46             fields: ['value', 'desc'],
47             idIndex: 0,
48             data: [
49             ['', 'None'],
50             ['0', 'At start time'],
51             ['5', '5 minutes before start'],
52             ['15', '15 minutes before start'],
53             ['30', '30 minutes before start'],
54             ['60', '1 hour before start'],
55             ['90', '1.5 hours before start'],
56             ['120', '2 hours before start'],
57             ['180', '3 hours before start'],
58             ['360', '6 hours before start'],
59             ['720', '12 hours before start'],
60             ['1440', '1 day before start'],
61             ['2880', '2 days before start'],
62             ['4320', '3 days before start'],
63             ['5760', '4 days before start'],
64             ['7200', '5 days before start'],
65             ['10080', '1 week before start'],
66             ['20160', '2 weeks before start']
67             ]
68         });
69     },
70
71     // inherited docs
72     initValue: function() {
73         if (this.value !== undefined) {
74             this.setValue(this.value);
75         }
76         else {
77             this.setValue('');
78         }
79         this.originalValue = this.getValue();
80     }
81 });
82
83 Ext.reg('reminderfield', Ext.calendar.ReminderField);
84 </pre>    
85 </body>
86 </html>