author | ar <ar> | 2004-02-21 18:32:37 (UTC) |
---|---|---|
committer | ar <ar> | 2004-02-21 18:32:37 (UTC) |
commit | 536f271b1e6a1d1886e96a28524a3503c4c38c4e (patch) (side-by-side diff) | |
tree | 63b3c0ce472a89a0f9731195fececc701bf4ca67 /noncore/settings/networksettings/ppp/modeminfo.cpp | |
parent | db2afda83e495bff9fc19fa14a30072f1cd4c67a (diff) | |
download | opie-536f271b1e6a1d1886e96a28524a3503c4c38c4e.zip opie-536f271b1e6a1d1886e96a28524a3503c4c38c4e.tar.gz opie-536f271b1e6a1d1886e96a28524a3503c4c38c4e.tar.bz2 |
improve support for BigScreen
Diffstat (limited to 'noncore/settings/networksettings/ppp/modeminfo.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/settings/networksettings/ppp/modeminfo.cpp | 65 |
1 files changed, 42 insertions, 23 deletions
diff --git a/noncore/settings/networksettings/ppp/modeminfo.cpp b/noncore/settings/networksettings/ppp/modeminfo.cpp index dbb26db..df0bf9b 100644 --- a/noncore/settings/networksettings/ppp/modeminfo.cpp +++ b/noncore/settings/networksettings/ppp/modeminfo.cpp @@ -15,34 +15,38 @@ * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this program; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -#include <unistd.h> +#include "modeminfo.h" +#include "modem.h" + +/* OPIE */ +#include <qpe/qpeapplication.h> + +/* QT */ #include <qregexp.h> #include <qlayout.h> -// #include <kwin.h> -// #include <kmessagebox.h> -// #include <kapplication.h> #include <qmessagebox.h> #include <qapplication.h> -#include "modeminfo.h" -#include "modem.h" + +/* STD */ +#include <unistd.h> ModemTransfer::ModemTransfer(Modem *mo, QWidget *parent, const char *name) : QDialog(parent, name,TRUE, WStyle_Customize|WStyle_NormalBorder), _modem(mo) { setCaption(QObject::tr("ATI Query")); // KWin::setIcons(winId(), kapp->icon(), kapp->miniIcon()); QVBoxLayout *tl = new QVBoxLayout(this, 10, 10); progressBar = new QProgressBar(this, "bar"); progressBar->setTotalSteps(8); @@ -84,101 +88,110 @@ ModemTransfer::ModemTransfer(Modem *mo, QWidget *parent, const char *name) timeout_timer = new QTimer(this); connect(timeout_timer, SIGNAL(timeout()), SLOT(time_out_slot())); scripttimer = new QTimer(this); connect(scripttimer, SIGNAL(timeout()), SLOT(do_script())); timeout_timer->start(15000,TRUE); // 15 secs single shot QTimer::singleShot(500, this, SLOT(init())); } -void ModemTransfer::ati_done() { +void ModemTransfer::ati_done() +{ scripttimer->stop(); timeout_timer->stop(); _modem->closetty(); _modem->unlockdevice(); hide(); // open the result window ModemInfo *mi = new ModemInfo(this); for(int i = 0; i < NUM_OF_ATI; i++) mi->setAtiString(i, ati_query_strings[i]); - mi->showMaximized(); - mi->exec(); + + QPEApplication::execDialog( mi ); delete mi; accept(); } -void ModemTransfer::time_out_slot() { +void ModemTransfer::time_out_slot() +{ timeout_timer->stop(); scripttimer->stop(); QMessageBox::warning(this, tr("Error"), QObject::tr("Modem Query timed out.")); reject(); } -void ModemTransfer::init() { +void ModemTransfer::init() +{ qApp->processEvents(); int lock = _modem->lockdevice(); - if (lock == 1) { + if (lock == 1) + { statusBar->setText(QObject::tr("Modem device is locked.")); return; } - if (lock == -1) { + if (lock == -1) + { statusBar->setText(QObject::tr("Unable to create modem lock file.")); return; } - if(_modem->opentty()) { - if(_modem->hangup()) { + if(_modem->opentty()) + { + if(_modem->hangup()) + { usleep(100000); // wait 0.1 secs _modem->writeLine("ATE0Q1V1"); // E0 don't echo the commands I send ... statusBar->setText(QObject::tr("Modem Ready")); qApp->processEvents(); usleep(100000); // wait 0.1 secs qApp->processEvents(); scripttimer->start(1000); // this one does the ati query // clear modem buffer _modem->flush(); _modem->notify(this, SLOT(readChar(unsigned char))); return; } } // opentty() or hangup() failed statusBar->setText(_modem->modemMessage()); step = 99; // wait until cancel is pressed _modem->unlockdevice(); } -void ModemTransfer::do_script() { +void ModemTransfer::do_script() +{ QString msg; QString query; - switch(step) { + switch(step) + { case 0: readtty(); statusBar->setText("ATI..."); progressBar->setProgress( progressBar->progress() + 1); _modem->writeLine("ATI\n"); break; case 1: case 2: case 3: case 4: case 5: @@ -190,80 +203,85 @@ void ModemTransfer::do_script() { statusBar->setText(msg); progressBar->setProgress( progressBar->progress() + 1); _modem->writeLine(query.local8Bit()); break; default: readtty(); ati_done(); } step++; } -void ModemTransfer::readChar(unsigned char c) { +void ModemTransfer::readChar(unsigned char c) +{ if(readbuffer.length() < 255) readbuffer += c; } -void ModemTransfer::readtty() { +void ModemTransfer::readtty() +{ if (step == 0) return; readbuffer.replace(QRegExp("[\n\r]")," "); // remove stray \n and \r readbuffer = readbuffer.stripWhiteSpace(); // strip of leading or trailing white // space if(step <= NUM_OF_ATI) ati_query_strings[step-1] = readbuffer.copy(); readbuffer = ""; } -void ModemTransfer::cancelbutton() { +void ModemTransfer::cancelbutton() +{ scripttimer->stop(); _modem->stop(); timeout_timer->stop(); statusBar->setText(QObject::tr("One moment please...")); qApp->processEvents(); _modem->hangup(); _modem->closetty(); _modem->unlockdevice(); reject(); } -void ModemTransfer::closeEvent( QCloseEvent *e ) { +void ModemTransfer::closeEvent( QCloseEvent *e ) +{ cancelbutton(); e->accept(); } ModemInfo::ModemInfo(QWidget *parent, const char* name) : QDialog(parent, name, TRUE, WStyle_Customize|WStyle_NormalBorder) { QString label_text; setCaption(QObject::tr("Modem Query Results")); // KWin::setIcons(winId(), kapp->icon(), kapp->miniIcon()); QVBoxLayout *tl = new QVBoxLayout(this, 10, 10); QGridLayout *l1 = new QGridLayout(NUM_OF_ATI, 2, 5); tl->addLayout(l1, 1); - for(int i = 0 ; i < NUM_OF_ATI ; i++) { + for(int i = 0 ; i < NUM_OF_ATI ; i++) + { label_text = ""; if ( i == 0) label_text.sprintf("ATI :"); else label_text.sprintf("ATI %d:", i ); ati_label[i] = new QLabel(label_text, this); l1->addWidget(ati_label[i], i, 0); ati_label_result[i] = new QLineEdit(this); ati_label_result[i]->setMinimumWidth(fontMetrics().width('H') * 24); @@ -277,18 +295,19 @@ ModemInfo::ModemInfo(QWidget *parent, const char* name) ok->setFocus(); tl->addLayout(l2); l2->addStretch(1); connect(ok, SIGNAL(clicked()), SLOT(accept())); l2->addWidget(ok); setMinimumSize(sizeHint()); } -void ModemInfo::setAtiString(int i, QString s) { +void ModemInfo::setAtiString(int i, QString s) +{ if(i < NUM_OF_ATI) ati_label_result[i]->setText(s); } //#include "modeminfo.moc" |