+++ /dev/null
-unit MainUnit;\r
-\r
-interface\r
-\r
-{$I-}\r
-\r
-uses\r
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,\r
- Dialogs, ComCtrls, GnokiiAPI, ExtCtrls, Menus, StdCtrls, Spin, IniFiles;\r
-\r
-type\r
- TMainForm = class(TForm)\r
- StatusBar1: TStatusBar;\r
- TreeView1: TTreeView;\r
- Splitter1: TSplitter;\r
- MainMenu1: TMainMenu;\r
- File1: TMenuItem;\r
- Quit1: TMenuItem;\r
- Help1: TMenuItem;\r
- About1: TMenuItem;\r
- Timer1: TTimer;\r
- OpenDialog1: TOpenDialog;\r
- SaveDialog1: TSaveDialog;\r
- PageControl1: TPageControl;\r
- NetmonitorTabSheet: TTabSheet;\r
- GroupBox1: TGroupBox;\r
- Label1: TLabel;\r
- NetmonGroupBox: TGroupBox;\r
- NetmonLabel: TLabel;\r
- SpinEdit1: TSpinEdit;\r
- Button11: TButton;\r
- PhonebookTabSheet: TTabSheet;\r
- GroupBox2: TGroupBox;\r
- Panel1: TPanel;\r
- Label2: TLabel;\r
- ComboBox1: TComboBox;\r
- ListView1: TListView;\r
- PhoneTabSheet: TTabSheet;\r
- GroupBox3: TGroupBox;\r
- GroupBox12: TGroupBox;\r
- Label4: TLabel;\r
- Label5: TLabel;\r
- Label7: TLabel;\r
- Label8: TLabel;\r
- Label9: TLabel;\r
- Label6: TLabel;\r
- Button9: TButton;\r
- GroupBox14: TGroupBox;\r
- ListView8: TListView;\r
- GroupBox11: TGroupBox;\r
- CheckBox1: TCheckBox;\r
- LogosTabSheet: TTabSheet;\r
- GroupBox4: TGroupBox;\r
- LogosImage: TImage;\r
- Image1: TImage;\r
- Image2: TImage;\r
- ComboBox2: TComboBox;\r
- Button6: TButton;\r
- Button7: TButton;\r
- Button8: TButton;\r
- Button12: TButton;\r
- Button4: TButton;\r
- Button5: TButton;\r
- RingtonesTabSheet: TTabSheet;\r
- GroupBox5: TGroupBox;\r
- Label11: TLabel;\r
- Button1: TButton;\r
- Button2: TButton;\r
- Button3: TButton;\r
- SMSTabSheet: TTabSheet;\r
- GroupBox6: TGroupBox;\r
- Panel2: TPanel;\r
- Label10: TLabel;\r
- ComboBox3: TComboBox;\r
- ListView2: TListView;\r
- SpeedTabSheet: TTabSheet;\r
- GroupBox7: TGroupBox;\r
- ListView3: TListView;\r
- CalendarTabSheet: TTabSheet;\r
- GroupBox8: TGroupBox;\r
- ListView4: TListView;\r
- SMSCTabSheet: TTabSheet;\r
- GroupBox9: TGroupBox;\r
- ListView6: TListView;\r
- CallerTabSheet: TTabSheet;\r
- GroupBox10: TGroupBox;\r
- ListView5: TListView;\r
- ProfileTabSheet: TTabSheet;\r
- GroupBox13: TGroupBox;\r
- ListView7: TListView;\r
- Panel3: TPanel;\r
- Splitter2: TSplitter;\r
- GroupBox15: TGroupBox;\r
- GroupBox16: TGroupBox;\r
- Button13: TButton;\r
- Button14: TButton;\r
- Label15: TLabel;\r
- Edit1: TEdit;\r
- Edit2: TEdit;\r
- Button16: TButton;\r
- CalendarPopupMenu: TPopupMenu;\r
- New1: TMenuItem;\r
- Edit3: TMenuItem;\r
- Delete1: TMenuItem;\r
- SMSPopupMenu: TPopupMenu;\r
- Edit4: TMenuItem;\r
- Memo1: TMemo;\r
- Memo2: TMemo;\r
- New2: TMenuItem;\r
- Label14: TLabel;\r
- Label16: TLabel;\r
- WapBookTabSheet: TTabSheet;\r
- GroupBox17: TGroupBox;\r
- DateTimePicker1: TDateTimePicker;\r
- ConfigTabSheet: TTabSheet;\r
- GroupBox18: TGroupBox;\r
- Configuration1: TMenuItem;\r
- N1: TMenuItem;\r
- Delete2: TMenuItem;\r
- SMSCPopupMenu: TPopupMenu;\r
- Edit5: TMenuItem;\r
- Label3: TLabel;\r
- ComboBox4: TComboBox;\r
- Label12: TLabel;\r
- ComboBox5: TComboBox;\r
- Label13: TLabel;\r
- CheckBox2: TCheckBox;\r
- Label17: TLabel;\r
- Label18: TLabel;\r
- PBKPopupMenu: TPopupMenu;\r
- Edit7: TMenuItem;\r
- Button17: TButton;\r
- SMS1: TMenuItem;\r
- Button18: TButton;\r
- SMSSendSave1: TMenuItem;\r
- ComboBox6: TComboBox;\r
- WAPSettTabSheet: TTabSheet;\r
- DivertTabSheet: TTabSheet;\r
- GroupBox19: TGroupBox;\r
- GroupBox20: TGroupBox;\r
- Timer2: TTimer;\r
- ListView9: TListView;\r
- AboutTabSheet: TTabSheet;\r
- GroupBox21: TGroupBox;\r
- Label19: TLabel;\r
- Label20: TLabel;\r
- PCSMSTabSheet: TTabSheet;\r
- GroupBox22: TGroupBox;\r
- Panel4: TPanel;\r
- Splitter3: TSplitter;\r
- Panel5: TPanel;\r
- ListView10: TListView;\r
- CopytoPC1: TMenuItem;\r
- N2: TMenuItem;\r
- Memo4: TMemo;\r
- Memo5: TMemo;\r
- PCSMSPopupMenu: TPopupMenu;\r
- SendSave1: TMenuItem;\r
- N3: TMenuItem;\r
- Delete3: TMenuItem;\r
- Label21: TLabel;\r
- ComboBox7: TComboBox;\r
- Label22: TLabel;\r
- Edit6: TEdit;\r
- Label23: TLabel;\r
- Edit8: TEdit;\r
- Label24: TLabel;\r
- ComboBox8: TComboBox;\r
- Label25: TLabel;\r
- ComboBox9: TComboBox;\r
- Label26: TLabel;\r
- ComboBox10: TComboBox;\r
- Label27: TLabel;\r
- Edit9: TEdit;\r
- Label28: TLabel;\r
- Edit10: TEdit;\r
- Label29: TLabel;\r
- Edit11: TEdit;\r
- Label30: TLabel;\r
- Edit12: TEdit;\r
- Label31: TLabel;\r
- ComboBox11: TComboBox;\r
- Label32: TLabel;\r
- ComboBox12: TComboBox;\r
- Label33: TLabel;\r
- ComboBox13: TComboBox;\r
- Label34: TLabel;\r
- Edit13: TEdit;\r
- Label35: TLabel;\r
- Edit14: TEdit;\r
- Label36: TLabel;\r
- Edit15: TEdit;\r
- Label37: TLabel;\r
- ComboBox14: TComboBox;\r
- Memo3: TMemo;\r
- PageControl2: TPageControl;\r
- TabSheet1: TTabSheet;\r
- Button19: TButton;\r
- Label38: TLabel;\r
- Edit16: TEdit;\r
- Label39: TLabel;\r
- Edit17: TEdit;\r
- Label40: TLabel;\r
- ComboBox15: TComboBox;\r
- Label41: TLabel;\r
- Edit18: TEdit;\r
- Button20: TButton;\r
- PCCalendarTabSheet: TTabSheet;\r
- GroupBox23: TGroupBox;\r
- ListView11: TListView;\r
- N4: TMenuItem;\r
- CopytoPC2: TMenuItem;\r
- PCCalendarPopupMenu: TPopupMenu;\r
- Copytocalendar1: TMenuItem;\r
- N5: TMenuItem;\r
- Delete5: TMenuItem;\r
- PCOfflineTabSheet: TTabSheet;\r
- GroupBox24: TGroupBox;\r
- Label42: TLabel;\r
- Label43: TLabel;\r
- Label44: TLabel;\r
- Label45: TLabel;\r
- TabSheet2: TTabSheet;\r
- TabSheet3: TTabSheet;\r
- procedure TreeView1MouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
- procedure FormCreate(Sender: TObject);\r
- procedure Timer1Timer(Sender: TObject);\r
- procedure NetmonitorTabSheetShow(Sender: TObject);\r
- procedure NetmonitorTabSheetHide(Sender: TObject);\r
- procedure SpinEdit1Change(Sender: TObject);\r
- procedure ComboBox1Change(Sender: TObject);\r
- procedure PhonebookTabSheetHide(Sender: TObject);\r
- procedure Quit1Click(Sender: TObject);\r
- procedure FormResize(Sender: TObject);\r
- procedure About1Click(Sender: TObject);\r
- procedure LogosImageMouseMove(Sender: TObject; Shift: TShiftState; X,\r
- Y: Integer);\r
- procedure Button1Click(Sender: TObject);\r
- procedure Button4Click(Sender: TObject);\r
- procedure Button3Click(Sender: TObject);\r
- procedure PhoneTabSheetShow(Sender: TObject);\r
- procedure Button2Click(Sender: TObject);\r
- procedure LogosTabSheetShow(Sender: TObject);\r
- procedure ComboBox2Select(Sender: TObject);\r
- procedure Button7Click(Sender: TObject);\r
- procedure LogosImageMouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
- procedure Button6Click(Sender: TObject);\r
- procedure Button5Click(Sender: TObject);\r
- procedure Button8Click(Sender: TObject);\r
- procedure SpeedTabSheetShow(Sender: TObject);\r
- procedure Button9Click(Sender: TObject);\r
- procedure SpeedTabSheetHide(Sender: TObject);\r
- procedure Button11Click(Sender: TObject);\r
- procedure Button12Click(Sender: TObject);\r
- procedure CalendarTabSheetShow(Sender: TObject);\r
- procedure CallerTabSheetShow(Sender: TObject);\r
- procedure SMSCTabSheetShow(Sender: TObject);\r
- procedure Button10Click(Sender: TObject);\r
- procedure ProfileTabSheetShow(Sender: TObject);\r
- procedure SMSCTabSheetHide(Sender: TObject);\r
- procedure CalendarTabSheetHide(Sender: TObject);\r
- procedure CallerTabSheetHide(Sender: TObject);\r
- procedure ProfileTabSheetHide(Sender: TObject);\r
- procedure PhonebookTabSheetShow(Sender: TObject);\r
- procedure SMSTabSheetShow(Sender: TObject);\r
- procedure ComboBox3Change(Sender: TObject);\r
- procedure ListView2SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
- procedure New1Click(Sender: TObject);\r
- procedure Edit3Click(Sender: TObject);\r
- procedure ListView4SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
- procedure Delete1Click(Sender: TObject);\r
- procedure Button16Click(Sender: TObject);\r
- procedure Edit4Click(Sender: TObject);\r
- procedure New2Click(Sender: TObject);\r
- procedure Configuration1Click(Sender: TObject);\r
- procedure TreeView1KeyUp(Sender: TObject; var Key: Word;\r
- Shift: TShiftState);\r
- procedure SMSTabSheetHide(Sender: TObject);\r
- procedure SMSPopupMenuPopup(Sender: TObject);\r
- procedure CalendarPopupMenuPopup(Sender: TObject);\r
- procedure Edit1Change(Sender: TObject);\r
- procedure Delete2Click(Sender: TObject);\r
- procedure Edit5Click(Sender: TObject);\r
- procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
- procedure SMSCPopupMenuPopup(Sender: TObject);\r
- procedure ListView6SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
- procedure ListView1SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
- procedure Edit7Click(Sender: TObject);\r
- procedure Button18Click(Sender: TObject);\r
- procedure Button17Click(Sender: TObject);\r
- procedure SMS1Click(Sender: TObject);\r
- procedure SMSSendSave1Click(Sender: TObject);\r
- procedure Button13Click(Sender: TObject);\r
- procedure Button14Click(Sender: TObject);\r
- procedure ConfigTabSheetHide(Sender: TObject);\r
- procedure ConfigTabSheetShow(Sender: TObject);\r
- procedure Timer2Timer(Sender: TObject);\r
- procedure AboutTabSheetShow(Sender: TObject);\r
- procedure PCSMSTabSheetShow(Sender: TObject);\r
- procedure CopytoPC1Click(Sender: TObject);\r
- procedure ListView10SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
- procedure PCSMSPopupMenuPopup(Sender: TObject);\r
- procedure Delete3Click(Sender: TObject);\r
- procedure SendSave1Click(Sender: TObject);\r
- procedure WapBookTabSheetHide(Sender: TObject);\r
- procedure WapBookTabSheetShow(Sender: TObject);\r
- procedure ComboBox7Change(Sender: TObject);\r
- procedure Button19Click(Sender: TObject);\r
- procedure Button20Click(Sender: TObject);\r
- procedure PCOfflineTabSheetShow(Sender: TObject);\r
- procedure PCCalendarTabSheetShow(Sender: TObject);\r
- procedure CopytoPC2Click(Sender: TObject);\r
- procedure Delete5Click(Sender: TObject);\r
- procedure Copytocalendar1Click(Sender: TObject);\r
- procedure PCCalendarPopupMenuPopup(Sender: TObject);\r
- private\r
- { Private declarations }\r
- public\r
- { Public declarations }\r
- end;\r
-\r
-var\r
- MainForm: TMainForm;\r
- setcalendarnote:GSM_CalendarNote;\r
- setsms:GSM_MultiSMSMessage;\r
- setsmslocation:integer;\r
- smscselectitem:integer;\r
- bitma:GSM_Bitmap;\r
- rington:GSM_Ringtone;\r
- calenda:GSM_CalendarNote;\r
- pbk:GSM_PhonebookEntry;\r
- previewcolor:TColor;\r
-\r
-procedure AddCalendarNote(note:GSM_CalendarNote;myview:TListView);\r
-function DayOFweek3(date:TDateTime):string;\r
-procedure SetSMSC(num:integer);\r
-\r
-implementation\r
-\r
-uses Calendar, SMSEdit, LogosRing, Netmon, smscedit, pbkedit;\r
-\r
-{$R *.dfm}\r
-\r
-type\r
- TNetmonThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TPhonebookThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TSpeedThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TSMSCThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TSMSThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TCalendarThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TCallerThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TProfileThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TPlayRingtoneThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
- TWAPBookmarkThread = class(TThread)\r
- public\r
- procedure Execute; override;\r
- end;\r
-\r
-var\r
- //phone sheet\r
- phoneinfo:boolean;\r
-\r
- //reading netmonitor variables\r
- netmonnum: integer; //number of netmon screen\r
- NetmonThread: TNetmonThread;\r
-\r
- //reading phonebook memories variables\r
- phonebookstatus:GSM_MemoryStatus;\r
- phonebookcur:integer;\r
- phonebookfound:integer;\r
- PhonebookThread: TPhonebookThread;\r
- pbknumberentry:integer;\r
-\r
- //logos\r
- pointsize:integer;\r
- x2,y2:byte;\r
- logofilename:string='xxx';\r
-\r
- //ringtones\r
- PlayRingtoneThread: TPlayRingtoneThread;\r
- ringindex:integer;\r
- binring:GSM_BinRingtone;\r
-\r
- //speeddials\r
- speednum:integer;\r
- SpeedThread: TSpeedThread;\r
-\r
- //caller groups\r
- caller:array[1..5] of GSM_Bitmap;\r
- callerinit:boolean;\r
- callernum:integer;\r
- CallerThread: TCallerThread;\r
-\r
- //smsc\r
- smscnum:integer;\r
- SMSCThread: TSMSCThread;\r
- smscinit: boolean;\r
- SMSC2:array[1..10] of GSM_MessageCenter;\r
-\r
- //calendar\r
- calendarnum:integer;\r
- CalendarThread: TCalendarThread;\r
- calendarselect:integer;\r
- readcalendar:boolean;\r
-\r
- //profiles\r
- profilenum:integer;\r
- ProfileThread: TProfileThread;\r
-\r
- SMS:array[1..200] of GSM_SMSMessage;\r
- SMSnum:integer;\r
- SMSfolders:GSM_SMSFolders;\r
- SMSstatus:GSM_SMSStatus;\r
- smsnumindex:integer;\r
- SMSThread: TSMSThread;\r
- smsnum2:integer;\r
-\r
- SMSOffline:array[1..300] of GSM_SMSMessage;\r
- SMSOfflineNumber:integer;\r
-\r
- //wap bookmarks\r
- WAPBookmarkThread: TWAPBookmarkThread;\r
- bookmarknum:integer;\r
-\r
- CalendarOffline:array[1..300] of GSM_CalendarNote;\r
- CalendarOfflineNumber:integer;\r
-\r
-function Inttostr2(I: Longint;digits:integer): string;\r
-\r
-{ Convert any integer type to a string }\r
-var\r
- S: string[11];\r
- j:integer;\r
-begin\r
- Str(I:digits, S);\r
- for j:=1 to 11 do\r
- begin\r
- if s[j]<>' ' then break;\r
- s[j]:='0';\r
- end;\r
- Result:= S;\r
-end;\r
-\r
-function DayOFweek3(date:TDateTime):string;\r
-var\r
- days: array[1..7] of string;\r
-begin\r
- days[1] := 'Sun';\r
- days[2] := 'Mon';\r
- days[3] := 'Tue';\r
- days[4] := 'Wed';\r
- days[5] := 'Thu';\r
- days[6] := 'Fri';\r
- days[7] := 'Sat';\r
- DayOfWeek3:= days[DayOfWeek(date)];\r
-end;\r
-\r
-function DayOFweek2(day:integer;month:integer;year:integer):string;\r
-var\r
- date:TDateTime;\r
-begin\r
- Date:=EncodeDate(Year,Month,Day);\r
- DayOfWeek2:= DayOfWeek3(Date);\r
-end;\r
-\r
-procedure SetSMSC(num:integer);\r
-begin\r
- SMSEditForm.Edit1.Text:=SMSC2[num].Number;\r
- case SMSC2[num].Validity of\r
- GSMV_1_Hour : SMSEditForm.ComboBox3.ItemIndex:=0;\r
- GSMV_6_Hours : SMSEditForm.ComboBox3.ItemIndex:=1;\r
- GSMV_24_Hours : SMSEditForm.ComboBox3.ItemIndex:=2;\r
- GSMV_72_Hours : SMSEditForm.ComboBox3.ItemIndex:=3;\r
- GSMV_1_Week : SMSEditForm.ComboBox3.ItemIndex:=4;\r
- else\r
- SMSEditForm.ComboBox3.ItemIndex:=5;\r
-\r
- end;\r
- case SMSC2[num].Format of\r
- GSMF_Text : SMSEditForm.ComboBox4.ItemIndex:=0;\r
- GSMF_Fax : SMSEditForm.ComboBox4.ItemIndex:=1;\r
- GSMF_Email : SMSEditForm.ComboBox4.ItemIndex:=2;\r
- else\r
- SMSEditForm.ComboBox4.ItemIndex:=3;\r
- end;\r
-end;\r
-\r
-procedure ReadCallerGroup();\r
-var\r
- logo:GSM_Bitmap;\r
- name:Pchar;\r
- i:integer;\r
-begin\r
- if callernum<6 then\r
- begin\r
- i:=1;\r
- while i<>0 do\r
- begin\r
- logo.type2:=GSM_CallerLogo;\r
- logo.number:=callernum-1;\r
- MainForm.Timer2.Enabled:=false;\r
- i:=GSM_GetBitmap(@logo);\r
- MainForm.Timer2.Enabled:=true;\r
- end;\r
- caller[callernum]:=logo;\r
- MainForm.ListView5.Items.Add;\r
- MainForm.ListView5.Items.Item[callernum-1].Caption:=inttostr(callernum);\r
- if logo.text[1]=chr(0) then\r
- begin\r
- name:='';\r
- case callernum of\r
- 1:name:='Family';\r
- 2:name:='VIP';\r
- 3:name:='Friends';\r
- 4:name:='Colleagues';\r
- 5:name:='Other';\r
- end;\r
- for i:=1 to 255 do\r
- begin\r
- caller[callernum].text[i]:=chr(0);\r
- end;\r
- for i:=1 to strlen(name) do\r
- begin\r
- caller[callernum].text[i]:=name[i-1];\r
- end;\r
- end;\r
- MainForm.ListView5.Items.Item[callernum-1].Subitems.Add(caller[callernum].text);\r
- if logo.ringtone=16 then\r
- MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('default')\r
- else\r
- MainForm.ListView5.Items.Item[callernum-1].Subitems.Add(inttostr(logo.ringtone));\r
- if logo.enabled<>0 then\r
- MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('logo enabled')\r
- else\r
- MainForm.ListView5.Items.Item[callernum-1].Subitems.Add('logo disabled');\r
- end else callerinit:=true;\r
- callernum:=callernum+1;\r
-end;\r
-\r
-procedure ReadAllCallerGroups();\r
-begin\r
- if callerinit=false then\r
- begin\r
- MainForm.ListView5.Items.Clear;\r
- callernum:=1;\r
- while callerinit=false do\r
- begin\r
- ReadCallerGroup();\r
- if callerinit then break;\r
- end;\r
- end;\r
-end;\r
-\r
-//logos sheet\r
-procedure UpdatePointBitmap(i,j:integer);\r
-begin\r
- if GSM_IsPointBitmap(@bitma,i,j)<>0 then\r
- begin\r
- MainForm.LogosImage.Canvas.Brush.Color := clBlack;\r
- MainForm.Image1.Canvas.Pen.Color := clBlack;\r
- end else\r
- begin\r
- MainForm.LogosImage.Canvas.Brush.Color := PreviewColor;//$0063cf63\r
- MainForm.Image1.Canvas.Pen.Color := PreviewColor;\r
- end;\r
- MainForm.LogosImage.Canvas.FillRect(Rect(i*pointsize+i,j*pointsize+j,(i+1)*pointsize+i,(j+1)*pointsize+j));\r
- MainForm.Image1.Canvas.Polyline([Point(28+i, 145+j), Point(29+i,146+j)]);\r
-end;\r
-\r
-procedure DrawBitmap();\r
-var\r
- xsize:integer;\r
- ysize:integer;\r
- i,j:integer;\r
-begin\r
- MainForm.StatusBar1.Panels[0].Text:=inttostr(bitma.width);\r
- xsize:=bitma.width;\r
- ysize:=bitma.heigh;\r
-\r
- MainForm.LogosImage.Canvas.Brush.Style := bsSolid;\r
- MainForm.LogosImage.Canvas.Brush.Color := clScrollBar;\r
-\r
- MainForm.LogosImage.Canvas.Pen.Mode := pmCopy;\r
-\r
- MainForm.LogosImage.Canvas.Pen.Color := clScrollBar;\r
- MainForm.LogosImage.Canvas.Rectangle(0,0,MainForm.LogosImage.Width,MainForm.LogosImage.Height);\r
-\r
- MainForm.LogosImage.Canvas.Pen.Color := PreviewColor;\r
- MainForm.LogosImage.Canvas.Rectangle(0,0,xsize*pointsize+xsize-1,ysize*pointsize+ysize-1);\r
-\r
- MainForm.LogosImage.Canvas.Brush.Color := PreviewColor;\r
- MainForm.LogosImage.Canvas.FloodFill(2,2,PreviewColor,fsBorder);\r
-\r
- MainForm.LogosImage.Canvas.Pen.Color := clBlack;\r
-\r
- for i:=0 to xsize do\r
- begin\r
- MainForm.LogosImage.Canvas.MoveTo(i*pointsize+i-1,0);\r
- MainForm.LogosImage.Canvas.LineTo(i*pointsize+i-1,ysize*pointsize+ysize-1);\r
- end;\r
- for i:=0 to ysize do\r
- begin\r
- MainForm.LogosImage.Canvas.MoveTo(0,i*pointsize+i-1);\r
- MainForm.LogosImage.Canvas.LineTo(xsize*pointsize+xsize-1,i*pointsize+i-1);\r
- end;\r
-\r
- MainForm.Image1.Picture.Assign(MainForm.Image2.Picture);\r
- MainForm.Image1.Canvas.Pen.Mode := pmCopy;\r
- for i:=0 to xsize-1 do\r
- begin\r
- for j:=0 to ysize-1 do\r
- begin\r
- UpdatePointBitmap(i,j);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Image1MouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
-var\r
- sr: TSearchRec;\r
- filefound:integer;\r
-begin\r
- filefound:=0;\r
- if FindFirst(ExtractFilePath(Application.ExeName)+'\*bmp', faAnyFile, sr) = 0 then\r
- begin\r
- repeat\r
- if (sr.Attr and faAnyFile) = sr.Attr then\r
- begin\r
- if sr.Size=57814 then\r
- begin\r
- case filefound of\r
- 1:begin\r
- Image2.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+sr.name);\r
- PreviewColor:=Image2.Canvas.Pixels[70,170];\r
- DrawBitmap;\r
- filefound:=2;\r
- logofilename:=sr.name;\r
- end;\r
- 0:if logofilename=sr.Name then filefound:=1;\r
- end;\r
- if filefound=2 then break;\r
- end;\r
- end;\r
- until FindNext(sr) <> 0;\r
- FindClose(sr);\r
- end;\r
- if filefound<>2 then\r
- begin\r
- if FindFirst(ExtractFilePath(Application.ExeName)+'\*bmp', faAnyFile, sr) = 0 then\r
- begin\r
- Image2.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+sr.name);\r
- DrawBitmap;\r
- logofilename:=sr.name;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure LogosMousePos(x,y:integer);\r
-var\r
- i:integer;\r
-begin\r
- i:=0;x2:=0;\r
- while i<=x do\r
- begin\r
- i:=i+pointsize+1;\r
- x2:=x2+1;\r
- end;\r
- i:=0;y2:=0;\r
- while i<=y do\r
- begin\r
- i:=i+pointsize+1;\r
- y2:=y2+1;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ComboBox2Select(Sender: TObject);\r
-var\r
- bittype:integer;\r
-begin\r
- case ComboBox2.ItemIndex of\r
- 0:bittype:=GSM_CallerLogo;\r
- 1:bittype:=GSM_OperatorLogo;\r
- 2:bittype:=GSM_PictureImage;\r
- 3:bittype:=GSM_StartupLogo;\r
- else\r
- bittype:=GSM_StartupLogo;\r
- end;\r
- GSM_ResizeBitmap(@bitma,bittype);\r
- DrawBitmap();\r
- if bitma.type2<>GSM_OperatorLogo then\r
- Button8.Enabled:=false\r
- else\r
- Button8.Enabled:=true;\r
-end;\r
-\r
-procedure TMainForm.LogosImageMouseMove(Sender: TObject; Shift: TShiftState;\r
- X, Y: Integer);\r
-begin\r
- LogosMousePos(x,y);\r
- if x2<=bitma.width then\r
- begin\r
- if y2<=bitma.heigh then\r
- MainForm.StatusBar1.Panels[0].Text:=inttostr(x2)+','+inttostr(y2)\r
- else\r
- MainForm.StatusBar1.Panels[0].Text:='';\r
- end else\r
- MainForm.StatusBar1.Panels[0].Text:='';\r
-end;\r
-\r
-procedure TMainForm.LogosTabSheetShow(Sender: TObject);\r
-begin\r
- DrawBitmap();\r
-end;\r
-\r
-procedure TMainForm.Button7Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- LogosRingForm.Label1.Caption:='What logo do you want to get ?';\r
- LogosRingForm.ComboBox3.Items.Clear;\r
- case bitma.type2 of\r
- GSM_CallerLogo:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=true;\r
- ReadAllCallerGroups();\r
- for i:=1 to 5 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add(caller[i].text);\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=0;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- begin\r
- bitma.number:=LogosRingForm.ComboBox3.ItemIndex;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetBitmap(@bitma);\r
- MainForm.Timer2.Enabled:=true;\r
- DrawBitmap();\r
- end;\r
- end;\r
- GSM_PictureImage:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=true;\r
- for i:=1 to 20 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=0;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- begin\r
- bitma.number:=LogosRingForm.ComboBox3.ItemIndex;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetBitmap(@bitma);\r
- MainForm.Timer2.Enabled:=true;\r
- DrawBitmap();\r
- end;\r
- end;\r
- else\r
- begin\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetBitmap(@bitma);\r
- MainForm.Timer2.Enabled:=true;\r
- DrawBitmap();\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button4Click(Sender: TObject);\r
-var\r
- bit:GSM_Bitmap;\r
-begin\r
- if OpenDialog1.Execute then\r
- begin\r
- if GSM_ReadBitmapFile(PChar(OpenDialog1.FileName),@bit)=0 then\r
- begin\r
- bitma:=bit;\r
- DrawBitmap();\r
- case bitma.type2 of\r
- GSM_CallerLogo :ComboBox2.ItemIndex:=0;\r
- GSM_OperatorLogo:ComboBox2.ItemIndex:=1;\r
- GSM_PictureImage:ComboBox2.ItemIndex:=2;\r
- GSM_StartupLogo :ComboBox2.ItemIndex:=3;\r
- end;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.LogosImageMouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
-begin\r
- LogosMousePos(x,y);\r
- if x2<=bitma.width then\r
- begin\r
- if y2<=bitma.heigh then\r
- begin\r
- if ssLeft in Shift then\r
- GSM_SetPointBitmap(@bitma,x2-1,y2-1)\r
- else\r
- GSM_ClearPointBitmap(@bitma,x2-1,y2-1);\r
-\r
- UpdatePointBitmap(x2-1,y2-1);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button6Click(Sender: TObject);\r
-var\r
- i,j:integer;\r
- Name,Data:array[1..255] of char;\r
- oldbitma:GSM_Bitmap;\r
-begin\r
- LogosRingForm.Label1.Caption:='Do you want to set logo ?';\r
- LogosRingForm.ComboBox3.Items.Clear;\r
- case bitma.type2 of\r
- GSM_StartupLogo:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=false;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- GSM_SetBitmap(@bitma);\r
- end;\r
- GSM_OperatorLogo:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=true;\r
- LogosRingForm.ComboBox3.Items.Add('Preview');\r
- //preparing network names\r
- i:=0;\r
- while true do\r
- begin\r
- GSM_GetNetworkData(i,@Name,@Data);\r
-\r
- // conversion problems\r
- Label14.Caption:=Name;\r
- if strcomp(PChar(Label14.Caption),PChar('unknown'))=0 then break;\r
-\r
- // conversion problems\r
- Label14.Caption:=' - '+Label14.Caption;\r
- for j:=6 downto 1 do\r
- begin\r
- Label14.Caption:=Data[j]+Label14.Caption;\r
- end;\r
-\r
- LogosRingForm.ComboBox3.Items.Add(Pchar(Label14.Caption));\r
- i:=i+1;\r
- end;\r
- //looking for current network\r
- if GSMPhoneConnected then\r
- begin\r
- // conversion problems\r
- Label14.Caption:=MainForm.StatusBar1.Panels[1].Text;\r
- Label14.Caption:=' - '+Label14.Caption;\r
- for j:=6 downto 1 do\r
- begin\r
- Label14.Caption:=GSMNetworkInfo.NetworkCode[j]+Label14.Caption;\r
- end;\r
-\r
- i:=1;\r
- while true do\r
- begin\r
- if strcomp(pchar(LogosRingForm.ComboBox3.Items[i]),pchar(Label14.Caption))=0\r
- then break;\r
- i:=i+1;\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=i;\r
- end;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- begin\r
- if LogosRingForm.ComboBox3.ItemIndex=0 then\r
- begin\r
- bitma.number:=255;\r
- for i:=1 to 6 do\r
- begin\r
- bitma.netcode[i]:=GSMNetworkInfo.NetworkCode[i];\r
- end;\r
- bitma.netcode[7]:=chr(0);\r
- end else\r
- begin\r
- GSM_GetNetworkData(LogosRingForm.ComboBox3.ItemIndex-1,@Name,@bitma.netcode);\r
- end;\r
- GSM_SetBitmap(@bitma);\r
- end;\r
- end;\r
- GSM_PictureImage:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=true;\r
- for i:=1 to 20 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=0;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- begin\r
- if LogosRingForm.ComboBox3.ItemIndex=0 then\r
- begin\r
- bitma.number:=255;\r
- end else\r
- begin\r
- bitma.number:=LogosRingForm.ComboBox3.ItemIndex;\r
- end;\r
- GSM_SetBitmap(@bitma);\r
- end;\r
- end;\r
- GSM_CallerLogo:\r
- begin\r
- LogosRingForm.ComboBox3.Visible:=true;\r
- LogosRingForm.ComboBox3.Items.Add('Preview');\r
- ReadAllCallerGroups();\r
- for i:=1 to 5 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add(caller[i].text);\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=1;\r
- LogosRingForm.ShowModal();\r
- if (LogosRingForm.ComboBox3.Visible) then\r
- begin\r
- if LogosRingForm.ComboBox3.ItemIndex=0 then\r
- begin\r
- bitma.number:=255;\r
- end else\r
- begin\r
- bitma.number:=LogosRingForm.ComboBox3.ItemIndex-1;\r
- //we need to get old caller group datas\r
- oldbitma.type2:=bitma.type2;\r
- oldbitma.number:=bitma.number;\r
- GSM_GetBitmap(@oldbitma);\r
- bitma.ringtone:=oldbitma.ringtone;\r
- bitma.text:=oldbitma.text;\r
- end;\r
- GSM_SetBitmap(@bitma);\r
- end;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button5Click(Sender: TObject);\r
-begin\r
- if SaveDialog1.Execute then\r
- begin\r
- GSM_SaveBitmapFile(PChar(SaveDialog1.FileName),@bitma);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button8Click(Sender: TObject);\r
-var\r
- bitma2:GSM_Bitmap;\r
-begin\r
- if MessageDlg('Restore logo to default ?',\r
- mtConfirmation, [mbYes, mbNo], 0) = mrYes then\r
- begin\r
- bitma2:=bitma;\r
- bitma2.netcode[1]:='0';\r
- bitma2.netcode[2]:='0';\r
- bitma2.netcode[3]:='0';\r
- bitma2.netcode[4]:=' ';\r
- bitma2.netcode[5]:='0';\r
- bitma2.netcode[6]:='0';\r
- bitma2.netcode[7]:=chr(0);\r
- GSM_ClearBitmap(@bitma2);\r
- GSM_SetBitmap(@bitma2);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button12Click(Sender: TObject);\r
-begin\r
- GSM_ClearBitmap(@bitma);\r
- DrawBitmap();\r
-end;\r
-\r
-//MainForm main functions\r
-procedure TMainForm.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;\r
- Shift: TShiftState; X, Y: Integer);\r
-begin\r
- MainForm.TreeView1.FullExpand;\r
- case MainForm.TreeView1.Selected.ImageIndex of\r
- 0: MainForm.PageControl1.ActivePage:=PhoneTabSheet;\r
- 1: MainForm.PageControl1.ActivePage:=CalendarTabSheet;\r
- 2: MainForm.PageControl1.ActivePage:=DivertTabSheet;\r
- 3: MainForm.PageControl1.ActivePage:=CallerTabSheet;\r
- 4: MainForm.PageControl1.ActivePage:=LogosTabSheet;\r
- 5: MainForm.PageControl1.ActivePage:=NetmonitorTabSheet;\r
- 6: MainForm.PageControl1.ActivePage:=PhonebookTabSheet;\r
- 7: MainForm.PageControl1.ActivePage:=ProfileTabSheet;\r
- 8: MainForm.PageControl1.ActivePage:=RingtonesTabSheet;\r
- 9: MainForm.PageControl1.ActivePage:=SMSTabSheet;\r
- 10: MainForm.PageControl1.ActivePage:=SMSCTabSheet;\r
- 11: MainForm.PageControl1.ActivePage:=SpeedTabSheet;\r
- 12: MainForm.PageControl1.ActivePage:=WAPBookTabSheet;\r
- 13: MainForm.PageControl1.ActivePage:=WAPSettTabSheet;\r
- 14: MainForm.PageControl1.ActivePage:=PCOfflineTabSheet;\r
- 15: MainForm.PageControl1.ActivePage:=PCCalendarTabSheet;\r
- 16: MainForm.PageControl1.ActivePage:=PCSMSTabSheet;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Configuration1Click(Sender: TObject);\r
-begin\r
- MainForm.PageControl1.ActivePage:=ConfigTabSheet;\r
-end;\r
-\r
-procedure TMainForm.TreeView1KeyUp(Sender: TObject; var Key: Word;\r
- Shift: TShiftState);\r
-begin\r
- MainForm.TreeView1.FullExpand;\r
-end;\r
-\r
-procedure TMainForm.FormCreate(Sender: TObject);\r
-begin\r
- MainForm.PhonebookTabSheet.TabVisible:=false;\r
- MainForm.NetmonitorTabSheet.TabVisible:=false;\r
- MainForm.LogosTabSheet.TabVisible:=false;\r
- MainForm.PhoneTabSheet.TabVisible:=false;\r
- MainForm.RingtonesTabSheet.TabVisible:=false;\r
- MainForm.SMSTabSheet.TabVisible:=false;\r
- MainForm.SMSCTabSheet.TabVisible:=false;\r
- MainForm.SpeedTabSheet.TabVisible:=false;\r
- MainForm.CalendarTabSheet.TabVisible:=false;\r
- MainForm.CallerTabSheet.TabVisible:=false;\r
- MainForm.ProfileTabSheet.TabVisible:=false;\r
- MainForm.WAPBookTabSheet.TabVisible:=false;\r
- MainForm.WAPSettTabSheet.TabVisible:=false;\r
- MainForm.DivertTabSheet.TabVisible:=false;\r
- MainForm.ConfigTabSheet.TabVisible:=false;\r
- MainForm.AboutTabSheet.TabVisible:=false;\r
- MainForm.PCSMSTabSheet.TabVisible:=false;\r
- MainForm.PCCalendarTabSheet.TabVisible:=false;\r
- MainForm.PCOfflineTabSheet.TabVisible:=false;\r
- MainForm.PageControl1.ActivePage:=PhoneTabSheet;\r
-\r
- PreviewColor:=Image2.Canvas.Pixels[70,170];\r
-\r
- bitma.size:=126;\r
- bitma.width:=72;\r
- bitma.heigh:=14;\r
- bitma.type2:=GSM_OperatorLogo;\r
- GSM_ClearBitmap(@bitma);\r
-\r
- pointsize:=3;\r
- MainForm.LogosImage.Width:=96*pointsize+96-1;\r
- MainForm.LogosImage.Height:=65*pointsize+65-1;\r
-\r
- netmonnum:=1;\r
-\r
- MainForm.Width:=660;\r
- MainForm.Height:=470;\r
-\r
- callerinit:=false;\r
- phoneinfo:=false;\r
- smscinit:=false;\r
-\r
- smsofflinenumber:=0;\r
- calendarofflinenumber:=0;\r
-\r
- readcalendar:=false;\r
-end;\r
-\r
-procedure TMainForm.Timer1Timer(Sender: TObject);\r
-var\r
- NetworkName:array[1..255] of char;\r
-begin\r
- if GSMPhoneConnected then\r
- begin\r
- // Here we should enable interface\r
- GSM_GetNetworkName(@NetworkName,@GSMNetworkInfo.NetworkCode);\r
- MainForm.StatusBar1.Panels[1].Text:=NetworkName;\r
- if PhonebookThread=nil then\r
- ComboBox1.Enabled:=true;\r
-\r
- ListView1.Enabled:=true;\r
- NetmonGroupBox.Enabled:=true;\r
- SpinEdit1.Enabled:=true;\r
- Button2.Enabled:=true;\r
- Button3.Enabled:=true;\r
- Button6.Enabled:=true;\r
- Button7.Enabled:=true;\r
- Button9.Enabled:=true;\r
- Button11.Enabled:=true;\r
-\r
- //ringtones\r
- Button16.Enabled:=true;\r
- if Edit1.Text<>'' then\r
- Edit1.Enabled:=true;\r
- if Edit2.Text<>'' then\r
- Edit2.Enabled:=true;\r
-\r
- If MainForm.PageControl1.ActivePage=MainForm.NetmonitorTabSheet then\r
- NetmonitorTabSheetShow(Sender);\r
-\r
- If MainForm.PageControl1.ActivePage=MainForm.PhoneTabSheet then\r
- begin\r
- if not phoneinfo then\r
- PhoneTabSheetShow(Sender);\r
- end;\r
-\r
- If MainForm.PageControl1.ActivePage=MainForm.SpeedTabSheet then\r
- begin\r
- if speednum<>10 then\r
- SpeedTabSheetShow(Sender);\r
- end;\r
-\r
- if bitma.type2<>GSM_OperatorLogo then\r
- Button8.Enabled:=false\r
- else\r
- Button8.Enabled:=true;\r
-\r
- if Edit2.Text<>'' then\r
- Button14.Enabled:=true\r
- else\r
- Button14.Enabled:=false;\r
-\r
- if Edit1.Text<>'' then\r
- begin\r
- Button2.Enabled:=true;\r
- Button17.Enabled:=true;\r
- if PlayRingtoneThread<>nil then\r
- begin\r
- Button3.Enabled:=false;\r
- Button16.Enabled:=true;\r
- end\r
- else\r
- begin\r
- Button3.Enabled:=true;\r
- Button16.Enabled:=false;\r
- end;\r
- end else\r
- begin\r
- Button2.Enabled:=false;\r
- Button17.Enabled:=false;\r
- Button16.Enabled:=false;\r
- Button3.Enabled:=false;\r
- end;\r
-\r
- Button18.Enabled:=false;\r
- if bitma.type2=GSM_PictureImage then\r
- Button18.Enabled:=true;\r
- if bitma.type2=GSM_OperatorLogo then\r
- Button18.Enabled:=true;\r
- if bitma.type2=GSM_CallerLogo then\r
- Button18.Enabled:=true;\r
-\r
- //wap settings\r
- WAPSettTabSheet.Enabled:=true;\r
- if GSM_GetModelFeature(FN_WAP)=0 then\r
- begin\r
- GroupBox19.Enabled:=false;\r
- groupbox19.Ctl3D:=false;\r
- ComboBox7.enabled:=false;\r
- ComboBox8.enabled:=false;\r
- ComboBox9.enabled:=false;\r
- ComboBox10.enabled:=false;\r
- ComboBox11.enabled:=false;\r
- ComboBox12.enabled:=false;\r
- ComboBox13.enabled:=false;\r
- ComboBox14.enabled:=false;\r
- Edit6.Enabled:=false;\r
- Edit8.Enabled:=false;\r
- Edit9.Enabled:=false;\r
- Edit10.Enabled:=false;\r
- Edit11.Enabled:=false;\r
- Edit12.Enabled:=false;\r
- Edit13.Enabled:=false;\r
- Edit14.Enabled:=false;\r
- Edit15.Enabled:=false;\r
- end else\r
- begin\r
- GroupBox19.Enabled:=true;\r
- groupbox19.Ctl3D:=true;\r
- ComboBox7.enabled:=true;\r
- ComboBox8.enabled:=true;\r
- ComboBox9.enabled:=true;\r
- ComboBox10.enabled:=true;\r
- ComboBox11.enabled:=true;\r
- ComboBox12.enabled:=true;\r
- ComboBox13.enabled:=true;\r
- ComboBox14.enabled:=true;\r
- Edit6.Enabled:=true;\r
- Edit8.Enabled:=true;\r
- Edit9.Enabled:=true;\r
- Edit10.Enabled:=true;\r
- Edit11.Enabled:=true;\r
- Edit12.Enabled:=true;\r
- Edit13.Enabled:=true;\r
- Edit14.Enabled:=true;\r
- Edit15.Enabled:=true;\r
- end;\r
-\r
- button19.Enabled:=true;\r
- button20.Enabled:=true;\r
- end else\r
- begin\r
- // Here we should disabled interface\r
- MainForm.StatusBar1.Panels[1].Text:='Not connected';\r
-\r
- callerinit:=false;\r
-\r
- MainForm.ComboBox1.Enabled:=false;\r
- MainForm.ListView1.Enabled:=false;\r
- MainForm.NetmonGroupBox.Enabled:=false;\r
- MainForm.SpinEdit1.Enabled:=false;\r
- MainForm.Button2.Enabled:=false;\r
- MainForm.Button3.Enabled:=false;\r
- MainForm.Button6.Enabled:=false;\r
- MainForm.Button7.Enabled:=false;\r
- MainForm.Button8.Enabled:=false;\r
- MainForm.Button9.Enabled:=false;\r
- MainForm.Button11.Enabled:=false;\r
- Button18.Enabled:=false;\r
-\r
- //ringtones\r
- Button16.Enabled:=false;\r
- Button14.Enabled:=false;\r
- Button17.Enabled:=false;\r
- Edit1.Enabled:=false;\r
- Edit2.Enabled:=false;\r
-\r
- MainForm.NetmonitorTabSheetHide(Sender);\r
- MainForm.PhonebookTabSheetHide(Sender);\r
- MainForm.SpeedTabSheetHide(Sender);\r
-\r
- //WAP settings\r
- ComboBox7.enabled:=false;\r
- ComboBox8.enabled:=false;\r
- ComboBox9.enabled:=false;\r
- ComboBox10.enabled:=false;\r
- ComboBox11.enabled:=false;\r
- ComboBox12.enabled:=false;\r
- ComboBox13.enabled:=false;\r
- ComboBox14.enabled:=false;\r
- Edit6.Enabled:=false;\r
- Edit8.Enabled:=false;\r
- Edit9.Enabled:=false;\r
- Edit10.Enabled:=false;\r
- Edit11.Enabled:=false;\r
- Edit12.Enabled:=false;\r
- Edit13.Enabled:=false;\r
- Edit14.Enabled:=false;\r
- Edit15.Enabled:=false;\r
-\r
- button19.Enabled:=false;\r
- button20.Enabled:=false;\r
-\r
- phoneinfo:=false;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Quit1Click(Sender: TObject);\r
-begin\r
- if GSMPhoneConnected then GSM_Terminate();\r
- Halt;\r
-end;\r
-\r
-procedure TMainForm.FormResize(Sender: TObject);\r
-begin\r
- MainForm.StatusBar1.Panels[0].Width:=MainForm.Width-150;\r
-end;\r
-\r
-procedure TMainForm.About1Click(Sender: TObject);\r
-begin\r
- AboutTabSheet.Show;\r
-end;\r
-\r
-//netmonitor sheet functions\r
-\r
-procedure TNetmonThread.Execute;\r
-var\r
- netmon:array[1..255] of char;\r
-begin\r
- while not Terminated do\r
- begin\r
- GSM_Netmonitor(netmonnum,@netmon);\r
- MainForm.NetmonLabel.Caption:=netmon;\r
- MainForm.NetmonGroupBox.Caption:=' Screen ' + IntToStr(netmonnum) + ' ';\r
- end;\r
-end;\r
-\r
-procedure TMainForm.NetmonitorTabSheetShow(Sender: TObject);\r
-begin\r
- if NetmonThread<>nil then\r
- else begin\r
- if GSMPhoneConnected then\r
- begin\r
- MainForm.Timer2.Enabled:=false;\r
- NetmonThread:=TNetmonThread.Create(false);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.NetmonitorTabSheetHide(Sender: TObject);\r
-begin\r
- if (NetmonThread<>nil) then\r
- begin\r
- NetmonThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- NetmonThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SpinEdit1Change(Sender: TObject);\r
-begin\r
- netmonnum:=SpinEdit1.Value;\r
-end;\r
-\r
-procedure TMainForm.Button11Click(Sender: TObject);\r
-var\r
- netmon:array[1..255] of char;\r
-begin\r
- NetmonForm.ShowModal;\r
- if NetmonForm.RadioGroup1.ItemIndex<>-1 then\r
- begin\r
- GSM_Netmonitor(241+NetmonForm.RadioGroup1.ItemIndex,@netmon);\r
- end;\r
-end;\r
-\r
-//phonebook sheet functions\r
-\r
-procedure EndPhonebookThread;\r
-begin\r
- if (PhonebookThread<>nil) then\r
- begin\r
- PhonebookThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- PhonebookThread:=nil;\r
- MainForm.ComboBox1.Enabled:=true;\r
- end;\r
-end;\r
-\r
-procedure TPhonebookThread.Execute;\r
-var\r
- x:GSM_PhonebookEntry;\r
- i,j:integer;\r
-begin\r
- while not Terminated do\r
- begin\r
- if (phonebookcur<phonebookstatus.Used+phonebookstatus.Free) then\r
- begin\r
- phonebookcur:=phonebookcur+1;\r
- MainForm.StatusBar1.Panels[0].Text:='Reading '+inttostr(phonebookcur)+'/'+inttostr(phonebookstatus.Free+phonebookstatus.Used);\r
- MainForm.ListView1.Items.Add;\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Caption:=inttostr(phonebookcur);\r
- if (phonebookfound<phonebookstatus.Used) then\r
- begin\r
- x.MemoryType:=phonebookstatus.MemoryType;\r
- x.Location:=phonebookcur;\r
- if (x.MemoryType=GMT_ON) then x.Location:=x.Location-1;\r
- if (x.MemoryType=GMT_DC) then x.Location:=x.Location-1;\r
- if (x.MemoryType=GMT_MC) then x.Location:=x.Location-1;\r
- if (x.MemoryType=GMT_RC) then x.Location:=x.Location-1;\r
- if GSM_GetMemoryLocation(@x)=0 then\r
- begin\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(x.Name);\r
-\r
- if (x.Number[1]<>chr(0)) then\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(x.Number)\r
- else begin\r
- for j:=1 to x.SubEntriesCount do\r
- begin\r
- if x.SubEntries[j].EntryType=GSM_Number then\r
- begin\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(x.subentries[j].Number);\r
- break;\r
- end;\r
- end;\r
- end;\r
-\r
- case x.Group of\r
- 0:MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(caller[x.Group+1].text);\r
- 1:MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(caller[x.Group+1].text);\r
- 2:MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(caller[x.Group+1].text);\r
- 3:MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(caller[x.Group+1].text);\r
- 4:MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(caller[x.Group+1].text);\r
- else\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add('not set');\r
- end;\r
-\r
- for i:=1 to x.SubEntriesCount do\r
- begin\r
- if x.SubEntries[i].EntryType=GSM_Date then\r
- begin\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(DayOfweek2(x.SubEntries[i].Date.Day,x.SubEntries[i].Date.Month,x.SubEntries[i].Date.Year)+' '+inttostr2(x.SubEntries[i].Date.Day,2)+'-'+inttostr2(x.SubEntries[i].Date.Month,2)+'-'+inttostr(x.SubEntries[i].Date.Year));\r
- MainForm.ListView1.Items.Item[phonebookcur-1].Subitems.Add(inttostr2(x.SubEntries[i].Date.Hour,2)+':'+inttostr2(x.SubEntries[i].Date.Minute,2)+':'+inttostr2(x.SubEntries[i].Date.Second,2));\r
- break;\r
- end;\r
- end;\r
- if (x.Name[1]<>chr(0)) then phonebookfound:=phonebookfound+1;\r
- end;\r
- end;\r
- end else\r
- begin\r
- MainForm.StatusBar1.Panels[0].Text:=inttostr(phonebookstatus.Used)+'/'+inttostr(phonebookstatus.Free+phonebookstatus.Used)+' entries';\r
- EndPhonebookThread;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.PhonebookTabSheetShow(Sender: TObject);\r
-begin\r
- if GSMPhoneConnected then ComboBox1.Enabled:=true;\r
-end;\r
-\r
-procedure TMainForm.Button10Click(Sender: TObject);\r
-var\r
- i:integer;\r
- FileHandle:integer;\r
-begin\r
- if SaveDialog1.Execute then\r
- begin\r
- FileHandle := FileCreate(SaveDialog1.FileName);\r
- for i:=1 to ListView1.Items.Count do\r
- begin\r
- FileWrite(FileHandle,ListView1.Items.Item[i].Caption, SizeOf(ListView1.Items.Item[i].Caption));\r
- end;\r
- FileClose(FileHandle);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ComboBox1Change(Sender: TObject);\r
-begin\r
- if (ComboBox1.ItemIndex<>0) then\r
- begin\r
- case ComboBox1.ItemIndex of\r
- 1:phonebookstatus.MemoryType:=GMT_DC;\r
- 2:phonebookstatus.MemoryType:=GMT_MC;\r
- 3:phonebookstatus.MemoryType:=GMT_ON;\r
- 4:phonebookstatus.MemoryType:=GMT_ME;\r
- 5:phonebookstatus.MemoryType:=GMT_SM;\r
- 6:phonebookstatus.MemoryType:=GMT_RC;\r
- end;\r
- if GSM_GetMemoryStatus(@phonebookstatus)<>0 then\r
- begin\r
- phonebookstatus.Free:=0;\r
- phonebookstatus.Used:=30;\r
- end;\r
- phonebookcur:=0;\r
- phonebookfound:=0;\r
-\r
- ComboBox1.Enabled:=false;\r
-\r
- ReadAllCallerGroups();\r
-\r
- MainForm.ListView1.Items.Clear;\r
- MainForm.Timer2.Enabled:=false;\r
- PhonebookThread:=TPhonebookThread.Create(false);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.PhonebookTabSheetHide(Sender: TObject);\r
-begin\r
- EndPhonebookThread;\r
-end;\r
-\r
-//ringtones\r
-procedure TMainForm.Button1Click(Sender: TObject);\r
-var\r
- ring:GSM_Ringtone;\r
-begin\r
- if OpenDialog1.Execute then\r
- begin\r
- if GSM_ReadRingtoneFile(PChar(OpenDialog1.FileName),@ring)=0 then\r
- begin\r
- Edit1.Text:=ring.Name;\r
- rington:=ring;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure EndPlayRingtoneThread;\r
-begin\r
- if (PlayRingtoneThread<>nil) then\r
- begin\r
- PlayRingtoneThread.Terminate();\r
- GSM_PlayTone(255*255,0);\r
- MainForm.Timer2.Enabled:=true;\r
- PlayRingtoneThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TPlayRingtoneThread.Execute;\r
-begin\r
- while not Terminated do\r
- begin\r
- GSM_PlayNote(rington.notes[ringindex]);\r
- ringindex:=ringindex+1;\r
- if ringindex>rington.NrNotes then\r
- EndPlayRingtoneThread;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button16Click(Sender: TObject);\r
-begin\r
- EndPlayRingtoneThread;\r
-end;\r
-\r
-procedure TMainForm.Button3Click(Sender: TObject);\r
-begin\r
- ringindex:=1;\r
- MainForm.Timer2.Enabled:=false;\r
- PlayRingtoneThread:=TPlayRingtoneThread.Create(false);\r
-end;\r
-\r
-procedure TMainForm.Button2Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- LogosRingForm.Label1.Caption:='Do you want to set ringtone ?';\r
- LogosRingForm.ComboBox3.Items.Clear();\r
- LogosRingForm.ComboBox3.Items.Add('Preview');\r
- for i:=1 to 7 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=1;\r
- LogosRingForm.ShowModal;\r
- if LogosRingForm.ComboBox3.Visible then\r
- begin\r
- if LogosRingForm.ComboBox3.ItemIndex=0 then\r
- rington.location:=255\r
- else\r
- rington.location:=LogosRingForm.ComboBox3.ItemIndex;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_SetRingtone(@rington,@i);\r
- MainForm.Timer2.Enabled:=true;\r
- end;\r
-end;\r
-\r
-//phone sheet\r
-procedure TMainForm.PhoneTabSheetShow(Sender: TObject);\r
-var\r
- xxxx,xxx:array[1..256] of char;\r
- time:GSM_DateTime;\r
- siml:GSM_AllSimlocks;\r
- i:integer;\r
- code:GSM_SecurityCode;\r
-begin\r
- if GSMPhoneConnected then\r
- begin\r
- GSM_GetRevision(@xxx);\r
- Label9.Caption:=xxx;\r
- GSM_GetImei(@xxx);\r
- Label7.Caption:=xxx;\r
- GSM_GetModel(@xxx);\r
- GSM_GetModelNumber(@xxx,@xxxx);\r
- Label5.Caption:=xxx;\r
- Label5.Caption:=Label5.Caption+' ('+xxxx;\r
- Label5.Caption:=Label5.Caption+')';\r
- GSM_GetAlarm(1,@time);\r
- if time.isSet<>0 then\r
- CheckBox1.Checked:=true\r
- else\r
- CheckBox1.Checked:=false;\r
- DateTimePicker1.Time:=EncodeTime(time.Hour,time.Minute,0,0);\r
- ListView8.Items.Clear();\r
- GSM_GetSimlock(@siml);\r
- for i:=1 to 4 do\r
- begin\r
- MainForm.ListView8.Items.Add;\r
- MainForm.ListView8.Items.Item[i-1].Caption:=inttostr(i);\r
- MainForm.ListView8.Items.Item[i-1].Subitems.Add(siml.simlocks[i].data);\r
- if siml.simlocks[i].enabled=0 then\r
- MainForm.ListView8.Items.Item[i-1].Subitems.Add('disabled')\r
- else\r
- begin\r
- if siml.simlocks[i].factory<>0 then\r
- MainForm.ListView8.Items.Item[i-1].Subitems.Add('factory')\r
- else\r
- MainForm.ListView8.Items.Item[i-1].Subitems.Add('user');\r
- end;\r
- MainForm.ListView8.Items.Item[i-1].Subitems.Add(inttostr(siml.simlocks[i].counter));\r
- end;\r
- code.Type2:=GSCT_SecurityCode;\r
- GSM_GetSecurityCode(@code);\r
- Label18.Caption:=code.Code;\r
-\r
- phoneinfo:=true;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button9Click(Sender: TObject);\r
-begin\r
- GSM_Reset(GSM_SoftReset);\r
-end;\r
-\r
-//speed dials\r
-procedure TMainForm.SpeedTabSheetShow(Sender: TObject);\r
-begin\r
- if SpeedThread<>nil then\r
- else begin\r
- if GSMPhoneConnected then\r
- begin\r
- MainForm.ListView3.Items.Clear;\r
- speednum:=1;\r
- MainForm.Timer2.Enabled:=false;\r
- SpeedThread:=TSpeedThread.Create(false);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure EndSpeedThread();\r
-begin\r
- if (SpeedThread<>nil) then\r
- begin\r
- SpeedThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- SpeedThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SpeedTabSheetHide(Sender: TObject);\r
-begin\r
- EndSpeedThread();\r
-end;\r
-\r
-procedure TSpeedThread.Execute;\r
-var\r
- entry1:GSM_SpeedDial;\r
- entry2:GSM_PhonebookEntry;\r
- i:integer;\r
-begin\r
- while not Terminated do\r
- begin\r
- entry1.Number:=speednum;\r
- if GSM_GetSpeedDial(@entry1)=0 then\r
- begin\r
- entry2.Location:=entry1.Location;\r
- entry2.MemoryType:=entry1.MemoryType;\r
- if entry2.Location=0 then\r
- entry2.Location:=speednum;\r
- GSM_GetMemoryLocation(@entry2);\r
- MainForm.ListView3.Items.Add;\r
- MainForm.ListView3.Items.Item[speednum-1].Caption:=inttostr(speednum);\r
- MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.Name);\r
- if entry2.Number[1]<>chr(0) then\r
- MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.Number)\r
- else begin\r
- for i:=1 to entry2.SubEntriesCount do\r
- begin\r
- if entry2.SubEntries[i].EntryType=GSM_Number then\r
- begin\r
- MainForm.ListView3.Items.Item[speednum-1].Subitems.Add(entry2.SubEntries[i].Number);\r
- break;\r
- end;\r
- end;\r
- end;\r
- speednum:=speednum+1;\r
- end;\r
- if speednum=10 then\r
- EndSpeedThread();\r
- end;\r
-end;\r
-\r
-//calendar\r
-procedure EndCalendarThread();\r
-begin\r
- if (CalendarThread<>nil) then\r
- begin\r
- CalendarThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- CalendarThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure AddCalendarNote(note:GSM_CalendarNote;myview:TListView);\r
-begin\r
- myview.Items.Add;\r
- myview.Items.Item[myview.Items.Count-1].Caption:=inttostr(myview.Items.Count);\r
- case note.Type2 of\r
- GCN_Reminder:myview.Items.Item[myview.Items.Count-1].Subitems.Add('Reminder');\r
- GCN_Call :myview.Items.Item[myview.Items.Count-1].Subitems.Add('Call');\r
- GCN_Meeting :myview.Items.Item[myview.Items.Count-1].Subitems.Add('Meeting');\r
- GCN_Birthday:myview.Items.Item[myview.Items.Count-1].Subitems.Add('Birthday');\r
- end;\r
- myview.Items.Item[myview.Items.Count-1].Subitems.Add(note.Text);\r
- myview.Items.Item[myview.Items.Count-1].Subitems.Add(note.Phone);\r
- 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
- if note.Alarm.Year<>0 then\r
- 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
- else\r
- myview.Items.Item[myview.Items.Count-1].Subitems.Add('');\r
-end;\r
-\r
-procedure TCalendarThread.Execute;\r
-var\r
- note:GSM_CalendarNote;\r
-begin\r
- while not Terminated do\r
- begin\r
- note.Location:=calendarnum;\r
- if GSM_GetCalendarNote(@note)=0 then\r
- begin\r
- AddCalendarNote(note,MainForm.ListView4);\r
- calendarnum:=calendarnum+1;\r
- end else begin\r
- readcalendar:=true;\r
- EndCalendarThread();\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.CalendarTabSheetShow(Sender: TObject);\r
-begin\r
- if CalendarThread=nil then\r
- begin\r
- if GSMPhoneConnected then\r
- begin\r
- if (GSM_GetModelFeature(FN_Calendar)<>0) then\r
- begin\r
- ListView4.Enabled:=true;\r
- ListView4.Ctl3D:=true;\r
- GroupBox8.Ctl3D:=true;\r
-\r
- MainForm.ListView4.Items.Clear;\r
- CalendarNum:=1;\r
- MainForm.Timer2.Enabled:=false;\r
- readcalendar:=false;\r
- CalendarThread:=TCalendarThread.Create(false);\r
- end else\r
- begin\r
- ListView4.Enabled:=false;\r
- ListView4.Ctl3D:=false;\r
- GroupBox8.Ctl3D:=false;\r
- end;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.CalendarTabSheetHide(Sender: TObject);\r
-begin\r
- EndCalendarThread();\r
-end;\r
-\r
-procedure TMainForm.New1Click(Sender: TObject);\r
-begin\r
- setcalendarnote.Location:=MainForm.ListView4.Items.Count+1;\r
- CalendarForm.ComboBox1.ItemIndex:=0;\r
- CalendarForm.ComboBox1.OnSelect(nil);\r
- CalendarForm.Edit2.Text:='';\r
- CalendarForm.Edit1.Text:='';\r
- CalendarForm.DateTimePicker1.DateTime:=Date;\r
- CalendarForm.DateTimePicker3.Time:=Time;\r
- CalendarForm.DateTimePicker2.DateTime:=Date;\r
- CalendarForm.DateTimePicker4.Time:=Time;\r
- CalendarForm.ShowModal;\r
-end;\r
-\r
-procedure EditCalendarNote;\r
-var i:integer;\r
-begin\r
- i:=0;\r
-\r
- CalendarForm.DateTimePicker1.Date:=EncodeDate(setcalendarnote.Time.Year,\r
- setcalendarnote.Time.Month,\r
- setcalendarnote.Time.Day);\r
- CalendarForm.DateTimePicker3.Time:=EncodeTime(setcalendarnote.Time.Hour,\r
- setcalendarnote.Time.Minute,\r
- setcalendarnote.Time.Second,i);\r
- case setcalendarnote.Type2 of\r
- GCN_BIRTHDAY: CalendarForm.ComboBox1.ItemIndex:=0;\r
- GCN_CALL: CalendarForm.ComboBox1.ItemIndex:=1;\r
- GCN_MEETING: CalendarForm.ComboBox1.ItemIndex:=2;\r
- GCN_REMINDER: CalendarForm.ComboBox1.ItemIndex:=3;\r
- end;\r
-\r
- CalendarForm.Edit2.Text:=setcalendarnote.Text;\r
- CalendarForm.Edit1.Text:=setcalendarnote.Phone;\r
-\r
- if setcalendarnote.Alarm.Year<>0 then\r
- begin\r
- CalendarForm.CheckBox1.checked:=true;\r
- CalendarForm.DateTimePicker2.Date:=EncodeDate(setcalendarnote.Alarm.Year,\r
- setcalendarnote.Alarm.Month,\r
- setcalendarnote.Alarm.Day);\r
- CalendarForm.DateTimePicker4.Time:=EncodeTime(setcalendarnote.Alarm.Hour,\r
- setcalendarnote.Alarm.Minute,\r
- setcalendarnote.Alarm.Second,i);\r
- end else\r
- begin\r
- CalendarForm.CheckBox1.checked:=false;\r
- CalendarForm.DateTimePicker2.Date:=CalendarForm.DateTimePicker1.Date;\r
- CalendarForm.DateTimePicker4.Time:=CalendarForm.DateTimePicker3.Time;\r
- end;\r
-\r
- if GSM_GetModelFeature(FN_CALENDAR)=F_CAL71 then\r
- begin\r
- if setcalendarnote.Type2<>GCN_BIRTHDAY then\r
- begin\r
- CalendarForm.CheckBox2.Checked:=True;\r
- case setcalendarnote.Recurrance of\r
- 0 :begin\r
- CalendarForm.CheckBox2.Checked:=False;\r
- CalendarForm.ComboBox2.Enabled:=False;\r
- end;\r
- 1*24 :CalendarForm.ComboBox2.ItemIndex:=0;\r
- 7*24 :CalendarForm.ComboBox2.ItemIndex:=1;\r
- 14*24 :CalendarForm.ComboBox2.ItemIndex:=2;\r
- 365*24:CalendarForm.ComboBox2.ItemIndex:=3;\r
- end;\r
- CalendarForm.RadioButton1.Enabled:=False;\r
- CalendarForm.RadioButton2.Enabled:=False;\r
- end else begin\r
- CalendarForm.ComboBox2.ItemIndex:=0;\r
- CalendarForm.CheckBox2.Checked:=False;\r
- CalendarForm.ComboBox2.Enabled:=False;\r
- CalendarForm.RadioButton1.Enabled:=True;\r
- CalendarForm.RadioButton2.Enabled:=True;\r
- if setcalendarnote.AlarmType=1 then\r
- CalendarForm.RadioButton1.Checked:=True\r
- else\r
- CalendarForm.RadioButton2.Checked:=True;\r
- end;\r
- end;\r
- CalendarForm.ComboBox1.OnSelect(nil);\r
-\r
- CalendarForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.Edit3Click(Sender: TObject);\r
-begin\r
- setcalendarnote.Location:=calendarselect;\r
-\r
- mainform.Timer2.Enabled:=false;\r
- GSM_GetCalendarNote(@setcalendarnote);\r
- mainform.Timer2.Enabled:=true;\r
-\r
- EditCalendarNote;\r
-end;\r
-\r
-procedure TMainForm.ListView4SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
-begin\r
- if Selected then\r
- begin\r
- calendarselect:=Item.Index+1;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Delete1Click(Sender: TObject);\r
-begin\r
-// if listview4.selected<>nil then\r
-// begin\r
- if MessageDlg('Do you want to delete this calendar note ?',\r
- mtConfirmation, [mbYes, mbNo], 0) = mrYes then\r
- begin\r
- setcalendarnote.Location:=calendarselect;\r
- GSM_DeleteCalendarNote(@setcalendarnote);\r
- MainForm.CalendarTabSheetShow(nil);\r
- end;\r
-// end;\r
-end;\r
-\r
-//caller groups\r
-procedure EndCallerThread();\r
-begin\r
- if (CallerThread<>nil) then\r
- begin\r
- CallerThread.Terminate();\r
- CallerThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TCallerThread.Execute;\r
-begin\r
- while not Terminated do\r
- begin\r
- ReadCallerGroup();\r
- if callerinit then EndCallerThread();\r
- end;\r
-end;\r
-\r
-procedure TMainForm.CallerTabSheetShow(Sender: TObject);\r
-begin\r
- if CallerThread=nil then\r
- begin\r
- if GSMPhoneConnected then\r
- begin\r
- MainForm.ListView5.Items.Clear;\r
- callerinit:=false;\r
- callernum:=1;\r
- CallerThread:=TCallerThread.Create(false);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.CallerTabSheetHide(Sender: TObject);\r
-begin\r
- EndCallerThread();\r
-end;\r
-\r
-//smsc\r
-procedure TMainForm.SMSCTabSheetShow(Sender: TObject);\r
-begin\r
- if SMSCThread<>nil then\r
- else begin\r
- if GSMPhoneConnected then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscinit:=false;\r
- smscnum:=1;\r
- MainForm.Timer2.Enabled:=false;\r
- SMSCThread:=TSMSCThread.Create(false);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure SMSCTabHide();\r
-begin\r
- if (SMSCThread<>nil) then\r
- begin\r
- SMSCThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- SMSCThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SMSCTabSheetHide(Sender: TObject);\r
-begin\r
- SMSCTabHide();\r
-end;\r
-\r
-procedure ReadSMSC();\r
-var\r
- smsc:GSM_MessageCenter;\r
-begin\r
- smsc.No:=smscnum;\r
- MainForm.StatusBar1.Panels[0].Text:='Reading SMSC '+inttostr(smscnum);\r
- if GSM_GetSMSCenter(@smsc)=0 then\r
- begin\r
- SMSC2[smscnum]:=smsc;\r
- MainForm.ListView6.Items.Add;\r
- MainForm.ListView6.Items.Item[smscnum-1].Caption:=inttostr(smscnum);\r
- MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.name);\r
- MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.number);\r
- case smsc.Validity of\r
- GSMV_1_Hour : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 hour');\r
- GSMV_6_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('6 hours');\r
- GSMV_24_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 day');\r
- GSMV_72_Hours : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('3 days');\r
- GSMV_1_Week : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('1 week');\r
- GSMV_Max_Time : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('max. time');\r
- else\r
- MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('unknown');\r
- end;\r
- case smsc.Format of\r
- GSMF_Text : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('text');\r
- GSMF_Fax : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('fax');\r
- GSMF_Voice : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('voice');\r
- GSMF_ERMES : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('ERMES');\r
- GSMF_Paging : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('paging');\r
- GSMF_UCI : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('UCI');\r
- GSMF_Email : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('email');\r
- GSMF_X400 : MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('X400');\r
- else\r
- MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add('unknown');\r
- end;\r
- MainForm.ListView6.Items.Item[smscnum-1].Subitems.Add(smsc.defaultrecipient);\r
- smscnum:=smscnum+1;\r
- end else\r
- begin\r
- MainForm.StatusBar1.Panels[0].Text:='';\r
- smscinit:=true;\r
- end;\r
-end;\r
-\r
-procedure TSMSCThread.Execute;\r
-begin\r
- while not Terminated do\r
- begin\r
- ReadSMSC();\r
- if smscinit then SMSCTabHide();\r
- end;\r
-end;\r
-\r
-//profiles\r
-procedure ProfileTabHide();\r
-begin\r
- if (ProfileThread<>nil) then\r
- begin\r
- ProfileThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- ProfileThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TProfileThread.Execute;\r
-var\r
- profile:GSM_Profile;\r
-begin\r
- while not Terminated do\r
- begin\r
- profile.number:=profilenum-1;\r
- GSM_GetProfile(@profile);\r
- MainForm.ListView7.Items.Add;\r
- MainForm.ListView7.Items.Item[profilenum-1].Caption:=inttostr(profilenum);\r
- MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(profile.name);\r
- case profile.CallAlert of\r
- PROFILE_CALLALERT_RINGING :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ringing');\r
- PROFILE_CALLALERT_BEEPONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('beep once');\r
- PROFILE_CALLALERT_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');\r
- PROFILE_CALLALERT_RINGONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ring once');\r
- PROFILE_CALLALERT_ASCENDING:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ascending');\r
- PROFILE_CALLALERT_CALLERGROUPS:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('caller groups');\r
- end;\r
- MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(inttostr(profile.Ringtone));\r
- case profile.Volume of\r
- PROFILE_VOLUME_LEVEL1:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 1');\r
- PROFILE_VOLUME_LEVEL2:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 2');\r
- PROFILE_VOLUME_LEVEL3:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 3');\r
- PROFILE_VOLUME_LEVEL4:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 4');\r
- PROFILE_VOLUME_LEVEL5:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 5');\r
- end;\r
- case profile.Vibration of\r
- PROFILE_VIBRATION_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');\r
- PROFILE_VIBRATION_ON :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('on');\r
- PROFILE_VIBRATION_FIRST:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('vibrate first');\r
- end;\r
- case profile.MessageTone of\r
- PROFILE_MESSAGE_NOTONE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('no tone');\r
- PROFILE_MESSAGE_STANDARD :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('standard');\r
- PROFILE_MESSAGE_SPECIAL :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('special');\r
- PROFILE_MESSAGE_BEEPONCE :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('beep once');\r
- PROFILE_MESSAGE_ASCENDING:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('ascending');\r
- end;\r
- case profile.KeypadTone of\r
- PROFILE_KEYPAD_OFF :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');\r
- PROFILE_KEYPAD_LEVEL1:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 1');\r
- PROFILE_KEYPAD_LEVEL2:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 2');\r
- PROFILE_KEYPAD_LEVEL3:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('volume 3');\r
- end;\r
- case profile.WarningTone of\r
- PROFILE_WARNING_OFF:MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('off');\r
- PROFILE_WARNING_ON :MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add('on');\r
- end;\r
- MainForm.ListView7.Items.Item[profilenum-1].Subitems.Add(inttostr(profile.CallerGroups));\r
- profilenum:=profilenum+1;\r
- case GSM_GetModelFeature(FN_PROFILES) of\r
- F_PROF61:if profilenum=8 then ProfileTabHide();\r
- F_PROF51:if profilenum=3 then ProfileTabHide();\r
- F_PROF33:if profilenum=7 then ProfileTabHide();\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ProfileTabSheetShow(Sender: TObject);\r
-begin\r
- if ProfileThread<>nil then\r
- else begin\r
- if GSMPhoneConnected then\r
- begin\r
- MainForm.ListView7.Items.Clear;\r
- profilenum:=1;\r
- MainForm.Timer2.Enabled:=false;\r
- ProfileThread:=TProfileThread.Create(false);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ProfileTabSheetHide(Sender: TObject);\r
-begin\r
- ProfileTabHide();\r
-end;\r
-\r
-//sms\r
-procedure AddSMSInfo(myobject:TListView;mysms:GSM_SMSMessage);\r
-var number:integer;\r
-begin\r
- number:=myobject.Items.Count;\r
-\r
- myobject.Items.Add;\r
- myobject.Items.Item[number].Caption:=inttostr(number+1);\r
- myobject.Items.Item[number].Subitems.Add(mysms.MessageText);\r
- myobject.Items.Item[number].Subitems.Add(mysms.Sender);\r
- if mysms.SMSData=1 then\r
- begin\r
- 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
- myobject.Items.Item[number].Subitems.Add(inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2));\r
- end;\r
-end;\r
-\r
-procedure DisplaySMSfolder();\r
-var\r
- i:integer;\r
-begin\r
- MainForm.ListView2.Items.Clear();\r
- i:=0;\r
- while i<>SMSstatus.Number do\r
- begin\r
- i:=i+1;\r
- if (SMSfolders.Folder[SMS[i].folder].Name=\r
- SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then\r
- begin\r
- AddSMSInfo(MainForm.ListView2,SMS[i]);\r
- end;\r
- end;\r
-end;\r
-\r
-procedure SendSaveSMS(mysms:GSM_SMSMessage);\r
-var i:integer;\r
-begin\r
- //text\r
- SMSEditForm.Memo1.Text:=mysms.MessageText;\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:=mysms.sender;\r
-\r
- //sms folder\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=0 to MainForm.ComboBox3.items.count-1 do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(MainForm.ComboBox3.Items.Strings[i]);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=MainForm.ComboBox3.ItemIndex;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=0;\r
-\r
- if mysms.ReplyViaSameSMSC<>0 then\r
- SMSEditForm.CheckBox3.Checked:=true\r
- else\r
- SMSEditForm.CheckBox3.Checked:=false;\r
-\r
- if mysms.Class2=1 then\r
- SMSEditForm.CheckBox1.Checked:=true\r
- else\r
- SMSEditForm.CheckBox1.Checked:=false;\r
-\r
- if mysms.status=GSS_SENTREAD then\r
- SMSEditForm.CheckBox4.Checked:=true\r
- else\r
- SMSEditForm.CheckBox4.Checked:=false;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PbkSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.TextSMSTabSheet;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.Edit4Click(Sender: TObject);\r
-begin\r
- setsmslocation:=SMS[smsnumindex].Location;\r
- SendSaveSMS(SMS[smsnumindex]);\r
-end;\r
-\r
-procedure TMainForm.New2Click(Sender: TObject);\r
-var i:integer;\r
-begin\r
- setsmslocation:=0;\r
-\r
- //sms text\r
- SMSEditForm.Memo1.Text:='';\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:='';\r
-\r
- //folders\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=0 to ComboBox3.items.count-1 do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(ComboBox3.Items.Strings[i]);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=ComboBox3.ItemIndex;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=1;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PBKSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.TextSMSTabSheet;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure EndSMSThread;\r
-begin\r
- if (SMSThread<>nil) then\r
- begin\r
- SMSThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- SMSThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TSMSThread.Execute;\r
-var\r
- error:integer;\r
-begin\r
- while not Terminated do\r
- begin\r
- if SMSnum<>SMSstatus.Number then\r
- begin\r
- if GSM_GetModelFeature(FN_SMS)=F_SMS71 then\r
- SMS[SMSnum+1].Location:=0\r
- else\r
- SMS[SMSnum+1].Location:=smsnum2;\r
- error:=GSM_GetSMSMessage(@SMS[SMSnum+1]);\r
- if error=0 then\r
- begin\r
- if SMS[SMSnum+1].Time.year<1900 then\r
- begin\r
- SMS[SMSnum+1].Time.year:=SMS[SMSnum+1].Time.year+2000;\r
- end;\r
- if (SMSfolders.Folder[SMS[SMSnum+1].folder].Name=\r
- SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then\r
- begin\r
- AddSMSInfo(MainForm.ListView2,SMS[SMSnum+1]);\r
- end;\r
- SMSnum:=SMSnum+1;\r
- end;\r
- if error=GE_SMSTOOLONG then\r
- begin\r
- SMSstatus.Number:=SMSstatus.Number-1;\r
- end;\r
-\r
- smsnum2:=smsnum2+1;\r
- end else\r
- begin\r
- MainForm.ComboBox3.Enabled:=true;\r
- EndSMSThread;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SMSTabSheetShow(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- MainForm.ComboBox3.Enabled:=false;\r
- if GSMPhoneConnected then\r
- begin\r
- if smscinit=false then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscnum:=1;\r
- while true do\r
- begin\r
- ReadSMSC;\r
- if smscinit then break;\r
- end;\r
- end;\r
-\r
- MainForm.Memo1.Lines.Clear;\r
- MainForm.Memo2.Lines.Clear;\r
- GSM_GetSMSFolders(@SMSfolders);\r
- MainForm.ComboBox3.Items.Clear();\r
- for i:=1 to SMSfolders.number do\r
- begin\r
- MainForm.ComboBox3.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- MainForm.ComboBox3.ItemIndex:=0;\r
-\r
- SMSnum:=0;\r
- GSM_GetSMSStatus(@SMSstatus);\r
- smsnum2:=1;\r
- MainForm.ListView2.Items.Clear;\r
- MainForm.Timer2.Enabled:=false;\r
- SMSThread:=TSMSThread.Create(false);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ComboBox3Change(Sender: TObject);\r
-begin\r
- DisplaySMSfolder();\r
-end;\r
-\r
-procedure AddSMSDescription(mysms:GSM_SMSMessage;firstmemo:TMemo;secondmemo:TMemo);\r
-var\r
- ch:tcaption;\r
- z:integer;\r
-begin\r
- firstmemo.Lines.Clear;\r
- firstmemo.Lines.Add(pchar('Sender: '+mysms.Sender));\r
-\r
- if mysms.SMSData=1 then\r
- begin\r
- ch:=mysms.MessageCenter.Number;\r
- MainForm.Label14.Caption:=mysms.MessageCenter.Number;\r
- if (smscinit) and (GSMPhoneConnected) then\r
- begin\r
- for z:=1 to smscnum-1 do\r
- begin\r
- MainForm.Label16.Caption:=SMSC2[z].Number;\r
- if MainForm.Label14.Caption=MainForm.Label16.caption then\r
- ch:=SMSC2[z].Name;\r
- end;\r
- end;\r
- if mysms.ReplyViaSameSMSC<>0 then\r
- ch:=' (reply via the same SMSC) '+ch;\r
- firstmemo.Lines.Add('SMSC: '+ch);\r
-\r
- if mysms.type2=GST_DR then\r
- begin\r
- firstmemo.Lines.Add(pchar('Date & time: '+\r
- 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
- inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2))+\r
- ' SMSC desponse date & time: '+\r
- 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
- inttostr2(mysms.SMSCTime.Hour,2)+':'+inttostr2(mysms.SMSCTime.Minute,2)+':'+inttostr2(mysms.SMSCTime.Second,2));\r
- end else\r
- begin\r
- firstmemo.Lines.Add(pchar('Date & time: '+\r
- 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
- inttostr2(mysms.Time.Hour,2)+':'+inttostr2(mysms.Time.Minute,2)+':'+inttostr2(mysms.Time.Second,2)));\r
- end;\r
- end;\r
-\r
- secondmemo.Lines.Clear;\r
- secondmemo.Lines.Add(pchar(''+mysms.MessageText));\r
-end;\r
-\r
-procedure TMainForm.ListView2SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
-var\r
- i:integer;\r
- j:integer;\r
-begin\r
- j:=0;\r
- i:=0;\r
- while i<>SMSstatus.Number do\r
- begin\r
- i:=i+1;\r
- if (SMSfolders.Folder[SMS[i].folder].Name=\r
- SMSfolders.Folder[MainForm.ComboBox3.ItemIndex].Name) then\r
- begin\r
- if (j=MainForm.ListView2.ItemIndex) then\r
- begin\r
- smsnumindex:=i;\r
- AddSMSDescription(SMS[i],MainForm.Memo1,MainForm.Memo2);\r
- end;\r
- j:=j+1;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SMSTabSheetHide(Sender: TObject);\r
-begin\r
- EndSMSThread;\r
-end;\r
-\r
-procedure TMainForm.SMSPopupMenuPopup(Sender: TObject);\r
-begin\r
- New2.Enabled:=false;\r
- Edit4.Enabled:=false;\r
- CopyToPC1.Enabled:=false;\r
- Delete2.Enabled:=false;\r
- if GSMPhoneConnected then\r
- begin\r
- New2.Enabled:=true;\r
- if listview2.selected<>nil then\r
- begin\r
- Edit4.Enabled:=true;\r
- CopyToPC1.Enabled:=true;\r
- Delete2.Enabled:=true;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.CalendarPopupMenuPopup(Sender: TObject);\r
-begin\r
- if GSMPhoneConnected then\r
- begin\r
- New1.Enabled:=true;\r
- if listview4.selected<>nil then\r
- begin\r
- Edit3.Enabled:=true;\r
- Delete1.Enabled:=true;\r
- SMS1.Enabled:=true;\r
- CopyToPC2.Enabled:=true;\r
- end else\r
- begin\r
- Edit3.Enabled:=false;\r
- Delete1.Enabled:=false;\r
- SMS1.Enabled:=false;\r
- CopyToPC2.Enabled:=false;\r
- end;\r
- end else\r
- begin\r
- New1.Enabled:=false;\r
- Delete1.Enabled:=false;\r
- Edit3.Enabled:=false;\r
- SMS1.Enabled:=false;\r
- CopyToPC2.Enabled:=false;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Edit1Change(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- for i:=1 to 20 do\r
- rington.name[i]:=chr(0);\r
- for i:=1 to strlen(pchar(edit1.text)) do\r
- rington.name[i]:=edit1.text[i];\r
-end;\r
-\r
-procedure TMainForm.Delete2Click(Sender: TObject);\r
-var\r
- mysms:GSM_SMSMessage;\r
-begin\r
- if MessageDlg('Do you want to delete this SMS ?',\r
- mtConfirmation, [mbYes, mbNo], 0) = mrYes then\r
- begin\r
- mysms.Location:=SMS[smsnumindex].Location;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_DeleteSMSMessage(@mysms);\r
- MainForm.Timer2.Enabled:=true;\r
- MainForm.SMSTabSheetShow(nil);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Edit5Click(Sender: TObject);\r
-begin\r
-// if listview6.selected<>nil then\r
-// begin\r
- smsceditform.edit1.Text:=smsc2[smscselectitem].name;\r
- smsceditform.edit2.Text:=smsc2[smscselectitem].number;\r
- smsceditform.edit3.Text:=smsc2[smscselectitem].DefaultRecipient;\r
- case smsc2[smscselectitem].Validity of\r
- GSMV_1_Hour : SMSCEditForm.combobox1.itemindex:=0;\r
- GSMV_6_Hours : SMSCEditForm.combobox1.itemindex:=1;\r
- GSMV_24_Hours : SMSCEditForm.combobox1.itemindex:=2;\r
- GSMV_72_Hours : SMSCEditForm.combobox1.itemindex:=3;\r
- GSMV_1_Week : SMSCEditForm.combobox1.itemindex:=4;\r
- else\r
- SMSCEditForm.combobox1.itemindex:=5;\r
- end;\r
- case smsc2[smscselectitem].Format of\r
- GSMF_Text : SMSCEditForm.combobox2.itemindex:=0;\r
- GSMF_Fax : SMSCEditForm.combobox2.itemindex:=1;\r
- GSMF_Email : SMSCEditForm.combobox2.itemindex:=2;\r
- else\r
- SMSCEditForm.combobox2.itemindex:=3;\r
- end;\r
- SMSCEditForm.ShowModal;\r
-// end;\r
-end;\r
-\r
-procedure TMainForm.SMSCPopupMenuPopup(Sender: TObject);\r
-begin\r
- if GSMPhoneConnected then\r
- begin\r
- if listview6.selected<>nil then\r
- Edit5.Enabled:=true\r
- else\r
- Edit5.Enabled:=false;\r
- end else\r
- begin\r
- Edit5.Enabled:=false;\r
- end;\r
-\r
-end;\r
-\r
-procedure TMainForm.ListView6SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
-begin\r
- if Selected then\r
- begin\r
- smscselectitem:=Item.Index+1;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ListView1SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
-begin\r
- if Selected then\r
- begin\r
- pbknumberentry:=Item.Index+1;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Edit7Click(Sender: TObject);\r
-var\r
- current:integer;\r
- i:integer;\r
-begin\r
- if listview1.Selected<>nil then\r
- begin\r
- pbk.Location:=pbknumberentry;\r
- case ComboBox1.ItemIndex of\r
- 1:begin pbk.MemoryType:=GMT_DC;pbk.Location:=pbk.Location-1;end;\r
- 2:begin pbk.MemoryType:=GMT_MC;pbk.Location:=pbk.Location-1;end;\r
- 3:begin pbk.MemoryType:=GMT_ON;pbk.Location:=pbk.Location-1;end;\r
- 4:pbk.MemoryType:=GMT_ME;\r
- 5:pbk.MemoryType:=GMT_SM;\r
- 6:begin pbk.MemoryType:=GMT_RC;pbk.Location:=pbk.Location-1;end;\r
- end;\r
- GSM_GetMemoryLocation(@pbk);\r
- current:=0;\r
- pbkform.ListView1.Items.Clear;\r
- pbkform.ListView1.Items.Add;\r
- pbkform.ListView1.Items.Item[0].Caption:='Name';\r
- pbkform.ListView1.Items.Item[0].SubItems.Add(pbk.name);\r
- if (pbk.Number[1]<>chr(0)) then\r
- begin\r
- current:=current+1;\r
- pbkform.ListView1.Items.Add;\r
- pbkform.ListView1.Items.Item[current].Caption:='Number';\r
- pbkform.ListView1.Items.Item[current].SubItems.Add(pbk.number);\r
- end;\r
- for i:=1 to pbk.SubEntriesCount do\r
- begin\r
- current:=current+1;\r
- pbkform.ListView1.Items.Add;\r
- case pbk.SubEntries[i].EntryType of\r
- GSM_Number:case pbk.SubEntries[i].NumberType of\r
- GSM_General :pbkform.ListView1.Items.Item[current].Caption:='General number';\r
- GSM_Mobile :pbkform.ListView1.Items.Item[current].Caption:='Mobile';\r
- GSM_Work :pbkform.ListView1.Items.Item[current].Caption:='Work';\r
- GSM_Fax :pbkform.ListView1.Items.Item[current].Caption:='Fax';\r
- GSM_Home :pbkform.ListView1.Items.Item[current].Caption:='Home';\r
- else\r
- pbkform.ListView1.Items.Item[current].Caption:=inttostr(pbk.SubEntries[i].NumberType);\r
- end;\r
- GSM_Note :pbkform.ListView1.Items.Item[current].Caption:='Note';\r
- GSM_Postal:pbkform.ListView1.Items.Item[current].Caption:='Address';\r
- GSM_Email :pbkform.ListView1.Items.Item[current].Caption:='Email';\r
- GSM_Date :begin\r
- pbkform.ListView1.Items.Item[current].Caption:='Date';\r
- 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
- end;\r
- end;\r
- if (pbk.SubEntries[i].EntryType<>GSM_Date) then\r
- pbkform.ListView1.Items.Item[current].SubItems.Add(pbk.SubEntries[i].Number);\r
- end;\r
- if (pbk.Group>=0) and (pbk.Group<=4) then\r
- begin\r
- current:=current+1;\r
- pbkform.ListView1.Items.Add;\r
- pbkform.ListView1.Items.Item[current].Caption:='Caller group';\r
- pbkform.ListView1.Items.Item[current].SubItems.Add(caller[pbk.Group+1].text);\r
- end;\r
- pbkform.showmodal;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button18Click(Sender: TObject);\r
-var\r
- i,j:integer;\r
- Name,Data:array[1..255] of char;\r
-begin\r
- if smscinit=false then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscnum:=1;\r
- while true do\r
- begin\r
- ReadSMSC;\r
- if smscinit then break;\r
- end;\r
- end;\r
-\r
- //sms text\r
- SMSEditForm.Memo1.Text:='';\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:='';\r
-\r
- //folders\r
- GSM_GetSMSFolders(@SMSfolders);\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=1 to SMSFolders.number do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=0;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=1;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PBKSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.BitmapSMSTabSheet;\r
-\r
- SMSEditForm.Image1.Picture:=Image1.Picture;\r
-\r
- SMSEditForm.Memo2.Text:='';\r
- SMSEditForm.CheckBox5.Checked:=false;\r
- if bitma.type2<>GSM_PictureImage then\r
- begin\r
- SMSEditForm.Memo2.Visible:=false;\r
- SMSEditForm.Label10.Visible:=false;\r
- SMSEditForm.CheckBox5.Visible:=false;\r
- SMSEditForm.CheckBox6.Visible:=false;\r
- end else\r
- begin\r
- SMSEditForm.Memo2.Visible:=true;\r
- SMSEditForm.Label10.Visible:=true;\r
- SMSEditForm.CheckBox5.Visible:=true;\r
- SMSEditForm.CheckBox6.Visible:=true;\r
- end;\r
-\r
- SMSEditForm.Label9.Visible:=false;\r
- SMSEditForm.ComboBox7.Visible:=false;\r
- if bitma.type2=GSM_OperatorLogo then\r
- begin\r
- SMSEditForm.Label9.Visible:=true;\r
- SMSEditForm.ComboBox7.Visible:=true;\r
- //preparing network names\r
- i:=0;\r
- while true do\r
- begin\r
- GSM_GetNetworkData(i,@Name,@Data);\r
-\r
- // conversion problems\r
- Label14.Caption:=Name;\r
- if strcomp(PChar(Label14.Caption),PChar('unknown'))=0 then break;\r
-\r
- // conversion problems\r
- Label14.Caption:=' - '+Label14.Caption;\r
- for j:=6 downto 1 do\r
- begin\r
- Label14.Caption:=Data[j]+Label14.Caption;\r
- end;\r
-\r
- SMSEditForm.ComboBox7.Items.Add(Pchar(Label14.Caption));\r
- i:=i+1;\r
- end;\r
- //looking for current network\r
- if GSMPhoneConnected then\r
- begin\r
- // conversion problems\r
- Label14.Caption:=MainForm.StatusBar1.Panels[1].Text;\r
- Label14.Caption:=' - '+Label14.Caption;\r
- for j:=6 downto 1 do\r
- begin\r
- Label14.Caption:=GSMNetworkInfo.NetworkCode[j]+Label14.Caption;\r
- end;\r
-\r
- i:=1;\r
- while true do\r
- begin\r
- if strcomp(pchar(SMSEditForm.ComboBox7.Items[i]),pchar(Label14.Caption))=0\r
- then break;\r
- i:=i+1;\r
- end;\r
- SMSEditForm.ComboBox7.ItemIndex:=i;\r
- end;\r
- end;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.Button17Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- if smscinit=false then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscnum:=1;\r
- while true do\r
- begin\r
- ReadSMSC;\r
- if smscinit then break;\r
- end;\r
- end;\r
-\r
- //sms text\r
- SMSEditForm.Memo1.Text:='';\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:='';\r
-\r
- //folders\r
- GSM_GetSMSFolders(@SMSfolders);\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=1 to SMSFolders.number do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=0;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=1;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PBKSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.RingtoneSMSTabSheet;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.SMS1Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- if smscinit=false then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscnum:=1;\r
- while true do\r
- begin\r
- ReadSMSC;\r
- if smscinit then break;\r
- end;\r
- end;\r
-\r
- //sms text\r
- SMSEditForm.Memo1.Text:='';\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:='';\r
-\r
- //folders\r
- GSM_GetSMSFolders(@SMSfolders);\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=1 to SMSFolders.number do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=0;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=1;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PBKSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.CalendarSMSTabSheet;\r
-\r
- calenda.Location:=calendarselect;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetCalendarNote(@calenda);\r
- MainForm.Timer2.Enabled:=true;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.SMSSendSave1Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- if smscinit=false then\r
- begin\r
- MainForm.ListView6.Items.Clear;\r
- smscnum:=1;\r
- while true do\r
- begin\r
- ReadSMSC;\r
- if smscinit then break;\r
- end;\r
- end;\r
-\r
- //sms text\r
- SMSEditForm.Memo1.Text:='';\r
-\r
- //number\r
- SMSEditForm.Edit2.Text:='';\r
-\r
- //folders\r
- GSM_GetSMSFolders(@SMSfolders);\r
- SMSEditForm.ComboBox1.Items.Clear;\r
- for i:=1 to SMSFolders.number do\r
- begin\r
- SMSEditForm.ComboBox1.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- SMSEditForm.ComboBox1.ItemIndex:=0;\r
-\r
- //smsc\r
- SetSMSC(1);\r
- SMSEditForm.ComboBox2.Items.Clear;\r
- SMSEditForm.ComboBox2.Items.Add('custom');\r
- for i:=1 to smscnum-1 do\r
- begin\r
- if SMSC2[i].Name[1]<>chr(0) then\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i)+' - '+SMSC2[i].Name)\r
- else\r
- SMSEditForm.ComboBox2.Items.Add('set '+inttostr(i));\r
- end;\r
- SMSEditForm.ComboBox2.ItemIndex:=1;\r
-\r
- SMSEditForm.TextSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.BitmapSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.RingtoneSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.CalendarSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.PBKSMSTabSheet.TabVisible:=false;\r
- SMSEditForm.SMSEditPageControl.ActivePage:=Smseditform.PBKSMSTabSheet;\r
-\r
- pbk.Location:=pbknumberentry-1;\r
- case ComboBox1.ItemIndex of\r
- 1:pbk.MemoryType:=GMT_DC;\r
- 2:pbk.MemoryType:=GMT_MC;\r
- 3:pbk.MemoryType:=GMT_ON;\r
- 4:pbk.MemoryType:=GMT_ME;\r
- 5:pbk.MemoryType:=GMT_SM;\r
- 6:pbk.MemoryType:=GMT_RC;\r
- end;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetMemoryLocation(@pbk);\r
- MainForm.Timer2.Enabled:=true;\r
-\r
- if (GSM_GetModelFeature(FN_SMS)=F_SMS71) then\r
- begin\r
- SMSEditForm.edit3.Visible:=true;\r
- SMSEditForm.label14.Visible:=true;\r
- end else\r
- begin\r
- SMSEditForm.edit3.Visible:=false;\r
- SMSEditForm.label14.Visible:=false;\r
- end;\r
-\r
- SMSEditForm.ShowModal;\r
-end;\r
-\r
-procedure TMainForm.Button13Click(Sender: TObject);\r
-var\r
- ring:GSM_BinRingtone;\r
-begin\r
- if OpenDialog1.Execute then\r
- begin\r
- if GSM_ReadBinRingtoneFile(PChar(OpenDialog1.FileName),@ring)=0 then\r
- begin\r
- Edit2.Text:=ring.Name;\r
- binring:=ring;\r
- end;\r
- end;\r
-\r
-end;\r
-\r
-procedure TMainForm.Button14Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- LogosRingForm.Label1.Caption:='Do you want to set ringtone ?';\r
- LogosRingForm.ComboBox3.Items.Clear();\r
- for i:=1 to 7 do\r
- begin\r
- LogosRingForm.ComboBox3.Items.Add('Location '+inttostr(i));\r
- end;\r
- LogosRingForm.ComboBox3.ItemIndex:=0;\r
- LogosRingForm.ShowModal;\r
- if LogosRingForm.ComboBox3.Visible then\r
- begin\r
- binring.location:=LogosRingForm.ComboBox3.ItemIndex+1;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_SetBinRingtone(@binring);\r
- MainForm.Timer2.Enabled:=true;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ConfigTabSheetHide(Sender: TObject);\r
-var\r
- MyIniFile: TIniFile;\r
-begin\r
- if MessageDlg('Do you want to save config ?',\r
- mtConfirmation, [mbYes, mbNo], 0) = mrYes then\r
- begin\r
- MyIniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'\gnokiirc');\r
- case MainForm.ComboBox4.ItemIndex of\r
- 0:MyIniFile.WriteString('global', 'connection', 'mbus');\r
- 1:MyIniFile.WriteString('global', 'connection', 'fbus');\r
- 2:MyIniFile.WriteString('global', 'connection', 'dlr3');\r
- 3:MyIniFile.WriteString('global', 'connection', 'infrared');\r
- end;\r
- MyIniFile.WriteString('global', 'model', MainForm.ComboBox6.Text);\r
- MyIniFile.WriteString('global', 'port', MainForm.ComboBox5.Text);\r
- if MainForm.CheckBox2.Checked then\r
- MyIniFile.WriteString('global', 'synchronizetime', 'yes')\r
- else\r
- MyIniFile.WriteString('global', 'synchronizetime', 'no');\r
- MyIniFile.Free;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ConfigTabSheetShow(Sender: TObject);\r
-var\r
- MyIniFile: TIniFile;\r
- x:string;\r
- i:integer;\r
-begin\r
- MyIniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'\gnokiirc');\r
-\r
- x:=MyInifile.ReadString('global', 'connection', 'fbus');\r
- MainForm.ComboBox4.ItemIndex:=0;\r
- if x='fbus' then MainForm.ComboBox4.ItemIndex:=1;\r
- if x='dlr3' then MainForm.ComboBox4.ItemIndex:=2;\r
- if x='infrared' then MainForm.ComboBox4.ItemIndex:=3;\r
-\r
- x:=MyInifile.ReadString('global', 'port', 'com2:');\r
- MainForm.ComboBox5.ItemIndex:=0;\r
- for i:=1 to MainForm.ComboBox5.Items.Count do\r
- begin\r
- if MainForm.ComboBox5.Items.Strings[i-1]=x then\r
- MainForm.ComboBox5.ItemIndex:=i-1;\r
- end;\r
-\r
- x:=MyInifile.ReadString('global', 'model', 'auto');\r
- MainForm.ComboBox6.ItemIndex:=0;\r
- for i:=1 to MainForm.ComboBox6.Items.Count do\r
- begin\r
- if MainForm.ComboBox6.Items.Strings[i-1]=x then\r
- MainForm.ComboBox6.ItemIndex:=i-1;\r
- end;\r
-\r
- x:=MyInifile.ReadString('global', 'synchronizetime', 'no');\r
- if x='yes' then\r
- MainForm.CheckBox2.Checked:=True\r
- else\r
- MainForm.CheckBox2.Checked:=False;\r
- MyIniFile.Free;\r
-end;\r
-\r
-procedure TMainForm.Timer2Timer(Sender: TObject);\r
-begin\r
- if SparkyThread.Suspended then SparkyThread.Resume;\r
- Timer2.Interval:=4000;\r
-end;\r
-\r
-procedure TMainForm.AboutTabSheetShow(Sender: TObject);\r
-var\r
- xxx:array[1..256] of char;\r
-begin\r
- GSM_GetDLLVersion(@xxx);\r
- Label20.Caption:=xxx;\r
-end;\r
-\r
-procedure SaveSMSOffline;\r
-var F:file of GSM_SMSMessage;\r
- i:integer;\r
-begin\r
- AssignFile(F, 'gnokiisms');\r
- Rewrite(F);\r
- for i:=1 to SMSOfflineNumber do\r
- begin\r
- Write(f,SMSOffline[i]);\r
- end;\r
- CloseFile(F);\r
-end;\r
-\r
-procedure ReadSMSOffline;\r
-var F:file of GSM_SMSMessage;\r
-begin\r
- MainForm.ListView10.items.Clear;\r
- AssignFile(F, 'gnokiisms');\r
- Reset(F);\r
- if (ioresult=0) then\r
- begin\r
- smsofflinenumber:=0;\r
- while not eof(f) do\r
- begin\r
- smsofflinenumber:=smsofflinenumber+1;\r
- read(f,smsoffline[smsofflinenumber]);\r
- AddSMSInfo(MainForm.ListView10,smsoffline[smsofflinenumber]);\r
- end;\r
- CloseFile(F);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.PCSMSTabSheetShow(Sender: TObject);\r
-begin\r
- ReadSMSOffline;\r
-end;\r
-\r
-procedure TMainForm.CopytoPC1Click(Sender: TObject);\r
-begin\r
- SMSofflinenumber:=smsofflinenumber+1;\r
- SMSoffline[SMSofflinenumber]:=SMS[smsnumindex];\r
- SaveSMSOffline;\r
-end;\r
-\r
-procedure TMainForm.ListView10SelectItem(Sender: TObject; Item: TListItem;\r
- Selected: Boolean);\r
-begin\r
- AddSMSDescription(SMSOffline[Item.Index+1],MainForm.Memo4,MainForm.Memo5);\r
-end;\r
-\r
-procedure TMainForm.PCSMSPopupMenuPopup(Sender: TObject);\r
-begin\r
- SendSave1.Enabled:=False;\r
- if GSMPhoneConnected then SendSave1.Enabled:=True;\r
-\r
- Delete3.Enabled:=false;\r
- if listview10.selected<>nil then Delete3.Enabled:=True;\r
-end;\r
-\r
-procedure TMainForm.Delete3Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- if Application.MessageBox('Do you want to delete this SMS ?','Question',MB_YESNO)=IDYES then\r
- begin\r
- for i:=MainForm.ListView10.ItemIndex to smsofflinenumber-1 do\r
- begin\r
- SMSOffline[i]:=SMSOffline[i+1];\r
- end;\r
- Smsofflinenumber:=smsofflinenumber-1;\r
- SaveSMSOffline;\r
- ReadSMSOffline;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.SendSave1Click(Sender: TObject);\r
-var i:integer;\r
-begin\r
- GSM_GetSMSFolders(@SMSfolders);\r
- MainForm.ComboBox3.Items.Clear();\r
- for i:=1 to SMSfolders.number do\r
- begin\r
- MainForm.ComboBox3.Items.Add(SMSfolders.folder[i].Name);\r
- end;\r
- MainForm.ComboBox3.ItemIndex:=0;\r
- setsmslocation:=0;\r
- SendSaveSMS(SMSOffline[MainForm.ListView10.ItemIndex+1]);\r
-end;\r
-\r
-\r
-procedure EndWAPBookmarkThread;\r
-begin\r
- if (WAPBookmarkThread<>nil) then\r
- begin\r
- WAPBookmarkThread.Terminate();\r
- MainForm.Timer2.Enabled:=true;\r
- WAPBookmarkThread:=nil;\r
- end;\r
-end;\r
-\r
-procedure TWAPBookmarkThread.Execute;\r
-var\r
- bookmark:GSM_WAPBookmark;\r
- i:integer;\r
-begin\r
- while not Terminated do\r
- begin\r
- bookmark.location:=bookmarknum;\r
- i:=GSM_GetWAPBookmark(@bookmark);\r
- MainForm.ListView9.Items.Add;\r
- MainForm.ListView9.Items.Item[bookmarknum-1].Caption:=inttostr(bookmarknum);\r
- if (i=0) then\r
- begin\r
- MainForm.ListView9.Items.Item[bookmarknum-1].Subitems.Add(bookmark.title);\r
- MainForm.ListView9.Items.Item[bookmarknum-1].Subitems.Add(bookmark.adress);\r
- end;\r
- bookmarknum:=bookmarknum+1;\r
- if bookmarknum=15 then EndWAPBookmarkThread;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.WapBookTabSheetHide(Sender: TObject);\r
-begin\r
- EndWAPBookmarkThread;\r
-end;\r
-\r
-procedure TMainForm.WapBookTabSheetShow(Sender: TObject);\r
-begin\r
- if GSMPhoneConnected then\r
- begin\r
- if GSM_GetModelFeature(FN_WAP)<>0 then\r
- begin\r
- GroupBox17.Ctl3D:=true;\r
- ListView9.Ctl3D:=true;\r
- ListView9.Enabled:=true;\r
- bookmarknum:=1;\r
- MainForm.ListView9.Items.Clear;\r
- MainForm.Timer2.Enabled:=false;\r
- WAPBookmarkThread:=TWAPBookmarkThread.Create(false);\r
- end else\r
- begin\r
- GroupBox17.Ctl3D:=false;\r
- ListView9.Ctl3D:=false;\r
- ListView9.Enabled:=false;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.ComboBox7Change(Sender: TObject);\r
-var\r
- settings:GSM_WAPSettings;\r
-begin\r
- if combobox7.ItemIndex>0 then\r
- begin\r
- settings.location:=combobox7.ItemIndex;\r
- MainForm.Timer2.Enabled:=false;\r
- GSM_GetWAPSettings(@settings);\r
- MainForm.Timer2.Enabled:=true;\r
-\r
- if (settings.title[1]<>chr(0)) then\r
- Edit6.Text:=settings.title\r
- else\r
- edit6.Text:='set '+inttostr(combobox7.ItemIndex);\r
-\r
- edit8.Text:=settings.homepage;\r
-\r
- combobox10.itemindex:=1;\r
- if settings.iscontinuous<>0 then combobox10.Itemindex:=0;\r
-\r
- combobox9.itemindex:=1;\r
- if settings.issecurity<>0 then combobox9.Itemindex:=0;\r
-\r
- if (settings.bearer>=0) and (settings.bearer<3) then\r
- begin\r
- combobox8.ItemIndex:=settings.bearer;\r
-\r
- Label27.enabled:=false;\r
- Label28.enabled:=false;\r
- Label29.enabled:=false;\r
- label30.enabled:=false;\r
- label31.enabled:=false;\r
- label32.enabled:=false;\r
- label33.enabled:=false;\r
- label34.enabled:=false;\r
- label35.enabled:=false;\r
- label36.enabled:=false;\r
- label37.enabled:=false;\r
- edit9.enabled:=false;\r
- edit10.enabled:=false;\r
- edit11.enabled:=false;\r
- edit12.enabled:=false;\r
- edit13.enabled:=false;\r
- edit14.enabled:=false;\r
- edit15.enabled:=false;\r
- combobox11.enabled:=false;\r
- combobox12.enabled:=false;\r
- combobox13.enabled:=false;\r
- combobox14.enabled:=false;\r
-\r
- case settings.bearer of\r
- WAPSETTINGS_BEARER_SMS:\r
- begin\r
- label27.enabled:=true;\r
- edit9.text:=settings.server;\r
- edit9.enabled:=true;\r
-\r
- label28.enabled:=true;\r
- edit10.text:=settings.service;\r
- edit10.enabled:=true;\r
- end;\r
- WAPSETTINGS_BEARER_DATA:\r
- begin\r
- label29.enabled:=true;\r
- edit11.text:=settings.dialup;\r
- edit11.enabled:=true;\r
-\r
- label34.enabled:=true;\r
- edit13.text:=settings.user;\r
- edit13.enabled:=true;\r
-\r
- label35.enabled:=true;\r
- edit14.text:=settings.password;\r
- edit14.enabled:=true;\r
-\r
- label30.enabled:=true;\r
- edit12.text:=settings.ipaddress;\r
- edit12.enabled:=true;\r
-\r
- label31.enabled:=true;\r
- combobox11.enabled:=true;\r
- combobox11.ItemIndex:=0;\r
- if settings.isnormalauthentication=0 then\r
- combobox11.ItemIndex:=1;\r
-\r
- label32.enabled:=true;\r
- combobox12.enabled:=true;\r
- combobox12.ItemIndex:=0;\r
- if settings.isISDNcall=0 then\r
- combobox12.ItemIndex:=1;\r
-\r
- label33.enabled:=true;\r
- combobox13.enabled:=true;\r
- combobox13.ItemIndex:=1;\r
- if settings.isspeed14400=0 then\r
- combobox13.ItemIndex:=0;\r
- end;\r
- WAPSETTINGS_BEARER_USSD:\r
- begin\r
- label36.enabled:=true;\r
- edit15.text:=settings.code;\r
- edit15.enabled:=true;\r
-\r
- label37.enabled:=true;\r
- combobox14.Enabled:=true;\r
- combobox14.ItemIndex:=1;\r
- if settings.isIP=0 then\r
- begin\r
- combobox14.ItemIndex:=1;\r
-\r
- label28.enabled:=true;\r
- edit10.text:=settings.service;\r
- edit10.enabled:=true;\r
- end else\r
- begin\r
- label30.enabled:=true;\r
- edit12.text:=settings.ipaddress;\r
- edit12.enabled:=true;\r
- end;\r
- end;\r
- end;\r
- end;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Button19Click(Sender: TObject);\r
-var\r
- Divert:GSM_CallDivert;\r
-begin\r
- MainForm.Timer2.Enabled:=false;\r
-\r
- divert.DType:=GSM_CDV_Busy;\r
- divert.ctype:=GSM_CDV_VoiceCalls;\r
- divert.Operation:=GSM_CDV_Query;\r
- if gsm_calldivertoperation(@divert)=0 then\r
- begin\r
- if divert.enabled=0 then\r
- begin\r
- Label38.enabled:=false;\r
- edit16.enabled:=false;\r
- edit16.Text:='Not active';\r
- end else\r
- begin\r
- Label38.enabled:=true;\r
- edit16.enabled:=true;\r
- edit16.Text:=divert.Number;\r
- end;\r
- end;\r
-\r
- divert.DType:=GSM_CDV_NoAnswer;\r
- divert.ctype:=GSM_CDV_VoiceCalls;\r
- divert.Operation:=GSM_CDV_Query;\r
- if gsm_calldivertoperation(@divert)=0 then\r
- begin\r
- if divert.enabled=0 then\r
- begin\r
- Label39.enabled:=false;\r
- edit17.enabled:=false;\r
- edit17.Text:='Not active';\r
- label40.Enabled:=false;\r
- combobox15.Enabled:=false;\r
- end else\r
- begin\r
- Label39.enabled:=true;\r
- edit17.enabled:=true;\r
- edit17.Text:=divert.Number;\r
- label40.Enabled:=true;\r
- combobox15.Enabled:=true;\r
- case divert.timeout of\r
- 5:combobox15.ItemIndex:=0;\r
- 10:combobox15.ItemIndex:=1;\r
- 15:combobox15.ItemIndex:=2;\r
- 20:combobox15.ItemIndex:=3;\r
- 25:combobox15.ItemIndex:=4;\r
- 30:combobox15.ItemIndex:=5;\r
- end;\r
- end;\r
- end;\r
-\r
- divert.DType:=GSM_CDV_OutOfreach;\r
- divert.ctype:=GSM_CDV_VoiceCalls;\r
- divert.Operation:=GSM_CDV_Query;\r
- if gsm_calldivertoperation(@divert)=0 then\r
- begin\r
- if divert.enabled=0 then\r
- begin\r
- Label41.enabled:=false;\r
- edit18.enabled:=false;\r
- edit18.Text:='Not active';\r
- end else\r
- begin\r
- Label41.enabled:=true;\r
- edit18.enabled:=true;\r
- edit18.Text:=divert.Number;\r
- end;\r
- end;\r
-\r
- MainForm.Timer2.Enabled:=true;\r
-end;\r
-\r
-procedure TMainForm.Button20Click(Sender: TObject);\r
-var\r
- Divert:GSM_CallDivert;\r
-begin\r
- MainForm.Timer2.Enabled:=false;\r
-\r
- divert.DType:=GSM_CDV_AllTypes;\r
- divert.ctype:=GSM_CDV_AllCalls;\r
- divert.Operation:=GSM_CDV_Erasure;\r
- gsm_calldivertoperation(@divert);\r
-\r
- MainForm.Timer2.Enabled:=true;\r
-\r
-end;\r
-\r
-procedure ReadCalendarOffline;\r
-var F:file of GSM_calendarnote;\r
-begin\r
- MainForm.ListView11.items.Clear;\r
- AssignFile(F, 'gnokiicalendar');\r
- Reset(F);\r
- if (ioresult=0) then\r
- begin\r
- calendarofflinenumber:=0;\r
- while not eof(f) do\r
- begin\r
- calendarofflinenumber:=calendarofflinenumber+1;\r
- read(f,calendaroffline[calendarofflinenumber]);\r
- AddCalendarNote(calendaroffline[calendarofflinenumber],mainform.ListView11);\r
- end;\r
- CloseFile(F);\r
- end;\r
-end;\r
-\r
-procedure TMainForm.PCOfflineTabSheetShow(Sender: TObject);\r
-begin\r
- ReadSMSOffline;\r
- Label43.Caption:=inttostr(smsofflinenumber);\r
- ReadCalendarOffline;\r
- Label45.Caption:=inttostr(calendarofflinenumber);\r
-end;\r
-\r
-procedure SaveCalendarOffline;\r
-var F:file of GSM_CalendarNote;\r
- i:integer;\r
-begin\r
- AssignFile(F, 'gnokiicalendar');\r
- Rewrite(F);\r
- for i:=1 to CalendarOfflineNumber do\r
- begin\r
- Write(f,CalendarOffline[i]);\r
- end;\r
- CloseFile(F);\r
-end;\r
-\r
-procedure TMainForm.PCCalendarTabSheetShow(Sender: TObject);\r
-begin\r
- ReadCalendarOffline;\r
-end;\r
-\r
-procedure TMainForm.CopytoPC2Click(Sender: TObject);\r
-begin\r
- setcalendarnote.Location:=calendarselect;\r
- mainform.Timer2.Enabled:=false;\r
- GSM_GetCalendarNote(@setcalendarnote);\r
- mainform.Timer2.Enabled:=true;\r
- Calendarofflinenumber:=calendarofflinenumber+1;\r
- Calendaroffline[Calendarofflinenumber]:=setcalendarnote;\r
- SaveCalendarOffline;\r
-end;\r
-\r
-procedure TMainForm.Delete5Click(Sender: TObject);\r
-var\r
- i:integer;\r
-begin\r
- if Application.MessageBox('Do you want to delete this note ?','Question',MB_YESNO)=IDYES then\r
- begin\r
- for i:=MainForm.ListView11.ItemIndex to calendarofflinenumber-1 do\r
- begin\r
- CalendarOffline[i]:=CalendarOffline[i+1];\r
- end;\r
- Calendarofflinenumber:=calendarofflinenumber-1;\r
- SaveCalendarOffline;\r
- ReadCalendarOffline;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.Copytocalendar1Click(Sender: TObject);\r
-begin\r
- if not readcalendar then\r
- begin\r
- application.MessageBox('Please read first calendar notes from phone','info',mb_ok);\r
- end else begin\r
- setcalendarnote:=calendaroffline[mainform.listview11.itemindex+1];\r
- setcalendarnote.Location:=MainForm.ListView4.Items.Count+1;\r
-\r
- EditCalendarNote;\r
- end;\r
-end;\r
-\r
-procedure TMainForm.PCCalendarPopupMenuPopup(Sender: TObject);\r
-begin\r
- CopyTocalendar1.Enabled:=False;\r
- if (GSMPhoneConnected) and (GSM_GetModelFeature(FN_Calendar)<>0) then copytocalendar1.Enabled:=True;\r
-\r
- Delete5.Enabled:=false;\r
- if listview11.selected<>nil then Delete5.Enabled:=True;\r
-end;\r
-\r
-end.\r