From 06a5132025ba2ab43de9d1d583a81d8e0b326da8 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Thu, 16 Jan 2014 21:21:41 -0600 Subject: sync with new State class changes --- src/main.cpp | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/main.cpp b/src/main.cpp index c246296..7bd6f9d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -17,13 +17,14 @@ * with this program. If not, see . */ +#include #include #include #include #include #include #include -#include +#include #include #include @@ -54,18 +55,28 @@ main(int /*argc*/, char** /*argv*/) if(!notify_init("indicator-datetime-service")) g_critical("libnotify initialization failed"); - // build the menu factory - GActionGroup * actions = G_ACTION_GROUP(g_simple_action_group_new()); - std::shared_ptr timezones(new LiveTimezones(TIMEZONE_FILE)); + // build the state + std::shared_ptr settings(new LiveSettings); + std::shared_ptr timezones(new LiveTimezones(settings, TIMEZONE_FILE)); std::shared_ptr clock(new LiveClock(timezones)); std::shared_ptr planner(new PlannerEds); - std::shared_ptr locations(new SettingsLocations(SETTINGS_INTERFACE, timezones)); planner->time = clock->localtime(); - MenuFactory factory(actions, timezones, clock, planner, locations); + std::shared_ptr locations(new SettingsLocations(settings, timezones)); + std::shared_ptr state(new State); + state->settings = settings; + state->timezones = timezones; + state->clock = clock; + state->locations = locations; + state->planner = planner; + state->calendar_day = clock->localtime(); + + // build the menu factory + std::shared_ptr actions(new LiveActions(state)); + MenuFactory factory(actions, state); // create the menus std::vector> menus; - menus.push_back(factory.buildMenu(MenuFactory::Desktop)); + menus.push_back(factory.buildMenu(Menu::Desktop)); // export them auto loop = g_main_loop_new(nullptr, false); @@ -74,7 +85,7 @@ main(int /*argc*/, char** /*argv*/) g_message("exiting: service couldn't acquire or lost ownership of busname"); g_main_loop_quit(loop); }); - service.publish(actions, menus); + //service.publish(actions, menus); g_main_loop_run(loop); g_main_loop_unref(loop); return 0; -- cgit v1.2.3