aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/datetime/actions-live.h2
-rw-r--r--include/datetime/appointment.h12
-rw-r--r--include/datetime/date-time.h6
-rw-r--r--include/datetime/locations.h12
-rw-r--r--include/datetime/menu.h2
-rw-r--r--include/datetime/timezone-file.h6
-rw-r--r--include/datetime/timezone.h1
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/actions-live.cpp5
-rw-r--r--src/appointment.cpp48
-rw-r--r--src/date-time.cpp17
-rw-r--r--src/locations.cpp8
-rw-r--r--src/menu.cpp6
-rw-r--r--src/timezone-file.cpp14
14 files changed, 110 insertions, 30 deletions
diff --git a/include/datetime/actions-live.h b/include/datetime/actions-live.h
index 949222d..3607836 100644
--- a/include/datetime/actions-live.h
+++ b/include/datetime/actions-live.h
@@ -36,7 +36,7 @@ namespace datetime {
class LiveActions: public Actions
{
public:
- LiveActions(const std::shared_ptr<State>& state_in): Actions(state_in) {}
+ LiveActions(const std::shared_ptr<State>& state_in);
~LiveActions() =default;
void open_desktop_settings();
diff --git a/include/datetime/appointment.h b/include/datetime/appointment.h
index e034c08..a5283c9 100644
--- a/include/datetime/appointment.h
+++ b/include/datetime/appointment.h
@@ -45,17 +45,7 @@ public:
DateTime begin;
DateTime end;
- bool operator== (const Appointment& that) const
- {
- return (color==that.color) &&
- (summary==that.summary) &&
- (url==that.url) &&
- (uid==that.uid) &&
- (is_event==that.is_event) &&
- (has_alarms==that.has_alarms) &&
- (begin==that.begin) &&
- (end==that.end);
- }
+ bool operator== (const Appointment& that) const;
};
} // namespace datetime
diff --git a/include/datetime/date-time.h b/include/datetime/date-time.h
index c2429eb..2ad7856 100644
--- a/include/datetime/date-time.h
+++ b/include/datetime/date-time.h
@@ -37,9 +37,9 @@ class DateTime
public:
static DateTime NowLocal();
explicit DateTime(time_t t);
- explicit DateTime(GDateTime* in=nullptr) {reset(in);}
- DateTime& operator=(GDateTime* in) {reset(in); return *this;}
- DateTime& operator=(const DateTime& in) {m_dt=in.m_dt; return *this; }
+ explicit DateTime(GDateTime* in=nullptr);
+ DateTime& operator=(GDateTime* in);
+ DateTime& operator=(const DateTime& in);
DateTime to_timezone(const std::string& zone) const;
void reset(GDateTime* in=nullptr);
diff --git a/include/datetime/locations.h b/include/datetime/locations.h
index fc776bb..b840436 100644
--- a/include/datetime/locations.h
+++ b/include/datetime/locations.h
@@ -39,18 +39,10 @@ namespace datetime {
class Location
{
public:
+ Location (const std::string& zone, const std::string& name);
const std::string& zone() const;
-
const std::string& name() const;
-
- bool operator== (const Location& that) const
- {
- return (name() == that.name()) &&
- (zone() == that.zone()) &&
- (m_offset == that.m_offset);
- }
-
- Location (const std::string& zone, const std::string& name);
+ bool operator== (const Location& that) const;
private:
diff --git a/include/datetime/menu.h b/include/datetime/menu.h
index f097b02..526cd9f 100644
--- a/include/datetime/menu.h
+++ b/include/datetime/menu.h
@@ -48,7 +48,7 @@ public:
GMenuModel* menu_model();
protected:
- Menu (Profile profile_in, const std::string& name_in): m_profile(profile_in), m_name(name_in) {}
+ Menu (Profile profile_in, const std::string& name_in);
virtual ~Menu() =default;
GMenu* m_menu = nullptr;
diff --git a/include/datetime/timezone-file.h b/include/datetime/timezone-file.h
index 7f47df6..d77aaae 100644
--- a/include/datetime/timezone-file.h
+++ b/include/datetime/timezone-file.h
@@ -37,9 +37,9 @@ namespace datetime {
class FileTimezone: public Timezone
{
public:
- FileTimezone() {}
- FileTimezone(const std::string& filename) { setFilename(filename); }
- ~FileTimezone() {clear();}
+ FileTimezone();
+ FileTimezone(const std::string& filename);
+ ~FileTimezone();
private:
void setFilename(const std::string& filename);
diff --git a/include/datetime/timezone.h b/include/datetime/timezone.h
index ffa5a84..7d2ace8 100644
--- a/include/datetime/timezone.h
+++ b/include/datetime/timezone.h
@@ -35,7 +35,6 @@ protected:
Timezone() =default;
public:
- //virtual ~Timezone() {}
core::Property<std::string> timezone;
};
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index eb716d4..d5236ad 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -15,6 +15,7 @@ endif ()
add_library (${SERVICE_LIB} STATIC
actions.cpp
actions-live.cpp
+ appointment.cpp
clock.cpp
clock-live.cpp
date-time.cpp
diff --git a/src/actions-live.cpp b/src/actions-live.cpp
index afd83f4..c0fd8ff 100644
--- a/src/actions-live.cpp
+++ b/src/actions-live.cpp
@@ -31,6 +31,11 @@ namespace datetime {
****
***/
+LiveActions::LiveActions(const std::shared_ptr<State>& state_in):
+ Actions(state_in)
+{
+}
+
void LiveActions::execute_command(const std::string& cmdstr)
{
const auto cmd = cmdstr.c_str();
diff --git a/src/appointment.cpp b/src/appointment.cpp
new file mode 100644
index 0000000..6e742c3
--- /dev/null
+++ b/src/appointment.cpp
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2013 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3, as published
+ * by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranties of
+ * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * Authors:
+ * Charles Kerr <charles.kerr@canonical.com>
+ */
+
+#include <datetime/appointment.h>
+
+namespace unity {
+namespace indicator {
+namespace datetime {
+
+/****
+*****
+****/
+
+bool Appointment::operator==(const Appointment& that) const
+{
+ return (color==that.color)
+ && (summary==that.summary)
+ && (url==that.url)
+ && (uid==that.uid)
+ && (is_event==that.is_event)
+ && (has_alarms==that.has_alarms)
+ && (begin==that.begin)
+ && (end==that.end);
+}
+
+/****
+*****
+****/
+
+} // namespace datetime
+} // namespace indicator
+} // namespace unity
diff --git a/src/date-time.cpp b/src/date-time.cpp
index 40c638f..a634c5e 100644
--- a/src/date-time.cpp
+++ b/src/date-time.cpp
@@ -27,6 +27,23 @@ namespace datetime {
****
***/
+DateTime::DateTime(GDateTime* gdt)
+{
+ reset(gdt);
+}
+
+DateTime& DateTime::operator=(GDateTime* gdt)
+{
+ reset(gdt);
+ return *this;
+}
+
+DateTime& DateTime::operator=(const DateTime& that)
+{
+ m_dt = that.m_dt;
+ return *this;
+}
+
DateTime::DateTime(time_t t)
{
GDateTime * gdt = g_date_time_new_from_unix_local(t);
diff --git a/src/locations.cpp b/src/locations.cpp
index 8d1a086..c59f988 100644
--- a/src/locations.cpp
+++ b/src/locations.cpp
@@ -35,6 +35,14 @@ const std::string& Location::name() const
return m_name;
}
+bool Location::operator== (const Location& that) const
+{
+ return (m_name == that.m_name)
+ && (m_zone == that.m_zone)
+ && (m_offset == that.m_offset);
+}
+
+
Location::Location(const std::string& zone_, const std::string& name_):
m_zone(zone_),
m_name(name_)
diff --git a/src/menu.cpp b/src/menu.cpp
index 4bb4fb6..b263520 100644
--- a/src/menu.cpp
+++ b/src/menu.cpp
@@ -35,6 +35,12 @@ namespace datetime {
*****
****/
+Menu::Menu (Profile profile_in, const std::string& name_in):
+ m_profile(profile_in),
+ m_name(name_in)
+{
+}
+
const std::string& Menu::name() const
{
return m_name;
diff --git a/src/timezone-file.cpp b/src/timezone-file.cpp
index 3a0c240..76737b4 100644
--- a/src/timezone-file.cpp
+++ b/src/timezone-file.cpp
@@ -23,6 +23,20 @@ namespace unity {
namespace indicator {
namespace datetime {
+FileTimezone::FileTimezone()
+{
+}
+
+FileTimezone::FileTimezone(const std::string& filename)
+{
+ setFilename(filename);
+}
+
+FileTimezone::~FileTimezone()
+{
+ clear();
+}
+
void
FileTimezone::clear()
{