Branch update for mygnokii2002_03_17_19_29nl
[gnokii.git] / win32_makefile / gui_delphi / GnokiiAPI.pas
index 02ac803..4d6e425 100644 (file)
@@ -9,6 +9,7 @@ uses Classes,Forms,SysUtils;
 \r
 const\r
   GSM_General = 10;\r
+  GSM_General2= 11;\r
   GSM_Mobile  = 3;\r
   GSM_Work    = 6;\r
   GSM_Fax     = 4;\r
@@ -92,19 +93,32 @@ const
 const\r
   FN_CALENDAR=0;\r
   FN_CALLERGROUPS=2;\r
+  FN_PHONEBOOK=3;\r
   FN_SMS=11;\r
+  FN_STARTUP=13;\r
   FN_PROFILES=14;\r
+  FN_RINGTONES=15;\r
   FN_WAP=16;\r
-\r
-  F_CAL61=0;//Calendar in 6110 style - 4 types,...\r
-  F_CAL33=1;//Calendar in 3310 style - 10 reminders, Unicode, 3 coding types\r
-  F_CAL71=2;//Calendar in 7110 style - 4 types, recurrance, etc.\r
-\r
-  F_SMS  =7;  //SMS with Inbox, Outbox\r
-  F_SMS71=8;  //SMS with SMS folders like in 7110\r
-  F_PROF61=22;//Profiles numbered like in N6110\r
-  F_PROF51=23;//Profiles numbered like in N5110\r
-  F_PROF33=24;//Profiles numbered like in N3310.Unicode names\r
+  FN_RINGNUMBER=17;\r
+\r
+  F_CAL61=1;   //Calendar in 6110 style - 4 types,...\r
+  F_CAL33=2;   //Calendar in 3310 style - 10 reminders, Unicode, 3 coding types\r
+  F_CAL71=3;   //Calendar in 7110 style - 4 types, recurrance, etc.\r
+  F_PBK33SIM=4;//Phonebook in Unicode(3310 style).Name and number.No internal\r
+  F_PBK33INT=5;//Phonebook in Unicode(3310 style).Name and number.Internal available\r
+  F_PBK71INT=6;//Extended phonebook-multiple numbers,Unicode(7110 style).Internal available\r
+  F_PBK61INT=7;//Name and number,no Unicode(6110 style).Internal available\r
+  F_SMS  =10;  //SMS with Inbox, Outbox\r
+  F_SMS71=11;  //SMS with SMS folders like in 7110\r
+  F_STANIM=21; //Startup logo animated or static\r
+  F_STA=22;    //Startup logo static\r
+  F_STA62=23;  //Startup logo static size 6210\r
+  F_STA71=24;  //Startup logo static size 7110\r
+  F_PROF61=25; //Profiles numbered like in N6110\r
+  F_PROF51=26; //Profiles numbered like in N5110\r
+  F_PROF33=27; //Profiles numbered like in N3310.Unicode names\r
+  F_RING_SM=28;//Binary ringtone in Smart Messaging\r
+  F_RINGBIN=29;//Binary ringtone in binary format\r
 \r
 const\r
   GE_SMSTOOLONG=22;\r
@@ -223,7 +237,7 @@ type
   GSM_Bitmap=record\r
     heigh:byte;\r
     width:byte;\r
-    size:smallint;\r
+    size:word;\r
     type2:integer;\r
     netcode:array[1..7] of char;\r
     text:array[1..256] of char;\r
@@ -430,6 +444,31 @@ type
   end;\r
   PGSM_CallDivert=^GSM_CallDivert;\r
 \r
+  GSM_Backup=record\r
+    SIMPhonebookUsed:integer;\r
+    SIMPhonebookSize:integer;\r
+    SIMPhonebook:array[1..250] of GSM_PhonebookEntry;\r
+\r
+    PhonePhonebookUsed:integer;\r
+    PhonePhonebookSize:integer;\r
+    PhonePhonebook:array[1..500] of GSM_PhonebookEntry;\r
+\r
+    CallerAvailable:integer;\r
+    CallerGroups:array[1..5] of GSM_Bitmap;\r
+\r
+    SpeedAvailable:integer;\r
+    SpeedDials:array[1..8] of GSM_SpeedDial;\r
+\r
+    OperatorLogoAvailable:integer;\r
+    OperatorLogo:GSM_Bitmap;\r
+\r
+    StartupLogoAvailable:integer;\r
+    StartupLogo:GSM_Bitmap;\r
+\r
+    StartupText:GSM_Bitmap;\r
+  end;\r
+  PGSM_Backup=^GSM_Backup;\r
+\r
 var\r
   GSMPhoneConnected: boolean=false;\r
   GSMNetworkInfo: GSM_NetworkInfo;\r
@@ -467,7 +506,10 @@ function GSM_ReadRingtoneFile(filename:Pchar;ringtone:PGSM_Ringtone): integer; s
 function GSM_SetRingtone(ringtone:PGSM_Ringtone;notes:Pinteger): integer; stdcall; external 'gnokiiapi.dll' name 'mysetringtone';\r
 function GSM_ReadBinRingtoneFile(filename:Pchar;ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbinringtonefile';\r
 function GSM_SetBinRingtone(ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysetbinringtone';\r
+function GSM_GetPhoneRingtone(ringtone:PGSM_BinRingtone;SMringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'mygetphoneringtone';\r
 function GSM_PlayRingtone(ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'myplayringtone';\r
+function GSM_SaveRingtoneFile(filename:Pchar;ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysaveringtonefile';\r
+function GSM_SaveBinRingtoneFile(filename:Pchar;ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebinringtonefile';\r
 function GSM_PlayNote(note:GSM_RingtoneNote): integer; stdcall; external 'gnokiiapi.dll' name 'myplaynote';\r
 function GSM_PlayTone(herz:integer;volume:byte): integer; stdcall; external 'gnokiiapi.dll' name 'myplaytone';\r
 function GSM_GetTempo(beats:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mygettempo';\r
@@ -536,6 +578,11 @@ function GSM_GetWAPSettings(settings:PGSM_WAPSettings): integer; stdcall; extern
 \r
 function GSM_CallDivertOperation(divert:PGSM_CallDivert): integer; stdcall; external 'gnokiiapi.dll' name 'mycalldivert';\r
 \r
+function GSM_SaveBackupFile(filename:Pchar;backup:PGSM_Backup): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebackupfile';\r
+function GSM_ReadBackupFile(filename:Pchar;backup:PGSM_Backup): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbackupfile';\r
+\r
+function GSM_DialVoice(Number:PChar): integer; stdcall; external 'gnokiiapi.dll' name 'mydialvoice';\r
+\r
 implementation\r
 \r
 procedure TSparkyThread.Execute;\r
@@ -548,7 +595,8 @@ begin
       begin\r
         GSMPhoneConnected:=false;\r
         GSM_Terminate();\r
-      end else begin\r
+      end else\r
+      begin\r
         if not SparkyThread.Suspended then SparkyThread.Suspend;\r
       end;\r
     end else\r