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

« back to all changes in this revision

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

  • Committer: Nekhelesh Ramananthan
  • Date: 2014-07-15 12:50:49 UTC
  • mfrom: (20.1.24 10-world-clocks)
  • Revision ID: krnekhelesh@gmail.com-20140715125049-hhsn7hpe6tqrn3vz
- Added a page to select world cities. It provides search as you type using the new SDK SortFilterModel feature.
- Added a XML file with a list of popular cities.
- The local time at the cities are retrieved using QTimezone and QDateTime classes and used via a QAbstractListModel to automatically update the city list every second.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (C) 2014 Canonical Ltd
 
3
 *
 
4
 * This program is free software: you can redistribute it and/or modify
 
5
 * it under the terms of the GNU General Public License version 3 as
 
6
 * published by the Free Software Foundation.
 
7
 *
 
8
 * This program is distributed in the hope that it will be useful,
 
9
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
10
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
11
 * GNU General Public License for more details.
 
12
 *
 
13
 * You should have received a copy of the GNU General Public License
 
14
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
15
 */
 
16
 
 
17
#ifndef XMLTIMEZONEMODEL_H
 
18
#define XMLTIMEZONEMODEL_H
 
19
 
 
20
#include <QUrl>
 
21
 
 
22
#include "timezonemodel.h"
 
23
 
 
24
class XmlTimeZoneModel : public TimeZoneModel
 
25
{
 
26
    Q_OBJECT
 
27
 
 
28
    // Source property to set the source of the XML List Model
 
29
    Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
 
30
 
 
31
public:
 
32
    XmlTimeZoneModel(QObject *parent = 0);
 
33
 
 
34
    // Function to read the source of the XML list model
 
35
    QUrl source() const;
 
36
 
 
37
    // Function to set the source of the XML list model
 
38
    void setSource(const QUrl &source);
 
39
 
 
40
signals:
 
41
    // Signal to trigger when the source is changed
 
42
    void sourceChanged();
 
43
 
 
44
private:
 
45
    // Keep a store of the source property
 
46
    QUrl m_source;
 
47
 
 
48
    // Function to do the XML parsing
 
49
    void loadTimeZonesFromXml();
 
50
};
 
51
 
 
52
#endif // XMLTIMEZONEMODEL_H