-rw-r--r-- | libkcal/phoneformat.cpp | 117 |
1 files changed, 3 insertions, 114 deletions
diff --git a/libkcal/phoneformat.cpp b/libkcal/phoneformat.cpp index b2a62b1..c39413e 100644 --- a/libkcal/phoneformat.cpp +++ b/libkcal/phoneformat.cpp | |||
@@ -36,6 +36,7 @@ | |||
36 | #include <klocale.h> | 36 | #include <klocale.h> |
37 | #include <kglobal.h> | 37 | #include <kglobal.h> |
38 | #include <kmessagebox.h> | 38 | #include <kmessagebox.h> |
39 | #include <phoneaccess.h> | ||
39 | 40 | ||
40 | #include "calendar.h" | 41 | #include "calendar.h" |
41 | #include "alarm.h" | 42 | #include "alarm.h" |
@@ -84,111 +85,13 @@ public: | |||
84 | PhoneFormat::PhoneFormat(QString profileName, QString device,QString connection, QString model ) | 85 | PhoneFormat::PhoneFormat(QString profileName, QString device,QString connection, QString model ) |
85 | { | 86 | { |
86 | mProfileName = profileName; | 87 | mProfileName = profileName; |
87 | writeConfig( device, connection, model ); | 88 | PhoneAccess::writeConfig( device, connection, model ); |
88 | } | 89 | } |
89 | 90 | ||
90 | PhoneFormat::~PhoneFormat() | 91 | PhoneFormat::~PhoneFormat() |
91 | { | 92 | { |
92 | } | 93 | } |
93 | void PhoneFormat::writeConfig( QString device, QString connection, QString model ) | ||
94 | { | ||
95 | #ifdef _WIN32_ | ||
96 | QString fileName = qApp->applicationDirPath () +"\\gammurc"; | ||
97 | #else | ||
98 | QString fileName = QDir::homeDirPath() +"/.gammurc"; | ||
99 | #endif | ||
100 | //qDebug("save %d ", load ); | ||
101 | QString content; | ||
102 | bool write = false; | ||
103 | bool addPort = true, addConnection = true, addModel = true; | ||
104 | QFile file( fileName ); | ||
105 | if ( QFile::exists( fileName) ) { | ||
106 | if (!file.open( IO_ReadOnly ) ) { | ||
107 | qDebug("Error: cannot open %s ", fileName.latin1() ); | ||
108 | return; | ||
109 | } | ||
110 | QString line; | ||
111 | while ( file.readLine( line, 1024 ) > 0 ) { | ||
112 | //qDebug("*%s* ", line.latin1() ); | ||
113 | if ( line.left(7 ) == "[gammu]" ) { | ||
114 | ; | ||
115 | } else | ||
116 | if ( line.left(4 ) == "port" ) { | ||
117 | if ( line == "port = " + device+"\n" ) { | ||
118 | content += line ; | ||
119 | addPort = false; | ||
120 | //qDebug("port found" ); | ||
121 | } | ||
122 | |||
123 | } else if ( line.left(5 ) == "model" ) { | ||
124 | if ( line == "model = " + model +"\n") { | ||
125 | content += line ; | ||
126 | addModel = false; | ||
127 | //qDebug("model found" ); | ||
128 | } | ||
129 | |||
130 | } else if ( line.left( 10 ) == "connection" ) { | ||
131 | if ( line == "connection = " + connection +"\n") { | ||
132 | addConnection = false; | ||
133 | content += line ; | ||
134 | //qDebug("con found" ); | ||
135 | } | ||
136 | |||
137 | } else { | ||
138 | content += line ; | ||
139 | } | ||
140 | } | ||
141 | file.close(); | ||
142 | } else { | ||
143 | if ( ! connection.isEmpty() ) { | ||
144 | addConnection = true; | ||
145 | } | ||
146 | if ( ! device.isEmpty() ) { | ||
147 | addPort = true; | ||
148 | 94 | ||
149 | } | ||
150 | if ( ! model.isEmpty() ) { | ||
151 | addModel = true; | ||
152 | } | ||
153 | } | ||
154 | |||
155 | if ( addConnection ) { | ||
156 | if ( ! write ) | ||
157 | content += "[gammu]\n"; | ||
158 | write = true; | ||
159 | content += "connection = "; | ||
160 | content += connection; | ||
161 | content += "\n"; | ||
162 | } | ||
163 | if ( addPort ) { | ||
164 | if ( ! write ) | ||
165 | content += "[gammu]\n"; | ||
166 | write = true; | ||
167 | content += "port = "; | ||
168 | content += device; | ||
169 | content += "\n"; | ||
170 | |||
171 | } | ||
172 | if ( addModel ) { | ||
173 | if ( ! write ) | ||
174 | content += "[gammu]\n"; | ||
175 | write = true; | ||
176 | content += "model = "; | ||
177 | content += model; | ||
178 | content += "\n"; | ||
179 | } | ||
180 | if ( write ) { | ||
181 | if (!file.open( IO_WriteOnly ) ) { | ||
182 | qDebug("Error: cannot write file %s ", fileName.latin1() ); | ||
183 | return; | ||
184 | } | ||
185 | qDebug("Writing file %s ", fileName.latin1() ); | ||
186 | QTextStream ts( &file ); | ||
187 | ts << content ; | ||
188 | file.close(); | ||
189 | } | ||
190 | |||
191 | } | ||
192 | #if 0 | 95 | #if 0 |
193 | int PhoneFormat::initDevice(GSM_StateMachine *s) | 96 | int PhoneFormat::initDevice(GSM_StateMachine *s) |
194 | { | 97 | { |
@@ -590,21 +493,7 @@ bool PhoneFormat::writeToPhone( Calendar * calendar) | |||
590 | vfsave.setLocalTime ( true ); | 493 | vfsave.setLocalTime ( true ); |
591 | if ( ! vfsave.save( calendar, fileName ) ) | 494 | if ( ! vfsave.save( calendar, fileName ) ) |
592 | return false; | 495 | return false; |
593 | // 4 call kammu | 496 | return PhoneAccess::writeToPhone( fileName ); |
594 | #ifdef DESKTOP_VERSION | ||
595 | QString command ="./kammu --restore " + fileName ; | ||
596 | #else | ||
597 | QString command ="kammu --restore " + fileName ; | ||
598 | #endif | ||
599 | int ret; | ||
600 | while ( (ret = system ( command.latin1())) != 0 ) { | ||
601 | qDebug("Error S::command returned %d. asking users", ret); | ||
602 | int retval = KMessageBox::warningContinueCancel(0, | ||
603 | i18n("Error accessing device!\nPlease turn on connection\nand retry!"),i18n("KO/Pi phone access"),i18n("Retry"),i18n("Cancel")); | ||
604 | if ( retval != KMessageBox::Continue ) | ||
605 | return false; | ||
606 | } | ||
607 | return true; | ||
608 | } | 497 | } |
609 | bool PhoneFormat::save( Calendar *calendar) | 498 | bool PhoneFormat::save( Calendar *calendar) |
610 | { | 499 | { |