Fix build on Qt-Creator
[googlelatitude] / latitudewidget.cpp
1 #include "latitudewidget.h"
2
3 LatitudeGUI::LatitudeGUI(QWidget *parent) :
4     QWidget(parent),
5     latitude(this),
6     gps(this),
7     demonioOpt("/opt/LatitudeUpdaterDaemon/bin/LatitudeUpdaterDaemon"),
8     demonioSdk(QCoreApplication::applicationDirPath()+
9         QDir::separator()+
10         "LatitudeUpdaterDaemon"),
11     cli(this) {
12     qDebug() << "* LatitudeGUI::LatitudeGUI";
13     setWindowTitle(tr("LatitudeUpdater"));
14
15     // row 1
16     layout_row1 = new QHBoxLayout();
17     do_oauth = new QPushButton("Auth");
18     do_start = new QPushButton("Start");
19     do_stop = new QPushButton("Stop");
20     layout_row1->addWidget(do_oauth);
21     layout_row1->addWidget(do_start);
22     layout_row1->addWidget(do_stop);
23
24     do_oauth->setDisabled(true);
25     do_start->setDisabled(true);
26     do_stop->setDisabled(true);
27
28     connect(do_oauth, SIGNAL(clicked()), this, SLOT(gl_webauth()) );
29     connect(do_start, SIGNAL(clicked()), this, SLOT(gps_start()) );
30     connect(do_stop, SIGNAL(clicked()), this, SLOT(gps_stop()) );
31
32     connect(&latitude, SIGNAL(gotToken()), this, SLOT(gl_GotToken()) );
33     connect(&latitude, SIGNAL(notToken()), this, SLOT(gl_NotToken()) );
34     connect(&latitude, SIGNAL(needAuth()), this, SLOT(gl_needAuth()) );
35
36     connect(&gps, SIGNAL(gotFix()), this, SLOT(set_latitude()) );
37
38     // row 2
39     layout_row2 = new QHBoxLayout();
40     gps_group = new QButtonGroup();
41     gps_method = new QLabel("Method");
42     gps_cell = new QRadioButton("Cell Tower");
43     gps_both = new QRadioButton("Both");
44     gps_agps = new QRadioButton("Only Gps");
45     gps_group->addButton(gps_cell);
46     gps_group->addButton(gps_both);
47     gps_group->addButton(gps_agps);
48     layout_row2->addWidget(gps_method);
49     layout_row2->addWidget(gps_cell);
50     layout_row2->addWidget(gps_both);
51     layout_row2->addWidget(gps_agps);
52
53     if ( gps.getPositioningMethod() == "gps" ) gps_agps->setChecked(true);
54     if ( gps.getPositioningMethod() == "cell" ) gps_cell->setChecked(true);
55     if ( gps.getPositioningMethod() == "all" ) gps_both->setChecked(true);
56
57     connect(gps_cell, SIGNAL(clicked()), this, SLOT(set_method()) );
58     connect(gps_both, SIGNAL(clicked()), this, SLOT(set_method()) );
59     connect(gps_agps, SIGNAL(clicked()), this, SLOT(set_method()) );
60
61     // row 3
62     layout_row3 = new QHBoxLayout();
63     gps_to_label = new QLabel("Time Out");
64     gps_to_slider = new QSlider(Qt::Horizontal);
65     gps_to_slider->setSingleStep(5);
66     gps_to_slider->setRange(5, 120);
67     gps_to_slider->setValue(gps.getTimeOut());
68     gps_to_slider_value = new QLabel(QString("%1 sec.").arg(gps_to_slider->value()));
69     layout_row3->addWidget(gps_to_label);
70     layout_row3->addWidget(gps_to_slider);
71     layout_row3->addWidget(gps_to_slider_value);
72
73     connect(gps_to_slider, SIGNAL(valueChanged(int)), this, SLOT(set_to(int)) );
74
75     // row 4
76     layout_row4 = new QHBoxLayout();
77     gps_i_label = new QLabel("Interval");
78
79     gps_i_slider = new QSlider(Qt::Horizontal);
80     gps_i_slider->setSingleStep(5);
81     gps_i_slider->setRange(5, 60);
82     gps_i_slider->setValue(gps.getInterval()/60);
83     gps_i_slider_value = new QLabel(QString("%1 min.").arg(gps_i_slider->value()));
84     layout_row4->addWidget(gps_i_label);
85     layout_row4->addWidget(gps_i_slider);
86     layout_row4->addWidget(gps_i_slider_value);
87
88     connect(gps_i_slider, SIGNAL(valueChanged(int)), this, SLOT(set_i(int)) );
89
90     // row 5
91     layout_row5 = new QHBoxLayout();
92     gps_ac_group = new QButtonGroup();
93     gps_ac_label = new QLabel("Auto Connect");
94     gps_ac_yes = new QRadioButton("Yes");
95     gps_ac_not = new QRadioButton("No");
96     gps_ac_group->addButton(gps_ac_yes);
97     gps_ac_group->addButton(gps_ac_not);
98     layout_row5->addWidget(gps_ac_label);
99     layout_row5->addWidget(gps_ac_yes);
100     layout_row5->addWidget(gps_ac_not);
101
102     if ( latitude.getAutoConnect() == true ) gps_ac_yes->setChecked(true);
103     if ( latitude.getAutoConnect() == false ) gps_ac_not->setChecked(true);
104
105     connect(gps_ac_yes, SIGNAL(clicked()), this, SLOT(set_ac_yes()) );
106     connect(gps_ac_not, SIGNAL(clicked()), this, SLOT(set_ac_not()) );
107
108     // gui
109     layout_gui = new QVBoxLayout();
110     layout_gui->addLayout(layout_row1);
111     layout_gui->addLayout(layout_row2);
112     layout_gui->addLayout(layout_row3);
113     layout_gui->addLayout(layout_row4);
114     layout_gui->addLayout(layout_row5);
115
116     setLayout(layout_gui);
117     latitude.getAccess();
118 }
119