cherry_kit::ui_action desktop_task_controller_impl::task() { cherry_kit::ui_action task; task.set_name("Record"); task.set_visible(1); task.set_controller(controller_name().toStdString()); task.set_icon("panel/ck_add.png"); cherry_kit::ui_action note_action; note_action.set_name("Note"); note_action.set_visible(1); note_action.set_id(1); note_action.set_icon("panel/ck_add.png"); note_action.set_controller(controller_name().toStdString()); note_action.set_task([this](const cherry_kit::ui_action *a_action_ref, const cherry_kit::ui_task_data_t &a_data) { QPointF window_location; if (viewport()) { window_location = viewport()->center(QRectF(0, 0, 240, 240 + 48)); } QVariantMap session_args; session_args["x"] = window_location.x(); session_args["y"] = window_location.y(); session_args["notes_id"] = session_count(); session_args["database_name"] = QString::fromStdString(session_store_name("Notes")); start_session("Notes", session_args, false, [this](cherry_kit::desktop_controller_interface *a_controller, cherry_kit::session_sync *a_session) { createNoteUI(a_session); }); }); cherry_kit::ui_action task_action; task_action.set_name("Task"); task_action.set_visible(1); task_action.set_id(2); task_action.set_icon("panel/ck_add.png"); task_action.set_controller(controller_name().toStdString()); task_action.set_task([this](const cherry_kit::ui_action *a_action_ref, const cherry_kit::ui_task_data_t &a_data) { QPointF window_location; if (viewport()) { window_location = viewport()->center(QRectF(0, 0, 240, 240 + 48)); } QVariantMap session_args; session_args["x"] = window_location.x(); session_args["y"] = window_location.y(); session_args["reminders_id"] = session_count(); session_args["database_name"] = QString::fromStdString(session_store_name("reminders")); start_session("Reminders", session_args, false, [this](cherry_kit::desktop_controller_interface *a_controller, cherry_kit::session_sync *a_session) { createReminderUI(a_session); }); }); task.add_action(note_action); task.add_action(task_action); return task; }
cherry_kit::ui_action time_controller::task() { cherry_kit::ui_action task; task.set_name("Track"); task.set_visible(1); task.set_controller(controller_name().toStdString()); task.set_icon("actions/ck_alarm.png"); cherry_kit::ui_action time_task; time_task.set_name("Time"); time_task.set_id(0); time_task.set_visible(1); time_task.set_controller(controller_name().toStdString()); time_task.set_icon("panel/ck_add.png"); time_task.set_task([this](const cherry_kit::ui_action *a_action_ref, const cherry_kit::ui_task_data_t &a_data) { // QPointF window_location; if (viewport()) { window_location = viewport()->center(QRectF(0, 0, 240, 240 + 48)); } QVariantMap session_args; session_args["x"] = window_location.x(); session_args["y"] = window_location.y(); session_args["clock_id"] = session_count(); session_args["database_name"] = QString::fromStdString(session_store_name("clock")); start_session("Clock", session_args, false, [this](cherry_kit::desktop_controller_interface *a_controller, cherry_kit::session_sync *a_session) { priv->setup_create_clock_ui((time_controller *)a_controller, a_session); }); }); cherry_kit::ui_action timer_task; timer_task.set_name("Duration"); timer_task.set_id(1); timer_task.set_visible(1); timer_task.set_controller(controller_name().toStdString()); timer_task.set_icon("panel/ck_add.png"); timer_task.set_task([this](const cherry_kit::ui_action *a_action_ref, const cherry_kit::ui_task_data_t &a_data) { // QPointF window_location; if (viewport()) { window_location = viewport()->center(QRectF(0, 0, 240, 240 + 48)); } QVariantMap session_args; session_args["x"] = window_location.x(); session_args["y"] = window_location.y(); session_args["timer_id"] = session_count(); session_args["database_name"] = QString::fromStdString(session_store_name("timer")); start_session("Timer", session_args, false, [this](cherry_kit::desktop_controller_interface *a_controller, cherry_kit::session_sync *a_session) { priv->setup_create_timer_ui((time_controller *)a_controller, a_session); }); }); task.add_action(time_task); task.add_action(timer_task); return task; }
/* * The main function. */ static int main_wrapped(int argc, char **argv) { struct arguments args; int error; error = parse_args(argc, argv, &args); if (error) return error; switch (args.mode) { case MODE_POOL6: switch (args.op) { case OP_DISPLAY: return pool6_display(); case OP_COUNT: return pool6_count(); case OP_ADD: if (!args.db.pool6.prefix_set) { log_err("Please enter the prefix to be added (--prefix)."); return -EINVAL; } return pool6_add(&args.db.pool6.prefix); case OP_REMOVE: if (!args.db.pool6.prefix_set) { log_err("Please enter the prefix to be removed (--prefix)."); return -EINVAL; } return pool6_remove(&args.db.pool6.prefix, args.db.quick); case OP_FLUSH: return pool6_flush(args.db.quick); default: log_err("Unknown operation for IPv6 pool mode: %u.", args.op); return -EINVAL; } break; case MODE_POOL4: switch (args.op) { case OP_DISPLAY: return pool4_display(); case OP_COUNT: return pool4_count(); case OP_ADD: if (!args.db.pool4.addr_set) { log_err("Please enter the address to be added (--address)."); return -EINVAL; } return pool4_add(&args.db.pool4.addr); case OP_REMOVE: if (!args.db.pool4.addr_set) { log_err("Please enter the address to be removed (--address)."); return -EINVAL; } return pool4_remove(&args.db.pool4.addr, args.db.quick); case OP_FLUSH: return pool4_flush(args.db.quick); default: log_err("Unknown operation for IPv4 pool mode: %u.", args.op); return -EINVAL; } break; case MODE_BIB: switch (args.op) { case OP_DISPLAY: return bib_display(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp, args.db.tables.numeric_hostname, args.db.tables.csv_format); case OP_COUNT: return bib_count(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp); case OP_ADD: error = 0; if (!args.db.tables.bib.addr6_set) { log_err("Missing IPv6 address#port (--bib6)."); error = -EINVAL; } if (!args.db.tables.bib.addr4_set) { log_err("Missing IPv4 address#port (--bib4)."); error = -EINVAL; } if (error) return error; return bib_add(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp, &args.db.tables.bib.addr6, &args.db.tables.bib.addr4); case OP_REMOVE: if (!args.db.tables.bib.addr6_set && !args.db.tables.bib.addr4_set) { log_err("I need the IPv4 transport address and/or the IPv6 transport address of " "the entry you want to remove."); return -EINVAL; } return bib_remove(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp, args.db.tables.bib.addr6_set, &args.db.tables.bib.addr6, args.db.tables.bib.addr4_set, &args.db.tables.bib.addr4); default: log_err("Unknown operation for session mode: %u.", args.op); return -EINVAL; } break; case MODE_SESSION: switch (args.op) { case OP_DISPLAY: return session_display(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp, args.db.tables.numeric_hostname, args.db.tables.csv_format); case OP_COUNT: return session_count(args.db.tables.tcp, args.db.tables.udp, args.db.tables.icmp); default: log_err("Unknown operation for session mode: %u.", args.op); return -EINVAL; } break; #ifdef BENCHMARK case MODE_LOGTIME: switch (args.op) { case OP_DISPLAY: return logtime_display(); break; default: log_err("Unknown operation for log time mode: %u.", args.op); break; } break; #endif case MODE_GENERAL: switch (args.op) { case OP_DISPLAY: return general_display(); case OP_UPDATE: error = general_update(args.general.module, args.general.type, args.general.size, args.general.data); free(args.general.data); return error; default: log_err("Unknown operation for general mode: %u.", args.op); return -EINVAL; } } log_err("Unknown configuration mode: %u", args.mode); return -EINVAL; }