diff options
Diffstat (limited to 'src/profile-editor.c')
-rw-r--r-- | src/profile-editor.c | 1358 |
1 files changed, 687 insertions, 671 deletions
diff --git a/src/profile-editor.c b/src/profile-editor.c index 6ac0b34..4cf2af6 100644 --- a/src/profile-editor.c +++ b/src/profile-editor.c @@ -33,75 +33,86 @@ typedef struct _TerminalColorScheme TerminalColorScheme; struct _TerminalColorScheme { - const char *name; - const GdkColor foreground; - const GdkColor background; + const char *name; + const GdkColor foreground; + const GdkColor background; }; -static const TerminalColorScheme color_schemes[] = { - { N_("Black on light yellow"), - { 0, 0x0000, 0x0000, 0x0000 }, { 0, 0xFFFF, 0xFFFF, 0xDDDD } }, - { N_("Black on white"), - { 0, 0x0000, 0x0000, 0x0000 }, { 0, 0xFFFF, 0xFFFF, 0xFFFF } }, - { N_("Gray on black"), - { 0, 0xAAAA, 0xAAAA, 0xAAAA }, { 0, 0x0000, 0x0000, 0x0000 } }, - { N_("Green on black"), - { 0, 0x0000, 0xFFFF, 0x0000 }, { 0, 0x0000, 0x0000, 0x0000 } }, - { N_("White on black"), - { 0, 0xFFFF, 0xFFFF, 0xFFFF }, { 0, 0x0000, 0x0000, 0x0000 } } +static const TerminalColorScheme color_schemes[] = +{ + { + N_("Black on light yellow"), + { 0, 0x0000, 0x0000, 0x0000 }, { 0, 0xFFFF, 0xFFFF, 0xDDDD } + }, + { + N_("Black on white"), + { 0, 0x0000, 0x0000, 0x0000 }, { 0, 0xFFFF, 0xFFFF, 0xFFFF } + }, + { + N_("Gray on black"), + { 0, 0xAAAA, 0xAAAA, 0xAAAA }, { 0, 0x0000, 0x0000, 0x0000 } + }, + { + N_("Green on black"), + { 0, 0x0000, 0xFFFF, 0x0000 }, { 0, 0x0000, 0x0000, 0x0000 } + }, + { + N_("White on black"), + { 0, 0xFFFF, 0xFFFF, 0xFFFF }, { 0, 0x0000, 0x0000, 0x0000 } + } }; static void profile_forgotten_cb (TerminalProfile *profile, GtkWidget *editor); static void profile_notify_sensitivity_cb (TerminalProfile *profile, - GParamSpec *pspec, - GtkWidget *editor); + GParamSpec *pspec, + GtkWidget *editor); static void profile_colors_notify_scheme_combo_cb (TerminalProfile *profile, - GParamSpec *pspec, - GtkComboBox *combo); + GParamSpec *pspec, + GtkComboBox *combo); static void profile_palette_notify_scheme_combo_cb (TerminalProfile *profile, - GParamSpec *pspec, - GtkComboBox *combo); + GParamSpec *pspec, + GtkComboBox *combo); static void profile_palette_notify_colorpickers_cb (TerminalProfile *profile, - GParamSpec *pspec, - GtkWidget *editor); + GParamSpec *pspec, + GtkWidget *editor); static GtkWidget* profile_editor_get_widget (GtkWidget *editor, const char *widget_name) { - GtkBuilder *builder; + GtkBuilder *builder; - builder = g_object_get_data (G_OBJECT (editor), "builder"); - g_assert (builder != NULL); - - return (GtkWidget *) gtk_builder_get_object (builder, widget_name); + builder = g_object_get_data (G_OBJECT (editor), "builder"); + g_assert (builder != NULL); + + return (GtkWidget *) gtk_builder_get_object (builder, widget_name); } static void widget_and_labels_set_sensitive (GtkWidget *widget, gboolean sensitive) { - GList *labels, *i; + GList *labels, *i; - labels = gtk_widget_list_mnemonic_labels (widget); - for (i = labels; i; i = i->next) - { - gtk_widget_set_sensitive (GTK_WIDGET (i->data), sensitive); - } - g_list_free (labels); + labels = gtk_widget_list_mnemonic_labels (widget); + for (i = labels; i; i = i->next) + { + gtk_widget_set_sensitive (GTK_WIDGET (i->data), sensitive); + } + g_list_free (labels); - gtk_widget_set_sensitive (widget, sensitive); + gtk_widget_set_sensitive (widget, sensitive); } static void profile_forgotten_cb (TerminalProfile *profile, GtkWidget *editor) { - gtk_widget_destroy (editor); + gtk_widget_destroy (editor); } static void @@ -109,206 +120,206 @@ profile_notify_sensitivity_cb (TerminalProfile *profile, GParamSpec *pspec, GtkWidget *editor) { - TerminalBackgroundType bg_type; - const char *prop_name; - - if (pspec) - prop_name = pspec->name; - else - prop_name = NULL; - + TerminalBackgroundType bg_type; + const char *prop_name; + + if (pspec) + prop_name = pspec->name; + else + prop_name = NULL; + #define SET_SENSITIVE(name, setting) widget_and_labels_set_sensitive (profile_editor_get_widget (editor, name), setting) - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_USE_CUSTOM_COMMAND) || - prop_name == I_(TERMINAL_PROFILE_CUSTOM_COMMAND)) - { - gboolean use_custom_command_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_CUSTOM_COMMAND); - SET_SENSITIVE ("use-custom-command-checkbutton", !use_custom_command_locked); - SET_SENSITIVE ("custom-command-box", - terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_CUSTOM_COMMAND) && - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_CUSTOM_COMMAND)); - } - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_BACKGROUND_TYPE)) - { - gboolean bg_type_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_TYPE); - SET_SENSITIVE ("solid-radiobutton", !bg_type_locked); - SET_SENSITIVE ("image-radiobutton", !bg_type_locked); - SET_SENSITIVE ("transparent-radiobutton", !bg_type_locked); - - bg_type = terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKGROUND_TYPE); - if (bg_type == TERMINAL_BACKGROUND_IMAGE) - { - SET_SENSITIVE ("background-image-filechooser", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE)); - SET_SENSITIVE ("scroll-background-checkbutton", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_BACKGROUND)); - SET_SENSITIVE ("darken-background-vbox", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS)); - } - else if (bg_type == TERMINAL_BACKGROUND_TRANSPARENT) - { - SET_SENSITIVE ("background-image-filechooser", FALSE); - SET_SENSITIVE ("scroll-background-checkbutton", FALSE); - SET_SENSITIVE ("darken-background-vbox", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS)); - } - else - { - SET_SENSITIVE ("background-image-filechooser", FALSE); - SET_SENSITIVE ("scroll-background-checkbutton", FALSE); - SET_SENSITIVE ("darken-background-vbox", FALSE); - } - } - - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_USE_SYSTEM_FONT) || - prop_name == I_(TERMINAL_PROFILE_FONT)) - { - SET_SENSITIVE ("font-hbox", - !terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_SYSTEM_FONT) && - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_FONT)); - SET_SENSITIVE ("system-font-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_SYSTEM_FONT)); - } - - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_FOREGROUND_COLOR) || - prop_name == I_(TERMINAL_PROFILE_BACKGROUND_COLOR) || - prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR) || - prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG) || - prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) - { - gboolean bg_locked, use_theme_colors, fg_locked; - - use_theme_colors = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_THEME_COLORS); - fg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_FOREGROUND_COLOR); - bg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_COLOR); - - SET_SENSITIVE ("foreground-colorpicker", !use_theme_colors && !fg_locked); - SET_SENSITIVE ("foreground-colorpicker-label", !use_theme_colors && !fg_locked); - SET_SENSITIVE ("background-colorpicker", !use_theme_colors && !bg_locked); - SET_SENSITIVE ("background-colorpicker-label", !use_theme_colors && !bg_locked); - SET_SENSITIVE ("color-scheme-combobox", !use_theme_colors && !fg_locked && !bg_locked); - SET_SENSITIVE ("color-scheme-combobox-label", !use_theme_colors && !fg_locked && !bg_locked); - } - - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR) || - prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG) || - prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) - { - gboolean bold_locked, bold_same_as_fg_locked, bold_same_as_fg, use_theme_colors; - - use_theme_colors = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_THEME_COLORS); - bold_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BOLD_COLOR); - bold_same_as_fg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); - bold_same_as_fg = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); - - SET_SENSITIVE ("bold-color-same-as-fg-checkbox", !use_theme_colors && !bold_same_as_fg_locked); - SET_SENSITIVE ("bold-colorpicker", !use_theme_colors && !bold_locked && !bold_same_as_fg); - SET_SENSITIVE ("bold-colorpicker-label", !use_theme_colors && ((!bold_same_as_fg && !bold_locked) || !bold_same_as_fg_locked)); - } - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_VISIBLE_NAME)) - SET_SENSITIVE ("profile-name-entry", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_VISIBLE_NAME)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR)) - SET_SENSITIVE ("show-menubar-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_TITLE)) - SET_SENSITIVE ("title-entry", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_TITLE)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_TITLE_MODE)) - SET_SENSITIVE ("title-mode-combobox", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_TITLE_MODE)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_ALLOW_BOLD)) - SET_SENSITIVE ("allow-bold-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_ALLOW_BOLD)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SILENT_BELL)) - SET_SENSITIVE ("bell-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SILENT_BELL)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_WORD_CHARS)) - SET_SENSITIVE ("word-chars-entry", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_WORD_CHARS)); - - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE) || - prop_name == I_(TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS) || - prop_name == I_(TERMINAL_PROFILE_DEFAULT_SIZE_ROWS)) - { - gboolean use_custom_default_size_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); - gboolean use_custom_default_size = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); - gboolean columns_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS); - gboolean rows_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SIZE_ROWS); - - SET_SENSITIVE ("use-custom-default-size-checkbutton", !use_custom_default_size_locked); - SET_SENSITIVE ("default-size-hbox", use_custom_default_size); - SET_SENSITIVE ("default-size-label", (!columns_locked || !rows_locked)); - SET_SENSITIVE ("default-size-columns-label", !columns_locked); - SET_SENSITIVE ("default-size-columns-spinbutton", !columns_locked); - SET_SENSITIVE ("default-size-rows-label", !rows_locked); - SET_SENSITIVE ("default-size-rows-spinbutton", !rows_locked); - } - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLLBAR_POSITION)) - SET_SENSITIVE ("scrollbar-position-combobox", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBAR_POSITION)); - - if (!prop_name || - prop_name == I_(TERMINAL_PROFILE_SCROLLBACK_LINES) || - prop_name == I_(TERMINAL_PROFILE_SCROLLBACK_UNLIMITED)) - { - gboolean scrollback_lines_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBACK_LINES); - gboolean scrollback_unlimited_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); - gboolean scrollback_unlimited = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); - - SET_SENSITIVE ("scrollback-label", !scrollback_lines_locked); - SET_SENSITIVE ("scrollback-box", !scrollback_lines_locked && !scrollback_unlimited); - SET_SENSITIVE ("scrollback-unlimited-checkbutton", !scrollback_lines_locked && !scrollback_unlimited_locked); - } - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE)) - SET_SENSITIVE ("scroll-on-keystroke-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLL_ON_OUTPUT)) - SET_SENSITIVE ("scroll-on-output-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_ON_OUTPUT)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_EXIT_ACTION)) - SET_SENSITIVE ("exit-action-combobox", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_EXIT_ACTION)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_LOGIN_SHELL)) - SET_SENSITIVE ("login-shell-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_LOGIN_SHELL)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_UPDATE_RECORDS)) - SET_SENSITIVE ("update-records-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_UPDATE_RECORDS)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_PALETTE)) - { - gboolean palette_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_PALETTE); - SET_SENSITIVE ("palette-combobox", !palette_locked); - SET_SENSITIVE ("palette-table", !palette_locked); - } - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_BACKSPACE_BINDING)) - SET_SENSITIVE ("backspace-binding-combobox", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKSPACE_BINDING)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_DELETE_BINDING)) - SET_SENSITIVE ("delete-binding-combobox", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_DELETE_BINDING)); - - if (!prop_name || prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) - SET_SENSITIVE ("use-theme-colors-checkbutton", - !terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_THEME_COLORS)); + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_USE_CUSTOM_COMMAND) || + prop_name == I_(TERMINAL_PROFILE_CUSTOM_COMMAND)) + { + gboolean use_custom_command_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_CUSTOM_COMMAND); + SET_SENSITIVE ("use-custom-command-checkbutton", !use_custom_command_locked); + SET_SENSITIVE ("custom-command-box", + terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_CUSTOM_COMMAND) && + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_CUSTOM_COMMAND)); + } + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_BACKGROUND_TYPE)) + { + gboolean bg_type_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_TYPE); + SET_SENSITIVE ("solid-radiobutton", !bg_type_locked); + SET_SENSITIVE ("image-radiobutton", !bg_type_locked); + SET_SENSITIVE ("transparent-radiobutton", !bg_type_locked); + + bg_type = terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKGROUND_TYPE); + if (bg_type == TERMINAL_BACKGROUND_IMAGE) + { + SET_SENSITIVE ("background-image-filechooser", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE)); + SET_SENSITIVE ("scroll-background-checkbutton", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_BACKGROUND)); + SET_SENSITIVE ("darken-background-vbox", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS)); + } + else if (bg_type == TERMINAL_BACKGROUND_TRANSPARENT) + { + SET_SENSITIVE ("background-image-filechooser", FALSE); + SET_SENSITIVE ("scroll-background-checkbutton", FALSE); + SET_SENSITIVE ("darken-background-vbox", !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS)); + } + else + { + SET_SENSITIVE ("background-image-filechooser", FALSE); + SET_SENSITIVE ("scroll-background-checkbutton", FALSE); + SET_SENSITIVE ("darken-background-vbox", FALSE); + } + } + + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_USE_SYSTEM_FONT) || + prop_name == I_(TERMINAL_PROFILE_FONT)) + { + SET_SENSITIVE ("font-hbox", + !terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_SYSTEM_FONT) && + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_FONT)); + SET_SENSITIVE ("system-font-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_SYSTEM_FONT)); + } + + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_FOREGROUND_COLOR) || + prop_name == I_(TERMINAL_PROFILE_BACKGROUND_COLOR) || + prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR) || + prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG) || + prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) + { + gboolean bg_locked, use_theme_colors, fg_locked; + + use_theme_colors = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_THEME_COLORS); + fg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_FOREGROUND_COLOR); + bg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKGROUND_COLOR); + + SET_SENSITIVE ("foreground-colorpicker", !use_theme_colors && !fg_locked); + SET_SENSITIVE ("foreground-colorpicker-label", !use_theme_colors && !fg_locked); + SET_SENSITIVE ("background-colorpicker", !use_theme_colors && !bg_locked); + SET_SENSITIVE ("background-colorpicker-label", !use_theme_colors && !bg_locked); + SET_SENSITIVE ("color-scheme-combobox", !use_theme_colors && !fg_locked && !bg_locked); + SET_SENSITIVE ("color-scheme-combobox-label", !use_theme_colors && !fg_locked && !bg_locked); + } + + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR) || + prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG) || + prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) + { + gboolean bold_locked, bold_same_as_fg_locked, bold_same_as_fg, use_theme_colors; + + use_theme_colors = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_THEME_COLORS); + bold_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BOLD_COLOR); + bold_same_as_fg_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); + bold_same_as_fg = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); + + SET_SENSITIVE ("bold-color-same-as-fg-checkbox", !use_theme_colors && !bold_same_as_fg_locked); + SET_SENSITIVE ("bold-colorpicker", !use_theme_colors && !bold_locked && !bold_same_as_fg); + SET_SENSITIVE ("bold-colorpicker-label", !use_theme_colors && ((!bold_same_as_fg && !bold_locked) || !bold_same_as_fg_locked)); + } + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_VISIBLE_NAME)) + SET_SENSITIVE ("profile-name-entry", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_VISIBLE_NAME)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR)) + SET_SENSITIVE ("show-menubar-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_TITLE)) + SET_SENSITIVE ("title-entry", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_TITLE)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_TITLE_MODE)) + SET_SENSITIVE ("title-mode-combobox", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_TITLE_MODE)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_ALLOW_BOLD)) + SET_SENSITIVE ("allow-bold-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_ALLOW_BOLD)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SILENT_BELL)) + SET_SENSITIVE ("bell-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SILENT_BELL)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_WORD_CHARS)) + SET_SENSITIVE ("word-chars-entry", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_WORD_CHARS)); + + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE) || + prop_name == I_(TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS) || + prop_name == I_(TERMINAL_PROFILE_DEFAULT_SIZE_ROWS)) + { + gboolean use_custom_default_size_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); + gboolean use_custom_default_size = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); + gboolean columns_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS); + gboolean rows_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_DEFAULT_SIZE_ROWS); + + SET_SENSITIVE ("use-custom-default-size-checkbutton", !use_custom_default_size_locked); + SET_SENSITIVE ("default-size-hbox", use_custom_default_size); + SET_SENSITIVE ("default-size-label", (!columns_locked || !rows_locked)); + SET_SENSITIVE ("default-size-columns-label", !columns_locked); + SET_SENSITIVE ("default-size-columns-spinbutton", !columns_locked); + SET_SENSITIVE ("default-size-rows-label", !rows_locked); + SET_SENSITIVE ("default-size-rows-spinbutton", !rows_locked); + } + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLLBAR_POSITION)) + SET_SENSITIVE ("scrollbar-position-combobox", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBAR_POSITION)); + + if (!prop_name || + prop_name == I_(TERMINAL_PROFILE_SCROLLBACK_LINES) || + prop_name == I_(TERMINAL_PROFILE_SCROLLBACK_UNLIMITED)) + { + gboolean scrollback_lines_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBACK_LINES); + gboolean scrollback_unlimited_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); + gboolean scrollback_unlimited = terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); + + SET_SENSITIVE ("scrollback-label", !scrollback_lines_locked); + SET_SENSITIVE ("scrollback-box", !scrollback_lines_locked && !scrollback_unlimited); + SET_SENSITIVE ("scrollback-unlimited-checkbutton", !scrollback_lines_locked && !scrollback_unlimited_locked); + } + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE)) + SET_SENSITIVE ("scroll-on-keystroke-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLL_ON_OUTPUT)) + SET_SENSITIVE ("scroll-on-output-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_SCROLL_ON_OUTPUT)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_EXIT_ACTION)) + SET_SENSITIVE ("exit-action-combobox", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_EXIT_ACTION)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_LOGIN_SHELL)) + SET_SENSITIVE ("login-shell-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_LOGIN_SHELL)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_UPDATE_RECORDS)) + SET_SENSITIVE ("update-records-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_UPDATE_RECORDS)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_PALETTE)) + { + gboolean palette_locked = terminal_profile_property_locked (profile, TERMINAL_PROFILE_PALETTE); + SET_SENSITIVE ("palette-combobox", !palette_locked); + SET_SENSITIVE ("palette-table", !palette_locked); + } + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_BACKSPACE_BINDING)) + SET_SENSITIVE ("backspace-binding-combobox", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_BACKSPACE_BINDING)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_DELETE_BINDING)) + SET_SENSITIVE ("delete-binding-combobox", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_DELETE_BINDING)); + + if (!prop_name || prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS)) + SET_SENSITIVE ("use-theme-colors-checkbutton", + !terminal_profile_property_locked (profile, TERMINAL_PROFILE_USE_THEME_COLORS)); #undef SET_INSENSITIVE } @@ -318,23 +329,23 @@ color_scheme_combo_changed_cb (GtkWidget *combo, GParamSpec *pspec, TerminalProfile *profile) { - guint i; - - i = gtk_combo_box_get_active (GTK_COMBO_BOX (combo)); - - if (i < G_N_ELEMENTS (color_schemes)) - { - g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); - g_object_set (profile, - TERMINAL_PROFILE_FOREGROUND_COLOR, &color_schemes[i].foreground, - TERMINAL_PROFILE_BACKGROUND_COLOR, &color_schemes[i].background, - NULL); - g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); - } - else - { - /* "custom" selected, no change */ - } + guint i; + + i = gtk_combo_box_get_active (GTK_COMBO_BOX (combo)); + + if (i < G_N_ELEMENTS (color_schemes)) + { + g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); + g_object_set (profile, + TERMINAL_PROFILE_FOREGROUND_COLOR, &color_schemes[i].foreground, + TERMINAL_PROFILE_BACKGROUND_COLOR, &color_schemes[i].background, + NULL); + g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); + } + else + { + /* "custom" selected, no change */ + } } static void @@ -342,30 +353,30 @@ profile_colors_notify_scheme_combo_cb (TerminalProfile *profile, GParamSpec *pspec, GtkComboBox *combo) { - const GdkColor *fg, *bg; - guint i; + const GdkColor *fg, *bg; + guint i; - fg = terminal_profile_get_property_boxed (profile, TERMINAL_PROFILE_FOREGROUND_COLOR); - bg = terminal_profile_get_property_boxed (profile, TERMINAL_PROFILE_BACKGROUND_COLOR); + fg = terminal_profile_get_property_boxed (profile, TERMINAL_PROFILE_FOREGROUND_COLOR); + bg = terminal_profile_get_property_boxed (profile, TERMINAL_PROFILE_BACKGROUND_COLOR); - if (fg && bg) - { - for (i = 0; i < G_N_ELEMENTS (color_schemes); ++i) + if (fg && bg) + { + for (i = 0; i < G_N_ELEMENTS (color_schemes); ++i) + { + if (gdk_color_equal (fg, &color_schemes[i].foreground) && + gdk_color_equal (bg, &color_schemes[i].background)) + break; + } + } + else { - if (gdk_color_equal (fg, &color_schemes[i].foreground) && - gdk_color_equal (bg, &color_schemes[i].background)) - break; + i = G_N_ELEMENTS (color_schemes); } - } - else - { - i = G_N_ELEMENTS (color_schemes); - } - /* If we didn't find a match, then we get the last combo box item which is "custom" */ - - g_signal_handlers_block_by_func (combo, G_CALLBACK (color_scheme_combo_changed_cb), profile); - gtk_combo_box_set_active (GTK_COMBO_BOX (combo), i); - g_signal_handlers_unblock_by_func (combo, G_CALLBACK (color_scheme_combo_changed_cb), profile); + /* If we didn't find a match, then we get the last combo box item which is "custom" */ + + g_signal_handlers_block_by_func (combo, G_CALLBACK (color_scheme_combo_changed_cb), profile); + gtk_combo_box_set_active (GTK_COMBO_BOX (combo), i); + g_signal_handlers_unblock_by_func (combo, G_CALLBACK (color_scheme_combo_changed_cb), profile); } static void @@ -373,18 +384,18 @@ palette_scheme_combo_changed_cb (GtkComboBox *combo, GParamSpec *pspec, TerminalProfile *profile) { - int i; - - i = gtk_combo_box_get_active (GTK_COMBO_BOX (combo)); - - g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); - if (i < TERMINAL_PALETTE_N_BUILTINS) - terminal_profile_set_palette_builtin (profile, i); - else - { - /* "custom" selected, no change */ - } - g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); + int i; + + i = gtk_combo_box_get_active (GTK_COMBO_BOX (combo)); + + g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); + if (i < TERMINAL_PALETTE_N_BUILTINS) + terminal_profile_set_palette_builtin (profile, i); + else + { + /* "custom" selected, no change */ + } + g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_colors_notify_scheme_combo_cb), combo); } static void @@ -392,17 +403,17 @@ profile_palette_notify_scheme_combo_cb (TerminalProfile *profile, GParamSpec *pspec, GtkComboBox *combo) { - guint i; + guint i; - if (!terminal_profile_get_palette_is_builtin (profile, &i)) - /* If we didn't find a match, then we want the last combo - * box item which is "custom" - */ - i = TERMINAL_PALETTE_N_BUILTINS; + if (!terminal_profile_get_palette_is_builtin (profile, &i)) + /* If we didn't find a match, then we want the last combo + * box item which is "custom" + */ + i = TERMINAL_PALETTE_N_BUILTINS; - g_signal_handlers_block_by_func (combo, G_CALLBACK (palette_scheme_combo_changed_cb), profile); - gtk_combo_box_set_active (combo, i); - g_signal_handlers_unblock_by_func (combo, G_CALLBACK (palette_scheme_combo_changed_cb), profile); + g_signal_handlers_block_by_func (combo, G_CALLBACK (palette_scheme_combo_changed_cb), profile); + gtk_combo_box_set_active (combo, i); + g_signal_handlers_unblock_by_func (combo, G_CALLBACK (palette_scheme_combo_changed_cb), profile); } static void @@ -410,17 +421,17 @@ palette_color_notify_cb (GtkColorButton *button, GParamSpec *pspec, TerminalProfile *profile) { - GtkWidget *editor; - GdkColor color; - guint i; + GtkWidget *editor; + GdkColor color; + guint i; - gtk_color_button_get_color (button, &color); - i = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (button), "palette-entry-index")); + gtk_color_button_get_color (button, &color); + i = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (button), "palette-entry-index")); - editor = gtk_widget_get_toplevel (GTK_WIDGET (button)); - g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_palette_notify_colorpickers_cb), editor); - terminal_profile_modify_palette_entry (profile, i, &color); - g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_palette_notify_colorpickers_cb), editor); + editor = gtk_widget_get_toplevel (GTK_WIDGET (button)); + g_signal_handlers_block_by_func (profile, G_CALLBACK (profile_palette_notify_colorpickers_cb), editor); + terminal_profile_modify_palette_entry (profile, i, &color); + g_signal_handlers_unblock_by_func (profile, G_CALLBACK (profile_palette_notify_colorpickers_cb), editor); } static void @@ -428,57 +439,57 @@ profile_palette_notify_colorpickers_cb (TerminalProfile *profile, GParamSpec *pspec, GtkWidget *editor) { - GtkWidget *w; - GdkColor colors[TERMINAL_PALETTE_SIZE]; - guint n_colors, i; - - n_colors = G_N_ELEMENTS (colors); - terminal_profile_get_palette (profile, colors, &n_colors); - - n_colors = MIN (n_colors, TERMINAL_PALETTE_SIZE); - for (i = 0; i < n_colors; i++) - { - char name[32]; - GdkColor old_color; - - g_snprintf (name, sizeof (name), "palette-colorpicker-%d", i + 1); - w = profile_editor_get_widget (editor, name); - - gtk_color_button_get_color (GTK_COLOR_BUTTON (w), &old_color); - if (!gdk_color_equal (&old_color, &colors[i])) - { - g_signal_handlers_block_by_func (w, G_CALLBACK (palette_color_notify_cb), profile); - gtk_color_button_set_color (GTK_COLOR_BUTTON (w), &colors[i]); - g_signal_handlers_unblock_by_func (w, G_CALLBACK (palette_color_notify_cb), profile); - } - } + GtkWidget *w; + GdkColor colors[TERMINAL_PALETTE_SIZE]; + guint n_colors, i; + + n_colors = G_N_ELEMENTS (colors); + terminal_profile_get_palette (profile, colors, &n_colors); + + n_colors = MIN (n_colors, TERMINAL_PALETTE_SIZE); + for (i = 0; i < n_colors; i++) + { + char name[32]; + GdkColor old_color; + + g_snprintf (name, sizeof (name), "palette-colorpicker-%d", i + 1); + w = profile_editor_get_widget (editor, name); + + gtk_color_button_get_color (GTK_COLOR_BUTTON (w), &old_color); + if (!gdk_color_equal (&old_color, &colors[i])) + { + g_signal_handlers_block_by_func (w, G_CALLBACK (palette_color_notify_cb), profile); + gtk_color_button_set_color (GTK_COLOR_BUTTON (w), &colors[i]); + g_signal_handlers_unblock_by_func (w, G_CALLBACK (palette_color_notify_cb), profile); + } + } } static void custom_command_entry_changed_cb (GtkEntry *entry) { #if GTK_CHECK_VERSION (2, 16, 0) - const char *command; - GError *error = NULL; + const char *command; + GError *error = NULL; - command = gtk_entry_get_text (entry); + command = gtk_entry_get_text (entry); - if (g_shell_parse_argv (command, NULL, NULL, &error)) - { - gtk_entry_set_icon_from_stock (entry, GTK_PACK_END, NULL); - } - else - { - char *tooltip; + if (g_shell_parse_argv (command, NULL, NULL, &error)) + { + gtk_entry_set_icon_from_stock (entry, GTK_PACK_END, NULL); + } + else + { + char *tooltip; - gtk_entry_set_icon_from_stock (entry, GTK_PACK_END, GTK_STOCK_DIALOG_WARNING); + gtk_entry_set_icon_from_stock (entry, GTK_PACK_END, GTK_STOCK_DIALOG_WARNING); - tooltip = g_strdup_printf (_("Error parsing command: %s"), error->message); - gtk_entry_set_icon_tooltip_text (entry, GTK_PACK_END, tooltip); - g_free (tooltip); + tooltip = g_strdup_printf (_("Error parsing command: %s"), error->message); + gtk_entry_set_icon_tooltip_text (entry, GTK_PACK_END, tooltip); + g_free (tooltip); - g_error_free (error); - } + g_error_free (error); + } #endif /* GTK+ >= 2.16.0 */ } @@ -486,22 +497,22 @@ static void visible_name_entry_changed_cb (GtkEntry *entry, GtkWindow *window) { - const char *visible_name; - char *text; - - visible_name = gtk_entry_get_text (entry); - - text = g_strdup_printf (_("Editing Profile ā%sā"), visible_name); - gtk_window_set_title (window, text); - g_free (text); + const char *visible_name; + char *text; + + visible_name = gtk_entry_get_text (entry); + + text = g_strdup_printf (_("Editing Profile ā%sā"), visible_name); + gtk_window_set_title (window, text); + g_free (text); } static void reset_compat_defaults_cb (GtkWidget *button, TerminalProfile *profile) { - terminal_profile_reset_property (profile, TERMINAL_PROFILE_DELETE_BINDING); - terminal_profile_reset_property (profile, TERMINAL_PROFILE_BACKSPACE_BINDING); + terminal_profile_reset_property (profile, TERMINAL_PROFILE_DELETE_BINDING); + terminal_profile_reset_property (profile, TERMINAL_PROFILE_BACKSPACE_BINDING); } /* @@ -511,14 +522,14 @@ reset_compat_defaults_cb (GtkWidget *button, static void init_color_scheme_menu (GtkWidget *combo_box) { - int i; - - i = G_N_ELEMENTS (color_schemes); - while (i > 0) - { - gtk_combo_box_prepend_text (GTK_COMBO_BOX (combo_box), - _(color_schemes[--i].name)); - } + int i; + + i = G_N_ELEMENTS (color_schemes); + while (i > 0) + { + gtk_combo_box_prepend_text (GTK_COMBO_BOX (combo_box), + _(color_schemes[--i].name)); + } } static char* @@ -526,15 +537,15 @@ format_percent_value (GtkScale *scale, double val, void *data) { - return g_strdup_printf ("%d%%", (int) (val * 100.0 + 0.5)); + return g_strdup_printf ("%d%%", (int) (val * 100.0 + 0.5)); } static void init_background_darkness_scale (GtkWidget *scale) { - g_signal_connect (scale, "format-value", - G_CALLBACK (format_percent_value), - NULL); + g_signal_connect (scale, "format-value", + G_CALLBACK (format_percent_value), + NULL); } @@ -542,131 +553,134 @@ static void editor_response_cb (GtkWidget *editor, int response, gpointer use_data) -{ - if (response == GTK_RESPONSE_HELP) - { - terminal_util_show_help ("mate-terminal-prefs", GTK_WINDOW (editor)); - return; - } - - gtk_widget_destroy (editor); +{ + if (response == GTK_RESPONSE_HELP) + { + terminal_util_show_help ("mate-terminal-prefs", GTK_WINDOW (editor)); + return; + } + + gtk_widget_destroy (editor); } #if 0 static GdkPixbuf * create_preview_pixbuf (const gchar *filename) { - GdkPixbuf *pixbuf = NULL; - MateThumbnailFactory *thumbs; - const char *mime_type = NULL; - GFile *gfile; - GFileInfo *file_info; - - if (filename == NULL) - return NULL; - - gfile = g_file_new_for_uri (filename); - file_info = g_file_query_info (gfile, - G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE, - 0, NULL, NULL); - if (file_info != NULL) - mime_type = g_file_info_get_content_type (file_info); - - g_object_unref (gfile); - - if (mime_type != NULL) - { - thumbs = mate_thumbnail_factory_new (MATE_THUMBNAIL_SIZE_NORMAL); - - pixbuf = mate_thumbnail_factory_generate_thumbnail (thumbs, - filename, - mime_type); - g_object_unref (thumbs); - } - - if (file_info != NULL) - g_object_unref (file_info); - - return pixbuf; + GdkPixbuf *pixbuf = NULL; + MateThumbnailFactory *thumbs; + const char *mime_type = NULL; + GFile *gfile; + GFileInfo *file_info; + + if (filename == NULL) + return NULL; + + gfile = g_file_new_for_uri (filename); + file_info = g_file_query_info (gfile, + G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE, + 0, NULL, NULL); + if (file_info != NULL) + mime_type = g_file_info_get_content_type (file_info); + + g_object_unref (gfile); + + if (mime_type != NULL) + { + thumbs = mate_thumbnail_factory_new (MATE_THUMBNAIL_SIZE_NORMAL); + + pixbuf = mate_thumbnail_factory_generate_thumbnail (thumbs, + filename, + mime_type); + g_object_unref (thumbs); + } + + if (file_info != NULL) + g_object_unref (file_info); + + return pixbuf; } -static void -update_image_preview (GtkFileChooser *chooser) +static void +update_image_preview (GtkFileChooser *chooser) { - GtkWidget *image; - gchar *file; - - image = gtk_file_chooser_get_preview_widget (GTK_FILE_CHOOSER (chooser)); - file = gtk_file_chooser_get_preview_uri (chooser); - - if (file != NULL) { - - GdkPixbuf *pixbuf = NULL; - - pixbuf = create_preview_pixbuf (file); - g_free (file); - - if (pixbuf != NULL) { - gtk_image_set_from_pixbuf (GTK_IMAGE (image), pixbuf); - g_object_unref (pixbuf); - } - else { - gtk_image_set_from_stock (GTK_IMAGE (image), - "gtk-dialog-question", - GTK_ICON_SIZE_DIALOG); - } - } - gtk_file_chooser_set_preview_widget_active (chooser, file != NULL); + GtkWidget *image; + gchar *file; + + image = gtk_file_chooser_get_preview_widget (GTK_FILE_CHOOSER (chooser)); + file = gtk_file_chooser_get_preview_uri (chooser); + + if (file != NULL) + { + + GdkPixbuf *pixbuf = NULL; + + pixbuf = create_preview_pixbuf (file); + g_free (file); + + if (pixbuf != NULL) + { + gtk_image_set_from_pixbuf (GTK_IMAGE (image), pixbuf); + g_object_unref (pixbuf); + } + else + { + gtk_image_set_from_stock (GTK_IMAGE (image), + "gtk-dialog-question", + GTK_ICON_SIZE_DIALOG); + } + } + gtk_file_chooser_set_preview_widget_active (chooser, file != NULL); } #endif static void -setup_background_filechooser (GtkWidget *filechooser, +setup_background_filechooser (GtkWidget *filechooser, TerminalProfile *profile) { - GtkFileFilter *filter; - const char *home_dir; + GtkFileFilter *filter; + const char *home_dir; - filter = gtk_file_filter_new (); - gtk_file_filter_add_pixbuf_formats (filter); - gtk_file_filter_set_name (filter, _("Images")); - gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (filechooser), filter); + filter = gtk_file_filter_new (); + gtk_file_filter_add_pixbuf_formats (filter); + gtk_file_filter_set_name (filter, _("Images")); + gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (filechooser), filter); - gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (filechooser), TRUE); + gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (filechooser), TRUE); - /* Start filechooser in $HOME instead of the current dir of the factory which is "/" */ - home_dir = g_get_home_dir (); - if (home_dir) - gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (filechooser), home_dir); + /* Start filechooser in $HOME instead of the current dir of the factory which is "/" */ + home_dir = g_get_home_dir (); + if (home_dir) + gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (filechooser), home_dir); #if 0 - GtkWidget *image_preview; - GdkPixbuf *pixbuf = NULL; - - image_preview = gtk_image_new (); - /* FIXMchpe this is bogus */ - pixbuf = create_preview_pixbuf (terminal_profile_get_property_string (profile, TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE)); - if (pixbuf != NULL) - { - gtk_image_set_from_pixbuf (GTK_IMAGE (image_preview), pixbuf); - g_object_unref (pixbuf); - } - else - { - gtk_image_set_from_stock (GTK_IMAGE (image_preview), - "gtk-dialog-question", - GTK_ICON_SIZE_DIALOG); - } - - gtk_file_chooser_set_preview_widget (GTK_FILE_CHOOSER (filechooser), - image_preview); - gtk_file_chooser_set_use_preview_label (GTK_FILE_CHOOSER (filechooser), - FALSE); - gtk_widget_set_size_request (image_preview, 128, -1); - gtk_widget_show (image_preview); - - g_signal_connect (filechooser, "update-preview", - G_CALLBACK (update_image_preview), NULL); + GtkWidget *image_preview; + GdkPixbuf *pixbuf = NULL; + + image_preview = gtk_image_new (); + /* FIXMchpe this is bogus */ + pixbuf = create_preview_pixbuf (terminal_profile_get_property_string (profile, TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE)); + if (pixbuf != NULL) + { + gtk_image_set_from_pixbuf (GTK_IMAGE (image_preview), pixbuf); + g_object_unref (pixbuf); + } + else + { + gtk_image_set_from_stock (GTK_IMAGE (image_preview), + "gtk-dialog-question", + GTK_ICON_SIZE_DIALOG); + } + + gtk_file_chooser_set_preview_widget (GTK_FILE_CHOOSER (filechooser), + image_preview); + gtk_file_chooser_set_use_preview_label (GTK_FILE_CHOOSER (filechooser), + FALSE); + gtk_widget_set_size_request (image_preview, 128, -1); + gtk_widget_show (image_preview); + + g_signal_connect (filechooser, "update-preview", + G_CALLBACK (update_image_preview), NULL); #endif } @@ -674,50 +688,51 @@ static void profile_editor_destroyed (GtkWidget *editor, TerminalProfile *profile) { - g_signal_handlers_disconnect_by_func (profile, G_CALLBACK (profile_forgotten_cb), editor); - g_signal_handlers_disconnect_by_func (profile, G_CALLBACK (profile_notify_sensitivity_cb), editor); - g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, - G_CALLBACK (profile_colors_notify_scheme_combo_cb), NULL); - g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, - G_CALLBACK (profile_palette_notify_scheme_combo_cb), NULL); - g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, - G_CALLBACK (profile_palette_notify_colorpickers_cb), NULL); - - g_object_set_data (G_OBJECT (profile), "editor-window", NULL); - g_object_set_data (G_OBJECT (editor), "builder", NULL); + g_signal_handlers_disconnect_by_func (profile, G_CALLBACK (profile_forgotten_cb), editor); + g_signal_handlers_disconnect_by_func (profile, G_CALLBACK (profile_notify_sensitivity_cb), editor); + g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, + G_CALLBACK (profile_colors_notify_scheme_combo_cb), NULL); + g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, + G_CALLBACK (profile_palette_notify_scheme_combo_cb), NULL); + g_signal_handlers_disconnect_matched (profile, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, + G_CALLBACK (profile_palette_notify_colorpickers_cb), NULL); + + g_object_set_data (G_OBJECT (profile), "editor-window", NULL); + g_object_set_data (G_OBJECT (editor), "builder", NULL); } static void terminal_profile_editor_focus_widget (GtkWidget *editor, const char *widget_name) { - GtkBuilder *builder; - GtkWidget *widget, *page, *page_parent; + GtkBuilder *builder; + GtkWidget *widget, *page, *page_parent; - if (widget_name == NULL) - return; + if (widget_name == NULL) + return; - builder = g_object_get_data (G_OBJECT (editor), "builder"); - widget = GTK_WIDGET (gtk_builder_get_object (builder, widget_name)); - if (widget == NULL) - return; + builder = g_object_get_data (G_OBJECT (editor), "builder"); + widget = GTK_WIDGET (gtk_builder_get_object (builder, widget_name)); + if (widget == NULL) + return; - page = widget; - while (page != NULL && - (page_parent = gtk_widget_get_parent (page)) != NULL && - !GTK_IS_NOTEBOOK (page_parent)) - page = page_parent; + page = widget; + while (page != NULL && + (page_parent = gtk_widget_get_parent (page)) != NULL && + !GTK_IS_NOTEBOOK (page_parent)) + page = page_parent; - page_parent = gtk_widget_get_parent (page); - if (page != NULL && GTK_IS_NOTEBOOK (page_parent)) { - GtkNotebook *notebook; + page_parent = gtk_widget_get_parent (page); + if (page != NULL && GTK_IS_NOTEBOOK (page_parent)) + { + GtkNotebook *notebook; - notebook = GTK_NOTEBOOK (page_parent); - gtk_notebook_set_current_page (notebook, gtk_notebook_page_num (notebook, page)); - } + notebook = GTK_NOTEBOOK (page_parent); + gtk_notebook_set_current_page (notebook, gtk_notebook_page_num (notebook, page)); + } - if (gtk_widget_is_sensitive (widget)) - gtk_widget_grab_focus (widget); + if (gtk_widget_is_sensitive (widget)) + gtk_widget_grab_focus (widget); } /** @@ -735,187 +750,188 @@ terminal_profile_edit (TerminalProfile *profile, GtkWindow *transient_parent, const char *widget_name) { - char *path; - GtkBuilder *builder; - GError *error = NULL; - GtkWidget *editor, *w; - guint i; - - editor = g_object_get_data (G_OBJECT (profile), "editor-window"); - if (editor) - { - terminal_profile_editor_focus_widget (editor, widget_name); - - gtk_window_set_transient_for (GTK_WINDOW (editor), - GTK_WINDOW (transient_parent)); - gtk_window_present (GTK_WINDOW (editor)); - return; - } - - path = g_build_filename (TERM_PKGDATADIR, "profile-preferences.ui", NULL); - builder = gtk_builder_new (); - if (!gtk_builder_add_from_file (builder, path, &error)) { - g_warning ("Failed to load %s: %s\n", path, error->message); - g_error_free (error); - g_free (path); - g_object_unref (builder); - return; - } - g_free (path); - - editor = (GtkWidget *) gtk_builder_get_object (builder, "profile-editor-dialog"); - g_object_set_data_full (G_OBJECT (editor), "builder", - builder, (GDestroyNotify) g_object_unref); - - /* Store the dialogue on the profile, so we can acccess it above to check if - * there's already a profile editor for this profile. - */ - g_object_set_data (G_OBJECT (profile), "editor-window", editor); - - g_signal_connect (editor, "destroy", - G_CALLBACK (profile_editor_destroyed), - profile); - - g_signal_connect (editor, "response", - G_CALLBACK (editor_response_cb), - NULL); - - w = (GtkWidget *) gtk_builder_get_object (builder, "color-scheme-combobox"); - init_color_scheme_menu (w); - - w = (GtkWidget *) gtk_builder_get_object (builder, "darken-background-scale"); - init_background_darkness_scale (w); - - w = (GtkWidget *) gtk_builder_get_object (builder, "background-image-filechooser"); - setup_background_filechooser (w, profile); - - /* Hook up the palette colorpickers and combo box */ - - for (i = 0; i < TERMINAL_PALETTE_SIZE; ++i) - { - char name[32]; - char *text; - - g_snprintf (name, sizeof (name), "palette-colorpicker-%u", i + 1); - w = (GtkWidget *) gtk_builder_get_object (builder, name); - - g_object_set_data (G_OBJECT (w), "palette-entry-index", GUINT_TO_POINTER (i)); - - text = g_strdup_printf (_("Choose Palette Color %d"), i + 1); - gtk_color_button_set_title (GTK_COLOR_BUTTON (w), text); - g_free (text); - - text = g_strdup_printf (_("Palette entry %d"), i + 1); - gtk_widget_set_tooltip_text (w, text); - g_free (text); - - g_signal_connect (w, "notify::color", - G_CALLBACK (palette_color_notify_cb), - profile); - } - - profile_palette_notify_colorpickers_cb (profile, NULL, editor); - g_signal_connect (profile, "notify::" TERMINAL_PROFILE_PALETTE, - G_CALLBACK (profile_palette_notify_colorpickers_cb), - editor); - - w = (GtkWidget *) gtk_builder_get_object (builder, "palette-combobox"); - g_signal_connect (w, "notify::active", - G_CALLBACK (palette_scheme_combo_changed_cb), - profile); - - profile_palette_notify_scheme_combo_cb (profile, NULL, GTK_COMBO_BOX (w)); - g_signal_connect (profile, "notify::" TERMINAL_PROFILE_PALETTE, - G_CALLBACK (profile_palette_notify_scheme_combo_cb), - w); - - /* Hook up the color scheme pickers and combo box */ - w = (GtkWidget *) gtk_builder_get_object (builder, "color-scheme-combobox"); - g_signal_connect (w, "notify::active", - G_CALLBACK (color_scheme_combo_changed_cb), - profile); - - profile_colors_notify_scheme_combo_cb (profile, NULL, GTK_COMBO_BOX (w)); - g_signal_connect (profile, "notify::" TERMINAL_PROFILE_FOREGROUND_COLOR, - G_CALLBACK (profile_colors_notify_scheme_combo_cb), - w); - g_signal_connect (profile, "notify::" TERMINAL_PROFILE_BACKGROUND_COLOR, - G_CALLBACK (profile_colors_notify_scheme_combo_cb), - w); + char *path; + GtkBuilder *builder; + GError *error = NULL; + GtkWidget *editor, *w; + guint i; + + editor = g_object_get_data (G_OBJECT (profile), "editor-window"); + if (editor) + { + terminal_profile_editor_focus_widget (editor, widget_name); + + gtk_window_set_transient_for (GTK_WINDOW (editor), + GTK_WINDOW (transient_parent)); + gtk_window_present (GTK_WINDOW (editor)); + return; + } + + path = g_build_filename (TERM_PKGDATADIR, "profile-preferences.ui", NULL); + builder = gtk_builder_new (); + if (!gtk_builder_add_from_file (builder, path, &error)) + { + g_warning ("Failed to load %s: %s\n", path, error->message); + g_error_free (error); + g_free (path); + g_object_unref (builder); + return; + } + g_free (path); + + editor = (GtkWidget *) gtk_builder_get_object (builder, "profile-editor-dialog"); + g_object_set_data_full (G_OBJECT (editor), "builder", + builder, (GDestroyNotify) g_object_unref); + + /* Store the dialogue on the profile, so we can acccess it above to check if + * there's already a profile editor for this profile. + */ + g_object_set_data (G_OBJECT (profile), "editor-window", editor); + + g_signal_connect (editor, "destroy", + G_CALLBACK (profile_editor_destroyed), + profile); + + g_signal_connect (editor, "response", + G_CALLBACK (editor_response_cb), + NULL); + + w = (GtkWidget *) gtk_builder_get_object (builder, "color-scheme-combobox"); + init_color_scheme_menu (w); + + w = (GtkWidget *) gtk_builder_get_object (builder, "darken-background-scale"); + init_background_darkness_scale (w); + + w = (GtkWidget *) gtk_builder_get_object (builder, "background-image-filechooser"); + setup_background_filechooser (w, profile); + + /* Hook up the palette colorpickers and combo box */ + + for (i = 0; i < TERMINAL_PALETTE_SIZE; ++i) + { + char name[32]; + char *text; + + g_snprintf (name, sizeof (name), "palette-colorpicker-%u", i + 1); + w = (GtkWidget *) gtk_builder_get_object (builder, name); + + g_object_set_data (G_OBJECT (w), "palette-entry-index", GUINT_TO_POINTER (i)); + + text = g_strdup_printf (_("Choose Palette Color %d"), i + 1); + gtk_color_button_set_title (GTK_COLOR_BUTTON (w), text); + g_free (text); + + text = g_strdup_printf (_("Palette entry %d"), i + 1); + gtk_widget_set_tooltip_text (w, text); + g_free (text); + + g_signal_connect (w, "notify::color", + G_CALLBACK (palette_color_notify_cb), + profile); + } + + profile_palette_notify_colorpickers_cb (profile, NULL, editor); + g_signal_connect (profile, "notify::" TERMINAL_PROFILE_PALETTE, + G_CALLBACK (profile_palette_notify_colorpickers_cb), + editor); + + w = (GtkWidget *) gtk_builder_get_object (builder, "palette-combobox"); + g_signal_connect (w, "notify::active", + G_CALLBACK (palette_scheme_combo_changed_cb), + profile); + + profile_palette_notify_scheme_combo_cb (profile, NULL, GTK_COMBO_BOX (w)); + g_signal_connect (profile, "notify::" TERMINAL_PROFILE_PALETTE, + G_CALLBACK (profile_palette_notify_scheme_combo_cb), + w); + + /* Hook up the color scheme pickers and combo box */ + w = (GtkWidget *) gtk_builder_get_object (builder, "color-scheme-combobox"); + g_signal_connect (w, "notify::active", + G_CALLBACK (color_scheme_combo_changed_cb), + profile); + + profile_colors_notify_scheme_combo_cb (profile, NULL, GTK_COMBO_BOX (w)); + g_signal_connect (profile, "notify::" TERMINAL_PROFILE_FOREGROUND_COLOR, + G_CALLBACK (profile_colors_notify_scheme_combo_cb), + w); + g_signal_connect (profile, "notify::" TERMINAL_PROFILE_BACKGROUND_COLOR, + G_CALLBACK (profile_colors_notify_scheme_combo_cb), + w); #define CONNECT_WITH_FLAGS(name, prop, flags) terminal_util_bind_object_property_to_widget (G_OBJECT (profile), prop, (GtkWidget *) gtk_builder_get_object (builder, name), flags) #define CONNECT(name, prop) CONNECT_WITH_FLAGS (name, prop, 0) #define SET_ENUM_VALUE(name, value) g_object_set_data (gtk_builder_get_object (builder, name), "enum-value", GINT_TO_POINTER (value)) - w = GTK_WIDGET (gtk_builder_get_object (builder, "custom-command-entry")); - custom_command_entry_changed_cb (GTK_ENTRY (w)); - g_signal_connect (w, "changed", - G_CALLBACK (custom_command_entry_changed_cb), NULL); - w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-name-entry")); - g_signal_connect (w, "changed", - G_CALLBACK (visible_name_entry_changed_cb), editor); - - g_signal_connect (gtk_builder_get_object (builder, "reset-compat-defaults-button"), - "clicked", - G_CALLBACK (reset_compat_defaults_cb), - profile); - - SET_ENUM_VALUE ("image-radiobutton", TERMINAL_BACKGROUND_IMAGE); - SET_ENUM_VALUE ("solid-radiobutton", TERMINAL_BACKGROUND_SOLID); - SET_ENUM_VALUE ("transparent-radiobutton", TERMINAL_BACKGROUND_TRANSPARENT); - CONNECT ("allow-bold-checkbutton", TERMINAL_PROFILE_ALLOW_BOLD); - CONNECT ("background-colorpicker", TERMINAL_PROFILE_BACKGROUND_COLOR); - CONNECT ("background-image-filechooser", TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE); - CONNECT ("backspace-binding-combobox", TERMINAL_PROFILE_BACKSPACE_BINDING); - CONNECT ("bold-color-same-as-fg-checkbox", TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); - CONNECT ("bold-colorpicker", TERMINAL_PROFILE_BOLD_COLOR); - CONNECT ("cursor-shape-combobox", TERMINAL_PROFILE_CURSOR_SHAPE); - CONNECT ("custom-command-entry", TERMINAL_PROFILE_CUSTOM_COMMAND); - CONNECT ("darken-background-scale", TERMINAL_PROFILE_BACKGROUND_DARKNESS); - CONNECT ("default-size-columns-spinbutton", TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS); - CONNECT ("default-size-rows-spinbutton", TERMINAL_PROFILE_DEFAULT_SIZE_ROWS); - CONNECT ("delete-binding-combobox", TERMINAL_PROFILE_DELETE_BINDING); - CONNECT ("exit-action-combobox", TERMINAL_PROFILE_EXIT_ACTION); - CONNECT ("font-selector", TERMINAL_PROFILE_FONT); - CONNECT ("foreground-colorpicker", TERMINAL_PROFILE_FOREGROUND_COLOR); - CONNECT ("image-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); - CONNECT ("login-shell-checkbutton", TERMINAL_PROFILE_LOGIN_SHELL); - CONNECT ("profile-name-entry", TERMINAL_PROFILE_VISIBLE_NAME); - CONNECT ("scrollback-lines-spinbutton", TERMINAL_PROFILE_SCROLLBACK_LINES); - CONNECT ("scrollback-unlimited-checkbutton", TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); - CONNECT ("scroll-background-checkbutton", TERMINAL_PROFILE_SCROLL_BACKGROUND); - CONNECT ("scrollbar-position-combobox", TERMINAL_PROFILE_SCROLLBAR_POSITION); - CONNECT ("scroll-on-keystroke-checkbutton", TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE); - CONNECT ("scroll-on-output-checkbutton", TERMINAL_PROFILE_SCROLL_ON_OUTPUT); - CONNECT ("show-menubar-checkbutton", TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR); - CONNECT ("solid-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); - CONNECT ("system-font-checkbutton", TERMINAL_PROFILE_USE_SYSTEM_FONT); - CONNECT ("title-entry", TERMINAL_PROFILE_TITLE); - CONNECT ("title-mode-combobox", TERMINAL_PROFILE_TITLE_MODE); - CONNECT ("transparent-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); - CONNECT ("update-records-checkbutton", TERMINAL_PROFILE_UPDATE_RECORDS); - CONNECT ("use-custom-command-checkbutton", TERMINAL_PROFILE_USE_CUSTOM_COMMAND); - CONNECT ("use-custom-default-size-checkbutton", TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); - CONNECT ("use-theme-colors-checkbutton", TERMINAL_PROFILE_USE_THEME_COLORS); - CONNECT ("word-chars-entry", TERMINAL_PROFILE_WORD_CHARS); - CONNECT_WITH_FLAGS ("bell-checkbutton", TERMINAL_PROFILE_SILENT_BELL, FLAG_INVERT_BOOL); + w = GTK_WIDGET (gtk_builder_get_object (builder, "custom-command-entry")); + custom_command_entry_changed_cb (GTK_ENTRY (w)); + g_signal_connect (w, "changed", + G_CALLBACK (custom_command_entry_changed_cb), NULL); + w = GTK_WIDGET (gtk_builder_get_object (builder, "profile-name-entry")); + g_signal_connect (w, "changed", + G_CALLBACK (visible_name_entry_changed_cb), editor); + + g_signal_connect (gtk_builder_get_object (builder, "reset-compat-defaults-button"), + "clicked", + G_CALLBACK (reset_compat_defaults_cb), + profile); + + SET_ENUM_VALUE ("image-radiobutton", TERMINAL_BACKGROUND_IMAGE); + SET_ENUM_VALUE ("solid-radiobutton", TERMINAL_BACKGROUND_SOLID); + SET_ENUM_VALUE ("transparent-radiobutton", TERMINAL_BACKGROUND_TRANSPARENT); + CONNECT ("allow-bold-checkbutton", TERMINAL_PROFILE_ALLOW_BOLD); + CONNECT ("background-colorpicker", TERMINAL_PROFILE_BACKGROUND_COLOR); + CONNECT ("background-image-filechooser", TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE); + CONNECT ("backspace-binding-combobox", TERMINAL_PROFILE_BACKSPACE_BINDING); + CONNECT ("bold-color-same-as-fg-checkbox", TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG); + CONNECT ("bold-colorpicker", TERMINAL_PROFILE_BOLD_COLOR); + CONNECT ("cursor-shape-combobox", TERMINAL_PROFILE_CURSOR_SHAPE); + CONNECT ("custom-command-entry", TERMINAL_PROFILE_CUSTOM_COMMAND); + CONNECT ("darken-background-scale", TERMINAL_PROFILE_BACKGROUND_DARKNESS); + CONNECT ("default-size-columns-spinbutton", TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS); + CONNECT ("default-size-rows-spinbutton", TERMINAL_PROFILE_DEFAULT_SIZE_ROWS); + CONNECT ("delete-binding-combobox", TERMINAL_PROFILE_DELETE_BINDING); + CONNECT ("exit-action-combobox", TERMINAL_PROFILE_EXIT_ACTION); + CONNECT ("font-selector", TERMINAL_PROFILE_FONT); + CONNECT ("foreground-colorpicker", TERMINAL_PROFILE_FOREGROUND_COLOR); + CONNECT ("image-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); + CONNECT ("login-shell-checkbutton", TERMINAL_PROFILE_LOGIN_SHELL); + CONNECT ("profile-name-entry", TERMINAL_PROFILE_VISIBLE_NAME); + CONNECT ("scrollback-lines-spinbutton", TERMINAL_PROFILE_SCROLLBACK_LINES); + CONNECT ("scrollback-unlimited-checkbutton", TERMINAL_PROFILE_SCROLLBACK_UNLIMITED); + CONNECT ("scroll-background-checkbutton", TERMINAL_PROFILE_SCROLL_BACKGROUND); + CONNECT ("scrollbar-position-combobox", TERMINAL_PROFILE_SCROLLBAR_POSITION); + CONNECT ("scroll-on-keystroke-checkbutton", TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE); + CONNECT ("scroll-on-output-checkbutton", TERMINAL_PROFILE_SCROLL_ON_OUTPUT); + CONNECT ("show-menubar-checkbutton", TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR); + CONNECT ("solid-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); + CONNECT ("system-font-checkbutton", TERMINAL_PROFILE_USE_SYSTEM_FONT); + CONNECT ("title-entry", TERMINAL_PROFILE_TITLE); + CONNECT ("title-mode-combobox", TERMINAL_PROFILE_TITLE_MODE); + CONNECT ("transparent-radiobutton", TERMINAL_PROFILE_BACKGROUND_TYPE); + CONNECT ("update-records-checkbutton", TERMINAL_PROFILE_UPDATE_RECORDS); + CONNECT ("use-custom-command-checkbutton", TERMINAL_PROFILE_USE_CUSTOM_COMMAND); + CONNECT ("use-custom-default-size-checkbutton", TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE); + CONNECT ("use-theme-colors-checkbutton", TERMINAL_PROFILE_USE_THEME_COLORS); + CONNECT ("word-chars-entry", TERMINAL_PROFILE_WORD_CHARS); + CONNECT_WITH_FLAGS ("bell-checkbutton", TERMINAL_PROFILE_SILENT_BELL, FLAG_INVERT_BOOL); #undef CONNECT #undef CONNECT_WITH_FLAGS #undef SET_ENUM_VALUE - profile_notify_sensitivity_cb (profile, NULL, editor); - g_signal_connect (profile, "notify", - G_CALLBACK (profile_notify_sensitivity_cb), - editor); - g_signal_connect (profile, - "forgotten", - G_CALLBACK (profile_forgotten_cb), - editor); + profile_notify_sensitivity_cb (profile, NULL, editor); + g_signal_connect (profile, "notify", + G_CALLBACK (profile_notify_sensitivity_cb), + editor); + g_signal_connect (profile, + "forgotten", + G_CALLBACK (profile_forgotten_cb), + editor); - terminal_profile_editor_focus_widget (editor, widget_name); + terminal_profile_editor_focus_widget (editor, widget_name); - gtk_window_set_transient_for (GTK_WINDOW (editor), - GTK_WINDOW (transient_parent)); - gtk_window_present (GTK_WINDOW (editor)); + gtk_window_set_transient_for (GTK_WINDOW (editor), + GTK_WINDOW (transient_parent)); + gtk_window_present (GTK_WINDOW (editor)); } |