~ubuntu-clock-dev/ubuntu-clock-app/reboot-packaging

« back to all changes in this revision

Viewing changes to backend/modules/Timezone/zone.h

  • Committer: Michael Zanetti
  • Date: 2014-07-13 14:45:39 UTC
  • mto: (20.1.4 10-world-clocks)
  • mto: This revision was merged to the branch mainline in revision 23.
  • Revision ID: michael.zanetti@canonical.com-20140713144539-q204tshktb06fjxo
fix, explain the Zone class

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
     * Public function to receive a Olson Timezone ID as argument and
23
23
     * output that timezone's QDateTime object.
24
24
    */
25
 
    QDateTime getLocalTime(QByteArray *timezoneID);
 
25
//    QDateTime getLocalTime(QByteArray *timezoneID);
 
26
 
 
27
 
 
28
// You shouldn't use slots with return values... Instead, make a public
 
29
// function and mark it as Q_INVOKABLE
 
30
public:
 
31
    // You shouldn't use a pointer (*) to QByteArray. There's only very few cases
 
32
    // where that is desirable. Until you understand the difference, better
 
33
    // stick to references (&) like this:
 
34
    Q_INVOKABLE QDateTime getLocalTime(const QByteArray &timeZoneId) const;
 
35
 
 
36
    // Marking the parameter and the method "const" is good practice and helps
 
37
    // with keeping the code easier to maintain, but it's not required. Don't
 
38
    // get hung up on those if you're not understanding those yet.
 
39
 
 
40
    // You could also just use this:
 
41
    // QDateTime getLocalTime(QByteArray timeZoneId);
 
42
    // That, however, makes the code slower, because it creates a copy of
 
43
    // timeZoneId before passing it into the function. Using & doesn't
 
44
    // do that and refers to the original value. We're using const to make
 
45
    // sure to not accidentally change the original value.
 
46
 
 
47
 
 
48
    // Workaround for QDateTime losing timezone information
 
49
    Q_INVOKABLE QString getCurrentTimeString(const QByteArray &timeZoneId) const;
 
50
 
26
51
 
27
52
private:
28
 
    QDateTime m_time;
 
53
    QDateTime m_time; // delete this
29
54
};
30
55
 
31
56
#endif // ZONE_H