This commit was generated by cvs2svn to compensate for changes in r161,
[gnokii.git] / win32_makefile / gui_delphi / Calendar.pas
1 unit Calendar;\r
2 \r
3 interface\r
4 \r
5 uses\r
6   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,\r
7   Dialogs, ComCtrls, StdCtrls,GnokiiAPI,MainUnit;\r
8 \r
9 type\r
10   TCalendarForm = class(TForm)\r
11     Label1: TLabel;\r
12     ComboBox1: TComboBox;\r
13     DateTimePicker1: TDateTimePicker;\r
14     Label2: TLabel;\r
15     GroupBox1: TGroupBox;\r
16     CheckBox1: TCheckBox;\r
17     DateTimePicker2: TDateTimePicker;\r
18     Edit2: TEdit;\r
19     Label3: TLabel;\r
20     Label4: TLabel;\r
21     Button1: TButton;\r
22     Button2: TButton;\r
23     DateTimePicker3: TDateTimePicker;\r
24     DateTimePicker4: TDateTimePicker;\r
25     Label5: TLabel;\r
26     Label6: TLabel;\r
27     CheckBox2: TCheckBox;\r
28     ComboBox2: TComboBox;\r
29     RadioButton1: TRadioButton;\r
30     RadioButton2: TRadioButton;\r
31     ComboBox3: TComboBox;\r
32     procedure Button1Click(Sender: TObject);\r
33     procedure Button2Click(Sender: TObject);\r
34     procedure CheckBox1Click(Sender: TObject);\r
35     procedure DateTimePicker1Change(Sender: TObject);\r
36     procedure DateTimePicker2Change(Sender: TObject);\r
37     procedure FormShow(Sender: TObject);\r
38     procedure ComboBox1Select(Sender: TObject);\r
39     procedure CheckBox2Click(Sender: TObject);\r
40   private\r
41     { Private declarations }\r
42   public\r
43     { Public declarations }\r
44   end;\r
45 \r
46 var\r
47   CalendarForm: TCalendarForm;\r
48 \r
49 implementation\r
50 \r
51 {$R *.dfm}\r
52 \r
53 procedure TCalendarForm.Button1Click(Sender: TObject);\r
54 var\r
55   i,j,z:integer;\r
56   s:string;\r
57 begin\r
58   case ComboBox1.ItemIndex of\r
59     0:setcalendarnote.Type2:=GCN_BIRTHDAY;\r
60     1:setcalendarnote.Type2:=GCN_CALL;\r
61     2:setcalendarnote.Type2:=GCN_MEETING;\r
62     3:setcalendarnote.Type2:=GCN_REMINDER;\r
63   end;\r
64 \r
65   for i:=1 to 59 do\r
66     setcalendarnote.Text[i]:=chr(0);\r
67   for i:=1 to strlen(pchar(Edit2.text)) do\r
68     setcalendarnote.Text[i]:=Edit2.Text[i];\r
69 \r
70   for i:=1 to 37 do\r
71     setcalendarnote.Phone[i]:=chr(0);\r
72   if (ComboBox3.ItemIndex=-1) then\r
73   begin\r
74     for i:=1 to strlen(pchar(ComboBox3.text)) do\r
75       setcalendarnote.Phone[i]:=ComboBox3.Text[i];\r
76   end else\r
77   begin\r
78     ReadPBKOffline;\r
79     for z:=1 to PBKOfflineNumber do\r
80     begin\r
81       MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[z].Name;\r
82       if (MainForm.Label16.Caption=ComboBox3.Text) then\r
83       begin\r
84         if (PhoneBackup.PhonePhonebook[z].Number[1]<>chr(0)) then\r
85         begin\r
86           MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[z].Number;\r
87           for i:=1 to strlen(pchar(MainForm.Label14.Caption)) do\r
88             setcalendarnote.Phone[i]:=PhoneBackup.PhonePhonebook[z].Number[i];\r
89         end else\r
90         begin\r
91           for j:=1 to PhoneBackup.PhonePhonebook[z].SubEntriesCount do\r
92           begin\r
93             if PhoneBackup.PhonePhonebook[z].SubEntries[j].EntryType=GSM_Number then\r
94             begin\r
95               MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[z].SubEntries[j].Number;\r
96               for i:=1 to strlen(pchar(MainForm.Label14.Caption)) do\r
97                 setcalendarnote.Phone[i]:=PhoneBackup.PhonePhonebook[z].SubEntries[j].Number[i];\r
98               break;\r
99             end;\r
100           end;\r
101         end;\r
102       end;\r
103     end;\r
104   end;\r
105 \r
106   DateTimeToString(s, 'yyyy',CalendarForm.DateTimePicker1.Date);\r
107   setcalendarnote.Time.Year:=strtoint(s);\r
108   DateTimeToString(s, 'm',CalendarForm.DateTimePicker1.Date);\r
109   setcalendarnote.Time.Month:=strtoint(s);\r
110   DateTimeToString(s, 'd',CalendarForm.DateTimePicker1.Date);\r
111   setcalendarnote.Time.Day:=strtoint(s);\r
112   DateTimeToString(s, 'h',CalendarForm.DateTimePicker3.Time);\r
113   setcalendarnote.Time.Hour:=strtoint(s);\r
114   DateTimeToString(s, 'n',CalendarForm.DateTimePicker3.Time);\r
115   setcalendarnote.Time.Minute:=strtoint(s);\r
116   DateTimeToString(s, 's',CalendarForm.DateTimePicker3.Time);\r
117   setcalendarnote.Time.Second:=strtoint(s);\r
118   setcalendarnote.Time.IsSet:=1;\r
119 \r
120   DateTimeToString(s, 'yyyy',CalendarForm.DateTimePicker2.Date);\r
121   setcalendarnote.Alarm.Year:=strtoint(s);\r
122   DateTimeToString(s, 'm',CalendarForm.DateTimePicker2.Date);\r
123   setcalendarnote.Alarm.Month:=strtoint(s);\r
124   DateTimeToString(s, 'd',CalendarForm.DateTimePicker2.Date);\r
125   setcalendarnote.Alarm.Day:=strtoint(s);\r
126   DateTimeToString(s, 'h',CalendarForm.DateTimePicker4.Time);\r
127   setcalendarnote.Alarm.Hour:=strtoint(s);\r
128   DateTimeToString(s, 'n',CalendarForm.DateTimePicker4.Time);\r
129   setcalendarnote.Alarm.Minute:=strtoint(s);\r
130   DateTimeToString(s, 's',CalendarForm.DateTimePicker4.Time);\r
131   setcalendarnote.Alarm.Second:=strtoint(s);\r
132 \r
133   if not CheckBox1.Checked then\r
134     setcalendarnote.Alarm.Year:=0;\r
135 \r
136   if CheckBox2.Checked then\r
137   begin\r
138     case ComboBox2.ItemIndex of\r
139       0:setcalendarnote.Recurrance:=1*24;\r
140       1:setcalendarnote.Recurrance:=7*24;\r
141       2:setcalendarnote.Recurrance:=14*24;\r
142       3:setcalendarnote.Recurrance:=365*24;\r
143     end;\r
144   end else\r
145   begin\r
146     setcalendarnote.Recurrance:=0;\r
147   end;\r
148 \r
149   if RadioButton1.Checked then\r
150     setcalendarnote.AlarmType:=0\r
151   else\r
152     setcalendarnote.AlarmType:=1;\r
153     \r
154   GSM_DeleteCalendarNote(@setcalendarnote);\r
155   GSM_WriteCalendarNote(@setcalendarnote);\r
156 \r
157   MainForm.CalendarTabSheetShow(nil);\r
158 \r
159   CalendarForm.Close;\r
160 end;\r
161 \r
162 procedure TCalendarForm.Button2Click(Sender: TObject);\r
163 begin\r
164   CalendarForm.Close;\r
165 end;\r
166 \r
167 procedure TCalendarForm.CheckBox1Click(Sender: TObject);\r
168 begin\r
169   if CheckBox1.Checked then\r
170   begin\r
171     DateTimePicker2.Enabled:=true;\r
172     DateTimePicker4.Enabled:=true;\r
173   end else\r
174   begin\r
175     DateTimePicker2.Enabled:=false;\r
176     DateTimePicker4.Enabled:=false;\r
177   end;\r
178 end;\r
179 \r
180 procedure TCalendarForm.DateTimePicker1Change(Sender: TObject);\r
181 begin\r
182   Label5.Caption:=DayOfWeek3(DateTimePicker1.Date);\r
183 end;\r
184 \r
185 procedure TCalendarForm.DateTimePicker2Change(Sender: TObject);\r
186 begin\r
187   Label6.Caption:=DayOfWeek3(DateTimePicker2.Date);\r
188 end;\r
189 \r
190 procedure TCalendarForm.FormShow(Sender: TObject);\r
191 begin\r
192   Label5.Caption:=DayOfWeek3(DateTimePicker1.Date);\r
193   Label6.Caption:=DayOfWeek3(DateTimePicker2.Date);\r
194 end;\r
195 \r
196 procedure TCalendarForm.ComboBox1Select(Sender: TObject);\r
197 begin\r
198   if GSM_GetModelFeature(FN_CALENDAR)=F_CAL71 then\r
199   begin\r
200     CalendarForm.RadioButton1.Visible:=True;\r
201     CalendarForm.RadioButton2.Visible:=True;\r
202     CalendarForm.CheckBox2.Visible:=True;\r
203     CalendarForm.ComboBox2.Visible:=True;\r
204     if ComboBox1.ItemIndex=0 then //birthday\r
205     begin\r
206       CalendarForm.RadioButton1.Enabled:=True;\r
207       CalendarForm.RadioButton2.Enabled:=True;\r
208       CalendarForm.CheckBox2.Enabled:=False;\r
209       CalendarForm.ComboBox2.Enabled:=False;\r
210     end else\r
211     begin\r
212       CalendarForm.RadioButton1.Enabled:=False;\r
213       CalendarForm.RadioButton2.Enabled:=False;\r
214       CalendarForm.CheckBox2.Enabled:=True;\r
215       CalendarForm.ComboBox2.Enabled:=CalendarForm.CheckBox2.Checked;\r
216     end;\r
217     if ComboBox1.ItemIndex=3 then //memo\r
218     begin\r
219       CalendarForm.CheckBox1.Enabled:=False;\r
220       CalendarForm.Label6.Enabled:=False;\r
221       CalendarForm.DateTimePicker2.Enabled:=False;\r
222       CalendarForm.DateTimePicker4.Enabled:=False;\r
223     end else begin\r
224       CalendarForm.CheckBox1.Enabled:=True;\r
225       CalendarForm.Label6.Enabled:=True;\r
226       CalendarForm.DateTimePicker2.Enabled:=True;\r
227       CalendarForm.DateTimePicker4.Enabled:=True;\r
228     end;\r
229   end else begin\r
230     CalendarForm.RadioButton1.Visible:=False;\r
231     CalendarForm.RadioButton2.Visible:=False;\r
232     CalendarForm.CheckBox2.Visible:=False;\r
233     CalendarForm.ComboBox2.Visible:=False;\r
234   end;\r
235   if ComboBox1.ItemIndex=1 then //call\r
236   begin\r
237     CalendarForm.ComboBox3.Enabled:=True;\r
238     CalendarForm.Label4.Enabled:=True;\r
239   end else\r
240   begin\r
241     CalendarForm.ComboBox3.Enabled:=False;\r
242     CalendarForm.Label4.Enabled:=False;\r
243   end;\r
244 end;\r
245 \r
246 procedure TCalendarForm.CheckBox2Click(Sender: TObject);\r
247 begin\r
248   CalendarForm.ComboBox2.Enabled:=CalendarForm.CheckBox2.Checked;\r
249 end;\r
250 \r
251 end.\r