summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--libkcal/phoneformat.cpp47
1 files changed, 39 insertions, 8 deletions
diff --git a/libkcal/phoneformat.cpp b/libkcal/phoneformat.cpp
index 238b0ef..1a9ccbc 100644
--- a/libkcal/phoneformat.cpp
+++ b/libkcal/phoneformat.cpp
@@ -93,12 +93,14 @@ public:
bool alarm = false;
QDateTime alarmDt;
GSM_Category Category;
int error;
QString completedString = "no";
for (j=0;j<ToDo->EntriesNum;j++) {
+
+ //qDebug(" for todo %d",ToDo->Location );
switch (ToDo->Entries[j].EntryType) {
case TODO_END_DATETIME:
dtp = &ToDo->Entries[j].Date ;
todo->setDtDue (fromGSM ( dtp ));
break;
case TODO_COMPLETED:
@@ -118,13 +120,14 @@ public:
case TODO_SILENT_ALARM_DATETIME:
dtp = &ToDo->Entries[j].Date ;
alarm = true;
alarmDt = fromGSM ( dtp );
break;
case TODO_TEXT:
- todo->setSummary( QString ( (const char*) ToDo->Entries[j].Text ));
+ //qDebug(" text *%s* ", (const char*) DecodeUnicodeConsole(ToDo->Entries[j].Text ));
+ todo->setSummary( QString::fromUtf8 ( (const char*)DecodeUnicodeConsole(ToDo->Entries[j].Text )));
break;
case TODO_PRIVATE:
if ( ToDo->Entries[j].Number == 1 )
todo->setSecrecy( Incidence::SecrecyPrivate );
else
todo->setSecrecy( Incidence::SecrecyPublic );
@@ -231,13 +234,13 @@ public:
bool alarm = false;
QDateTime alarmDt;
repeat_startdate.Day = 0;
repeat_stopdate.Day = 0;
for (i=0;i<Note->EntriesNum;i++) {
- qDebug(" for ");
+ //qDebug(" for ev");
switch (Note->Entries[i].EntryType) {
case CAL_START_DATETIME:
dtp = &Note->Entries[i].Date ;
if ( dtp->Hour > 24 ) {
event->setFloats( true );
event->setDtStart( QDateTime (datefromGSM ( dtp ), QTime(0,0,0 )));
@@ -267,16 +270,17 @@ public:
break;
case CAL_RECURRANCE:
rec_type = Note->Entries[i].Number;
//printmsg("Repeat : %d day%s\n",Note->Entries[i].Number/24,((Note->Entries[i].Number/24)>1) ? "s":"" );
break;
case CAL_TEXT:
- event->setSummary( QString ( (const char*) Note->Entries[i].Text ));
+ //qDebug(" ev text %s", DecodeUnicodeConsole(Note->Entries[i].Text) );
+ event->setSummary( QString::fromUtf8 ( (const char*)DecodeUnicodeConsole( Note->Entries[i].Text )));
break;
case CAL_LOCATION:
- event->setLocation(QString ((const char*) Note->Entries[i].Text ));
+ event->setLocation(QString::fromUtf8 ((const char*) DecodeUnicodeConsole(Note->Entries[i].Text) ));
break;
case CAL_PHONE:
//printmsg("Phone : \"%s\"\n",DecodeUnicodeConsole(Note->Entries[i].Text));
break;
case CAL_PRIVATE:
if ( Note->Entries[i].Number == 1 )
@@ -609,12 +613,13 @@ bool PhoneFormat::load( Calendar *calendar, Calendar *existingCal ,QString profi
mProfileName = profileName;
GSM_StateMachine s;
qDebug(" load ");
s.opened = false;
s.msg = NULL;
s.ConfigNum = 0;
+#if 0
static char *cp;
static INI_Section *cfg = NULL;
cfg=GSM_FindGammuRC();
int i;
for (i = 0; i <= MAX_CONFIG_NUM; i++) {
if (cfg!=NULL) {
@@ -650,33 +655,59 @@ bool PhoneFormat::load( Calendar *calendar, Calendar *existingCal ,QString profi
/* We wanted to read just user specified configuration. */
{break;}
}
+#endif
+ setlocale(LC_ALL, "");
+ GSM_ReadConfig(NULL, &s.Config[0], 0);
+ s.ConfigNum = 1;
+ GSM_Config *cfg = &s.Config[0];
+ di.coding = "utf8";
+ if ( ! connection.isEmpty() ) {
+ cfg->Connection = strdup(connection.latin1());
+ cfg->DefaultConnection = false;
+ qDebug("Connection set %s ", cfg->Connection );
+
+ }
+ if ( ! device.isEmpty() ) {
+ cfg->Device = strdup(device.latin1());
+ cfg->DefaultDevice = false;
+ qDebug("Device set %s ", cfg->Device);
+
+ }
+ if ( ! model.isEmpty() ) {
+ strcpy(cfg->Model,model.latin1() );
+ cfg->DefaultModel = false;
+ qDebug("Model set %s ",cfg->Model );
+
+
+ }
int error=GSM_InitConnection(&s,3);
qDebug(" init %d %d", error, ERR_NONE);
if ( error != ERR_NONE )
return false;
// fromString2Cal( calendar, existngCal, &s, "Event" );
GSM_Phone_Functions *Phone;
GSM_CalendarEntry note;
- bool refresh = true;
+ bool start = true;
Phone=s.Phone.Functions;
bool gshutdown = false;
PhoneParser handler( calendar, profileName );
int ccc = 0;
- while (!gshutdown && ccc++ < 10 ) {
+ while (!gshutdown && ccc++ < 3) {
qDebug("readEvent %d ", ccc);
- error=Phone->GetNextCalendar(&s,&note,refresh);
+ error=Phone->GetNextCalendar(&s,&note,start);
if (error == ERR_EMPTY) break;
+ start = false;
handler.readEvent( existingCal, &note );
}
- bool start = true;
+ start = true;
GSM_ToDoEntry ToDo;
ccc = 0;
while (!gshutdown) {
error = Phone->GetNextToDo(&s, &ToDo, start);
if (error == ERR_EMPTY) break;
start = false;