4 #include <QtGui/QWidget>
5 #include <QtGui/QPushButton>
6 #include <QtGui/QLineEdit>
7 #include <QtGui/QLabel>
8 #include <QtGui/QVBoxLayout>
9 #include <QtGui/QHBoxLayout>
10 #include <QtGui/QRadioButton>
11 #include <QtGui/QButtonGroup>
12 #include <QtGui/QSlider>
13 #include <QtGui/QDesktopServices>
14 #include "googlelatitude.h"
15 #include "gpscontrol.h"
17 class LatitudeGUI : public QWidget {
20 LatitudeGUI(QWidget *parent = 0);
28 qDebug() << "LatitudeGUI::gl_GotToken";
29 do_oauth->setDisabled(true);
30 do_start->setEnabled(true);
31 do_stop->setDisabled(true);
34 qDebug() << "LatitudeGUI::gl_NotToken";
35 do_oauth->setEnabled(true);
36 do_start->setDisabled(true);
37 do_stop->setDisabled(true);
38 gps.stopUpdates(true);
41 qDebug() << "LatitudeGUI::gl_needAuth";
42 do_oauth->setEnabled(true);
45 qDebug() << "LatitudeGUI::gl_webauth";
46 QDesktopServices::openUrl(latitude.getUserAuthorization());
49 qDebug() << "LatitudeGUI::gps_start";
50 do_start->setDisabled(true);
51 do_stop->setEnabled(true);
55 qDebug() << "LatitudeGUI::gps_stop";
56 do_start->setEnabled(true);
57 do_stop->setDisabled(true);
58 gps.stopUpdates(true);
61 qDebug() << "LatitudeGUI::get_gps";
62 pos_lat->setText(QString("%1").arg(gps.getCurrentLatitude()));
63 pos_lon->setText(QString("%1").arg(gps.getCurrentLongitude()));
64 pos_acc->setText(QString("%1").arg(gps.getCurrentAccuracy()));
65 pos_tis->setText(QString("%1").arg(gps.getCurrentTimestamp()));
68 qDebug() << "LatitudeGUI::set_latitude";
69 latitude.setCurrentLocation(pos_lat->text().toDouble(),
70 pos_lon->text().toDouble(),
71 pos_acc->text().toDouble());
72 latitude.sendCurrentLocation();
75 qDebug() << "LatitudeGUI::set_method";
76 if (gps_cell->isChecked()) gps.setPositioningMethod("cell");
77 if (gps_both->isChecked()) gps.setPositioningMethod("all");
78 if (gps_agps->isChecked()) gps.setPositioningMethod("gps");
80 void set_to(int value) {
81 qDebug() << "LatitudeGUI::set_to()" << value;
82 gps.setTimeOut(value);
83 gps_to_slider_value->setText(QString("%1 sec.").arg(value));
86 void set_i(int value) {
87 qDebug() << "LatitudeGUI::set_i()" << value;
88 gps.setInterval(value*60);
89 gps_i_slider_value->setText(QString("%1 min.").arg(value));
92 qDebug() << "LatitudeGUI::set_ac_yes";
93 latitude.setAutoConnect(true);
96 qDebug() << "LatitudeGUI::set_ac_not";
97 latitude.setAutoConnect(false);
101 GoogleLatitude latitude;
104 QHBoxLayout *layout_row1;
105 QPushButton *do_oauth;
106 QPushButton *do_start;
107 QPushButton *do_stop;
109 QHBoxLayout *layout_row2;
116 QHBoxLayout *layout_row3;
118 QButtonGroup *gps_group;
119 QRadioButton *gps_cell;
120 QRadioButton *gps_both;
121 QRadioButton *gps_agps;
123 QHBoxLayout *layout_row4;
124 QLabel *gps_to_label;
125 QSlider *gps_to_slider;
126 QLabel *gps_to_slider_value;
128 QHBoxLayout *layout_row5;
130 QSlider *gps_i_slider;
131 QLabel *gps_i_slider_value;
133 QHBoxLayout *layout_row6;
134 QLabel *gps_ac_label;
135 QButtonGroup *gps_ac_group;
136 QRadioButton *gps_ac_yes;
137 QRadioButton *gps_ac_not;
139 QVBoxLayout *layout_gui;
142 #endif // LATITUDEGUI_H