summaryrefslogtreecommitdiff
path: root/src/slack-timedate.h
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2024-06-18 10:20:18 +0200
committerEugen Wissner <belka@caraus.de>2024-06-18 10:20:18 +0200
commit7b5fe4b9d1edf5d3eecc71bb0bf50ac0f4487f7e (patch)
treecd3856476abae7b5d24848e420ba04c0ecf8f12e /src/slack-timedate.h
parentbbb4efde187ec2a9546f2b9ff54e0db7d275fc5d (diff)
downloadslack-timedate-7b5fe4b9d1edf5d3eecc71bb0bf50ac0f4487f7e.tar.gz
Separate service implementation from the main
Diffstat (limited to 'src/slack-timedate.h')
-rw-r--r--src/slack-timedate.h72
1 files changed, 0 insertions, 72 deletions
diff --git a/src/slack-timedate.h b/src/slack-timedate.h
deleted file mode 100644
index 2dd4223..0000000
--- a/src/slack-timedate.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (C) 2013-2024 Eugen Wissner <belka@caraus.de>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY 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/>.
- *
- */
-
-#include <dbus/dbus.h>
-#include <glibmm.h>
-#include <giomm.h>
-#include <gio/gio.h>
-
-#define BUS_NAME "org.freedesktop.timedate1"
-#define BUS_PATH "/org/freedesktop/timedate1"
-
-#define DEFAULT_EXIT_SEC 300
-
-namespace dlackware::timedate
-{
- constexpr const char *zoneinfo_database = "/usr/share/zoneinfo";
- constexpr const char *introspection_xml = "/usr/share/dbus-1/interfaces/org.freedesktop.timedate1.xml";
-
- constexpr const gint32 usec_per_sec = 1000000ULL;
- constexpr const gint32 nsec_per_usec = 1000ULL;
-
- // Returns the system time zone.
- Glib::ustring timezone();
-
- // Returns if the hardware clock is set to local time or not
- bool local_rtc();
-
- // Returns if NTP is enabled
- bool ntp();
-
- // Returns the timezones available on the system.
- std::vector<Glib::ustring> list_timezones();
-
- // Sets the system time zone to the one passed by the argument
- // Throws std::filesystem::filesystem_error.
- void set_timezone(const Glib::ustring& zone, bool user_interaction);
-
- // Sets NTP
- // Throws std::filesystem::filesystem_error.
- void set_ntp(bool use_ntp, bool user_interaction);
-
- // Changes the date/time
- // Takes the amount of seconds since UNIX epoche and
- // Throws std::system_error.
- void set_time(gint64 seconds_since_epoch, bool relative, bool user_interaction);
-
- class timedate1
- {
- const Gio::DBus::InterfaceVTable interface_vtable;
-
- public:
- timedate1();
-
- void on_bus_acquired(const Glib::RefPtr<Gio::DBus::Connection>& connection, const Glib::ustring& name);
- void on_name_lost(const Glib::RefPtr<Gio::DBus::Connection>& connection, const Glib::ustring& name);
- };
-}