8 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
\r
9 Dialogs, ComCtrls, GnokiiAPI, ExtCtrls, Menus, StdCtrls, Spin, IniFiles;
\r
12 TMainForm = class(TForm)
\r
13 StatusBar1: TStatusBar;
\r
14 TreeView1: TTreeView;
\r
15 Splitter1: TSplitter;
\r
16 MainMenu1: TMainMenu;
\r
22 OpenDialog1: TOpenDialog;
\r
23 SaveDialog1: TSaveDialog;
\r
24 PageControl1: TPageControl;
\r
25 NetmonitorTabSheet: TTabSheet;
\r
26 GroupBox1: TGroupBox;
\r
28 NetmonGroupBox: TGroupBox;
\r
29 NetmonLabel: TLabel;
\r
30 SpinEdit1: TSpinEdit;
\r
32 PhonebookTabSheet: TTabSheet;
\r
33 GroupBox2: TGroupBox;
\r
36 ComboBox1: TComboBox;
\r
37 ListView1: TListView;
\r
38 PhoneTabSheet: TTabSheet;
\r
39 GroupBox3: TGroupBox;
\r
40 GroupBox12: TGroupBox;
\r
48 GroupBox14: TGroupBox;
\r
49 ListView8: TListView;
\r
50 GroupBox11: TGroupBox;
\r
51 CheckBox1: TCheckBox;
\r
52 LogosTabSheet: TTabSheet;
\r
53 GroupBox4: TGroupBox;
\r
57 ComboBox2: TComboBox;
\r
64 RingtonesTabSheet: TTabSheet;
\r
65 GroupBox5: TGroupBox;
\r
70 SMSTabSheet: TTabSheet;
\r
71 GroupBox6: TGroupBox;
\r
74 ComboBox3: TComboBox;
\r
75 ListView2: TListView;
\r
76 SpeedTabSheet: TTabSheet;
\r
77 GroupBox7: TGroupBox;
\r
78 ListView3: TListView;
\r
79 CalendarTabSheet: TTabSheet;
\r
80 GroupBox8: TGroupBox;
\r
81 ListView4: TListView;
\r
82 SMSCTabSheet: TTabSheet;
\r
83 GroupBox9: TGroupBox;
\r
84 ListView6: TListView;
\r
85 CallerTabSheet: TTabSheet;
\r
86 GroupBox10: TGroupBox;
\r
87 ListView5: TListView;
\r
88 ProfileTabSheet: TTabSheet;
\r
89 GroupBox13: TGroupBox;
\r
90 ListView7: TListView;
\r
92 Splitter2: TSplitter;
\r
93 GroupBox15: TGroupBox;
\r
94 GroupBox16: TGroupBox;
\r
101 CalendarPopupMenu: TPopupMenu;
\r
104 Delete1: TMenuItem;
\r
105 SMSPopupMenu: TPopupMenu;
\r
112 WapBookTabSheet: TTabSheet;
\r
113 GroupBox17: TGroupBox;
\r
114 DateTimePicker1: TDateTimePicker;
\r
115 ConfigTabSheet: TTabSheet;
\r
116 GroupBox18: TGroupBox;
\r
117 Configuration1: TMenuItem;
\r
119 Delete2: TMenuItem;
\r
120 SMSCPopupMenu: TPopupMenu;
\r
123 ComboBox4: TComboBox;
\r
125 ComboBox5: TComboBox;
\r
127 CheckBox2: TCheckBox;
\r
130 PBKPopupMenu: TPopupMenu;
\r
135 SMSSendSave1: TMenuItem;
\r
136 ComboBox6: TComboBox;
\r
137 WAPSettTabSheet: TTabSheet;
\r
138 DivertTabSheet: TTabSheet;
\r
139 GroupBox19: TGroupBox;
\r
140 GroupBox20: TGroupBox;
\r
142 ListView9: TListView;
\r
143 AboutTabSheet: TTabSheet;
\r
144 GroupBox21: TGroupBox;
\r
147 PCSMSTabSheet: TTabSheet;
\r
148 GroupBox22: TGroupBox;
\r
150 Splitter3: TSplitter;
\r
152 ListView10: TListView;
\r
153 CopytoPC1: TMenuItem;
\r
157 PCSMSPopupMenu: TPopupMenu;
\r
158 SendSave1: TMenuItem;
\r
160 Delete3: TMenuItem;
\r
162 ComboBox7: TComboBox;
\r
168 ComboBox8: TComboBox;
\r
170 ComboBox9: TComboBox;
\r
172 ComboBox10: TComboBox;
\r
182 ComboBox11: TComboBox;
\r
184 ComboBox12: TComboBox;
\r
186 ComboBox13: TComboBox;
\r
194 ComboBox14: TComboBox;
\r
196 PageControl2: TPageControl;
\r
197 TabSheet1: TTabSheet;
\r
204 ComboBox15: TComboBox;
\r
208 PCCalendarTabSheet: TTabSheet;
\r
209 GroupBox23: TGroupBox;
\r
210 ListView11: TListView;
\r
212 CopytoPC2: TMenuItem;
\r
213 PCCalendarPopupMenu: TPopupMenu;
\r
214 Copytocalendar1: TMenuItem;
\r
216 Delete5: TMenuItem;
\r
217 PCOfflineTabSheet: TTabSheet;
\r
218 GroupBox24: TGroupBox;
\r
223 TabSheet2: TTabSheet;
\r
224 TabSheet3: TTabSheet;
\r
226 Savebackuptofile1: TMenuItem;
\r
227 Restorebackupfromfile1: TMenuItem;
\r
229 Savephonebooktofileanotherapplication1: TMenuItem;
\r
230 PCPBKTabSheet: TTabSheet;
\r
231 GroupBox25: TGroupBox;
\r
232 ListView12: TListView;
\r
235 Delete4: TMenuItem;
\r
237 WAPBookPopupMenu: TPopupMenu;
\r
239 SMSSendSave2: TMenuItem;
\r
243 CopyphonebooktoPC1: TMenuItem;
\r
244 procedure TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
\r
245 Shift: TShiftState; X, Y: Integer);
\r
246 procedure FormCreate(Sender: TObject);
\r
247 procedure Timer1Timer(Sender: TObject);
\r
248 procedure NetmonitorTabSheetShow(Sender: TObject);
\r
249 procedure NetmonitorTabSheetHide(Sender: TObject);
\r
250 procedure SpinEdit1Change(Sender: TObject);
\r
251 procedure ComboBox1Change(Sender: TObject);
\r
252 procedure PhonebookTabSheetHide(Sender: TObject);
\r
253 procedure Quit1Click(Sender: TObject);
\r
254 procedure FormResize(Sender: TObject);
\r
255 procedure About1Click(Sender: TObject);
\r
256 procedure LogosImageMouseMove(Sender: TObject; Shift: TShiftState; X,
\r
258 procedure Button1Click(Sender: TObject);
\r
259 procedure Button4Click(Sender: TObject);
\r
260 procedure Button3Click(Sender: TObject);
\r
261 procedure PhoneTabSheetShow(Sender: TObject);
\r
262 procedure Button2Click(Sender: TObject);
\r
263 procedure LogosTabSheetShow(Sender: TObject);
\r
264 procedure ComboBox2Select(Sender: TObject);
\r
265 procedure Button7Click(Sender: TObject);
\r
266 procedure LogosImageMouseDown(Sender: TObject; Button: TMouseButton;
\r
267 Shift: TShiftState; X, Y: Integer);
\r
268 procedure Button6Click(Sender: TObject);
\r
269 procedure Button5Click(Sender: TObject);
\r
270 procedure Button8Click(Sender: TObject);
\r
271 procedure SpeedTabSheetShow(Sender: TObject);
\r
272 procedure Button9Click(Sender: TObject);
\r
273 procedure SpeedTabSheetHide(Sender: TObject);
\r
274 procedure Button11Click(Sender: TObject);
\r
275 procedure Button12Click(Sender: TObject);
\r
276 procedure CalendarTabSheetShow(Sender: TObject);
\r
277 procedure CallerTabSheetShow(Sender: TObject);
\r
278 procedure SMSCTabSheetShow(Sender: TObject);
\r
279 procedure Button10Click(Sender: TObject);
\r
280 procedure ProfileTabSheetShow(Sender: TObject);
\r
281 procedure SMSCTabSheetHide(Sender: TObject);
\r
282 procedure CalendarTabSheetHide(Sender: TObject);
\r
283 procedure CallerTabSheetHide(Sender: TObject);
\r
284 procedure ProfileTabSheetHide(Sender: TObject);
\r
285 procedure PhonebookTabSheetShow(Sender: TObject);
\r
286 procedure SMSTabSheetShow(Sender: TObject);
\r
287 procedure ComboBox3Change(Sender: TObject);
\r
288 procedure ListView2SelectItem(Sender: TObject; Item: TListItem;
\r
289 Selected: Boolean);
\r
290 procedure New1Click(Sender: TObject);
\r
291 procedure Edit3Click(Sender: TObject);
\r
292 procedure ListView4SelectItem(Sender: TObject; Item: TListItem;
\r
293 Selected: Boolean);
\r
294 procedure Delete1Click(Sender: TObject);
\r
295 procedure Button16Click(Sender: TObject);
\r
296 procedure Edit4Click(Sender: TObject);
\r
297 procedure New2Click(Sender: TObject);
\r
298 procedure Configuration1Click(Sender: TObject);
\r
299 procedure TreeView1KeyUp(Sender: TObject; var Key: Word;
\r
300 Shift: TShiftState);
\r
301 procedure SMSTabSheetHide(Sender: TObject);
\r
302 procedure SMSPopupMenuPopup(Sender: TObject);
\r
303 procedure CalendarPopupMenuPopup(Sender: TObject);
\r
304 procedure Edit1Change(Sender: TObject);
\r
305 procedure Delete2Click(Sender: TObject);
\r
306 procedure Edit5Click(Sender: TObject);
\r
307 procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
\r
308 Shift: TShiftState; X, Y: Integer);
\r
309 procedure SMSCPopupMenuPopup(Sender: TObject);
\r
310 procedure ListView6SelectItem(Sender: TObject; Item: TListItem;
\r
311 Selected: Boolean);
\r
312 procedure ListView1SelectItem(Sender: TObject; Item: TListItem;
\r
313 Selected: Boolean);
\r
314 procedure Edit7Click(Sender: TObject);
\r
315 procedure Button18Click(Sender: TObject);
\r
316 procedure Button17Click(Sender: TObject);
\r
317 procedure SMS1Click(Sender: TObject);
\r
318 procedure SMSSendSave1Click(Sender: TObject);
\r
319 procedure Button13Click(Sender: TObject);
\r
320 procedure Button14Click(Sender: TObject);
\r
321 procedure ConfigTabSheetHide(Sender: TObject);
\r
322 procedure ConfigTabSheetShow(Sender: TObject);
\r
323 procedure Timer2Timer(Sender: TObject);
\r
324 procedure AboutTabSheetShow(Sender: TObject);
\r
325 procedure PCSMSTabSheetShow(Sender: TObject);
\r
326 procedure CopytoPC1Click(Sender: TObject);
\r
327 procedure ListView10SelectItem(Sender: TObject; Item: TListItem;
\r
328 Selected: Boolean);
\r
329 procedure PCSMSPopupMenuPopup(Sender: TObject);
\r
330 procedure Delete3Click(Sender: TObject);
\r
331 procedure SendSave1Click(Sender: TObject);
\r
332 procedure WapBookTabSheetHide(Sender: TObject);
\r
333 procedure WapBookTabSheetShow(Sender: TObject);
\r
334 procedure ComboBox7Change(Sender: TObject);
\r
335 procedure Button19Click(Sender: TObject);
\r
336 procedure Button20Click(Sender: TObject);
\r
337 procedure PCOfflineTabSheetShow(Sender: TObject);
\r
338 procedure PCCalendarTabSheetShow(Sender: TObject);
\r
339 procedure CopytoPC2Click(Sender: TObject);
\r
340 procedure Delete5Click(Sender: TObject);
\r
341 procedure Copytocalendar1Click(Sender: TObject);
\r
342 procedure PCCalendarPopupMenuPopup(Sender: TObject);
\r
343 procedure Savebackuptofile1Click(Sender: TObject);
\r
344 procedure Restorebackupfromfile1Click(Sender: TObject);
\r
345 procedure PBKPopupMenuPopup(Sender: TObject);
\r
346 procedure Savephonebooktofileanotherapplication1Click(Sender: TObject);
\r
347 procedure ListView4DblClick(Sender: TObject);
\r
348 procedure Edit19Click(Sender: TObject);
\r
349 procedure Delete4Click(Sender: TObject);
\r
350 procedure Button22Click(Sender: TObject);
\r
351 procedure New20Click(Sender: TObject);
\r
352 procedure ListView9SelectItem(Sender: TObject; Item: TListItem;
\r
353 Selected: Boolean);
\r
354 procedure Edit20Click(Sender: TObject);
\r
355 procedure WAPBookPopupMenuPopup(Sender: TObject);
\r
356 procedure SMSSendSave2Click(Sender: TObject);
\r
357 procedure Button23Click(Sender: TObject);
\r
358 procedure CopyphonebooktoPC1Click(Sender: TObject);
\r
359 procedure PCPBKTabSheetShow(Sender: TObject);
\r
361 { Private declarations }
\r
363 { Public declarations }
\r
367 MainForm: TMainForm;
\r
368 setcalendarnote:GSM_CalendarNote;
\r
369 setsms:GSM_MultiSMSMessage;
\r
370 setsmslocation:integer;
\r
371 smscselectitem:integer;
\r
373 rington:GSM_Ringtone;
\r
374 calenda:GSM_CalendarNote;
\r
375 pbk:GSM_PhonebookEntry;
\r
376 previewcolor:TColor;
\r
377 bookmarknum2:integer;
\r
378 bookma:GSM_WAPBookmark;
\r
379 wapset:GSM_WAPSettings;
\r
380 pbkofflinenumber:integer;
\r
382 PhoneBackup: GSM_Backup;
\r
383 PhoneBackupAvailable:boolean;
\r
385 procedure AddCalendarNote(note:GSM_CalendarNote;myview:TListView);
\r
386 function DayOFweek3(date:TDateTime):string;
\r
387 procedure SetSMSC(num:integer);
\r
388 procedure ReadPBKOffline;
\r
392 uses Calendar, SMSEdit, LogosRing, Netmon, smscedit, pbkedit, backup,
\r
393 backup2, pbkedit2, wapbook;
\r
398 TNetmonThread = class(TThread)
\r
400 procedure Execute; override;
\r
402 TPhonebookThread = class(TThread)
\r
404 procedure Execute; override;
\r
406 TSpeedThread = class(TThread)
\r
408 procedure Execute; override;
\r
410 TSMSCThread = class(TThread)
\r
412 procedure Execute; override;
\r
414 TSMSThread = class(TThread)
\r
416 procedure Execute; override;
\r
418 TCalendarThread = class(TThread)
\r
420 procedure Execute; override;
\r
422 TCallerThread = class(TThread)
\r
424 procedure Execute; override;
\r
426 TProfileThread = class(TThread)
\r
428 procedure Execute; override;
\r
430 TPlayRingtoneThread = class(TThread)
\r
432 procedure Execute; override;
\r
434 TWAPBookmarkThread = class(TThread)
\r
436 procedure Execute; override;
\r
443 //reading netmonitor variables
\r
444 netmonnum: integer; //number of netmon screen
\r
445 NetmonThread: TNetmonThread;
\r
447 //reading phonebook memories variables
\r
448 phonebookstatus:GSM_MemoryStatus;
\r
449 phonebookcur:integer;
\r
450 phonebookfound:integer;
\r
451 PhonebookThread: TPhonebookThread;
\r
452 pbknumberentry:integer;
\r
457 logofilename:string='xxx';
\r
460 PlayRingtoneThread: TPlayRingtoneThread;
\r
462 binring:GSM_BinRingtone;
\r
466 SpeedThread: TSpeedThread;
\r
469 caller:array[1..5] of GSM_Bitmap;
\r
470 callerinit:boolean;
\r
472 CallerThread: TCallerThread;
\r
476 SMSCThread: TSMSCThread;
\r
478 SMSC2:array[1..10] of GSM_MessageCenter;
\r
481 calendarnum:integer;
\r
482 CalendarThread: TCalendarThread;
\r
483 calendarselect:integer;
\r
484 readcalendar:boolean;
\r
486 CalendarOffline:array[1..300] of GSM_CalendarNote;
\r
487 CalendarOfflineNumber:integer;
\r
490 profilenum:integer;
\r
491 ProfileThread: TProfileThread;
\r
493 SMS:array[1..200] of GSM_SMSMessage;
\r
495 SMSfolders:GSM_SMSFolders;
\r
496 SMSstatus:GSM_SMSStatus;
\r
497 smsnumindex:integer;
\r
498 SMSThread: TSMSThread;
\r
501 SMSOffline:array[1..300] of GSM_SMSMessage;
\r
502 SMSOfflineNumber:integer;
\r
505 WAPBookmarkThread: TWAPBookmarkThread;
\r
506 bookmarknum:integer;
\r
508 function Inttostr2(I: Longint;digits:integer): string;
\r
510 { Convert any integer type to a string }
\r
518 if s[j]<>' ' then break;
\r
524 function DayOFweek3(date:TDateTime):string;
\r
526 days: array[1..7] of string;
\r
535 DayOfWeek3:= days[DayOfWeek(date)];
\r
538 function DayOFweek2(day:integer;month:integer;year:integer):string;
\r
542 Date:=EncodeDate(Year,Month,Day);
\r
543 DayOfWeek2:= DayOfWeek3(Date);
\r
546 procedure SetSMSC(num:integer);
\r
548 SMSEditForm.Edit1.Text:=SMSC2[num].Number;
\r
549 case SMSC2[num].Validity of
\r
550 GSMV_1_Hour : SMSEditForm.ComboBox3.ItemIndex:=0;
\r
551 GSMV_6_Hours : SMSEditForm.ComboBox3.ItemIndex:=1;
\r
552 GSMV_24_Hours : SMSEditForm.ComboBox3.ItemIndex:=2;
\r
553 GSMV_72_Hours : SMSEditForm.ComboBox3.ItemIndex:=3;
\r
554 GSMV_1_Week : SMSEditForm.ComboBox3.ItemIndex:=4;
\r
556 SMSEditForm.ComboBox3.ItemIndex:=5;
\r
559 case SMSC2[num].Format of
\r
560 GSMF_Text : SMSEditForm.ComboBox4.ItemIndex:=0;
\r
561 GSMF_Fax : SMSEditForm.ComboBox4.ItemIndex:=1;
\r
562 GSMF_Email : SMSEditForm.ComboBox4.ItemIndex:=2;
\r
564 SMSEditForm.ComboBox4.ItemIndex:=3;
\r
568 procedure ReadPBKOffline;
\r
569 var F:file of GSM_PhonebookEntry;
\r
571 AssignFile(F, 'gnokiipbk');
\r
573 if (ioresult=0) then
\r
575 phonebackup.PhonePhonebookUsed:=0;
\r
576 pbkofflinenumber:=0;
\r
577 while not eof(f) do
\r
579 pbkofflinenumber:=pbkofflinenumber+1;
\r
580 read(f,PhoneBackup.PhonePhonebook[pbkofflinenumber]);
\r
586 procedure SavePBKOffline;
\r
587 var F:file of GSM_PhonebookEntry;
\r
590 AssignFile(F, 'gnokiipbk');
\r
592 for i:=1 to PBKOfflineNumber do
\r
594 Write(f,PhoneBackup.PhonePhonebook[i]);
\r
599 procedure AddSMSEditSenderList;
\r
603 SMSEditForm.ComboBox9.Items.Clear;
\r
604 SMSEditForm.ComboBox9.Sorted:=false;
\r
605 for i:=1 to PBKOfflineNumber do
\r
607 if (PhoneBackup.PhonePhonebook[i].Number[1]<>chr(0)) then
\r
609 SMSEditForm.ComboBox9.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
612 for j:=1 to PhoneBackup.PhonePhonebook[i].SubEntriesCount do
\r
614 if PhoneBackup.PhonePhonebook[i].SubEntries[j].EntryType=GSM_Number then
\r
616 SMSEditForm.ComboBox9.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
622 SMSEditForm.ComboBox9.Sorted:=true;
\r
625 procedure ReadCallerGroup();
\r
631 if callernum<6 then
\r
636 logo.type2:=GSM_CallerLogo;
\r
637 logo.number:=callernum-1;
\r
638 MainForm.Timer2.Enabled:=false;
\r
639 i:=GSM_GetBitmap(@logo);
\r
640 MainForm.Timer2.Enabled:=true;
\r
642 caller[callernum]:=logo;
\r
643 MainForm.ListView5.Items.Add;
\r
644 MainForm.ListView5.Items.Item[callernum-1].Caption:=inttostr(callernum);
\r
645 if logo.text[1]=chr(0) then
\r
652 4:name:='Colleagues';
\r
657 caller[callernum].text[i]:=chr(0);
\r
659 for i:=1 to strlen(name) do
\r
661 caller[callernum].text[i]:=name[i-1];
\r
664 MainForm.ListView5.Items.Item[callernum-1].Subitems.Add(caller[callernum].text);
\r
665 if logo.ringtone=16 then
\r
666 MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('default')
\r
668 MainForm.ListView5.Items.Item[callernum-1].Subitems.Add(inttostr(logo.ringtone));
\r
669 if logo.enabled<>0 then
\r
670 MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('logo enabled')
\r
672 MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('logo disabled');
\r
673 end else callerinit:=true;
\r
674 callernum:=callernum+1;
\r
677 procedure ReadAllCallerGroups();
\r
679 if (GSM_GetModelFeature(FN_CALLERGROUPS)<>0) then
\r
681 if callerinit=false then
\r
683 MainForm.ListView5.Items.Clear;
\r
685 while callerinit=false do
\r
688 if callerinit then break;
\r
697 procedure UpdatePointBitmap(i,j:integer);
\r
699 if GSM_IsPointBitmap(@bitma,i,j)<>0 then
\r
701 MainForm.LogosImage.Canvas.Brush.Color := clBlack;
\r
702 MainForm.Image1.Canvas.Pen.Color := clBlack;
\r
705 MainForm.LogosImage.Canvas.Brush.Color := PreviewColor;//$0063cf63
\r
706 MainForm.Image1.Canvas.Pen.Color := PreviewColor;
\r
708 MainForm.LogosImage.Canvas.FillRect(Rect(i*pointsize+i,j*pointsize+j,(i+1)*pointsize+i,(j+1)*pointsize+j));
\r
709 MainForm.Image1.Canvas.Polyline([Point(28+i, 145+j), Point(29+i,146+j)]);
\r
712 procedure DrawBitmap();
\r
718 MainForm.StatusBar1.Panels[0].Text:=inttostr(bitma.width);
\r
719 xsize:=bitma.width;
\r
720 ysize:=bitma.heigh;
\r
722 MainForm.LogosImage.Canvas.Brush.Style := bsSolid;
\r
723 MainForm.LogosImage.Canvas.Brush.Color := clScrollBar;
\r
725 MainForm.LogosImage.Canvas.Pen.Mode := pmCopy;
\r
727 MainForm.LogosImage.Canvas.Pen.Color := clScrollBar;
\r
728 MainForm.LogosImage.Canvas.Rectangle(0,0,MainForm.LogosImage.Width,MainForm.LogosImage.Height);
\r
730 MainForm.LogosImage.Canvas.Pen.Color := PreviewColor;
\r
731 MainForm.LogosImage.Canvas.Rectangle(0,0,xsize*pointsize+xsize-1,ysize*pointsize+ysize-1);
\r
733 MainForm.LogosImage.Canvas.Brush.Color := PreviewColor;
\r
734 MainForm.LogosImage.Canvas.FloodFill(2,2,PreviewColor,fsBorder);
\r
736 MainForm.LogosImage.Canvas.Pen.Color := clBlack;
\r
738 for i:=0 to xsize do
\r
740 MainForm.LogosImage.Canvas.MoveTo(i*pointsize+i-1,0);
\r
741 MainForm.LogosImage.Canvas.LineTo(i*pointsize+i-1,ysize*pointsize+ysize-1);
\r
743 for i:=0 to ysize do
\r
745 MainForm.LogosImage.Canvas.MoveTo(0,i*pointsize+i-1);
\r
746 MainForm.LogosImage.Canvas.LineTo(xsize*pointsize+xsize-1,i*pointsize+i-1);
\r
749 MainForm.Image1.Picture.Assign(MainForm.Image2.Picture);
\r
750 MainForm.Image1.Canvas.Pen.Mode := pmCopy;
\r
751 for i:=0 to xsize-1 do
\r
753 for j:=0 to ysize-1 do
\r
755 UpdatePointBitmap(i,j);
\r
760 procedure TMainForm.Image1MouseDown(Sender: TObject; Button: TMouseButton;
\r
761 Shift: TShiftState; X, Y: Integer);
\r
767 if FindFirst(ExtractFilePath(Application.ExeName)+'\*bmp', faAnyFile, sr) = 0 then
\r
770 if (sr.Attr and faAnyFile) = sr.Attr then
\r
772 if sr.Size=57814 then
\r
776 Image2.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+sr.name);
\r
777 PreviewColor:=Image2.Canvas.Pixels[70,170];
\r
780 logofilename:=sr.name;
\r
782 0:if logofilename=sr.Name then filefound:=1;
\r
784 if filefound=2 then break;
\r
787 until FindNext(sr) <> 0;
\r
790 if filefound<>2 then
\r
792 if FindFirst(ExtractFilePath(Application.ExeName)+'\*bmp', faAnyFile, sr) = 0 then
\r
794 Image2.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+sr.name);
\r
796 logofilename:=sr.name;
\r
801 procedure LogosMousePos(x,y:integer);
\r
819 procedure TMainForm.ComboBox2Select(Sender: TObject);
\r
823 case ComboBox2.ItemIndex of
\r
824 0:bittype:=GSM_CallerLogo;
\r
826 bittype:=GSM_OperatorLogo;
\r
827 if GSMPhoneConnected then
\r
829 case GSM_GetModelFeature(FN_STARTUP) of
\r
830 F_STA62:bittype:=GSM_7110OperatorLogo;
\r
831 F_STA71:bittype:=GSM_7110OperatorLogo;
\r
835 2:bittype:=GSM_PictureImage;
\r
837 bittype:=GSM_StartupLogo;
\r
838 if GSMPhoneConnected then
\r
840 case GSM_GetModelFeature(FN_STARTUP) of
\r
841 F_STA62:bittype:=GSM_6210StartupLogo;
\r
842 F_STA71:bittype:=GSM_7110StartupLogo;
\r
847 bittype:=GSM_StartupLogo;
\r
848 if GSMPhoneConnected then
\r
850 case GSM_GetModelFeature(FN_STARTUP) of
\r
851 F_STA62:bittype:=GSM_6210StartupLogo;
\r
852 F_STA71:bittype:=GSM_7110StartupLogo;
\r
856 GSM_ResizeBitmap(@bitma,bittype);
\r
858 if (bitma.type2<>GSM_OperatorLogo) and
\r
859 (bitma.type2<>GSM_7110OperatorLogo) then
\r
860 Button8.Enabled:=false
\r
862 Button8.Enabled:=true;
\r
865 procedure TMainForm.LogosImageMouseMove(Sender: TObject; Shift: TShiftState;
\r
868 LogosMousePos(x,y);
\r
869 if x2<=bitma.width then
\r
871 if y2<=bitma.heigh then
\r
872 MainForm.StatusBar1.Panels[0].Text:=inttostr(x2)+','+inttostr(y2)
\r
874 MainForm.StatusBar1.Panels[0].Text:='';
\r
876 MainForm.StatusBar1.Panels[0].Text:='';
\r
879 procedure TMainForm.LogosTabSheetShow(Sender: TObject);
\r
884 procedure TMainForm.Button7Click(Sender: TObject);
\r
888 LogosRingForm.Label1.Caption:='What logo do you want to get ?';
\r
889 LogosRingForm.ComboBox3.Items.Clear;
\r
890 case bitma.type2 of
\r
893 LogosRingForm.ComboBox3.Visible:=true;
\r
894 ReadAllCallerGroups();
\r
897 LogosRingForm.ComboBox3.Items.Add(caller[i].text);
\r
899 LogosRingForm.ComboBox3.ItemIndex:=0;
\r
900 LogosRingForm.ShowModal();
\r
901 if (LogosRingForm.ComboBox3.Visible) then
\r
903 bitma.number:=LogosRingForm.ComboBox3.ItemIndex;
\r
904 MainForm.Timer2.Enabled:=false;
\r
905 GSM_GetBitmap(@bitma);
\r
906 MainForm.Timer2.Enabled:=true;
\r
912 LogosRingForm.ComboBox3.Visible:=true;
\r
915 LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));
\r
917 LogosRingForm.ComboBox3.ItemIndex:=0;
\r
918 LogosRingForm.ShowModal();
\r
919 if (LogosRingForm.ComboBox3.Visible) then
\r
921 bitma.number:=LogosRingForm.ComboBox3.ItemIndex;
\r
922 MainForm.Timer2.Enabled:=false;
\r
923 GSM_GetBitmap(@bitma);
\r
924 MainForm.Timer2.Enabled:=true;
\r
930 MainForm.Timer2.Enabled:=false;
\r
931 GSM_GetBitmap(@bitma);
\r
932 MainForm.Timer2.Enabled:=true;
\r
938 procedure TMainForm.Button4Click(Sender: TObject);
\r
942 if OpenDialog1.Execute then
\r
944 if GSM_ReadBitmapFile(PChar(OpenDialog1.FileName),@bit)=0 then
\r
948 case bitma.type2 of
\r
949 GSM_CallerLogo :ComboBox2.ItemIndex:=0;
\r
950 GSM_OperatorLogo:ComboBox2.ItemIndex:=1;
\r
951 GSM_7110OperatorLogo:ComboBox2.ItemIndex:=1;
\r
952 GSM_PictureImage:ComboBox2.ItemIndex:=2;
\r
953 GSM_StartupLogo :ComboBox2.ItemIndex:=3;
\r
954 GSM_7110StartupLogo :ComboBox2.ItemIndex:=3;
\r
955 GSM_6210StartupLogo :ComboBox2.ItemIndex:=3;
\r
961 procedure TMainForm.LogosImageMouseDown(Sender: TObject; Button: TMouseButton;
\r
962 Shift: TShiftState; X, Y: Integer);
\r
964 LogosMousePos(x,y);
\r
965 if x2<=bitma.width then
\r
967 if y2<=bitma.heigh then
\r
969 if ssLeft in Shift then
\r
970 GSM_SetPointBitmap(@bitma,x2-1,y2-1)
\r
972 GSM_ClearPointBitmap(@bitma,x2-1,y2-1);
\r
974 UpdatePointBitmap(x2-1,y2-1);
\r
979 procedure TMainForm.Button6Click(Sender: TObject);
\r
982 Name,Data:array[1..255] of char;
\r
983 oldbitma:GSM_Bitmap;
\r
985 LogosRingForm.Label1.Caption:='Do you want to set logo ?';
\r
986 LogosRingForm.ComboBox3.Items.Clear;
\r
987 case bitma.type2 of
\r
990 LogosRingForm.ComboBox3.Visible:=false;
\r
991 LogosRingForm.ShowModal();
\r
992 if (LogosRingForm.ComboBox3.Visible) then
\r
993 GSM_SetBitmap(@bitma);
\r
995 GSM_7110OperatorLogo:
\r
997 LogosRingForm.ComboBox3.Visible:=true;
\r
998 LogosRingForm.ComboBox3.Items.Add('Preview');
\r
999 //preparing network names
\r
1003 GSM_GetNetworkData(i,@Name,@Data);
\r
1005 // conversion problems
\r
1006 Label14.Caption:=Name;
\r
1007 if strcomp(PChar(Label14.Caption),PChar('unknown'))=0 then break;
\r
1009 // conversion problems
\r
1010 Label14.Caption:=' - '+Label14.Caption;
\r
1011 for j:=6 downto 1 do
\r
1013 Label14.Caption:=Data[j]+Label14.Caption;
\r
1016 LogosRingForm.ComboBox3.Items.Add(Pchar(Label14.Caption));
\r
1019 //looking for current network
\r
1020 if GSMPhoneConnected then
\r
1022 // conversion problems
\r
1023 Label14.Caption:=MainForm.StatusBar1.Panels[1].Text;
\r
1024 Label14.Caption:=' - '+Label14.Caption;
\r
1025 for j:=6 downto 1 do
\r
1027 Label14.Caption:=GSMNetworkInfo.NetworkCode[j]+Label14.Caption;
\r
1033 if strcomp(pchar(LogosRingForm.ComboBox3.Items[i]),pchar(Label14.Caption))=0
\r
1037 LogosRingForm.ComboBox3.ItemIndex:=i;
\r
1039 LogosRingForm.ShowModal();
\r
1040 if (LogosRingForm.ComboBox3.Visible) then
\r
1042 if LogosRingForm.ComboBox3.ItemIndex=0 then
\r
1044 bitma.number:=255;
\r
1047 bitma.netcode[i]:=GSMNetworkInfo.NetworkCode[i];
\r
1049 bitma.netcode[7]:=chr(0);
\r
1052 GSM_GetNetworkData(LogosRingForm.ComboBox3.ItemIndex-1,@Name,@bitma.netcode);
\r
1054 GSM_SetBitmap(@bitma);
\r
1059 LogosRingForm.ComboBox3.Visible:=true;
\r
1060 LogosRingForm.ComboBox3.Items.Add('Preview');
\r
1061 //preparing network names
\r
1065 GSM_GetNetworkData(i,@Name,@Data);
\r
1067 // conversion problems
\r
1068 Label14.Caption:=Name;
\r
1069 if strcomp(PChar(Label14.Caption),PChar('unknown'))=0 then break;
\r
1071 // conversion problems
\r
1072 Label14.Caption:=' - '+Label14.Caption;
\r
1073 for j:=6 downto 1 do
\r
1075 Label14.Caption:=Data[j]+Label14.Caption;
\r
1078 LogosRingForm.ComboBox3.Items.Add(Pchar(Label14.Caption));
\r
1081 //looking for current network
\r
1082 if GSMPhoneConnected then
\r
1084 // conversion problems
\r
1085 Label14.Caption:=MainForm.StatusBar1.Panels[1].Text;
\r
1086 Label14.Caption:=' - '+Label14.Caption;
\r
1087 for j:=6 downto 1 do
\r
1089 Label14.Caption:=GSMNetworkInfo.NetworkCode[j]+Label14.Caption;
\r
1095 if strcomp(pchar(LogosRingForm.ComboBox3.Items[i]),pchar(Label14.Caption))=0
\r
1099 LogosRingForm.ComboBox3.ItemIndex:=i;
\r
1101 LogosRingForm.ShowModal();
\r
1102 if (LogosRingForm.ComboBox3.Visible) then
\r
1104 if LogosRingForm.ComboBox3.ItemIndex=0 then
\r
1106 bitma.number:=255;
\r
1109 bitma.netcode[i]:=GSMNetworkInfo.NetworkCode[i];
\r
1111 bitma.netcode[7]:=chr(0);
\r
1114 GSM_GetNetworkData(LogosRingForm.ComboBox3.ItemIndex-1,@Name,@bitma.netcode);
\r
1116 GSM_SetBitmap(@bitma);
\r
1121 LogosRingForm.ComboBox3.Visible:=true;
\r
1124 LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));
\r
1126 LogosRingForm.ComboBox3.ItemIndex:=0;
\r
1127 LogosRingForm.ShowModal();
\r
1128 if (LogosRingForm.ComboBox3.Visible) then
\r
1130 if LogosRingForm.ComboBox3.ItemIndex=0 then
\r
1132 bitma.number:=255;
\r
1135 bitma.number:=LogosRingForm.ComboBox3.ItemIndex;
\r
1137 GSM_SetBitmap(@bitma);
\r
1142 LogosRingForm.ComboBox3.Visible:=true;
\r
1143 LogosRingForm.ComboBox3.Items.Add('Preview');
\r
1144 ReadAllCallerGroups();
\r
1147 LogosRingForm.ComboBox3.Items.Add(caller[i].text);
\r
1149 LogosRingForm.ComboBox3.ItemIndex:=1;
\r
1150 LogosRingForm.ShowModal();
\r
1151 if (LogosRingForm.ComboBox3.Visible) then
\r
1153 if LogosRingForm.ComboBox3.ItemIndex=0 then
\r
1155 bitma.number:=255;
\r
1158 bitma.number:=LogosRingForm.ComboBox3.ItemIndex-1;
\r
1159 //we need to get old caller group datas
\r
1160 oldbitma.type2:=bitma.type2;
\r
1161 oldbitma.number:=bitma.number;
\r
1162 GSM_GetBitmap(@oldbitma);
\r
1163 bitma.ringtone:=oldbitma.ringtone;
\r
1164 bitma.text:=oldbitma.text;
\r
1166 GSM_SetBitmap(@bitma);
\r
1172 procedure TMainForm.Button5Click(Sender: TObject);
\r
1174 if SaveDialog1.Execute then
\r
1176 GSM_SaveBitmapFile(PChar(SaveDialog1.FileName),@bitma);
\r
1180 procedure TMainForm.Button8Click(Sender: TObject);
\r
1182 bitma2:GSM_Bitmap;
\r
1184 if MessageDlg('Restore logo to default ?',
\r
1185 mtConfirmation, [mbYes, mbNo], 0) = mrYes then
\r
1188 bitma2.netcode[1]:='0';
\r
1189 bitma2.netcode[2]:='0';
\r
1190 bitma2.netcode[3]:='0';
\r
1191 bitma2.netcode[4]:=' ';
\r
1192 bitma2.netcode[5]:='0';
\r
1193 bitma2.netcode[6]:='0';
\r
1194 bitma2.netcode[7]:=chr(0);
\r
1195 GSM_ClearBitmap(@bitma2);
\r
1196 GSM_SetBitmap(@bitma2);
\r
1200 procedure TMainForm.Button12Click(Sender: TObject);
\r
1202 GSM_ClearBitmap(@bitma);
\r
1206 //MainForm main functions
\r
1207 procedure TMainForm.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
\r
1208 Shift: TShiftState; X, Y: Integer);
\r
1210 MainForm.TreeView1.FullExpand;
\r
1211 case MainForm.TreeView1.Selected.ImageIndex of
\r
1212 0: MainForm.PageControl1.ActivePage:=PhoneTabSheet;
\r
1213 1: MainForm.PageControl1.ActivePage:=CalendarTabSheet;
\r
1214 2: MainForm.PageControl1.ActivePage:=DivertTabSheet;
\r
1215 3: MainForm.PageControl1.ActivePage:=CallerTabSheet;
\r
1216 4: MainForm.PageControl1.ActivePage:=LogosTabSheet;
\r
1217 5: MainForm.PageControl1.ActivePage:=NetmonitorTabSheet;
\r
1218 6: MainForm.PageControl1.ActivePage:=PhonebookTabSheet;
\r
1219 7: MainForm.PageControl1.ActivePage:=ProfileTabSheet;
\r
1220 8: MainForm.PageControl1.ActivePage:=RingtonesTabSheet;
\r
1221 9: MainForm.PageControl1.ActivePage:=SMSTabSheet;
\r
1222 10: MainForm.PageControl1.ActivePage:=SMSCTabSheet;
\r
1223 11: MainForm.PageControl1.ActivePage:=SpeedTabSheet;
\r
1224 12: MainForm.PageControl1.ActivePage:=WAPBookTabSheet;
\r
1225 13: MainForm.PageControl1.ActivePage:=WAPSettTabSheet;
\r
1226 14: MainForm.PageControl1.ActivePage:=PCOfflineTabSheet;
\r
1227 15: MainForm.PageControl1.ActivePage:=PCCalendarTabSheet;
\r
1228 16: MainForm.PageControl1.ActivePage:=PCPBKTabSheet;
\r
1229 17: MainForm.PageControl1.ActivePage:=PCSMSTabSheet;
\r
1233 procedure TMainForm.Configuration1Click(Sender: TObject);
\r
1235 MainForm.PageControl1.ActivePage:=ConfigTabSheet;
\r
1238 procedure TMainForm.TreeView1KeyUp(Sender: TObject; var Key: Word;
\r
1239 Shift: TShiftState);
\r
1241 MainForm.TreeView1.FullExpand;
\r
1244 procedure TMainForm.FormCreate(Sender: TObject);
\r
1246 MainForm.PhonebookTabSheet.TabVisible:=false;
\r
1247 MainForm.NetmonitorTabSheet.TabVisible:=false;
\r
1248 MainForm.LogosTabSheet.TabVisible:=false;
\r
1249 MainForm.PhoneTabSheet.TabVisible:=false;
\r
1250 MainForm.RingtonesTabSheet.TabVisible:=false;
\r
1251 MainForm.SMSTabSheet.TabVisible:=false;
\r
1252 MainForm.SMSCTabSheet.TabVisible:=false;
\r
1253 MainForm.SpeedTabSheet.TabVisible:=false;
\r
1254 MainForm.CalendarTabSheet.TabVisible:=false;
\r
1255 MainForm.CallerTabSheet.TabVisible:=false;
\r
1256 MainForm.ProfileTabSheet.TabVisible:=false;
\r
1257 MainForm.WAPBookTabSheet.TabVisible:=false;
\r
1258 MainForm.WAPSettTabSheet.TabVisible:=false;
\r
1259 MainForm.DivertTabSheet.TabVisible:=false;
\r
1260 MainForm.ConfigTabSheet.TabVisible:=false;
\r
1261 MainForm.AboutTabSheet.TabVisible:=false;
\r
1262 MainForm.PCSMSTabSheet.TabVisible:=false;
\r
1263 MainForm.PCCalendarTabSheet.TabVisible:=false;
\r
1264 MainForm.PCOfflineTabSheet.TabVisible:=false;
\r
1265 MainForm.PCPBKTabSheet.TabVisible:=false;
\r
1266 MainForm.PageControl1.ActivePage:=PhoneTabSheet;
\r
1268 PreviewColor:=Image2.Canvas.Pixels[70,170];
\r
1273 bitma.type2:=GSM_OperatorLogo;
\r
1274 GSM_ClearBitmap(@bitma);
\r
1277 MainForm.LogosImage.Width:=96*pointsize+96-1;
\r
1278 MainForm.LogosImage.Height:=65*pointsize+65-1;
\r
1282 MainForm.Width:=660;
\r
1283 MainForm.Height:=470;
\r
1285 callerinit:=false;
\r
1289 smsofflinenumber:=0;
\r
1290 calendarofflinenumber:=0;
\r
1291 pbkofflinenumber:=0;
\r
1293 readcalendar:=false;
\r
1296 procedure TMainForm.Timer1Timer(Sender: TObject);
\r
1298 NetworkName:array[1..255] of char;
\r
1300 if GSMPhoneConnected then
\r
1302 // Here we should enable interface
\r
1303 GSM_GetNetworkName(@NetworkName,@GSMNetworkInfo.NetworkCode);
\r
1304 MainForm.StatusBar1.Panels[1].Text:=NetworkName;
\r
1305 if PhonebookThread=nil then
\r
1306 ComboBox1.Enabled:=true;
\r
1308 SaveBackupTofile1.Enabled:=true;
\r
1309 Restorebackupfromfile1.Enabled:=true;
\r
1311 ListView1.Enabled:=true;
\r
1312 NetmonGroupBox.Enabled:=true;
\r
1313 SpinEdit1.Enabled:=true;
\r
1314 Button2.Enabled:=true;
\r
1315 Button3.Enabled:=true;
\r
1316 Button6.Enabled:=true;
\r
1317 Button7.Enabled:=true;
\r
1318 Button9.Enabled:=true;
\r
1319 Button11.Enabled:=true;
\r
1322 Button16.Enabled:=true;
\r
1323 if Edit1.Text<>'' then Edit1.Enabled:=true;
\r
1324 if Edit2.Text<>'' then Edit2.Enabled:=true;
\r
1325 Button22.Enabled:=true;
\r
1327 If MainForm.PageControl1.ActivePage=MainForm.NetmonitorTabSheet then
\r
1328 NetmonitorTabSheetShow(Sender);
\r
1330 If MainForm.PageControl1.ActivePage=MainForm.PhoneTabSheet then
\r
1332 if not phoneinfo then
\r
1333 PhoneTabSheetShow(Sender);
\r
1336 If MainForm.PageControl1.ActivePage=MainForm.SpeedTabSheet then
\r
1338 if speednum<>10 then
\r
1339 SpeedTabSheetShow(Sender);
\r
1342 if (bitma.type2<>GSM_OperatorLogo) and
\r
1343 (bitma.type2<>GSM_7110OperatorLogo) then
\r
1344 Button8.Enabled:=false
\r
1346 Button8.Enabled:=true;
\r
1348 if Edit2.Text<>'' then
\r
1349 Button14.Enabled:=true
\r
1351 Button14.Enabled:=false;
\r
1353 if Edit1.Text<>'' then
\r
1355 Button2.Enabled:=true;
\r
1356 Button17.Enabled:=true;
\r
1357 if PlayRingtoneThread<>nil then
\r
1359 Button3.Enabled:=false;
\r
1360 Button16.Enabled:=true;
\r
1364 Button3.Enabled:=true;
\r
1365 Button16.Enabled:=false;
\r
1369 Button2.Enabled:=false;
\r
1370 Button17.Enabled:=false;
\r
1371 Button16.Enabled:=false;
\r
1372 Button3.Enabled:=false;
\r
1375 Button18.Enabled:=false;
\r
1376 if bitma.type2=GSM_PictureImage then
\r
1377 Button18.Enabled:=true;
\r
1378 if (bitma.type2=GSM_OperatorLogo) or
\r
1379 (bitma.type2=GSM_7110OperatorLogo) then
\r
1380 Button18.Enabled:=true;
\r
1381 if bitma.type2=GSM_CallerLogo then
\r
1382 Button18.Enabled:=true;
\r
1385 WAPSettTabSheet.Enabled:=true;
\r
1386 if GSM_GetModelFeature(FN_WAP)=0 then
\r
1388 Button23.Enabled:=false;
\r
1389 GroupBox19.Enabled:=false;
\r
1390 groupbox19.Ctl3D:=false;
\r
1391 ComboBox7.enabled:=false;
\r
1392 ComboBox8.enabled:=false;
\r
1393 ComboBox9.enabled:=false;
\r
1394 ComboBox10.enabled:=false;
\r
1395 ComboBox11.enabled:=false;
\r
1396 ComboBox12.enabled:=false;
\r
1397 ComboBox13.enabled:=false;
\r
1398 ComboBox14.enabled:=false;
\r
1399 Edit6.Enabled:=false;
\r
1400 Edit8.Enabled:=false;
\r
1401 Edit9.Enabled:=false;
\r
1402 Edit10.Enabled:=false;
\r
1403 Edit11.Enabled:=false;
\r
1404 Edit12.Enabled:=false;
\r
1405 Edit13.Enabled:=false;
\r
1406 Edit14.Enabled:=false;
\r
1407 Edit15.Enabled:=false;
\r
1410 GroupBox19.Enabled:=true;
\r
1411 groupbox19.Ctl3D:=true;
\r
1412 ComboBox7.enabled:=true;
\r
1413 ComboBox8.enabled:=true;
\r
1414 ComboBox9.enabled:=true;
\r
1415 ComboBox10.enabled:=true;
\r
1416 ComboBox11.enabled:=true;
\r
1417 ComboBox12.enabled:=true;
\r
1418 ComboBox13.enabled:=true;
\r
1419 ComboBox14.enabled:=true;
\r
1420 Edit6.Enabled:=true;
\r
1421 Edit8.Enabled:=true;
\r
1422 Edit9.Enabled:=true;
\r
1423 Edit10.Enabled:=true;
\r
1424 Edit11.Enabled:=true;
\r
1425 Edit12.Enabled:=true;
\r
1426 Edit13.Enabled:=true;
\r
1427 Edit14.Enabled:=true;
\r
1428 Edit15.Enabled:=true;
\r
1429 Button23.Enabled:=false;
\r
1430 if ComboBox7.ItemIndex<>0 then Button23.Enabled:=true;
\r
1433 button19.Enabled:=true;
\r
1434 button20.Enabled:=true;
\r
1437 // Here we should disabled interface
\r
1438 MainForm.StatusBar1.Panels[1].Text:='Not connected';
\r
1440 SaveBackupTofile1.Enabled:=false;
\r
1441 Restorebackupfromfile1.Enabled:=false;
\r
1443 callerinit:=false;
\r
1445 MainForm.ComboBox1.Enabled:=false;
\r
1446 MainForm.ListView1.Enabled:=false;
\r
1447 MainForm.NetmonGroupBox.Enabled:=false;
\r
1448 MainForm.SpinEdit1.Enabled:=false;
\r
1449 MainForm.Button2.Enabled:=false;
\r
1450 MainForm.Button3.Enabled:=false;
\r
1451 MainForm.Button6.Enabled:=false;
\r
1452 MainForm.Button7.Enabled:=false;
\r
1453 MainForm.Button8.Enabled:=false;
\r
1454 MainForm.Button9.Enabled:=false;
\r
1455 MainForm.Button11.Enabled:=false;
\r
1456 Button18.Enabled:=false;
\r
1459 Button16.Enabled:=false;
\r
1460 Button14.Enabled:=false;
\r
1461 Button17.Enabled:=false;
\r
1462 Edit1.Enabled:=false;
\r
1463 Edit2.Enabled:=false;
\r
1464 Button22.Enabled:=false;
\r
1466 MainForm.NetmonitorTabSheetHide(Sender);
\r
1467 MainForm.PhonebookTabSheetHide(Sender);
\r
1468 MainForm.SpeedTabSheetHide(Sender);
\r
1471 ComboBox7.enabled:=false;
\r
1472 ComboBox8.enabled:=false;
\r
1473 ComboBox9.enabled:=false;
\r
1474 ComboBox10.enabled:=false;
\r
1475 ComboBox11.enabled:=false;
\r
1476 ComboBox12.enabled:=false;
\r
1477 ComboBox13.enabled:=false;
\r
1478 ComboBox14.enabled:=false;
\r
1479 Edit6.Enabled:=false;
\r
1480 Edit8.Enabled:=false;
\r
1481 Edit9.Enabled:=false;
\r
1482 Edit10.Enabled:=false;
\r
1483 Edit11.Enabled:=false;
\r
1484 Edit12.Enabled:=false;
\r
1485 Edit13.Enabled:=false;
\r
1486 Edit14.Enabled:=false;
\r
1487 Edit15.Enabled:=false;
\r
1488 Button23.Enabled:=false;
\r
1490 button19.Enabled:=false;
\r
1491 button20.Enabled:=false;
\r
1497 procedure TMainForm.Quit1Click(Sender: TObject);
\r
1499 if GSMPhoneConnected then GSM_Terminate();
\r
1503 procedure TMainForm.FormResize(Sender: TObject);
\r
1505 MainForm.StatusBar1.Panels[0].Width:=MainForm.Width-150;
\r
1508 procedure TMainForm.About1Click(Sender: TObject);
\r
1510 AboutTabSheet.Show;
\r
1513 //netmonitor sheet functions
\r
1515 procedure TNetmonThread.Execute;
\r
1517 netmon:array[1..255] of char;
\r
1519 while not Terminated do
\r
1521 GSM_Netmonitor(netmonnum,@netmon);
\r
1522 MainForm.NetmonLabel.Caption:=netmon;
\r
1523 MainForm.NetmonGroupBox.Caption:=' Screen ' + IntToStr(netmonnum) + ' ';
\r
1527 procedure TMainForm.NetmonitorTabSheetShow(Sender: TObject);
\r
1529 if NetmonThread<>nil then
\r
1531 if GSMPhoneConnected then
\r
1533 MainForm.Timer2.Enabled:=false;
\r
1534 NetmonThread:=TNetmonThread.Create(false);
\r
1539 procedure TMainForm.NetmonitorTabSheetHide(Sender: TObject);
\r
1541 if (NetmonThread<>nil) then
\r
1543 NetmonThread.Terminate();
\r
1544 MainForm.Timer2.Enabled:=true;
\r
1545 NetmonThread:=nil;
\r
1549 procedure TMainForm.SpinEdit1Change(Sender: TObject);
\r
1551 netmonnum:=SpinEdit1.Value;
\r
1554 procedure TMainForm.Button11Click(Sender: TObject);
\r
1556 netmon:array[1..255] of char;
\r
1558 NetmonForm.ShowModal;
\r
1559 if NetmonForm.RadioGroup1.ItemIndex<>-1 then
\r
1561 GSM_Netmonitor(241+NetmonForm.RadioGroup1.ItemIndex,@netmon);
\r
1565 //phonebook sheet functions
\r
1567 procedure EndPhonebookThread;
\r
1569 if (PhonebookThread<>nil) then
\r
1571 PhonebookThread.Terminate();
\r
1572 MainForm.Timer2.Enabled:=true;
\r
1573 PhonebookThread:=nil;
\r
1574 MainForm.ComboBox1.Enabled:=true;
\r
1578 procedure AddPBKEntry(MyListView:TListView;x:GSM_PhonebookEntry;number:integer);
\r
1581 MyListView.Items.Item[number].Subitems.Add(x.Name);
\r
1583 if (x.Number[1]<>chr(0)) then
\r
1584 MyListView.Items.Item[number].Subitems.Add(x.Number)
\r
1586 for j:=1 to x.SubEntriesCount do
\r
1588 if x.SubEntries[j].EntryType=GSM_Number then
\r
1590 MyListView.Items.Item[number].Subitems.Add(x.subentries[j].Number);
\r
1597 0:MyListView.Items.Item[number].Subitems.Add(caller[x.Group+1].text);
\r
1598 1:MyListView.Items.Item[number].Subitems.Add(caller[x.Group+1].text);
\r
1599 2:MyListView.Items.Item[number].Subitems.Add(caller[x.Group+1].text);
\r
1600 3:MyListView.Items.Item[number].Subitems.Add(caller[x.Group+1].text);
\r
1601 4:MyListView.Items.Item[number].Subitems.Add(caller[x.Group+1].text);
\r
1603 MyListView.Items.Item[number].Subitems.Add('not set');
\r
1606 for j:=1 to x.SubEntriesCount do
\r
1608 if x.SubEntries[j].EntryType=GSM_Date then
\r
1610 MyListView.Items.Item[number].Subitems.Add(
\r
1611 DayOfweek2(x.SubEntries[j].Date.Day,x.SubEntries[j].Date.Month,x.SubEntries[j].Date.Year)+' '+
\r
1612 inttostr2(x.SubEntries[j].Date.Day,2)+'-'+inttostr2(x.SubEntries[j].Date.Month,2)+'-'+
\r
1613 inttostr(x.SubEntries[j].Date.Year));
\r
1614 MyListView.Items.Item[number].Subitems.Add(
\r
1615 inttostr2(x.SubEntries[j].Date.Hour,2)+':'+inttostr2(x.SubEntries[j].Date.Minute,2)+':'+
\r
1616 inttostr2(x.SubEntries[j].Date.Second,2));
\r
1622 procedure TPhonebookThread.Execute;
\r
1624 x:GSM_PhonebookEntry;
\r
1626 while not Terminated do
\r
1628 if (phonebookcur<phonebookstatus.Used+phonebookstatus.Free) then
\r
1630 phonebookcur:=phonebookcur+1;
\r
1631 MainForm.StatusBar1.Panels[0].Text:='Reading '+inttostr(phonebookcur)+'/'+inttostr(phonebookstatus.Free+phonebookstatus.Used);
\r
1632 MainForm.ListView1.Items.Add;
\r
1633 MainForm.ListView1.Items.Item[phonebookcur-1].Caption:=inttostr(phonebookcur);
\r
1634 if (phonebookfound<phonebookstatus.Used) then
\r
1636 x.MemoryType:=phonebookstatus.MemoryType;
\r
1637 x.Location:=phonebookcur;
\r
1638 if (x.MemoryType=GMT_ON) then x.Location:=x.Location-1;
\r
1639 if (x.MemoryType=GMT_DC) then x.Location:=x.Location-1;
\r
1640 if (x.MemoryType=GMT_MC) then x.Location:=x.Location-1;
\r
1641 if (x.MemoryType=GMT_RC) then x.Location:=x.Location-1;
\r
1642 if GSM_GetMemoryLocation(@x)=0 then
\r
1645 if (x.MemoryType=GMT_ME) then
\r
1647 PhoneBackup.PhonePhonebookUsed:=PhoneBackup.PhonePhonebookUsed+1;
\r
1650 PBKOfflineNumber:=PBKOfflineNumber+1;
\r
1651 PhoneBackup.PhonePhonebook[PBKOfflineNumber]:=x;
\r
1653 if (x.MemoryType=GMT_SM) then
\r
1655 PhoneBackup.SIMPhonebookUsed:=PhoneBackup.SIMPhonebookUsed+1;
\r
1656 PhoneBackup.SIMPhonebook[PhoneBackup.SIMPhonebookUsed]:=x;
\r
1658 AddPBKEntry(MainForm.ListView1,x,phonebookcur-1);
\r
1659 if (x.Name[1]<>chr(0)) then phonebookfound:=phonebookfound+1;
\r
1664 MainForm.StatusBar1.Panels[0].Text:=inttostr(phonebookstatus.Used)+'/'+inttostr(phonebookstatus.Free+phonebookstatus.Used)+' entries';
\r
1665 EndPhonebookThread;
\r
1670 procedure TMainForm.PhonebookTabSheetShow(Sender: TObject);
\r
1672 if GSMPhoneConnected then ComboBox1.Enabled:=true;
\r
1675 procedure TMainForm.Button10Click(Sender: TObject);
\r
1678 FileHandle:integer;
\r
1680 if SaveDialog1.Execute then
\r
1682 FileHandle := FileCreate(SaveDialog1.FileName);
\r
1683 for i:=1 to ListView1.Items.Count do
\r
1685 FileWrite(FileHandle,ListView1.Items.Item[i].Caption, SizeOf(ListView1.Items.Item[i].Caption));
\r
1687 FileClose(FileHandle);
\r
1691 procedure TMainForm.ComboBox1Change(Sender: TObject);
\r
1693 if (ComboBox1.ItemIndex<>0) then
\r
1695 case ComboBox1.ItemIndex of
\r
1696 1:phonebookstatus.MemoryType:=GMT_DC;
\r
1697 2:phonebookstatus.MemoryType:=GMT_MC;
\r
1698 3:phonebookstatus.MemoryType:=GMT_ON;
\r
1699 4:phonebookstatus.MemoryType:=GMT_ME;
\r
1700 5:phonebookstatus.MemoryType:=GMT_SM;
\r
1701 6:phonebookstatus.MemoryType:=GMT_RC;
\r
1703 if GSM_GetMemoryStatus(@phonebookstatus)<>0 then
\r
1705 phonebookstatus.Free:=0;
\r
1706 phonebookstatus.Used:=30;
\r
1709 phonebookfound:=0;
\r
1711 PBKOfflineNumber:=0;
\r
1712 PhoneBackup.PhonePhonebookUsed:=0;
\r
1713 PhoneBackup.SIMPhonebookUsed:=0;
\r
1714 if (phonebookstatus.MemoryType=GMT_ME) then
\r
1716 PhoneBackup.PhonePhonebookSize:=phonebookstatus.Free+phonebookstatus.Used;
\r
1718 if (phonebookstatus.MemoryType=GMT_SM) then
\r
1720 PhoneBackup.SIMPhonebookSize:=phonebookstatus.Free+phonebookstatus.Used;
\r
1723 ComboBox1.Enabled:=false;
\r
1725 ReadAllCallerGroups();
\r
1727 MainForm.ListView1.Items.Clear;
\r
1729 MainForm.Timer2.Enabled:=false;
\r
1730 PhonebookThread:=TPhonebookThread.Create(false);
\r
1734 procedure TMainForm.PhonebookTabSheetHide(Sender: TObject);
\r
1736 EndPhonebookThread;
\r
1740 procedure TMainForm.Button1Click(Sender: TObject);
\r
1742 ring:GSM_Ringtone;
\r
1744 if OpenDialog1.Execute then
\r
1746 if GSM_ReadRingtoneFile(PChar(OpenDialog1.FileName),@ring)=0 then
\r
1748 Edit1.Text:=ring.Name;
\r
1754 procedure EndPlayRingtoneThread;
\r
1756 if (PlayRingtoneThread<>nil) then
\r
1758 PlayRingtoneThread.Terminate();
\r
1759 GSM_PlayTone(255*255,0);
\r
1760 MainForm.Timer2.Enabled:=true;
\r
1761 PlayRingtoneThread:=nil;
\r
1765 procedure TPlayRingtoneThread.Execute;
\r
1767 while not Terminated do
\r
1769 GSM_PlayNote(rington.notes[ringindex]);
\r
1770 ringindex:=ringindex+1;
\r
1771 if ringindex>rington.NrNotes then
\r
1772 EndPlayRingtoneThread;
\r
1776 procedure TMainForm.Button16Click(Sender: TObject);
\r
1778 EndPlayRingtoneThread;
\r
1781 procedure TMainForm.Button3Click(Sender: TObject);
\r
1784 MainForm.Timer2.Enabled:=false;
\r
1785 PlayRingtoneThread:=TPlayRingtoneThread.Create(false);
\r
1788 procedure TMainForm.Button2Click(Sender: TObject);
\r
1791 mybinring:GSM_BinRingtone;
\r
1792 myring:GSM_Ringtone;
\r
1794 LogosRingForm.Label1.Caption:='Do you want to set ringtone ?';
\r
1795 LogosRingForm.ComboBox3.Visible:=true;
\r
1796 LogosRingForm.ComboBox3.Items.Clear();
\r
1797 LogosRingForm.ComboBox3.Items.Add('Preview');
\r
1798 MainForm.Timer2.Enabled:=false;
\r
1799 for i:=1 to GSM_GetModelFeature(FN_RINGNUMBER) do
\r
1801 mybinring.location:=i;
\r
1802 if (GSM_GetPhoneRingtone(@mybinring,@myring)=0) then
\r
1804 if GSM_GetModelFeature(FN_RINGTONES)=F_RING_SM then
\r
1806 LogosRingForm.ComboBox3.Items.Add(myring.name);
\r
1809 LogosRingForm.ComboBox3.Items.Add(mybinring.name);
\r
1812 LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));
\r
1814 MainForm.Timer2.Enabled:=true;
\r
1815 LogosRingForm.ComboBox3.ItemIndex:=1;
\r
1816 LogosRingForm.ShowModal;
\r
1817 if LogosRingForm.ComboBox3.Visible then
\r
1819 if LogosRingForm.ComboBox3.ItemIndex=0 then
\r
1820 rington.location:=255
\r
1822 rington.location:=LogosRingForm.ComboBox3.ItemIndex;
\r
1823 MainForm.Timer2.Enabled:=false;
\r
1824 GSM_SetRingtone(@rington,@i);
\r
1825 MainForm.Timer2.Enabled:=true;
\r
1830 procedure TMainForm.PhoneTabSheetShow(Sender: TObject);
\r
1832 xxxx,xxx:array[1..256] of char;
\r
1833 time:GSM_DateTime;
\r
1834 siml:GSM_AllSimlocks;
\r
1836 code:GSM_SecurityCode;
\r
1838 if GSMPhoneConnected then
\r
1840 GSM_GetRevision(@xxx);
\r
1841 Label9.Caption:=xxx;
\r
1842 GSM_GetImei(@xxx);
\r
1843 Label7.Caption:=xxx;
\r
1844 GSM_GetModel(@xxx);
\r
1845 GSM_GetModelNumber(@xxx,@xxxx);
\r
1846 Label5.Caption:=xxx;
\r
1847 Label5.Caption:=Label5.Caption+' ('+xxxx;
\r
1848 Label5.Caption:=Label5.Caption+')';
\r
1849 GSM_GetAlarm(1,@time);
\r
1850 if time.isSet<>0 then
\r
1851 CheckBox1.Checked:=true
\r
1853 CheckBox1.Checked:=false;
\r
1854 DateTimePicker1.Time:=EncodeTime(time.Hour,time.Minute,0,0);
\r
1855 ListView8.Items.Clear();
\r
1856 GSM_GetSimlock(@siml);
\r
1859 MainForm.ListView8.Items.Add;
\r
1860 MainForm.ListView8.Items.Item[i-1].Caption:=inttostr(i);
\r
1861 MainForm.ListView8.Items.Item[i-1].Subitems.Add(siml.simlocks[i].data);
\r
1862 if siml.simlocks[i].enabled=0 then
\r
1863 MainForm.ListView8.Items.Item[i-1].Subitems.Add('disabled')
\r
1866 if siml.simlocks[i].factory<>0 then
\r
1867 MainForm.ListView8.Items.Item[i-1].Subitems.Add('factory')
\r
1869 MainForm.ListView8.Items.Item[i-1].Subitems.Add('user');
\r
1871 MainForm.ListView8.Items.Item[i-1].Subitems.Add(inttostr(siml.simlocks[i].counter));
\r
1873 code.Type2:=GSCT_SecurityCode;
\r
1874 GSM_GetSecurityCode(@code);
\r
1875 Label18.Caption:=code.Code;
\r
1881 procedure TMainForm.Button9Click(Sender: TObject);
\r
1883 GSM_Reset(GSM_SoftReset);
\r
1887 procedure TMainForm.SpeedTabSheetShow(Sender: TObject);
\r
1889 if SpeedThread<>nil then
\r
1891 if GSMPhoneConnected then
\r
1893 MainForm.ListView3.Items.Clear;
\r
1895 MainForm.Timer2.Enabled:=false;
\r
1896 SpeedThread:=TSpeedThread.Create(false);
\r
1901 procedure EndSpeedThread();
\r
1903 if (SpeedThread<>nil) then
\r
1905 SpeedThread.Terminate();
\r
1906 MainForm.Timer2.Enabled:=true;
\r
1911 procedure TMainForm.SpeedTabSheetHide(Sender: TObject);
\r
1916 procedure TSpeedThread.Execute;
\r
1918 entry1:GSM_SpeedDial;
\r
1919 entry2:GSM_PhonebookEntry;
\r
1922 while not Terminated do
\r
1924 entry1.Number:=speednum;
\r
1925 if GSM_GetSpeedDial(@entry1)=0 then
\r
1927 entry2.Location:=entry1.Location;
\r
1928 entry2.MemoryType:=entry1.MemoryType;
\r
1929 if entry2.Location=0 then
\r
1930 entry2.Location:=speednum;
\r
1931 GSM_GetMemoryLocation(@entry2);
\r
1932 MainForm.ListView3.Items.Add;
\r
1933 MainForm.ListView3.Items.Item[speednum-1].Caption:=inttostr(speednum);
\r
1934 MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.Name);
\r
1935 if entry2.Number[1]<>chr(0) then
\r
1936 MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.Number)
\r
1938 for i:=1 to entry2.SubEntriesCount do
\r
1940 if entry2.SubEntries[i].EntryType=GSM_Number then
\r
1942 MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.SubEntries[i].Number);
\r
1947 speednum:=speednum+1;
\r
1949 if speednum=10 then
\r
1955 procedure EndCalendarThread();
\r
1957 if (CalendarThread<>nil) then
\r
1959 CalendarThread.Terminate();
\r
1960 MainForm.Timer2.Enabled:=true;
\r
1961 CalendarThread:=nil;
\r
1965 procedure AddCalendarNote(note:GSM_CalendarNote;myview:TListView);
\r
1971 myview.Items.Item[myview.Items.Count-1].Caption:=inttostr(myview.Items.Count);
\r
1972 case note.Type2 of
\r
1973 GCN_Reminder:myview.Items.Item[myview.Items.Count-1].Subitems.Add('Reminder');
\r
1974 GCN_Call :myview.Items.Item[myview.Items.Count-1].Subitems.Add('Call');
\r
1975 GCN_Meeting :myview.Items.Item[myview.Items.Count-1].Subitems.Add('Meeting');
\r
1976 GCN_Birthday:myview.Items.Item[myview.Items.Count-1].Subitems.Add('Birthday');
\r
1978 myview.Items.Item[myview.Items.Count-1].Subitems.Add(note.Text);
\r
1981 if note.Type2=GCN_Call then
\r
1983 MainForm.Label14.Caption:=note.Phone;
\r
1984 for z:=1 to PBKOfflineNumber do
\r
1986 if (PhoneBackup.PhonePhonebook[z].Number[1]<>chr(0)) then
\r
1988 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[z].Number;
\r
1989 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
1991 myview.Items.Item[myview.Items.Count-1].Subitems.Add(PhoneBackup.PhonePhonebook[z].Name);
\r
1996 for j:=1 to PhoneBackup.PhonePhonebook[z].SubEntriesCount do
\r
1998 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[z].SubEntries[j].Number;
\r
1999 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
2001 myview.Items.Item[myview.Items.Count-1].Subitems.Add(PhoneBackup.PhonePhonebook[z].Name);
\r
2009 myview.Items.Item[myview.Items.Count-1].Subitems.Add(note.Phone);
\r
2011 myview.Items.Item[myview.Items.Count-1].Subitems.Add(DayOfweek2(note.Time.Day,note.Time.Month,note.Time.Year)+' '+inttostr2(note.Time.Day,2)+'-'+inttostr2(note.Time.Month,2)+'-'+inttostr(note.Time.Year)+' '+inttostr2(note.Time.Hour,2)+':'+inttostr2(note.Time.Minute,2)+':'+inttostr2(note.Time.Second,2));
\r
2012 if note.Alarm.Year<>0 then
\r
2013 myview.Items.Item[myview.Items.Count-1].Subitems.Add(DayOfweek2(note.Alarm.Day,note.Alarm.Month,note.Alarm.Year)+' '+inttostr2(note.Alarm.Day,2)+'-'+inttostr2(note.Alarm.Month,2)+'-'+inttostr(note.Alarm.Year)+' '+inttostr2(note.Alarm.Hour,2)+':'+inttostr2(note.Alarm.Minute,2)+':'+inttostr2(note.Alarm.Second,2))
\r
2015 myview.Items.Item[myview.Items.Count-1].Subitems.Add('');
\r
2018 procedure TCalendarThread.Execute;
\r
2020 note:GSM_CalendarNote;
\r
2022 while not Terminated do
\r
2024 note.Location:=calendarnum;
\r
2025 if GSM_GetCalendarNote(@note)=0 then
\r
2027 AddCalendarNote(note,MainForm.ListView4);
\r
2028 calendarnum:=calendarnum+1;
\r
2030 readcalendar:=true;
\r
2031 EndCalendarThread();
\r
2036 procedure TMainForm.CalendarTabSheetShow(Sender: TObject);
\r
2038 if CalendarThread=nil then
\r
2040 if GSMPhoneConnected then
\r
2042 if (GSM_GetModelFeature(FN_Calendar)<>0) then
\r
2044 ListView4.Enabled:=true;
\r
2045 ListView4.Ctl3D:=true;
\r
2046 GroupBox8.Ctl3D:=true;
\r
2048 MainForm.ListView4.Items.Clear;
\r
2050 MainForm.Timer2.Enabled:=false;
\r
2051 readcalendar:=false;
\r
2055 CalendarThread:=TCalendarThread.Create(false);
\r
2058 ListView4.Enabled:=false;
\r
2059 ListView4.Ctl3D:=false;
\r
2060 GroupBox8.Ctl3D:=false;
\r
2066 procedure TMainForm.CalendarTabSheetHide(Sender: TObject);
\r
2068 EndCalendarThread();
\r
2071 procedure TMainForm.New1Click(Sender: TObject);
\r
2074 setcalendarnote.Location:=MainForm.ListView4.Items.Count+1;
\r
2075 CalendarForm.ComboBox1.ItemIndex:=0;
\r
2076 CalendarForm.ComboBox1.OnSelect(nil);
\r
2077 CalendarForm.Edit2.Text:='';
\r
2078 CalendarForm.ComboBox3.Text:='';
\r
2079 CalendarForm.DateTimePicker1.DateTime:=Date;
\r
2080 CalendarForm.DateTimePicker3.Time:=Time;
\r
2081 CalendarForm.DateTimePicker2.DateTime:=Date;
\r
2082 CalendarForm.DateTimePicker4.Time:=Time;
\r
2085 CalendarForm.ComboBox3.Items.Clear;
\r
2086 CalendarForm.ComboBox3.Sorted:=false;
\r
2087 for i:=1 to PBKOfflineNumber do
\r
2089 if (PhoneBackup.PhonePhonebook[i].Number[1]<>chr(0)) then
\r
2091 CalendarForm.ComboBox3.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
2094 for j:=1 to PhoneBackup.PhonePhonebook[i].SubEntriesCount do
\r
2096 if PhoneBackup.PhonePhonebook[i].SubEntries[j].EntryType=GSM_Number then
\r
2098 CalendarForm.ComboBox3.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
2104 CalendarForm.ComboBox3.Sorted:=true;
\r
2106 CalendarForm.ShowModal;
\r
2109 procedure EditCalendarNote;
\r
2110 var i,j,z:integer;
\r
2114 CalendarForm.DateTimePicker1.Date:=EncodeDate(setcalendarnote.Time.Year,
\r
2115 setcalendarnote.Time.Month,
\r
2116 setcalendarnote.Time.Day);
\r
2117 CalendarForm.DateTimePicker3.Time:=EncodeTime(setcalendarnote.Time.Hour,
\r
2118 setcalendarnote.Time.Minute,
\r
2119 setcalendarnote.Time.Second,i);
\r
2120 case setcalendarnote.Type2 of
\r
2121 GCN_BIRTHDAY: CalendarForm.ComboBox1.ItemIndex:=0;
\r
2122 GCN_CALL: CalendarForm.ComboBox1.ItemIndex:=1;
\r
2123 GCN_MEETING: CalendarForm.ComboBox1.ItemIndex:=2;
\r
2124 GCN_REMINDER: CalendarForm.ComboBox1.ItemIndex:=3;
\r
2127 CalendarForm.Edit2.Text:=setcalendarnote.Text;
\r
2128 CalendarForm.ComboBox3.Text:=setcalendarnote.Phone;
\r
2130 if setcalendarnote.Alarm.Year<>0 then
\r
2132 CalendarForm.CheckBox1.checked:=true;
\r
2133 CalendarForm.DateTimePicker2.Date:=EncodeDate(setcalendarnote.Alarm.Year,
\r
2134 setcalendarnote.Alarm.Month,
\r
2135 setcalendarnote.Alarm.Day);
\r
2136 CalendarForm.DateTimePicker4.Time:=EncodeTime(setcalendarnote.Alarm.Hour,
\r
2137 setcalendarnote.Alarm.Minute,
\r
2138 setcalendarnote.Alarm.Second,i);
\r
2141 CalendarForm.CheckBox1.checked:=false;
\r
2142 CalendarForm.DateTimePicker2.Date:=CalendarForm.DateTimePicker1.Date;
\r
2143 CalendarForm.DateTimePicker4.Time:=CalendarForm.DateTimePicker3.Time;
\r
2146 if GSM_GetModelFeature(FN_CALENDAR)=F_CAL71 then
\r
2148 if setcalendarnote.Type2<>GCN_BIRTHDAY then
\r
2150 CalendarForm.CheckBox2.Checked:=True;
\r
2151 case setcalendarnote.Recurrance of
\r
2153 CalendarForm.CheckBox2.Checked:=False;
\r
2154 CalendarForm.ComboBox2.Enabled:=False;
\r
2156 1*24 :CalendarForm.ComboBox2.ItemIndex:=0;
\r
2157 7*24 :CalendarForm.ComboBox2.ItemIndex:=1;
\r
2158 14*24 :CalendarForm.ComboBox2.ItemIndex:=2;
\r
2159 365*24:CalendarForm.ComboBox2.ItemIndex:=3;
\r
2161 CalendarForm.RadioButton1.Enabled:=False;
\r
2162 CalendarForm.RadioButton2.Enabled:=False;
\r
2164 CalendarForm.ComboBox2.ItemIndex:=0;
\r
2165 CalendarForm.CheckBox2.Checked:=False;
\r
2166 CalendarForm.ComboBox2.Enabled:=False;
\r
2167 CalendarForm.RadioButton1.Enabled:=True;
\r
2168 CalendarForm.RadioButton2.Enabled:=True;
\r
2169 if setcalendarnote.AlarmType=1 then
\r
2170 CalendarForm.RadioButton1.Checked:=True
\r
2172 CalendarForm.RadioButton2.Checked:=True;
\r
2175 CalendarForm.ComboBox1.OnSelect(nil);
\r
2178 CalendarForm.ComboBox3.Items.Clear;
\r
2179 CalendarForm.ComboBox3.Sorted:=false;
\r
2180 for i:=1 to PBKOfflineNumber do
\r
2182 if (PhoneBackup.PhonePhonebook[i].Number[1]<>chr(0)) then
\r
2184 CalendarForm.ComboBox3.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
2187 for j:=1 to PhoneBackup.PhonePhonebook[i].SubEntriesCount do
\r
2189 if PhoneBackup.PhonePhonebook[i].SubEntries[j].EntryType=GSM_Number then
\r
2191 CalendarForm.ComboBox3.Items.Add(PhoneBackup.PhonePhonebook[i].Name);
\r
2197 CalendarForm.ComboBox3.Sorted:=true;
\r
2199 if setcalendarnote.Type2=GCN_Call then
\r
2201 MainForm.Label14.Caption:=setcalendarnote.Phone;
\r
2202 for i:=1 to PBKOfflineNumber do
\r
2204 if (PhoneBackup.PhonePhonebook[i].Number[1]<>chr(0)) then
\r
2206 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[i].Number;
\r
2207 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
2209 MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[i].Name;
\r
2210 for z:=0 to CalendarForm.ComboBox3.Items.Count do
\r
2212 if (MainForm.Label14.Caption=CalendarForm.ComboBox3.Items[z]) then
\r
2214 CalendarForm.ComboBox3.ItemIndex:=z;
\r
2221 for j:=1 to PhoneBackup.PhonePhonebook[i].SubEntriesCount do
\r
2223 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[i].SubEntries[j].Number;
\r
2224 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
2226 MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[i].Name;
\r
2227 for z:=0 to CalendarForm.ComboBox3.Items.Count do
\r
2229 if (MainForm.Label14.Caption=CalendarForm.ComboBox3.Items[z]) then
\r
2231 CalendarForm.ComboBox3.ItemIndex:=z;
\r
2241 CalendarForm.ShowModal;
\r
2244 procedure TMainForm.Edit3Click(Sender: TObject);
\r
2246 setcalendarnote.Location:=calendarselect;
\r
2248 mainform.Timer2.Enabled:=false;
\r
2249 GSM_GetCalendarNote(@setcalendarnote);
\r
2250 mainform.Timer2.Enabled:=true;
\r
2255 procedure TMainForm.ListView4SelectItem(Sender: TObject; Item: TListItem;
\r
2256 Selected: Boolean);
\r
2260 calendarselect:=Item.Index+1;
\r
2264 procedure TMainForm.Delete1Click(Sender: TObject);
\r
2266 // if listview4.selected<>nil then
\r
2268 if MessageDlg('Do you want to delete this calendar note ?',
\r
2269 mtConfirmation, [mbYes, mbNo], 0) = mrYes then
\r
2271 setcalendarnote.Location:=calendarselect;
\r
2272 GSM_DeleteCalendarNote(@setcalendarnote);
\r
2273 MainForm.CalendarTabSheetShow(nil);
\r
2279 procedure EndCallerThread();
\r
2281 if (CallerThread<>nil) then
\r
2283 CallerThread.Terminate();
\r
2284 CallerThread:=nil;
\r
2288 procedure TCallerThread.Execute;
\r
2290 while not Terminated do
\r
2292 ReadCallerGroup();
\r
2293 if callerinit then EndCallerThread();
\r
2297 procedure TMainForm.CallerTabSheetShow(Sender: TObject);
\r
2299 if CallerThread=nil then
\r
2301 if GSMPhoneConnected then
\r
2303 MainForm.ListView5.Items.Clear;
\r
2304 callerinit:=false;
\r
2306 CallerThread:=TCallerThread.Create(false);
\r
2311 procedure TMainForm.CallerTabSheetHide(Sender: TObject);
\r
2313 EndCallerThread();
\r
2317 procedure TMainForm.SMSCTabSheetShow(Sender: TObject);
\r
2319 if SMSCThread<>nil then
\r
2321 if GSMPhoneConnected then
\r
2323 MainForm.ListView6.Items.Clear;
\r
2326 MainForm.Timer2.Enabled:=false;
\r
2327 SMSCThread:=TSMSCThread.Create(false);
\r
2332 procedure SMSCTabHide();
\r
2334 if (SMSCThread<>nil) then
\r
2336 SMSCThread.Terminate();
\r
2337 MainForm.Timer2.Enabled:=true;
\r
2342 procedure TMainForm.SMSCTabSheetHide(Sender: TObject);
\r
2347 procedure ReadSMSC();
\r
2349 smsc:GSM_MessageCenter;
\r
2352 MainForm.StatusBar1.Panels[0].Text:='Reading SMSC '+inttostr(smscnum);
\r
2353 if GSM_GetSMSCenter(@smsc)=0 then
\r
2355 SMSC2[smscnum]:=smsc;
\r
2356 MainForm.ListView6.Items.Add;
\r
2357 MainForm.ListView6.Items.Item[smscnum-1].Caption:=inttostr(smscnum);
\r
2358 MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.name);
\r
2359 MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.number);
\r
2360 case smsc.Validity of
\r
2361 GSMV_1_Hour : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 hour');
\r
2362 GSMV_6_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('6 hours');
\r
2363 GSMV_24_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 day');
\r
2364 GSMV_72_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('3 days');
\r
2365 GSMV_1_Week : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 week');
\r
2366 GSMV_Max_Time : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('max. time');
\r
2368 MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('unknown');
\r
2370 case smsc.Format of
\r
2371 GSMF_Text : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('text');
\r
2372 GSMF_Fax : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('fax');
\r
2373 GSMF_Voice : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('voice');
\r
2374 GSMF_ERMES : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('ERMES');
\r
2375 GSMF_Paging : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('paging');
\r
2376 GSMF_UCI : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('UCI');
\r
2377 GSMF_Email : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('email');
\r
2378 GSMF_X400 : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('X400');
\r
2380 MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('unknown');
\r
2382 MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.defaultrecipient);
\r
2383 smscnum:=smscnum+1;
\r
2386 MainForm.StatusBar1.Panels[0].Text:='';
\r
2391 procedure TSMSCThread.Execute;
\r
2393 while not Terminated do
\r
2396 if smscinit then SMSCTabHide();
\r
2401 procedure ProfileTabHide();
\r
2403 if (ProfileThread<>nil) then
\r
2405 ProfileThread.Terminate();
\r
2406 MainForm.Timer2.Enabled:=true;
\r
2407 ProfileThread:=nil;
\r
2411 procedure TProfileThread.Execute;
\r
2413 profile:GSM_Profile;
\r
2415 while not Terminated do
\r
2417 profile.number:=profilenum-1;
\r
2418 GSM_GetProfile(@profile);
\r
2419 MainForm.ListView7.Items.Add;
\r
2420 MainForm.ListView7.Items.Item[profilenum-1].Caption:=inttostr(profilenum);
\r
2421 MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(profile.name);
\r
2422 case profile.CallAlert of
\r
2423 PROFILE_CALLALERT_RINGING :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ringing');
\r
2424 PROFILE_CALLALERT_BEEPONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('beep once');
\r
2425 PROFILE_CALLALERT_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');
\r
2426 PROFILE_CALLALERT_RINGONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ring once');
\r
2427 PROFILE_CALLALERT_ASCENDING:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ascending');
\r
2428 PROFILE_CALLALERT_CALLERGROUPS:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('caller groups');
\r
2430 MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(inttostr(profile.Ringtone));
\r
2431 case profile.Volume of
\r
2432 PROFILE_VOLUME_LEVEL1:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 1');
\r
2433 PROFILE_VOLUME_LEVEL2:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 2');
\r
2434 PROFILE_VOLUME_LEVEL3:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 3');
\r
2435 PROFILE_VOLUME_LEVEL4:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 4');
\r
2436 PROFILE_VOLUME_LEVEL5:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 5');
\r
2438 case profile.Vibration of
\r
2439 PROFILE_VIBRATION_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');
\r
2440 PROFILE_VIBRATION_ON :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('on');
\r
2441 PROFILE_VIBRATION_FIRST:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('vibrate first');
\r
2443 case profile.MessageTone of
\r
2444 PROFILE_MESSAGE_NOTONE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('no tone');
\r
2445 PROFILE_MESSAGE_STANDARD :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('standard');
\r
2446 PROFILE_MESSAGE_SPECIAL :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('special');
\r
2447 PROFILE_MESSAGE_BEEPONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('beep once');
\r
2448 PROFILE_MESSAGE_ASCENDING:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ascending');
\r
2450 case profile.KeypadTone of
\r
2451 PROFILE_KEYPAD_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');
\r
2452 PROFILE_KEYPAD_LEVEL1:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 1');
\r
2453 PROFILE_KEYPAD_LEVEL2:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 2');
\r
2454 PROFILE_KEYPAD_LEVEL3:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 3');
\r
2456 case profile.WarningTone of
\r
2457 PROFILE_WARNING_OFF:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');
\r
2458 PROFILE_WARNING_ON :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('on');
\r
2460 MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(inttostr(profile.CallerGroups));
\r
2461 profilenum:=profilenum+1;
\r
2462 case GSM_GetModelFeature(FN_PROFILES) of
\r
2463 F_PROF61:if profilenum=8 then ProfileTabHide();
\r
2464 F_PROF51:if profilenum=3 then ProfileTabHide();
\r
2465 F_PROF33:if profilenum=7 then ProfileTabHide();
\r
2470 procedure TMainForm.ProfileTabSheetShow(Sender: TObject);
\r
2472 if ProfileThread<>nil then
\r
2474 if GSMPhoneConnected then
\r
2476 MainForm.ListView7.Items.Clear;
\r
2478 MainForm.Timer2.Enabled:=false;
\r
2479 ProfileThread:=TProfileThread.Create(false);
\r
2484 procedure TMainForm.ProfileTabSheetHide(Sender: TObject);
\r
2490 procedure AddSMSInfo(myobject:TListView;mysms:GSM_SMSMessage);
\r
2491 var number,i,z:integer;
\r
2494 number:=myobject.Items.Count;
\r
2496 myobject.Items.Add;
\r
2497 myobject.Items.Item[number].Caption:=inttostr(number+1);
\r
2498 myobject.Items.Item[number].Subitems.Add(mysms.MessageText);
\r
2501 for z:=1 to PBKOfflineNumber do
\r
2503 mainform.Label14.Caption:=mysms.Sender;
\r
2504 mainform.Label16.Caption:=PhoneBackup.PhonePhonebook[z].Number;
\r
2505 if (PhoneBackup.PhonePhonebook[z].Number[1]<>chr(0)) then
\r
2507 if (mainform.Label14.Caption=mainform.Label16.Caption) then
\r
2509 myobject.Items.Item[number].Subitems.Add(PhoneBackup.PhonePhonebook[z].Name);
\r
2514 for i:=1 to PhoneBackup.PhonePhonebook[z].SubEntriesCount do
\r
2516 mainform.Label16.Caption:=PhoneBackup.PhonePhonebook[z].SubEntries[i].Number;
\r
2517 if (PhoneBackup.PhonePhonebook[z].SubEntries[i].EntryType=GSM_Number)
\r
2518 and (mainform.Label14.Caption=mainform.Label16.Caption) then
\r
2520 myobject.Items.Item[number].Subitems.Add(PhoneBackup.PhonePhonebook[z].Name);
\r
2525 if found then break;
\r
2527 if not found then myobject.Items.Item[number].Subitems.Add(mysms.Sender);
\r
2529 if mysms.SMSData=1 then
\r
2531 myobject.Items.Item[number].Subitems.Add(DayOfweek2(mysms.Time.Day,mysms.Time.Month,mysms.Time.Year)+' '+inttostr2(mysms.Time.Day,2)+'-'+inttostr2(mysms.Time.Month,2)+'-'+inttostr(mysms.Time.Year));
\r
2532 myobject.Items.Item[number].Subitems.Add(inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2));
\r
2536 procedure DisplaySMSfolder();
\r
2540 MainForm.ListView2.Items.Clear();
\r
2542 while i<>SMSstatus.Number do
\r
2545 if (SMSfolders.Folder[SMS[i].folder].Name=
\r
2546 SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then
\r
2548 AddSMSInfo(MainForm.ListView2,SMS[i]);
\r
2553 procedure SendSaveSMS(mysms:GSM_SMSMessage);
\r
2554 var i,j,z:integer;
\r
2557 SMSEditForm.Memo1.Text:=mysms.MessageText;
\r
2560 SMSEditForm.ComboBox9.Text:=mysms.sender;
\r
2561 AddSMSEditSenderList;
\r
2562 MainForm.Label14.Caption:=mysms.sender;
\r
2563 for i:=1 to PBKOfflineNumber do
\r
2565 if (PhoneBackup.PhonePhonebook[i].Number[1]<>chr(0)) then
\r
2567 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[i].Number;
\r
2568 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
2570 MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[i].Name;
\r
2571 for z:=0 to SMSEditForm.ComboBox9.Items.Count do
\r
2573 if (MainForm.Label14.Caption=SMSEditForm.ComboBox9.Items[z]) then
\r
2575 SMSEditForm.ComboBox9.ItemIndex:=z;
\r
2582 for j:=1 to PhoneBackup.PhonePhonebook[i].SubEntriesCount do
\r
2584 MainForm.Label16.Caption:=PhoneBackup.PhonePhonebook[i].SubEntries[j].Number;
\r
2585 if (MainForm.Label14.Caption=MainForm.Label16.Caption) then
\r
2587 MainForm.Label14.Caption:=PhoneBackup.PhonePhonebook[i].Name;
\r
2588 for z:=0 to SMSEditForm.ComboBox9.Items.Count do
\r
2590 if (MainForm.Label14.Caption=SMSEditForm.ComboBox9.Items[z]) then
\r
2592 SMSEditForm.ComboBox9.ItemIndex:=z;
\r
2602 SMSEditForm.ComboBox1.Items.Clear;
\r
2603 for i:=0 to MainForm.ComboBox3.items.count-1 do
\r
2605 SMSEditForm.ComboBox1.Items.Add(MainForm.ComboBox3.Items.Strings[i]);
\r
2607 SMSEditForm.ComboBox1.ItemIndex:=MainForm.ComboBox3.ItemIndex;
\r
2611 SMSEditForm.ComboBox2.Items.Clear;
\r
2612 SMSEditForm.ComboBox2.Items.Add('custom');
\r
2613 for i:=1 to smscnum-1 do
\r
2615 if SMSC2[i].Name[1]<>chr(0) then
\r
2616 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
2618 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
2620 SMSEditForm.ComboBox2.ItemIndex:=0;
\r
2622 if mysms.ReplyViaSameSMSC<>0 then
\r
2623 SMSEditForm.CheckBox3.Checked:=true
\r
2625 SMSEditForm.CheckBox3.Checked:=false;
\r
2627 if mysms.Class2=1 then
\r
2628 SMSEditForm.CheckBox1.Checked:=true
\r
2630 SMSEditForm.CheckBox1.Checked:=false;
\r
2632 if mysms.status=GSS_SENTREAD then
\r
2633 SMSEditForm.CheckBox4.Checked:=true
\r
2635 SMSEditForm.CheckBox4.Checked:=false;
\r
2637 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
2638 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
2639 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
2640 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
2641 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
2642 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
2643 SMSEditForm.PbkSMSTabSheet.TabVisible:=false;
\r
2644 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.TextSMSTabSheet;
\r
2646 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
2648 SMSEditForm.edit3.Visible:=true;
\r
2649 SMSEditForm.label14.Visible:=true;
\r
2652 SMSEditForm.edit3.Visible:=false;
\r
2653 SMSEditForm.label14.Visible:=false;
\r
2656 SMSEditForm.ShowModal;
\r
2659 procedure TMainForm.Edit4Click(Sender: TObject);
\r
2661 setsmslocation:=SMS[smsnumindex].Location;
\r
2662 SendSaveSMS(SMS[smsnumindex]);
\r
2665 procedure TMainForm.New2Click(Sender: TObject);
\r
2668 setsmslocation:=0;
\r
2671 SMSEditForm.Memo1.Text:='';
\r
2674 SMSEditForm.ComboBox9.Text:='';
\r
2675 AddSMSEditSenderList;
\r
2678 SMSEditForm.ComboBox1.Items.Clear;
\r
2679 for i:=0 to ComboBox3.items.count-1 do
\r
2681 SMSEditForm.ComboBox1.Items.Add(ComboBox3.Items.Strings[i]);
\r
2683 SMSEditForm.ComboBox1.ItemIndex:=ComboBox3.ItemIndex;
\r
2687 SMSEditForm.ComboBox2.Items.Clear;
\r
2688 SMSEditForm.ComboBox2.Items.Add('custom');
\r
2689 for i:=1 to smscnum-1 do
\r
2691 if SMSC2[i].Name[1]<>chr(0) then
\r
2692 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
2694 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
2696 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
2698 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
2699 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
2700 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
2701 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
2702 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
2703 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
2704 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
2705 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.TextSMSTabSheet;
\r
2707 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
2709 SMSEditForm.edit3.Visible:=true;
\r
2710 SMSEditForm.label14.Visible:=true;
\r
2713 SMSEditForm.edit3.Visible:=false;
\r
2714 SMSEditForm.label14.Visible:=false;
\r
2717 SMSEditForm.ShowModal;
\r
2720 procedure EndSMSThread;
\r
2722 if (SMSThread<>nil) then
\r
2724 SMSThread.Terminate();
\r
2725 MainForm.Timer2.Enabled:=true;
\r
2730 procedure TSMSThread.Execute;
\r
2734 while not Terminated do
\r
2736 if SMSnum<>SMSstatus.Number then
\r
2738 if GSM_GetModelFeature(FN_SMS)=F_SMS71 then
\r
2739 SMS[SMSnum+1].Location:=0
\r
2741 SMS[SMSnum+1].Location:=smsnum2;
\r
2742 error:=GSM_GetSMSMessage(@SMS[SMSnum+1]);
\r
2745 if SMS[SMSnum+1].Time.year<1900 then
\r
2747 SMS[SMSnum+1].Time.year:=SMS[SMSnum+1].Time.year+2000;
\r
2749 if (SMSfolders.Folder[SMS[SMSnum+1].folder].Name=
\r
2750 SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then
\r
2752 AddSMSInfo(MainForm.ListView2,SMS[SMSnum+1]);
\r
2756 if error=GE_SMSTOOLONG then
\r
2758 SMSstatus.Number:=SMSstatus.Number-1;
\r
2761 smsnum2:=smsnum2+1;
\r
2764 MainForm.ComboBox3.Enabled:=true;
\r
2770 procedure TMainForm.SMSTabSheetShow(Sender: TObject);
\r
2774 MainForm.ComboBox3.Enabled:=false;
\r
2775 if GSMPhoneConnected then
\r
2777 if smscinit=false then
\r
2779 MainForm.ListView6.Items.Clear;
\r
2784 if smscinit then break;
\r
2788 MainForm.Memo1.Lines.Clear;
\r
2789 MainForm.Memo2.Lines.Clear;
\r
2790 GSM_GetSMSFolders(@SMSfolders);
\r
2791 MainForm.ComboBox3.Items.Clear();
\r
2792 for i:=1 to SMSfolders.number do
\r
2794 MainForm.ComboBox3.Items.Add(SMSfolders.folder[i].Name);
\r
2796 MainForm.ComboBox3.ItemIndex:=0;
\r
2799 GSM_GetSMSStatus(@SMSstatus);
\r
2801 MainForm.ListView2.Items.Clear;
\r
2802 MainForm.Timer2.Enabled:=false;
\r
2804 SMSThread:=TSMSThread.Create(false);
\r
2808 procedure TMainForm.ComboBox3Change(Sender: TObject);
\r
2811 DisplaySMSfolder();
\r
2814 procedure AddSMSDescription(mysms:GSM_SMSMessage;firstmemo:TMemo;secondmemo:TMemo);
\r
2819 firstmemo.Lines.Clear;
\r
2820 firstmemo.Lines.Add(pchar('Sender: '+mysms.Sender));
\r
2822 if mysms.SMSData=1 then
\r
2824 ch:=mysms.MessageCenter.Number;
\r
2825 MainForm.Label14.Caption:=mysms.MessageCenter.Number;
\r
2826 if (smscinit) and (GSMPhoneConnected) then
\r
2828 for z:=1 to smscnum-1 do
\r
2830 MainForm.Label16.Caption:=SMSC2[z].Number;
\r
2831 if MainForm.Label14.Caption=MainForm.Label16.caption then
\r
2832 ch:=SMSC2[z].Name;
\r
2835 if mysms.ReplyViaSameSMSC<>0 then
\r
2836 ch:=' (reply via the same SMSC) '+ch;
\r
2837 firstmemo.Lines.Add('SMSC: '+ch);
\r
2839 if (mysms.type2=GST_DR) and (mysms.MessageText[1]='D') then
\r
2841 firstmemo.Lines.Add(pchar('Date & time: '+
\r
2842 DayOfweek2(mysms.Time.Day,mysms.Time.Month,mysms.Time.Year)+' '+inttostr2(mysms.Time.Day,2)+'-'+inttostr2(mysms.Time.Month,2)+'-'+inttostr(mysms.Time.Year)+' '+
\r
2843 inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2))+
\r
2844 ' SMSC response date & time: '+
\r
2845 DayOfweek2(mysms.SMSCTime.Day,mysms.SMSCTime.Month,mysms.SMSCTime.Year)+' '+inttostr2(mysms.SMSCTime.Day,2)+'-'+inttostr2(mysms.SMSCTime.Month,2)+'-'+inttostr(mysms.SMSCTime.Year)+' '+
\r
2846 inttostr2(mysms.SMSCTime.Hour,2)+':'+inttostr2(mysms.SMSCTime.Minute,2)+':'+inttostr2(mysms.SMSCTime.Second,2));
\r
2849 firstmemo.Lines.Add(pchar('Date & time: '+
\r
2850 DayOfweek2(mysms.Time.Day,mysms.Time.Month,mysms.Time.Year)+' '+inttostr2(mysms.Time.Day,2)+'-'+inttostr2(mysms.Time.Month,2)+'-'+inttostr(mysms.Time.Year)+' '+
\r
2851 inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2)));
\r
2855 secondmemo.Lines.Clear;
\r
2856 secondmemo.Lines.Add(pchar(''+mysms.MessageText));
\r
2859 procedure TMainForm.ListView2SelectItem(Sender: TObject; Item: TListItem;
\r
2860 Selected: Boolean);
\r
2867 while i<>SMSstatus.Number do
\r
2870 if (SMSfolders.Folder[SMS[i].folder].Name=
\r
2871 SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then
\r
2873 if (j=MainForm.ListView2.ItemIndex) then
\r
2876 AddSMSDescription(SMS[i],MainForm.Memo1,MainForm.Memo2);
\r
2883 procedure TMainForm.SMSTabSheetHide(Sender: TObject);
\r
2888 procedure TMainForm.SMSPopupMenuPopup(Sender: TObject);
\r
2890 New2.Enabled:=false;
\r
2891 Edit4.Enabled:=false;
\r
2892 CopyToPC1.Enabled:=false;
\r
2893 Delete2.Enabled:=false;
\r
2894 if GSMPhoneConnected then
\r
2896 New2.Enabled:=true;
\r
2897 if listview2.selected<>nil then
\r
2899 Edit4.Enabled:=true;
\r
2900 CopyToPC1.Enabled:=true;
\r
2901 Delete2.Enabled:=true;
\r
2906 procedure TMainForm.CalendarPopupMenuPopup(Sender: TObject);
\r
2908 if GSMPhoneConnected then
\r
2910 New1.Enabled:=true;
\r
2911 if listview4.selected<>nil then
\r
2913 Edit3.Enabled:=true;
\r
2914 Delete1.Enabled:=true;
\r
2915 SMS1.Enabled:=true;
\r
2916 CopyToPC2.Enabled:=true;
\r
2919 Edit3.Enabled:=false;
\r
2920 Delete1.Enabled:=false;
\r
2921 SMS1.Enabled:=false;
\r
2922 CopyToPC2.Enabled:=false;
\r
2926 New1.Enabled:=false;
\r
2927 Delete1.Enabled:=false;
\r
2928 Edit3.Enabled:=false;
\r
2929 SMS1.Enabled:=false;
\r
2930 CopyToPC2.Enabled:=false;
\r
2934 procedure TMainForm.Edit1Change(Sender: TObject);
\r
2939 rington.name[i]:=chr(0);
\r
2940 for i:=1 to strlen(pchar(edit1.text)) do
\r
2941 rington.name[i]:=edit1.text[i];
\r
2944 procedure TMainForm.Delete2Click(Sender: TObject);
\r
2946 mysms:GSM_SMSMessage;
\r
2948 if MessageDlg('Do you want to delete this SMS ?',
\r
2949 mtConfirmation, [mbYes, mbNo], 0) = mrYes then
\r
2951 mysms.Location:=SMS[smsnumindex].Location;
\r
2952 MainForm.Timer2.Enabled:=false;
\r
2953 GSM_DeleteSMSMessage(@mysms);
\r
2954 MainForm.Timer2.Enabled:=true;
\r
2955 MainForm.SMSTabSheetShow(nil);
\r
2959 procedure TMainForm.Edit5Click(Sender: TObject);
\r
2961 // if listview6.selected<>nil then
\r
2963 smsceditform.edit1.Text:=smsc2[smscselectitem].name;
\r
2964 smsceditform.edit2.Text:=smsc2[smscselectitem].number;
\r
2965 smsceditform.edit3.Text:=smsc2[smscselectitem].DefaultRecipient;
\r
2966 case smsc2[smscselectitem].Validity of
\r
2967 GSMV_1_Hour : SMSCEditForm.combobox1.itemindex:=0;
\r
2968 GSMV_6_Hours : SMSCEditForm.combobox1.itemindex:=1;
\r
2969 GSMV_24_Hours : SMSCEditForm.combobox1.itemindex:=2;
\r
2970 GSMV_72_Hours : SMSCEditForm.combobox1.itemindex:=3;
\r
2971 GSMV_1_Week : SMSCEditForm.combobox1.itemindex:=4;
\r
2973 SMSCEditForm.combobox1.itemindex:=5;
\r
2975 case smsc2[smscselectitem].Format of
\r
2976 GSMF_Text : SMSCEditForm.combobox2.itemindex:=0;
\r
2977 GSMF_Fax : SMSCEditForm.combobox2.itemindex:=1;
\r
2978 GSMF_Email : SMSCEditForm.combobox2.itemindex:=2;
\r
2980 SMSCEditForm.combobox2.itemindex:=3;
\r
2982 SMSCEditForm.ShowModal;
\r
2986 procedure TMainForm.SMSCPopupMenuPopup(Sender: TObject);
\r
2988 if GSMPhoneConnected then
\r
2990 if listview6.selected<>nil then
\r
2991 Edit5.Enabled:=true
\r
2993 Edit5.Enabled:=false;
\r
2996 Edit5.Enabled:=false;
\r
3001 procedure TMainForm.ListView6SelectItem(Sender: TObject; Item: TListItem;
\r
3002 Selected: Boolean);
\r
3006 smscselectitem:=Item.Index+1;
\r
3010 procedure TMainForm.ListView1SelectItem(Sender: TObject; Item: TListItem;
\r
3011 Selected: Boolean);
\r
3015 pbknumberentry:=Item.Index+1;
\r
3019 procedure TMainForm.Edit7Click(Sender: TObject);
\r
3024 // if listview1.Selected<>nil then
\r
3026 pbk.Location:=pbknumberentry;
\r
3027 case ComboBox1.ItemIndex of
\r
3028 1:begin pbk.MemoryType:=GMT_DC;pbk.Location:=pbk.Location-1;end;
\r
3029 2:begin pbk.MemoryType:=GMT_MC;pbk.Location:=pbk.Location-1;end;
\r
3030 3:begin pbk.MemoryType:=GMT_ON;pbk.Location:=pbk.Location-1;end;
\r
3031 4:pbk.MemoryType:=GMT_ME;
\r
3032 5:pbk.MemoryType:=GMT_SM;
\r
3033 6:begin pbk.MemoryType:=GMT_RC;pbk.Location:=pbk.Location-1;end;
\r
3035 GSM_GetMemoryLocation(@pbk);
\r
3037 pbkform.ListView1.Items.Clear;
\r
3038 pbkform.ListView1.Items.Add;
\r
3039 pbkform.ListView1.Items.Item[0].Caption:='Name';
\r
3040 pbkform.ListView1.Items.Item[0].SubItems.Add(pbk.name);
\r
3041 if (pbk.Number[1]<>chr(0)) then
\r
3043 current:=current+1;
\r
3044 pbkform.ListView1.Items.Add;
\r
3045 pbkform.ListView1.Items.Item[current].Caption:='Number';
\r
3046 pbkform.ListView1.Items.Item[current].SubItems.Add(pbk.number);
\r
3048 for i:=1 to pbk.SubEntriesCount do
\r
3050 current:=current+1;
\r
3051 pbkform.ListView1.Items.Add;
\r
3052 case pbk.SubEntries[i].EntryType of
\r
3053 GSM_Number:case pbk.SubEntries[i].NumberType of
\r
3054 GSM_General :pbkform.ListView1.Items.Item[current].Caption:='General number';
\r
3055 GSM_General2:pbkform.ListView1.Items.Item[current].Caption:='General number';
\r
3056 GSM_Mobile :pbkform.ListView1.Items.Item[current].Caption:='Mobile';
\r
3057 GSM_Work :pbkform.ListView1.Items.Item[current].Caption:='Work';
\r
3058 GSM_Fax :pbkform.ListView1.Items.Item[current].Caption:='Fax';
\r
3059 GSM_Home :pbkform.ListView1.Items.Item[current].Caption:='Home';
\r
3061 pbkform.ListView1.Items.Item[current].Caption:=inttostr(pbk.SubEntries[i].NumberType);
\r
3063 GSM_Note :pbkform.ListView1.Items.Item[current].Caption:='Note';
\r
3064 GSM_Postal:pbkform.ListView1.Items.Item[current].Caption:='Address';
\r
3065 GSM_Email :pbkform.ListView1.Items.Item[current].Caption:='Email';
\r
3067 pbkform.ListView1.Items.Item[current].Caption:='Date';
\r
3068 pbkform.ListView1.Items.Item[current].SubItems.Add(DayOfweek2(pbk.SubEntries[i].Date.Day,pbk.SubEntries[i].Date.Month,pbk.SubEntries[i].Date.Year)+' '+inttostr2(pbk.SubEntries[i].Date.Day,2)+'-'+inttostr2(pbk.SubEntries[i].Date.Month,2)+'-'+inttostr(pbk.SubEntries[i].Date.Year)+' '+inttostr2(pbk.SubEntries[i].Date.Hour,2)+':'+inttostr2(pbk.SubEntries[i].Date.Minute,2)+':'+inttostr2(pbk.SubEntries[i].Date.Second,2));
\r
3071 if (pbk.SubEntries[i].EntryType<>GSM_Date) then
\r
3072 pbkform.ListView1.Items.Item[current].SubItems.Add(pbk.SubEntries[i].Number);
\r
3075 if (pbk.Group>=0) and (pbk.Group<=4) then
\r
3077 current:=current+1;
\r
3078 pbkform.ListView1.Items.Add;
\r
3079 pbkform.ListView1.Items.Item[current].Caption:='Caller group';
\r
3080 pbkform.ListView1.Items.Item[current].SubItems.Add(caller[pbk.Group+1].text);
\r
3082 pbkform.showmodal;
\r
3086 procedure TMainForm.Button18Click(Sender: TObject);
\r
3089 Name,Data:array[1..255] of char;
\r
3091 if smscinit=false then
\r
3093 MainForm.ListView6.Items.Clear;
\r
3098 if smscinit then break;
\r
3103 SMSEditForm.Memo1.Text:='';
\r
3106 SMSEditForm.ComboBox9.Text:='';
\r
3107 AddSMSEditSenderList;
\r
3110 GSM_GetSMSFolders(@SMSfolders);
\r
3111 SMSEditForm.ComboBox1.Items.Clear;
\r
3112 for i:=1 to SMSFolders.number do
\r
3114 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
3116 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
3120 SMSEditForm.ComboBox2.Items.Clear;
\r
3121 SMSEditForm.ComboBox2.Items.Add('custom');
\r
3122 for i:=1 to smscnum-1 do
\r
3124 if SMSC2[i].Name[1]<>chr(0) then
\r
3125 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
3127 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
3129 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
3131 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
3132 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
3133 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
3134 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
3135 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
3136 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
3137 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
3138 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.BitmapSMSTabSheet;
\r
3140 SMSEditForm.Image1.Picture:=Image1.Picture;
\r
3142 SMSEditForm.Memo2.Text:='';
\r
3143 SMSEditForm.CheckBox5.Checked:=false;
\r
3144 if bitma.type2<>GSM_PictureImage then
\r
3146 SMSEditForm.Memo2.Visible:=false;
\r
3147 SMSEditForm.Label10.Visible:=false;
\r
3148 SMSEditForm.CheckBox5.Visible:=false;
\r
3149 SMSEditForm.CheckBox6.Visible:=false;
\r
3152 SMSEditForm.Memo2.Visible:=true;
\r
3153 SMSEditForm.Label10.Visible:=true;
\r
3154 SMSEditForm.CheckBox5.Visible:=true;
\r
3155 SMSEditForm.CheckBox6.Visible:=true;
\r
3158 SMSEditForm.Label9.Visible:=false;
\r
3159 SMSEditForm.ComboBox7.Visible:=false;
\r
3160 if bitma.type2=GSM_OperatorLogo then
\r
3162 SMSEditForm.Label9.Visible:=true;
\r
3163 SMSEditForm.ComboBox7.Visible:=true;
\r
3164 //preparing network names
\r
3168 GSM_GetNetworkData(i,@Name,@Data);
\r
3170 // conversion problems
\r
3171 Label14.Caption:=Name;
\r
3172 if strcomp(PChar(Label14.Caption),PChar('unknown'))=0 then break;
\r
3174 // conversion problems
\r
3175 Label14.Caption:=' - '+Label14.Caption;
\r
3176 for j:=6 downto 1 do
\r
3178 Label14.Caption:=Data[j]+Label14.Caption;
\r
3181 SMSEditForm.ComboBox7.Items.Add(Pchar(Label14.Caption));
\r
3184 //looking for current network
\r
3185 if GSMPhoneConnected then
\r
3187 // conversion problems
\r
3188 Label14.Caption:=MainForm.StatusBar1.Panels[1].Text;
\r
3189 Label14.Caption:=' - '+Label14.Caption;
\r
3190 for j:=6 downto 1 do
\r
3192 Label14.Caption:=GSMNetworkInfo.NetworkCode[j]+Label14.Caption;
\r
3198 if strcomp(pchar(SMSEditForm.ComboBox7.Items[i]),pchar(Label14.Caption))=0
\r
3202 SMSEditForm.ComboBox7.ItemIndex:=i;
\r
3206 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
3208 SMSEditForm.edit3.Visible:=true;
\r
3209 SMSEditForm.label14.Visible:=true;
\r
3212 SMSEditForm.edit3.Visible:=false;
\r
3213 SMSEditForm.label14.Visible:=false;
\r
3216 SMSEditForm.ShowModal;
\r
3219 procedure TMainForm.Button17Click(Sender: TObject);
\r
3223 if smscinit=false then
\r
3225 MainForm.ListView6.Items.Clear;
\r
3230 if smscinit then break;
\r
3235 SMSEditForm.Memo1.Text:='';
\r
3238 SMSEditForm.ComboBox9.Text:='';
\r
3239 AddSMSEditSenderList;
\r
3242 GSM_GetSMSFolders(@SMSfolders);
\r
3243 SMSEditForm.ComboBox1.Items.Clear;
\r
3244 for i:=1 to SMSFolders.number do
\r
3246 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
3248 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
3252 SMSEditForm.ComboBox2.Items.Clear;
\r
3253 SMSEditForm.ComboBox2.Items.Add('custom');
\r
3254 for i:=1 to smscnum-1 do
\r
3256 if SMSC2[i].Name[1]<>chr(0) then
\r
3257 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
3259 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
3261 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
3263 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
3264 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
3265 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
3266 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
3267 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
3268 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
3269 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
3270 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.RingtoneSMSTabSheet;
\r
3272 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
3274 SMSEditForm.edit3.Visible:=true;
\r
3275 SMSEditForm.label14.Visible:=true;
\r
3278 SMSEditForm.edit3.Visible:=false;
\r
3279 SMSEditForm.label14.Visible:=false;
\r
3282 SMSEditForm.ShowModal;
\r
3285 procedure TMainForm.SMS1Click(Sender: TObject);
\r
3289 if smscinit=false then
\r
3291 MainForm.ListView6.Items.Clear;
\r
3296 if smscinit then break;
\r
3301 SMSEditForm.Memo1.Text:='';
\r
3304 SMSEditForm.ComboBox9.Text:='';
\r
3305 AddSMSEditSenderList;
\r
3308 GSM_GetSMSFolders(@SMSfolders);
\r
3309 SMSEditForm.ComboBox1.Items.Clear;
\r
3310 for i:=1 to SMSFolders.number do
\r
3312 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
3314 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
3318 SMSEditForm.ComboBox2.Items.Clear;
\r
3319 SMSEditForm.ComboBox2.Items.Add('custom');
\r
3320 for i:=1 to smscnum-1 do
\r
3322 if SMSC2[i].Name[1]<>chr(0) then
\r
3323 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
3325 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
3327 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
3329 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
3330 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
3331 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
3332 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
3333 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
3334 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
3335 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
3336 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.CalendarSMSTabSheet;
\r
3338 calenda.Location:=calendarselect;
\r
3339 MainForm.Timer2.Enabled:=false;
\r
3340 GSM_GetCalendarNote(@calenda);
\r
3341 MainForm.Timer2.Enabled:=true;
\r
3343 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
3345 SMSEditForm.edit3.Visible:=true;
\r
3346 SMSEditForm.label14.Visible:=true;
\r
3349 SMSEditForm.edit3.Visible:=false;
\r
3350 SMSEditForm.label14.Visible:=false;
\r
3353 SMSEditForm.ShowModal;
\r
3356 procedure TMainForm.SMSSendSave1Click(Sender: TObject);
\r
3360 if smscinit=false then
\r
3362 MainForm.ListView6.Items.Clear;
\r
3367 if smscinit then break;
\r
3372 SMSEditForm.Memo1.Text:='';
\r
3375 SMSEditForm.ComboBox9.Text:='';
\r
3376 AddSMSEditSenderList;
\r
3379 GSM_GetSMSFolders(@SMSfolders);
\r
3380 SMSEditForm.ComboBox1.Items.Clear;
\r
3381 for i:=1 to SMSFolders.number do
\r
3383 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
3385 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
3389 SMSEditForm.ComboBox2.Items.Clear;
\r
3390 SMSEditForm.ComboBox2.Items.Add('custom');
\r
3391 for i:=1 to smscnum-1 do
\r
3393 if SMSC2[i].Name[1]<>chr(0) then
\r
3394 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
3396 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
3398 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
3400 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
3401 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
3402 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
3403 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
3404 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
3405 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
3406 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
3407 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.PBKSMSTabSheet;
\r
3409 pbk.Location:=pbknumberentry-1;
\r
3410 case ComboBox1.ItemIndex of
\r
3411 1:pbk.MemoryType:=GMT_DC;
\r
3412 2:pbk.MemoryType:=GMT_MC;
\r
3413 3:pbk.MemoryType:=GMT_ON;
\r
3414 4:pbk.MemoryType:=GMT_ME;
\r
3415 5:pbk.MemoryType:=GMT_SM;
\r
3416 6:pbk.MemoryType:=GMT_RC;
\r
3418 MainForm.Timer2.Enabled:=false;
\r
3419 GSM_GetMemoryLocation(@pbk);
\r
3420 MainForm.Timer2.Enabled:=true;
\r
3422 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
3424 SMSEditForm.edit3.Visible:=true;
\r
3425 SMSEditForm.label14.Visible:=true;
\r
3428 SMSEditForm.edit3.Visible:=false;
\r
3429 SMSEditForm.label14.Visible:=false;
\r
3432 SMSEditForm.ShowModal;
\r
3435 procedure TMainForm.Button13Click(Sender: TObject);
\r
3437 ring:GSM_BinRingtone;
\r
3439 if OpenDialog1.Execute then
\r
3441 if GSM_ReadBinRingtoneFile(PChar(OpenDialog1.FileName),@ring)=0 then
\r
3443 Edit2.Text:=ring.Name;
\r
3450 procedure TMainForm.Button14Click(Sender: TObject);
\r
3453 mybinring:GSM_BinRingtone;
\r
3454 myring:GSM_Ringtone;
\r
3456 LogosRingForm.Label1.Caption:='Do you want to set ringtone ?';
\r
3457 LogosRingForm.ComboBox3.Visible:=true;
\r
3458 LogosRingForm.ComboBox3.Items.Clear();
\r
3459 MainForm.Timer2.Enabled:=false;
\r
3460 for i:=1 to GSM_GetModelFeature(FN_RINGNUMBER) do
\r
3462 mybinring.location:=i;
\r
3463 if (GSM_GetPhoneRingtone(@mybinring,@myring)=0) then
\r
3465 if GSM_GetModelFeature(FN_RINGTONES)=F_RING_SM then
\r
3467 LogosRingForm.ComboBox3.Items.Add(myring.name);
\r
3470 LogosRingForm.ComboBox3.Items.Add(mybinring.name);
\r
3473 LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));
\r
3475 MainForm.Timer2.Enabled:=true;
\r
3476 LogosRingForm.ComboBox3.ItemIndex:=0;
\r
3477 LogosRingForm.ShowModal;
\r
3478 if LogosRingForm.ComboBox3.Visible then
\r
3480 binring.location:=LogosRingForm.ComboBox3.ItemIndex+1;
\r
3481 MainForm.Timer2.Enabled:=false;
\r
3482 GSM_SetBinRingtone(@binring);
\r
3483 MainForm.Timer2.Enabled:=true;
\r
3487 procedure TMainForm.ConfigTabSheetHide(Sender: TObject);
\r
3489 MyIniFile: TIniFile;
\r
3491 if MessageDlg('Do you want to save config ?',
\r
3492 mtConfirmation, [mbYes, mbNo], 0) = mrYes then
\r
3494 MyIniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'\gnokiirc');
\r
3495 case MainForm.ComboBox4.ItemIndex of
\r
3496 0:MyIniFile.WriteString('global', 'connection', 'mbus');
\r
3497 1:MyIniFile.WriteString('global', 'connection', 'fbus');
\r
3498 2:MyIniFile.WriteString('global', 'connection', 'dlr3');
\r
3499 3:MyIniFile.WriteString('global', 'connection', 'infrared');
\r
3501 MyIniFile.WriteString('global', 'model', MainForm.ComboBox6.Text);
\r
3502 MyIniFile.WriteString('global', 'port', MainForm.ComboBox5.Text);
\r
3503 if MainForm.CheckBox2.Checked then
\r
3504 MyIniFile.WriteString('global', 'synchronizetime', 'yes')
\r
3506 MyIniFile.WriteString('global', 'synchronizetime', 'no');
\r
3511 procedure TMainForm.ConfigTabSheetShow(Sender: TObject);
\r
3513 MyIniFile: TIniFile;
\r
3517 MyIniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'\gnokiirc');
\r
3519 x:=MyInifile.ReadString('global', 'connection', 'fbus');
\r
3520 MainForm.ComboBox4.ItemIndex:=0;
\r
3521 if x='fbus' then MainForm.ComboBox4.ItemIndex:=1;
\r
3522 if x='dlr3' then MainForm.ComboBox4.ItemIndex:=2;
\r
3523 if x='infrared' then MainForm.ComboBox4.ItemIndex:=3;
\r
3525 x:=MyInifile.ReadString('global', 'port', 'com2:');
\r
3526 MainForm.ComboBox5.ItemIndex:=0;
\r
3527 for i:=1 to MainForm.ComboBox5.Items.Count do
\r
3529 if MainForm.ComboBox5.Items.Strings[i-1]=x then
\r
3530 MainForm.ComboBox5.ItemIndex:=i-1;
\r
3533 x:=MyInifile.ReadString('global', 'model', 'auto');
\r
3534 MainForm.ComboBox6.ItemIndex:=0;
\r
3535 for i:=1 to MainForm.ComboBox6.Items.Count do
\r
3537 if MainForm.ComboBox6.Items.Strings[i-1]=x then
\r
3538 MainForm.ComboBox6.ItemIndex:=i-1;
\r
3541 x:=MyInifile.ReadString('global', 'synchronizetime', 'no');
\r
3543 MainForm.CheckBox2.Checked:=True
\r
3545 MainForm.CheckBox2.Checked:=False;
\r
3549 procedure TMainForm.Timer2Timer(Sender: TObject);
\r
3551 if SparkyThread.Suspended then SparkyThread.Resume;
\r
3552 Timer2.Interval:=2000;
\r
3555 procedure TMainForm.AboutTabSheetShow(Sender: TObject);
\r
3557 xxx:array[1..256] of char;
\r
3559 GSM_GetDLLVersion(@xxx);
\r
3560 Label20.Caption:=xxx;
\r
3563 procedure SaveSMSOffline;
\r
3564 var F:file of GSM_SMSMessage;
\r
3567 AssignFile(F, 'gnokiisms');
\r
3569 for i:=1 to SMSOfflineNumber do
\r
3571 Write(f,SMSOffline[i]);
\r
3576 procedure ReadSMSOffline;
\r
3577 var F:file of GSM_SMSMessage;
\r
3579 MainForm.ListView10.items.Clear;
\r
3580 AssignFile(F, 'gnokiisms');
\r
3582 if (ioresult=0) then
\r
3585 smsofflinenumber:=0;
\r
3586 while not eof(f) do
\r
3588 smsofflinenumber:=smsofflinenumber+1;
\r
3589 read(f,smsoffline[smsofflinenumber]);
\r
3590 AddSMSInfo(MainForm.ListView10,smsoffline[smsofflinenumber]);
\r
3596 procedure TMainForm.PCSMSTabSheetShow(Sender: TObject);
\r
3601 procedure TMainForm.CopytoPC1Click(Sender: TObject);
\r
3603 SMSofflinenumber:=smsofflinenumber+1;
\r
3604 SMSoffline[SMSofflinenumber]:=SMS[smsnumindex];
\r
3608 procedure TMainForm.ListView10SelectItem(Sender: TObject; Item: TListItem;
\r
3609 Selected: Boolean);
\r
3611 AddSMSDescription(SMSOffline[Item.Index+1],MainForm.Memo4,MainForm.Memo5);
\r
3614 procedure TMainForm.PCSMSPopupMenuPopup(Sender: TObject);
\r
3616 SendSave1.Enabled:=False;
\r
3617 if GSMPhoneConnected then SendSave1.Enabled:=True;
\r
3619 Delete3.Enabled:=false;
\r
3620 if listview10.selected<>nil then Delete3.Enabled:=True;
\r
3623 procedure TMainForm.Delete3Click(Sender: TObject);
\r
3627 if Application.MessageBox('Do you want to delete this SMS ?','Question',MB_YESNO)=IDYES then
\r
3629 for i:=MainForm.ListView10.ItemIndex to smsofflinenumber-1 do
\r
3631 SMSOffline[i]:=SMSOffline[i+1];
\r
3633 Smsofflinenumber:=smsofflinenumber-1;
\r
3639 procedure TMainForm.SendSave1Click(Sender: TObject);
\r
3642 GSM_GetSMSFolders(@SMSfolders);
\r
3643 MainForm.ComboBox3.Items.Clear();
\r
3644 for i:=1 to SMSfolders.number do
\r
3646 MainForm.ComboBox3.Items.Add(SMSfolders.folder[i].Name);
\r
3648 MainForm.ComboBox3.ItemIndex:=0;
\r
3649 setsmslocation:=0;
\r
3650 SendSaveSMS(SMSOffline[MainForm.ListView10.ItemIndex+1]);
\r
3654 procedure EndWAPBookmarkThread;
\r
3656 if (WAPBookmarkThread<>nil) then
\r
3658 WAPBookmarkThread.Terminate();
\r
3659 MainForm.Timer2.Enabled:=true;
\r
3660 WAPBookmarkThread:=nil;
\r
3664 procedure TWAPBookmarkThread.Execute;
\r
3666 bookmark:GSM_WAPBookmark;
\r
3669 while not Terminated do
\r
3671 bookmark.location:=bookmarknum;
\r
3672 i:=GSM_GetWAPBookmark(@bookmark);
\r
3673 MainForm.ListView9.Items.Add;
\r
3674 MainForm.ListView9.Items.Item[bookmarknum-1].Caption:=inttostr(bookmarknum);
\r
3677 MainForm.ListView9.Items.Item[bookmarknum-1].Subitems.Add(bookmark.title);
\r
3678 MainForm.ListView9.Items.Item[bookmarknum-1].Subitems.Add(bookmark.adress);
\r
3681 MainForm.ListView9.Items.Item[bookmarknum-1].Subitems.Add('');
\r
3683 bookmarknum:=bookmarknum+1;
\r
3684 if bookmarknum=15 then EndWAPBookmarkThread;
\r
3688 procedure TMainForm.WapBookTabSheetHide(Sender: TObject);
\r
3690 EndWAPBookmarkThread;
\r
3693 procedure TMainForm.WapBookTabSheetShow(Sender: TObject);
\r
3695 if GSMPhoneConnected then
\r
3697 if GSM_GetModelFeature(FN_WAP)<>0 then
\r
3699 GroupBox17.Ctl3D:=true;
\r
3700 ListView9.Ctl3D:=true;
\r
3701 ListView9.Enabled:=true;
\r
3703 MainForm.ListView9.Items.Clear;
\r
3704 MainForm.Timer2.Enabled:=false;
\r
3705 WAPBookmarkThread:=TWAPBookmarkThread.Create(false);
\r
3708 GroupBox17.Ctl3D:=false;
\r
3709 ListView9.Ctl3D:=false;
\r
3710 ListView9.Enabled:=false;
\r
3715 procedure TMainForm.ComboBox7Change(Sender: TObject);
\r
3717 settings:GSM_WAPSettings;
\r
3719 if combobox7.ItemIndex>0 then
\r
3721 settings.location:=combobox7.ItemIndex;
\r
3722 MainForm.Timer2.Enabled:=false;
\r
3723 GSM_GetWAPSettings(@settings);
\r
3724 MainForm.Timer2.Enabled:=true;
\r
3726 if (settings.title[1]<>chr(0)) then
\r
3727 Edit6.Text:=settings.title
\r
3729 edit6.Text:='set '+inttostr(combobox7.ItemIndex);
\r
3731 edit8.Text:=settings.homepage;
\r
3733 combobox10.itemindex:=1;
\r
3734 if settings.iscontinuous<>0 then combobox10.Itemindex:=0;
\r
3736 combobox9.itemindex:=1;
\r
3737 if settings.issecurity<>0 then combobox9.Itemindex:=0;
\r
3739 if (settings.bearer>=0) and (settings.bearer<3) then
\r
3741 combobox8.ItemIndex:=settings.bearer;
\r
3743 Label27.enabled:=false;
\r
3744 Label28.enabled:=false;
\r
3745 Label29.enabled:=false;
\r
3746 label30.enabled:=false;
\r
3747 label31.enabled:=false;
\r
3748 label32.enabled:=false;
\r
3749 label33.enabled:=false;
\r
3750 label34.enabled:=false;
\r
3751 label35.enabled:=false;
\r
3752 label36.enabled:=false;
\r
3753 label37.enabled:=false;
\r
3754 edit9.enabled:=false;
\r
3755 edit10.enabled:=false;
\r
3756 edit11.enabled:=false;
\r
3757 edit12.enabled:=false;
\r
3758 edit13.enabled:=false;
\r
3759 edit14.enabled:=false;
\r
3760 edit15.enabled:=false;
\r
3761 combobox11.enabled:=false;
\r
3762 combobox12.enabled:=false;
\r
3763 combobox13.enabled:=false;
\r
3764 combobox14.enabled:=false;
\r
3766 case settings.bearer of
\r
3767 WAPSETTINGS_BEARER_SMS:
\r
3769 label27.enabled:=true;
\r
3770 edit9.text:=settings.server;
\r
3771 edit9.enabled:=true;
\r
3773 label28.enabled:=true;
\r
3774 edit10.text:=settings.service;
\r
3775 edit10.enabled:=true;
\r
3777 WAPSETTINGS_BEARER_DATA:
\r
3779 label29.enabled:=true;
\r
3780 edit11.text:=settings.dialup;
\r
3781 edit11.enabled:=true;
\r
3783 label34.enabled:=true;
\r
3784 edit13.text:=settings.user;
\r
3785 edit13.enabled:=true;
\r
3787 label35.enabled:=true;
\r
3788 edit14.text:=settings.password;
\r
3789 edit14.enabled:=true;
\r
3791 label30.enabled:=true;
\r
3792 edit12.text:=settings.ipaddress;
\r
3793 edit12.enabled:=true;
\r
3795 label31.enabled:=true;
\r
3796 combobox11.enabled:=true;
\r
3797 combobox11.ItemIndex:=0;
\r
3798 if settings.isnormalauthentication=0 then
\r
3799 combobox11.ItemIndex:=1;
\r
3801 label32.enabled:=true;
\r
3802 combobox12.enabled:=true;
\r
3803 combobox12.ItemIndex:=0;
\r
3804 if settings.isISDNcall=0 then
\r
3805 combobox12.ItemIndex:=1;
\r
3807 label33.enabled:=true;
\r
3808 combobox13.enabled:=true;
\r
3809 combobox13.ItemIndex:=1;
\r
3810 if settings.isspeed14400=0 then
\r
3811 combobox13.ItemIndex:=0;
\r
3813 WAPSETTINGS_BEARER_USSD:
\r
3815 label36.enabled:=true;
\r
3816 edit15.text:=settings.code;
\r
3817 edit15.enabled:=true;
\r
3819 label37.enabled:=true;
\r
3820 combobox14.Enabled:=true;
\r
3821 combobox14.ItemIndex:=1;
\r
3822 if settings.isIP=0 then
\r
3824 combobox14.ItemIndex:=1;
\r
3826 label28.enabled:=true;
\r
3827 edit10.text:=settings.service;
\r
3828 edit10.enabled:=true;
\r
3831 label30.enabled:=true;
\r
3832 edit12.text:=settings.ipaddress;
\r
3833 edit12.enabled:=true;
\r
3841 procedure TMainForm.Button19Click(Sender: TObject);
\r
3843 Divert:GSM_CallDivert;
\r
3845 MainForm.Timer2.Enabled:=false;
\r
3847 divert.DType:=GSM_CDV_Busy;
\r
3848 divert.ctype:=GSM_CDV_VoiceCalls;
\r
3849 divert.Operation:=GSM_CDV_Query;
\r
3850 if gsm_calldivertoperation(@divert)=0 then
\r
3852 if divert.enabled=0 then
\r
3854 Label38.enabled:=false;
\r
3855 edit16.enabled:=false;
\r
3856 edit16.Text:='Not active';
\r
3859 Label38.enabled:=true;
\r
3860 edit16.enabled:=true;
\r
3861 edit16.Text:=divert.Number;
\r
3865 divert.DType:=GSM_CDV_NoAnswer;
\r
3866 divert.ctype:=GSM_CDV_VoiceCalls;
\r
3867 divert.Operation:=GSM_CDV_Query;
\r
3868 if gsm_calldivertoperation(@divert)=0 then
\r
3870 if divert.enabled=0 then
\r
3872 Label39.enabled:=false;
\r
3873 edit17.enabled:=false;
\r
3874 edit17.Text:='Not active';
\r
3875 label40.Enabled:=false;
\r
3876 combobox15.Enabled:=false;
\r
3879 Label39.enabled:=true;
\r
3880 edit17.enabled:=true;
\r
3881 edit17.Text:=divert.Number;
\r
3882 label40.Enabled:=true;
\r
3883 combobox15.Enabled:=true;
\r
3884 case divert.timeout of
\r
3885 5:combobox15.ItemIndex:=0;
\r
3886 10:combobox15.ItemIndex:=1;
\r
3887 15:combobox15.ItemIndex:=2;
\r
3888 20:combobox15.ItemIndex:=3;
\r
3889 25:combobox15.ItemIndex:=4;
\r
3890 30:combobox15.ItemIndex:=5;
\r
3895 divert.DType:=GSM_CDV_OutOfreach;
\r
3896 divert.ctype:=GSM_CDV_VoiceCalls;
\r
3897 divert.Operation:=GSM_CDV_Query;
\r
3898 if gsm_calldivertoperation(@divert)=0 then
\r
3900 if divert.enabled=0 then
\r
3902 Label41.enabled:=false;
\r
3903 edit18.enabled:=false;
\r
3904 edit18.Text:='Not active';
\r
3907 Label41.enabled:=true;
\r
3908 edit18.enabled:=true;
\r
3909 edit18.Text:=divert.Number;
\r
3913 MainForm.Timer2.Enabled:=true;
\r
3916 procedure TMainForm.Button20Click(Sender: TObject);
\r
3918 Divert:GSM_CallDivert;
\r
3920 MainForm.Timer2.Enabled:=false;
\r
3922 divert.DType:=GSM_CDV_AllTypes;
\r
3923 divert.ctype:=GSM_CDV_AllCalls;
\r
3924 divert.Operation:=GSM_CDV_Erasure;
\r
3925 gsm_calldivertoperation(@divert);
\r
3927 MainForm.Timer2.Enabled:=true;
\r
3931 procedure ReadCalendarOffline;
\r
3932 var F:file of GSM_calendarnote;
\r
3934 MainForm.ListView11.items.Clear;
\r
3935 AssignFile(F, 'gnokiicalendar');
\r
3937 if (ioresult=0) then
\r
3939 calendarofflinenumber:=0;
\r
3940 while not eof(f) do
\r
3942 calendarofflinenumber:=calendarofflinenumber+1;
\r
3943 read(f,calendaroffline[calendarofflinenumber]);
\r
3944 AddCalendarNote(calendaroffline[calendarofflinenumber],mainform.ListView11);
\r
3950 procedure TMainForm.PCOfflineTabSheetShow(Sender: TObject);
\r
3953 Label43.Caption:=inttostr(smsofflinenumber);
\r
3954 ReadCalendarOffline;
\r
3955 Label45.Caption:=inttostr(calendarofflinenumber);
\r
3958 procedure SaveCalendarOffline;
\r
3959 var F:file of GSM_CalendarNote;
\r
3962 AssignFile(F, 'gnokiicalendar');
\r
3964 for i:=1 to CalendarOfflineNumber do
\r
3966 Write(f,CalendarOffline[i]);
\r
3971 procedure TMainForm.PCCalendarTabSheetShow(Sender: TObject);
\r
3973 ReadCalendarOffline;
\r
3976 procedure TMainForm.CopytoPC2Click(Sender: TObject);
\r
3978 setcalendarnote.Location:=calendarselect;
\r
3979 mainform.Timer2.Enabled:=false;
\r
3980 GSM_GetCalendarNote(@setcalendarnote);
\r
3981 mainform.Timer2.Enabled:=true;
\r
3982 Calendarofflinenumber:=calendarofflinenumber+1;
\r
3983 Calendaroffline[Calendarofflinenumber]:=setcalendarnote;
\r
3984 SaveCalendarOffline;
\r
3987 procedure TMainForm.Delete5Click(Sender: TObject);
\r
3991 if Application.MessageBox('Do you want to delete this note ?','Question',MB_YESNO)=IDYES then
\r
3993 for i:=MainForm.ListView11.ItemIndex to calendarofflinenumber-1 do
\r
3995 CalendarOffline[i]:=CalendarOffline[i+1];
\r
3997 Calendarofflinenumber:=calendarofflinenumber-1;
\r
3998 SaveCalendarOffline;
\r
3999 ReadCalendarOffline;
\r
4003 procedure TMainForm.Copytocalendar1Click(Sender: TObject);
\r
4005 if not readcalendar then
\r
4007 application.MessageBox('Please read first calendar notes from phone','info',mb_ok);
\r
4009 setcalendarnote:=calendaroffline[mainform.listview11.itemindex+1];
\r
4010 setcalendarnote.Location:=MainForm.ListView4.Items.Count+1;
\r
4016 procedure TMainForm.PCCalendarPopupMenuPopup(Sender: TObject);
\r
4018 CopyTocalendar1.Enabled:=False;
\r
4019 if (GSMPhoneConnected) and (GSM_GetModelFeature(FN_Calendar)<>0)
\r
4020 and (listview11.selected<>nil) then copytocalendar1.Enabled:=True;
\r
4022 Delete5.Enabled:=false;
\r
4023 if listview11.selected<>nil then Delete5.Enabled:=True;
\r
4026 procedure TMainForm.Savebackuptofile1Click(Sender: TObject);
\r
4028 PhoneBackup.PhonePhonebookUsed:=0;
\r
4029 PhoneBackup.SIMPhonebookUsed:=0;
\r
4030 PhoneBackup.CallerAvailable:=0;
\r
4031 PhoneBackup.StartupLogoAvailable:=0;
\r
4032 PhoneBackup.StartupText.text[1]:=chr(0);
\r
4033 PhoneBackup.OperatorLogoAvailable:=0;
\r
4034 PhoneBackup.SpeedAvailable:=0;
\r
4036 BackupForm.CheckBox3.Enabled:=true;
\r
4037 BackupForm.CheckBox4.Enabled:=true;
\r
4038 BackupForm.CheckBox2.Enabled:=true;
\r
4039 BackupForm.CheckBox1.Enabled:=true;
\r
4040 BackupForm.CheckBox5.Enabled:=true;
\r
4042 BackupForm.GroupBox1.Caption:=' What do you want to backup ? ';
\r
4043 PhoneBackupAvailable:=True;
\r
4044 BackupForm.ListBox1.ItemIndex:=0;
\r
4045 BackupForm.GroupBox2.Visible:=true;
\r
4046 BackupForm.ShowModal;
\r
4047 if PhoneBackupAvailable then
\r
4049 BackupProgressForm.ShowModal;
\r
4053 procedure TMainForm.Restorebackupfromfile1Click(Sender: TObject);
\r
4055 if OpenDialog1.Execute then
\r
4057 if GSM_ReadBackupFile(PChar(OpenDialog1.FileName),@phonebackup)=0 then
\r
4059 BackupForm.CheckBox3.Enabled:=true;
\r
4060 if PhoneBackup.CallerAvailable=0 then
\r
4061 BackupForm.CheckBox3.Enabled:=false;
\r
4063 BackupForm.CheckBox4.Enabled:=true;
\r
4064 if PhoneBackup.OperatorLogoAvailable=0 then
\r
4065 BackupForm.CheckBox4.Enabled:=false;
\r
4067 BackupForm.CheckBox2.Enabled:=true;
\r
4068 if PhoneBackup.PhonePhonebookUsed=0 then
\r
4069 BackupForm.CheckBox2.Enabled:=false;
\r
4071 BackupForm.CheckBox1.Enabled:=true;
\r
4072 if PhoneBackup.SIMPhonebookUsed=0 then
\r
4073 BackupForm.CheckBox1.Enabled:=false;
\r
4075 BackupForm.CheckBox5.Enabled:=true;
\r
4077 BackupForm.GroupBox1.Caption:=' What do you want to restore ? ';
\r
4078 PhoneBackupAvailable:=true;
\r
4079 BackupForm.GroupBox2.Visible:=false;
\r
4080 BackupForm.ShowModal;
\r
4081 if PhoneBackupAvailable then
\r
4083 PhoneBackupAvailable:=false;
\r
4084 BackupProgressForm.ShowModal;
\r
4090 procedure TMainForm.PBKPopupMenuPopup(Sender: TObject);
\r
4092 Savephonebooktofileanotherapplication1.enabled:=false;
\r
4093 Delete4.enabled:=false;
\r
4094 Edit19.Enabled:=false;
\r
4095 Edit7.Enabled:=false;
\r
4096 SMSSendSave1.Enabled:=false;
\r
4097 copyphonebooktopc1.Enabled:=false;
\r
4098 if GSMPhoneConnected then
\r
4100 if (pbkofflinenumber<>0) then copyphonebooktopc1.Enabled:=true;
\r
4101 if (ComboBox1.ItemIndex=4) or (ComboBox1.ItemIndex=5) then
\r
4103 Savephonebooktofileanotherapplication1.enabled:=true;
\r
4104 if listview1.Selected<>nil then
\r
4106 Delete4.enabled:=true;
\r
4107 Edit19.Enabled:=true;
\r
4110 if listview1.Selected<>nil then
\r
4112 SMSSendSave1.Enabled:=true;
\r
4113 Edit7.Enabled:=true;
\r
4118 procedure TMainForm.Savephonebooktofileanotherapplication1Click(
\r
4121 PhoneBackup.CallerAvailable:=0;
\r
4122 PhoneBackup.StartupLogoAvailable:=0;
\r
4123 PhoneBackup.StartupText.text[1]:=chr(0);
\r
4124 PhoneBackup.OperatorLogoAvailable:=0;
\r
4126 BackupForm.CheckBox3.Enabled:=false;
\r
4127 BackupForm.CheckBox4.Enabled:=false;
\r
4129 BackupForm.CheckBox2.Enabled:=true;
\r
4130 if PhoneBackup.PhonePhonebookUsed=0 then
\r
4131 BackupForm.CheckBox2.Enabled:=false;
\r
4133 BackupForm.CheckBox1.Enabled:=true;
\r
4134 if PhoneBackup.SIMPhonebookUsed=0 then
\r
4135 BackupForm.CheckBox1.Enabled:=false;
\r
4137 BackupForm.CheckBox5.Enabled:=false;
\r
4139 BackupForm.GroupBox1.Caption:=' What do you want to backup ? ';
\r
4140 PhoneBackupAvailable:=True;
\r
4141 BackupForm.ListBox1.ItemIndex:=0;
\r
4142 BackupForm.GroupBox2.Visible:=true;
\r
4143 BackupForm.ShowModal;
\r
4144 if PhoneBackupAvailable then
\r
4146 if MainForm.SaveDialog1.Execute then
\r
4148 GSM_SaveBackupFile(PChar(MainForm.SaveDialog1.FileName),@phonebackup);
\r
4153 procedure TMainForm.ListView4DblClick(Sender: TObject);
\r
4155 // if (GSMPhoneConnected) and (ListView4.Selected<>nil) then
\r
4156 // Edit3Click(Sender);
\r
4159 procedure TMainForm.Edit19Click(Sender: TObject);
\r
4162 num_num,text_num:integer;
\r
4164 if listview1.Selected<>nil then
\r
4166 PBKEditForm.ComboBox1.ItemIndex:=1;
\r
4167 PBKEditForm.COmboBox2.Items:=PBKEditForm.COmboBox1.Items;
\r
4168 PBKEditForm.ComboBox2.ItemIndex:=1;
\r
4169 PBKEditForm.COmboBox3.Items:=PBKEditForm.COmboBox1.Items;
\r
4170 PBKEditForm.ComboBox3.ItemIndex:=1;
\r
4171 PBKEditForm.COmboBox4.Items:=PBKEditForm.COmboBox1.Items;
\r
4172 PBKEditForm.ComboBox4.ItemIndex:=1;
\r
4173 PBKEditForm.COmboBox5.Items:=PBKEditForm.COmboBox1.Items;
\r
4174 PBKEditForm.ComboBox5.ItemIndex:=1;
\r
4175 PBKEditForm.ComboBox6.ItemIndex:=0;
\r
4176 PBKEditForm.COmboBox7.Items:=PBKEditForm.COmboBox6.Items;
\r
4177 PBKEditForm.ComboBox7.ItemIndex:=0;
\r
4178 PbkEditForm.Edit2.Text:='';
\r
4182 pbk.Location:=pbknumberentry;
\r
4183 case ComboBox1.ItemIndex of
\r
4184 4:pbk.MemoryType:=GMT_ME;
\r
4185 5:pbk.MemoryType:=GMT_SM;
\r
4187 GSM_GetMemoryLocation(@pbk);
\r
4189 pbkeditform.ComboBox1.enabled:=false;
\r
4190 pbkeditform.ComboBox2.enabled:=false;
\r
4191 pbkeditform.ComboBox3.enabled:=false;
\r
4192 pbkeditform.ComboBox4.enabled:=false;
\r
4193 pbkeditform.ComboBox5.enabled:=false;
\r
4194 pbkeditform.ComboBox6.enabled:=false;
\r
4195 pbkeditform.ComboBox7.enabled:=false;
\r
4196 pbkeditform.Edit3.enabled:=false;
\r
4197 pbkeditform.Edit4.enabled:=false;
\r
4198 pbkeditform.Edit5.enabled:=false;
\r
4199 pbkeditform.Edit6.enabled:=false;
\r
4200 pbkeditform.Edit7.enabled:=false;
\r
4201 pbkeditform.Edit8.enabled:=false;
\r
4202 PbkEditForm.Edit3.Text:='Not available';
\r
4203 PbkEditForm.Edit4.Text:='Not available';
\r
4204 PbkEditForm.Edit5.Text:='Not available';
\r
4205 PbkEditForm.Edit6.Text:='Not available';
\r
4206 PbkEditForm.Edit7.Text:='Not available';
\r
4207 PbkEditForm.Edit8.Text:='Not available';
\r
4208 if (pbk.MemoryType=GMT_ME) and
\r
4209 (GSM_GetModelFeature(FN_PHONEBOOK)=F_PBK71INT) then
\r
4211 pbkeditform.ComboBox1.enabled:=true;
\r
4212 pbkeditform.ComboBox2.enabled:=true;
\r
4213 pbkeditform.ComboBox3.enabled:=true;
\r
4214 pbkeditform.ComboBox4.enabled:=true;
\r
4215 pbkeditform.ComboBox5.enabled:=true;
\r
4216 pbkeditform.ComboBox6.enabled:=true;
\r
4217 pbkeditform.ComboBox7.enabled:=true;
\r
4218 pbkeditform.Edit3.enabled:=true;
\r
4219 pbkeditform.Edit4.enabled:=true;
\r
4220 pbkeditform.Edit5.enabled:=true;
\r
4221 pbkeditform.Edit6.enabled:=true;
\r
4222 pbkeditform.Edit7.enabled:=true;
\r
4223 pbkeditform.Edit8.enabled:=true;
\r
4224 PbkEditForm.Edit3.Text:='';
\r
4225 PbkEditForm.Edit4.Text:='';
\r
4226 PbkEditForm.Edit5.Text:='';
\r
4227 PbkEditForm.Edit6.Text:='';
\r
4228 PbkEditForm.Edit7.Text:='';
\r
4229 PbkEditForm.Edit8.Text:='';
\r
4232 pbkeditform.Label2.Enabled:=true;
\r
4233 pbkeditform.ComboBox8.Enabled:=true;
\r
4234 if (GSM_GetModelFeature(FN_CALLERGROUPS)=0) then
\r
4236 pbkeditform.Label2.Enabled:=false;
\r
4237 pbkeditform.ComboBox8.Enabled:=false;
\r
4240 pbkeditform.Edit1.Text:=pbk.name;
\r
4241 if (pbk.Number[1]<>chr(0)) then
\r
4243 pbkeditform.ComboBox1.ItemIndex:=1;
\r
4244 pbkeditform.Edit2.Text:=pbk.number;
\r
4245 num_num:=num_num+1;
\r
4247 for i:=1 to pbk.SubEntriesCount do
\r
4249 case pbk.SubEntries[i].EntryType of
\r
4253 case pbk.SubEntries[i].NumberType of
\r
4254 GSM_General :j:=1;
\r
4255 GSM_General2:j:=1;
\r
4263 pbkeditform.ComboBox1.ItemIndex:=j;
\r
4264 pbkeditform.edit2.text:=pbk.SubEntries[i].Number;
\r
4267 pbkeditform.ComboBox2.ItemIndex:=j;
\r
4268 pbkeditform.edit3.text:=pbk.SubEntries[i].Number;
\r
4271 pbkeditform.ComboBox3.ItemIndex:=j;
\r
4272 pbkeditform.edit4.text:=pbk.SubEntries[i].Number;
\r
4275 pbkeditform.ComboBox4.ItemIndex:=j;
\r
4276 pbkeditform.edit5.text:=pbk.SubEntries[i].Number;
\r
4279 pbkeditform.ComboBox5.ItemIndex:=j;
\r
4280 pbkeditform.edit6.text:=pbk.SubEntries[i].Number;
\r
4283 num_num:=num_num+1;
\r
4290 pbkeditform.ComboBox6.ItemIndex:=j;
\r
4291 pbkeditform.edit7.text:=pbk.SubEntries[i].Number;
\r
4294 pbkeditform.ComboBox7.ItemIndex:=j;
\r
4295 pbkeditform.edit8.text:=pbk.SubEntries[i].Number;
\r
4298 text_num:=text_num+1;
\r
4305 pbkeditform.ComboBox6.ItemIndex:=j;
\r
4306 pbkeditform.edit7.text:=pbk.SubEntries[i].Number;
\r
4309 pbkeditform.ComboBox7.ItemIndex:=j;
\r
4310 pbkeditform.edit8.text:=pbk.SubEntries[i].Number;
\r
4313 text_num:=text_num+1;
\r
4320 pbkeditform.ComboBox6.ItemIndex:=j;
\r
4321 pbkeditform.edit7.text:=pbk.SubEntries[i].Number;
\r
4324 pbkeditform.ComboBox7.ItemIndex:=j;
\r
4325 pbkeditform.edit8.text:=pbk.SubEntries[i].Number;
\r
4328 text_num:=text_num+1;
\r
4334 pbkeditform.ComboBox8.items.clear;
\r
4335 pbkeditform.ComboBox8.items.add('Not assigned');
\r
4338 pbkeditform.ComboBox8.items.add(caller[i].text);
\r
4340 pbkeditform.ComboBox8.itemindex:=0;
\r
4341 if (GSM_GetModelFeature(FN_CALLERGROUPS)<>0) then
\r
4343 if (pbk.Group>=0) and (pbk.Group<=4) then
\r
4345 pbkeditform.ComboBox8.itemindex:=pbk.Group+1;
\r
4349 PbkEditForm.ShowModal;
\r
4354 procedure TMainForm.Delete4Click(Sender: TObject);
\r
4356 if Application.MessageBox('Do you want to delete this phonebook entry ?','Question',MB_YESNO)=IDYES then
\r
4359 pbk.Location:=pbknumberentry;
\r
4360 case ComboBox1.ItemIndex of
\r
4361 4:pbk.MemoryType:=GMT_ME;
\r
4362 5:pbk.MemoryType:=GMT_SM;
\r
4365 MainForm.Timer2.Enabled:=false;
\r
4366 GSM_GetMemoryLocation(@pbk);
\r
4368 pbk.SubEntriesCount:=0;
\r
4369 pbk.Name[1]:=chr(0);
\r
4370 pbk.Number[1]:=chr(0);
\r
4371 GSM_WritePhonebookLocation(@pbk);
\r
4372 MainForm.Timer2.Enabled:=true;
\r
4373 MainForm.ComboBox1Change(nil);
\r
4378 procedure TMainForm.Button22Click(Sender: TObject);
\r
4381 mybinring:GSM_BinRingtone;
\r
4382 myring:GSM_Ringtone;
\r
4384 LogosRingForm.Label1.Caption:='Do you want to get ringtone ?';
\r
4385 LogosRingForm.ComboBox3.Visible:=true;
\r
4386 LogosRingForm.ComboBox3.Items.Clear();
\r
4387 MainForm.Timer2.Enabled:=false;
\r
4388 for i:=1 to GSM_GetModelFeature(FN_RINGNUMBER) do
\r
4390 mybinring.location:=i;
\r
4391 if (GSM_GetPhoneRingtone(@mybinring,@myring)=0) then
\r
4393 if GSM_GetModelFeature(FN_RINGTONES)=F_RING_SM then
\r
4395 LogosRingForm.ComboBox3.Items.Add(myring.name);
\r
4398 LogosRingForm.ComboBox3.Items.Add(mybinring.name);
\r
4401 LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));
\r
4403 MainForm.Timer2.Enabled:=true;
\r
4404 LogosRingForm.ComboBox3.ItemIndex:=0;
\r
4405 LogosRingForm.ShowModal;
\r
4406 if LogosRingForm.ComboBox3.Visible then
\r
4408 mybinring.location:=LogosRingForm.ComboBox3.ItemIndex+1;
\r
4409 MainForm.Timer2.Enabled:=false;
\r
4410 if (GSM_GetPhoneRingtone(@mybinring,@myring)=0) then
\r
4412 MainForm.Timer2.Enabled:=true;
\r
4413 if GSM_GetModelFeature(FN_RINGTONES)=F_RING_SM then
\r
4415 application.MessageBox('Smart Messaging format','',0);
\r
4416 if SaveDialog1.Execute then
\r
4418 GSM_SaveRingtoneFile(PChar(SaveDialog1.FileName),@myring);
\r
4422 application.MessageBox('Binary format','',0);
\r
4423 if SaveDialog1.Execute then
\r
4425 GSM_SaveBinRingtoneFile(PChar(SaveDialog1.FileName),@mybinring);
\r
4430 MainForm.Timer2.Enabled:=true;
\r
4435 procedure TMainForm.New20Click(Sender: TObject);
\r
4437 bookmarknum:=65535;
\r
4438 WAPBookForm.Edit1.Text:='';
\r
4439 WAPBookForm.Edit2.Text:='';
\r
4440 WAPBookForm.ShowModal;
\r
4443 procedure TMainForm.ListView9SelectItem(Sender: TObject; Item: TListItem;
\r
4444 Selected: Boolean);
\r
4446 if Selected then bookmarknum2:=item.Index+1;
\r
4449 procedure TMainForm.Edit20Click(Sender: TObject);
\r
4451 bookmark:GSM_WAPBookmark;
\r
4453 bookmark.location:=bookmarknum2;
\r
4454 mainform.Timer2.Enabled:=false;
\r
4455 GSM_GetWAPBookmark(@bookmark);
\r
4456 mainform.Timer2.Enabled:=true;
\r
4457 WAPBookForm.Edit1.Text:=bookmark.title;
\r
4458 WAPBookForm.Edit2.Text:=bookmark.adress;
\r
4459 WAPBookForm.ShowModal;
\r
4462 procedure TMainForm.WAPBookPopupMenuPopup(Sender: TObject);
\r
4464 New20.Enabled:=false;
\r
4465 Edit20.Enabled:=false;
\r
4466 SMSSendSave2.Enabled:=false;
\r
4467 if (WAPBookmarkThread=nil) and (GSMPhoneConnected) then
\r
4469 New20.Enabled:=true;
\r
4470 if (ListView9.Selected<>nil) and
\r
4471 (ListView9.Selected.SubItems[0]<>'') then
\r
4473 Edit20.Enabled:=true;
\r
4474 SMSSendSave2.Enabled:=true;
\r
4479 procedure TMainForm.SMSSendSave2Click(Sender: TObject);
\r
4483 if smscinit=false then
\r
4485 MainForm.ListView6.Items.Clear;
\r
4490 if smscinit then break;
\r
4495 SMSEditForm.Memo1.Text:='';
\r
4498 SMSEditForm.ComboBox9.Text:='';
\r
4499 AddSMSEditSenderList;
\r
4502 GSM_GetSMSFolders(@SMSfolders);
\r
4503 SMSEditForm.ComboBox1.Items.Clear;
\r
4504 for i:=1 to SMSFolders.number do
\r
4506 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
4508 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
4512 SMSEditForm.ComboBox2.Items.Clear;
\r
4513 SMSEditForm.ComboBox2.Items.Add('custom');
\r
4514 for i:=1 to smscnum-1 do
\r
4516 if SMSC2[i].Name[1]<>chr(0) then
\r
4517 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
4519 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
4521 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
4523 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
4524 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
4525 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
4526 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
4527 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
4528 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
4529 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
4530 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.WAPBookTabSheet;
\r
4532 bookma.location:=bookmarknum2;
\r
4533 mainform.Timer2.Enabled:=false;
\r
4534 GSM_GetWAPBookmark(@bookma);
\r
4535 mainform.Timer2.Enabled:=true;
\r
4537 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
4539 SMSEditForm.edit3.Visible:=true;
\r
4540 SMSEditForm.label14.Visible:=true;
\r
4543 SMSEditForm.edit3.Visible:=false;
\r
4544 SMSEditForm.label14.Visible:=false;
\r
4547 SMSEditForm.ShowModal;
\r
4550 procedure TMainForm.Button23Click(Sender: TObject);
\r
4554 if smscinit=false then
\r
4556 MainForm.ListView6.Items.Clear;
\r
4561 if smscinit then break;
\r
4566 SMSEditForm.Memo1.Text:='';
\r
4569 SMSEditForm.ComboBox9.Text:='';
\r
4570 AddSMSEditSenderList;
\r
4573 GSM_GetSMSFolders(@SMSfolders);
\r
4574 SMSEditForm.ComboBox1.Items.Clear;
\r
4575 for i:=1 to SMSFolders.number do
\r
4577 SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);
\r
4579 SMSEditForm.ComboBox1.ItemIndex:=0;
\r
4583 SMSEditForm.ComboBox2.Items.Clear;
\r
4584 SMSEditForm.ComboBox2.Items.Add('custom');
\r
4585 for i:=1 to smscnum-1 do
\r
4587 if SMSC2[i].Name[1]<>chr(0) then
\r
4588 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)
\r
4590 SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));
\r
4592 SMSEditForm.ComboBox2.ItemIndex:=1;
\r
4594 SMSEditForm.TextSMSTabSheet.TabVisible:=false;
\r
4595 SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;
\r
4596 SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;
\r
4597 SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;
\r
4598 SMSEditForm.WAPBookTabSheet.TabVisible:=false;
\r
4599 SMSEditForm.WAPSettTabSheet.TabVisible:=false;
\r
4600 SMSEditForm.PBKSMSTabSheet.TabVisible:=false;
\r
4601 SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.WAPSettTabSheet;
\r
4603 Wapset.location:=combobox7.ItemIndex;
\r
4604 MainForm.Timer2.Enabled:=false;
\r
4605 GSM_GetWAPSettings(@wapset);
\r
4606 MainForm.Timer2.Enabled:=true;
\r
4608 if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then
\r
4610 SMSEditForm.edit3.Visible:=true;
\r
4611 SMSEditForm.label14.Visible:=true;
\r
4614 SMSEditForm.edit3.Visible:=false;
\r
4615 SMSEditForm.label14.Visible:=false;
\r
4618 SMSEditForm.ShowModal;
\r
4621 procedure TMainForm.CopyphonebooktoPC1Click(Sender: TObject);
\r
4626 procedure TMainForm.PCPBKTabSheetShow(Sender: TObject);
\r
4630 ListView12.Items.Clear;
\r
4631 for i:=1 to PBKOfflineNumber do
\r
4633 MainForm.ListView12.Items.Add;
\r
4634 MainForm.ListView12.Items.Item[i-1].Caption:=inttostr(PhoneBackup.PhonePhonebook[i].Location);
\r
4635 AddPBKEntry(ListView12,PhoneBackup.PhonePhonebook[i],i-1);
\r