Implement option "Prompt for terminating tasks"
This commit is contained in:
@@ -325,11 +325,17 @@ save_columns_positions (XtmProcessTreeView *treeview)
|
||||
static void
|
||||
cb_send_signal (GtkMenuItem *mi, gpointer user_data)
|
||||
{
|
||||
XtmSettings *settings;
|
||||
gboolean prompt_terminate_task;
|
||||
GtkWidget *dialog;
|
||||
guint pid = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (mi), "pid"));
|
||||
gint xtm_signal = GPOINTER_TO_INT (user_data);
|
||||
|
||||
if (xtm_signal == XTM_SIGNAL_TERMINATE || xtm_signal == XTM_SIGNAL_KILL)
|
||||
settings = xtm_settings_get_default ();
|
||||
g_object_get (settings, "prompt-terminate-task", &prompt_terminate_task, NULL);
|
||||
g_object_unref (settings);
|
||||
|
||||
if ((xtm_signal == XTM_SIGNAL_TERMINATE && prompt_terminate_task) || xtm_signal == XTM_SIGNAL_KILL)
|
||||
{
|
||||
gint res;
|
||||
dialog = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
|
||||
|
||||
@@ -93,7 +93,7 @@ xtm_settings_dialog_init (XtmSettingsDialog *dialog)
|
||||
builder_bind_toggle_button (builder, "button-full-command-line", dialog->settings, "full-command-line");
|
||||
builder_bind_toggle_button (builder, "button-more-precision", dialog->settings, "more-precision");
|
||||
builder_bind_toggle_button (builder, "button-monitor-paint-box", dialog->settings, "monitor-paint-box");
|
||||
builder_bind_toggle_button (builder, "button-quiet-signal", dialog->settings, "send-quiet-signals");
|
||||
builder_bind_toggle_button (builder, "button-prompt-terminate-task", dialog->settings, "prompt-terminate-task");
|
||||
builder_bind_toggle_button (builder, "button-show-status-icon", dialog->settings, "show-status-icon");
|
||||
|
||||
g_object_unref (builder);
|
||||
@@ -145,4 +145,3 @@ xtm_settings_dialog_run (XtmSettingsDialog *dialog)
|
||||
{
|
||||
gtk_dialog_run (GTK_DIALOG (dialog->window));
|
||||
}
|
||||
|
||||
|
||||
@@ -155,10 +155,9 @@
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="button-quiet-signal">
|
||||
<property name="label" translatable="yes">Don't ask for terminating tasks</property>
|
||||
<object class="GtkCheckButton" id="button-prompt-terminate-task">
|
||||
<property name="label" translatable="yes">Prompt for terminating tasks</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
|
||||
@@ -35,9 +35,9 @@ enum
|
||||
PROP_MORE_PRECISION,
|
||||
PROP_FULL_COMMAND_LINE,
|
||||
PROP_SHOW_STATUS_ICON,
|
||||
PROP_SEND_QUIET_SIGNALS,
|
||||
PROP_MONITOR_PAINT_BOX,
|
||||
PROP_TOOLBAR_STYLE,
|
||||
PROP_PROMPT_TERMINATE_TASK,
|
||||
PROP_REFRESH_RATE,
|
||||
PROP_COLUMNS_POSITIONS,
|
||||
PROP_COLUMN_UID,
|
||||
@@ -91,12 +91,12 @@ xtm_settings_class_init (XtmSettingsClass *klass)
|
||||
g_param_spec_boolean ("full-command-line", "FullCommandLine", "Full command line", FALSE, G_PARAM_READWRITE));
|
||||
g_object_class_install_property (class, PROP_SHOW_STATUS_ICON,
|
||||
g_param_spec_boolean ("show-status-icon", "ShowStatusIcon", "Show/hide the status icon", TRUE, G_PARAM_READWRITE));
|
||||
g_object_class_install_property (class, PROP_SEND_QUIET_SIGNALS,
|
||||
g_param_spec_boolean ("send-quiet-signals", "SendQuietSignals", "Send quiet signals", FALSE, G_PARAM_READWRITE));
|
||||
g_object_class_install_property (class, PROP_MONITOR_PAINT_BOX,
|
||||
g_param_spec_boolean ("monitor-paint-box", "MonitorPaintBox", "Paint box around monitor", TRUE, G_PARAM_READWRITE));
|
||||
//g_object_class_install_property (class, PROP_TOOLBAR_STYLE,
|
||||
// g_param_spec_... ("toolbar-style", "ToolbarStyle", "Toolbar style", ...));
|
||||
g_object_class_install_property (class, PROP_PROMPT_TERMINATE_TASK,
|
||||
g_param_spec_boolean ("prompt-terminate-task", "PromptTerminateTask", "Prompt dialog for terminating a task", TRUE, G_PARAM_READWRITE));
|
||||
g_object_class_install_property (class, PROP_REFRESH_RATE,
|
||||
g_param_spec_uint ("refresh-rate", "RefreshRate", "Refresh rate in milliseconds", 0, G_MAXUINT, 750, G_PARAM_READWRITE));
|
||||
g_object_class_install_property (class, PROP_COLUMNS_POSITIONS,
|
||||
|
||||
Reference in New Issue
Block a user