private static void listenToLibEvents() { toggl_on_show_app(ctx, delegate(bool open) { using (Performance.Measure("Calling OnApp")) { OnApp(open); } }); toggl_on_error(ctx, delegate(string errmsg, bool user_error) { using (Performance.Measure("Calling OnError, user_error: {1}, message: {0}", errmsg, user_error)) { OnError(errmsg, user_error); } }); toggl_on_online_state(ctx, delegate(Int64 state) { using (Performance.Measure("Calling OnOnlineState, state: {0}", state)) { OnOnlineState(state); } }); toggl_on_login(ctx, delegate(bool open, UInt64 user_id) { using (Performance.Measure("Calling OnLogin")) { OnLogin(open, user_id); } }); toggl_on_reminder(ctx, delegate(string title, string informative_text) { using (Performance.Measure("Calling OnReminder, title: {0}", title)) { OnReminder(title, informative_text); } }); toggl_on_time_entry_list(ctx, delegate(bool open, IntPtr first) { using (Performance.Measure("Calling OnTimeEntryList")) { var list = ConvertToTimeEntryList(first); OnTimeEntryList(open, list); } }); toggl_on_time_entry_autocomplete(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnTimeEntryAutocomplete")) { var list = ConvertToAutocompleteList(first); OnTimeEntryAutocomplete(list); } }); toggl_on_mini_timer_autocomplete(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnMinitimerAutocomplete")) { var list = ConvertToAutocompleteList(first); OnMinitimerAutocomplete(list); } }); toggl_on_project_autocomplete(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnProjectAutocomplete")) { var list = ConvertToAutocompleteList(first); OnProjectAutocomplete(list); } }); toggl_on_time_entry_editor(ctx, delegate( bool open, IntPtr te, string focused_field_name) { using (Performance.Measure("Calling OnTimeEntryEditor, focused field: {0}", focused_field_name)) { TogglTimeEntryView model = (TogglTimeEntryView)Marshal.PtrToStructure( te, typeof(TogglTimeEntryView)); OnTimeEntryEditor(open, model, focused_field_name); } }); toggl_on_workspace_select(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnWorkspaceSelect")) { var list = ConvertToViewItemList(first); OnWorkspaceSelect(list); } }); toggl_on_client_select(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnClientSelect")) { var list = ConvertToViewItemList(first); OnClientSelect(list); } }); toggl_on_tags(ctx, delegate(IntPtr first) { using (Performance.Measure("Calling OnTags")) { var list = ConvertToViewItemList(first); OnTags(list); } }); toggl_on_settings(ctx, delegate(bool open, IntPtr settings) { using (Performance.Measure("Calling OnSettings")) { TogglSettingsView model = (TogglSettingsView)Marshal.PtrToStructure( settings, typeof(TogglSettingsView)); OnSettings(open, model); } }); toggl_on_timer_state(ctx, delegate(IntPtr te) { if (te == IntPtr.Zero) { using (Performance.Measure("Calling OnStoppedTimerState")) { OnStoppedTimerState(); return; } } using (Performance.Measure("Calling OnRunningTimerState")) { TogglTimeEntryView view = (TogglTimeEntryView)Marshal.PtrToStructure( te, typeof(TogglTimeEntryView)); OnRunningTimerState(view); } }); toggl_on_url(ctx, delegate(string url) { using (Performance.Measure("Calling OnURL")) { OnURL(url); } }); toggl_on_idle_notification(ctx, delegate( string guid, string since, string duration, UInt64 started, string description) { using (Performance.Measure("Calling OnIdleNotification")) { OnIdleNotification(guid, since, duration, started, description); } }); }
public static bool SetSettings(TogglSettingsView settings) { if (!toggl_set_settings_use_idle_detection(ctx, settings.UseIdleDetection)) { return(false); } if (!toggl_set_settings_on_top(ctx, settings.OnTop)) { return(false); } if (!toggl_set_settings_reminder(ctx, settings.Reminder)) { return(false); } if (!toggl_set_settings_idle_minutes(ctx, settings.IdleMinutes)) { return(false); } if (!toggl_set_settings_reminder_minutes(ctx, settings.ReminderMinutes)) { return(false); } if (!toggl_set_settings_focus_on_shortcut(ctx, settings.FocusOnShortcut)) { return(false); } if (!toggl_set_settings_autodetect_proxy(ctx, settings.AutodetectProxy)) { return(false); } if (!toggl_set_proxy_settings( ctx, settings.UseProxy, settings.ProxyHost, settings.ProxyPort, settings.ProxyUsername, settings.ProxyPassword)) { return(false); } if (!toggl_set_settings_remind_days( ctx, settings.RemindMon, settings.RemindTue, settings.RemindWed, settings.RemindThu, settings.RemindFri, settings.RemindSat, settings.RemindSun )) { return(false); } if (!toggl_set_settings_remind_times( ctx, settings.RemindStarts, settings.RemindEnds )) { return(false); } if (!toggl_set_settings_autotrack(ctx, settings.Autotrack)) { return(false); } if (!toggl_set_settings_pomodoro(ctx, settings.Pomodoro)) { return(false); } if (!toggl_set_settings_pomodoro_minutes(ctx, settings.PomodoroMinutes)) { return(false); } if (!toggl_set_settings_pomodoro_break(ctx, settings.PomodoroBreak)) { return(false); } if (!toggl_set_settings_pomodoro_break_minutes(ctx, settings.PomodoroBreakMinutes)) { return(false); } if (!toggl_set_settings_stop_entry_on_shutdown_sleep(ctx, settings.StopEntryOnShutdownSleep)) { return(false); } return(toggl_timeline_toggle_recording(ctx, settings.RecordTimeline)); }
public static bool SetSettings(TogglSettingsView settings) { if (!toggl_set_settings_use_idle_detection(ctx, settings.UseIdleDetection)) { return false; } if (!toggl_set_settings_on_top(ctx, settings.OnTop)) { return false; } if (!toggl_set_settings_reminder(ctx, settings.Reminder)) { return false; } if (!toggl_set_settings_idle_minutes(ctx, settings.IdleMinutes)) { return false; } if (!toggl_set_settings_reminder_minutes(ctx, settings.ReminderMinutes)) { return false; } if (!toggl_set_settings_focus_on_shortcut(ctx, settings.FocusOnShortcut)) { return false; } if (!toggl_set_settings_autodetect_proxy(ctx, settings.AutodetectProxy)) { return false; } if (!toggl_set_proxy_settings( ctx, settings.UseProxy, settings.ProxyHost, settings.ProxyPort, settings.ProxyUsername, settings.ProxyPassword)) { return false; } if (!toggl_set_settings_remind_days( ctx, settings.RemindMon, settings.RemindTue, settings.RemindWed, settings.RemindThu, settings.RemindFri, settings.RemindSat, settings.RemindSun )) { return false; } if (!toggl_set_settings_remind_times( ctx, settings.RemindStarts, settings.RemindEnds )) { return false; } return toggl_timeline_toggle_recording(ctx, settings.RecordTimeline); }