[gnumeric] Save default search settings. [#625185]
- From: Andreas J. Guelzow <guelzow src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] Save default search settings. [#625185]
- Date: Mon, 26 Jul 2010 04:48:26 +0000 (UTC)
commit 1b8d7830019ae1b47331ddca7c9b28c6c0c3334f
Author: Andreas J Guelzow <aguelzow pyrshep ca>
Date: Sun Jul 25 22:47:44 2010 -0600
Save default search settings. [#625185]
2010-07-25 Andreas J. Guelzow <aguelzow pyrshep ca>
* schemas/gnumeric-dialogs.schemas.in: new item search-results
* schemas/gnumeric-general.schemas.in: fix typo
* src/gnumeric-gconf.c (gnm_conf_*et_searchreplace_search_results*): new
* src/gnumeric-gconf.h (gnm_conf_*et_searchreplace_search_results*): new
2010-07-25 Andreas J. Guelzow <aguelzow pyrshep ca>
* dialog-search.c (dialog_search_save_in_prefs): new
(dialog_search): use preferences
(search_clicked): save preferences if appropriate
* search-replace.glade: some minor adjustments
* search.ui: add save as defaults checkbox
ChangeLog | 7 +
NEWS | 2 +-
schemas/gnumeric-dialogs.schemas.in | 11 +
schemas/gnumeric-general.schemas.in | 2 +-
src/dialogs/ChangeLog | 8 +
src/dialogs/dialog-search.c | 55 ++++
src/dialogs/search-replace.glade | 36 +--
src/dialogs/search.ui | 579 +++++++++++++++--------------------
src/gnumeric-gconf.c | 26 ++
src/gnumeric-gconf.h | 4 +
10 files changed, 364 insertions(+), 366 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 3311f16..549b5a5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2010-07-25 Andreas J. Guelzow <aguelzow pyrshep ca>
+
+ * schemas/gnumeric-dialogs.schemas.in: new item search-results
+ * schemas/gnumeric-general.schemas.in: fix typo
+ * src/gnumeric-gconf.c (gnm_conf_*et_searchreplace_search_results*): new
+ * src/gnumeric-gconf.h (gnm_conf_*et_searchreplace_search_results*): new
+
2010-07-24 Andreas J. Guelzow <aguelzow pyrshep ca>
* component/Gnumeric-embed.xml.in: add "clear filtered" menu items
diff --git a/NEWS b/NEWS
index 4ec3f8d..3707965 100644
--- a/NEWS
+++ b/NEWS
@@ -2,7 +2,7 @@ Gnumeric 1.10.8
Andreas:
* Add new Excel and Openformula units ("pica" and "picapt") to CONVERT.
- * Save default search settings. [#105615]
+ * Save default search settings. [#105615][#625185]
* Improve configurable text export of numbers. [#126444]
* Improve horizontal fill. [#594193]
* Improve function syntax tooltips. [#623317]
diff --git a/schemas/gnumeric-dialogs.schemas.in b/schemas/gnumeric-dialogs.schemas.in
index 64e1dc2..839e4fc 100644
--- a/schemas/gnumeric-dialogs.schemas.in
+++ b/schemas/gnumeric-dialogs.schemas.in
@@ -688,6 +688,17 @@
</locale>
</schema>
<schema>
+ <key>/schemas/apps/gnumeric/searchreplace/search-results</key>
+ <applyto>/apps/gnumeric/searchreplace/search-results</applyto>
+ <owner>Gnumeric</owner>
+ <type>bool</type>
+ <default>TRUE</default>
+ <locale name="C">
+ <short>Search searches in results</short>
+ <long>Search searches in results as default</long>
+ </locale>
+ </schema>
+ <schema>
<key>/schemas/apps/gnumeric/searchreplace/keep-strings</key>
<applyto>/apps/gnumeric/searchreplace/keep-strings</applyto>
<owner>Gnumeric</owner>
diff --git a/schemas/gnumeric-general.schemas.in b/schemas/gnumeric-general.schemas.in
index 2b5a034..7a7785f 100644
--- a/schemas/gnumeric-general.schemas.in
+++ b/schemas/gnumeric-general.schemas.in
@@ -445,7 +445,7 @@ they are also processed at that time. If `lag' is negative, then recalculation h
<default>10</default>
<locale name="C">
<short>Number of Automatic Clauses</short>
- <long>When selecting a sort region in the sort dialog, search clauses are automatically added. This number determines the maximum number of clauses to be added automatically.</long>
+ <long>When selecting a sort region in the sort dialog, sort clauses are automatically added. This number determines the maximum number of clauses to be added automatically.</long>
</locale>
</schema>
<schema>
diff --git a/src/dialogs/ChangeLog b/src/dialogs/ChangeLog
index d393818..1a20d47 100644
--- a/src/dialogs/ChangeLog
+++ b/src/dialogs/ChangeLog
@@ -1,5 +1,13 @@
2010-07-25 Andreas J. Guelzow <aguelzow pyrshep ca>
+ * dialog-search.c (dialog_search_save_in_prefs): new
+ (dialog_search): use preferences
+ (search_clicked): save preferences if appropriate
+ * search-replace.glade: some minor adjustments
+ * search.ui: add save as defaults checkbox
+
+2010-07-25 Andreas J. Guelzow <aguelzow pyrshep ca>
+
* dialog-hyperlink.c (dialog_hyperlink): duplicate the hyperlink, it
may be used in many cells and we want to change it only here.
diff --git a/src/dialogs/dialog-search.c b/src/dialogs/dialog-search.c
index 41a0ef9..2b87b04 100644
--- a/src/dialogs/dialog-search.c
+++ b/src/dialogs/dialog-search.c
@@ -28,6 +28,7 @@
#include "help.h"
#include <gui-util.h>
+#include <gnumeric-gconf.h>
#include <search.h>
#include <sheet.h>
#include <sheet-view.h>
@@ -238,6 +239,29 @@ is_checked (GtkBuilder *gui, const char *name)
}
static void
+dialog_search_save_in_prefs (DialogState *dd)
+{
+ GladeXML *gui = dd->gui;
+
+#define SETW(w,f) f (is_checked (gui, w));
+ SETW("search_expr", gnm_conf_set_searchreplace_change_cell_expressions);
+ SETW("search_other", gnm_conf_set_searchreplace_change_cell_other);
+ SETW("search_string", gnm_conf_set_searchreplace_change_cell_strings);
+ SETW("search_comments", gnm_conf_set_searchreplace_change_comments);
+ SETW("search_expr_results", gnm_conf_set_searchreplace_search_results);
+ SETW("ignore_case", gnm_conf_set_searchreplace_ignore_case);
+ SETW("match_words", gnm_conf_set_searchreplace_whole_words_only);
+ SETW("column_major", gnm_conf_set_searchreplace_columnmajor);
+#undef SETW
+
+ gnm_conf_set_searchreplace_regex
+ (go_gtk_builder_group_value (gui, search_type_group));
+ gnm_conf_set_searchreplace_scope
+ (go_gtk_builder_group_value (gui, scope_group));
+}
+
+
+static void
cursor_change (GtkTreeView *tree_view, DialogState *dd)
{
int matchno;
@@ -337,6 +361,9 @@ search_clicked (G_GNUC_UNUSED GtkWidget *widget, DialogState *dd)
return;
}
+ if (is_checked (gui, "save-in-prefs"))
+ dialog_search_save_in_prefs (dd);
+
{
GnumericLazyList *ll;
GPtrArray *cells;
@@ -526,6 +553,34 @@ dialog_search (WBCGtk *wbcg)
/* Set sensitivity of buttons. */
cursor_change (dd->matches_table, dd);
+#define SETW(w,f) gtk_toggle_button_set_active \
+ (GTK_TOGGLE_BUTTON (gtk_builder_get_object (gui, w)), f())
+ SETW("search_expr", gnm_conf_get_searchreplace_change_cell_expressions);
+ SETW("search_other", gnm_conf_get_searchreplace_change_cell_other);
+ SETW("search_string", gnm_conf_get_searchreplace_change_cell_strings);
+ SETW("search_comments", gnm_conf_get_searchreplace_change_comments);
+ SETW("search_expr_results", gnm_conf_get_searchreplace_search_results);
+ SETW("ignore_case", gnm_conf_get_searchreplace_ignore_case);
+ SETW("match_words", gnm_conf_get_searchreplace_whole_words_only);
+#undef SETW
+
+ gtk_toggle_button_set_active
+ (GTK_TOGGLE_BUTTON
+ (gtk_builder_get_object
+ (gui,
+ search_type_group[gnm_conf_get_searchreplace_regex ()])), TRUE);
+ gtk_toggle_button_set_active
+ (GTK_TOGGLE_BUTTON
+ (gtk_builder_get_object
+ (gui,
+ direction_group
+ [gnm_conf_get_searchreplace_columnmajor () ? 1 : 0])), TRUE);
+ gtk_toggle_button_set_active
+ (GTK_TOGGLE_BUTTON
+ (gtk_builder_get_object
+ (gui,
+ scope_group[gnm_conf_get_searchreplace_scope ()])), TRUE);
+
g_signal_connect (G_OBJECT (dd->matches_table), "cursor_changed",
G_CALLBACK (cursor_change), dd);
g_signal_connect (G_OBJECT (dd->matches_table), "select_cursor_row",
diff --git a/src/dialogs/search-replace.glade b/src/dialogs/search-replace.glade
index 79666b7..89f9172 100644
--- a/src/dialogs/search-replace.glade
+++ b/src/dialogs/search-replace.glade
@@ -473,7 +473,7 @@
<widget class="GtkTable" id="table5">
<property name="visible">True</property>
<property name="n_rows">4</property>
- <property name="n_columns">3</property>
+ <property name="n_columns">2</property>
<property name="column_spacing">6</property>
<property name="row_spacing">6</property>
<child>
@@ -484,7 +484,7 @@
<property name="use_markup">True</property>
</widget>
<packing>
- <property name="right_attach">3</property>
+ <property name="right_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
@@ -501,8 +501,6 @@
<property name="draw_indicator">True</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
@@ -521,8 +519,8 @@
<property name="group">row_major</property>
</widget>
<packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
@@ -530,18 +528,6 @@
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label14">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- </widget>
- <packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
<widget class="GtkCheckButton" id="keep_strings">
<property name="label" translatable="yes">_Keep strings as strings</property>
<property name="visible">True</property>
@@ -554,8 +540,7 @@
<property name="draw_indicator">True</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">3</property>
+ <property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">GTK_FILL</property>
@@ -568,22 +553,15 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">When set, the current settings will be saved as the default settings for future invocations of this dialog.</property>
+ <property name="tooltip" translatable="yes">When set, the current settings will be saved as the default settings for future invocations of this and the Search dialog.</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">3</property>
+ <property name="right_attach">2</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
</packing>
</child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
</widget>
<packing>
<property name="expand">False</property>
diff --git a/src/dialogs/search.ui b/src/dialogs/search.ui
index c153e60..a914472 100644
--- a/src/dialogs/search.ui
+++ b/src/dialogs/search.ui
@@ -1,132 +1,44 @@
<?xml version="1.0"?>
-<!--*- mode: xml -*-->
<interface>
+ <!-- interface-requires gtk+ 2.12 -->
+ <!-- interface-naming-policy toplevel-contextual -->
<object class="GtkDialog" id="search_dialog">
<property name="border_width">6</property>
<property name="title" translatable="yes">Search</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="resizable">True</property>
- <property name="destroy_with_parent">False</property>
+ <property name="type_hint">normal</property>
<property name="has_separator">False</property>
<child internal-child="vbox">
<object class="GtkVBox" id="dialog-vbox1">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
<property name="spacing">6</property>
- <child internal-child="action_area">
- <object class="GtkHButtonBox" id="dialog-action_area1">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
- <child>
- <object class="GtkButton" id="help_button">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-help</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="close_button">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Dismiss search center</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-close</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="prev_button">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Show previous match</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-go-back</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="next_button">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Show next match</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-go-forward</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="search_button">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Start search</property>
- <property name="can_default">True</property>
- <property name="has_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-find</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">GTK_PACK_END</property>
- </packing>
- </child>
<child>
<object class="GtkNotebook" id="notebook">
- <property name="border_width">5</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="show_tabs">True</property>
- <property name="show_border">True</property>
- <property name="tab_pos">GTK_POS_TOP</property>
- <property name="scrollable">False</property>
- <property name="enable_popup">False</property>
+ <property name="border_width">5</property>
<child>
<object class="GtkVBox" id="vbox2">
- <property name="border_width">12</property>
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="border_width">12</property>
<property name="spacing">4</property>
<child>
<object class="GtkTable" id="page1-table">
<property name="visible">True</property>
<property name="n_rows">7</property>
<property name="n_columns">2</property>
- <property name="homogeneous">False</property>
- <property name="row_spacing">6</property>
<property name="column_spacing">6</property>
+ <property name="row_spacing">6</property>
<child>
<object class="GtkLabel" id="label3">
<property name="visible">True</property>
+ <property name="xalign">0</property>
<property name="label" translatable="yes">_Search for:</property>
<property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_CENTER</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
+ <property name="justify">center</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
@@ -134,44 +46,38 @@
<property name="visible">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="y_options"/>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="ignore_case">
+ <property name="label" translatable="yes">_Ignore case</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">When set, do not distinguish between upper and lower case letters</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Ignore case</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">When set, do not distinguish between upper and lower case letters</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="match_words">
+ <property name="label" translatable="yes">Match _whole words only</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Do not consider matches in the middle of words</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">Match _whole words only</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Do not consider matches in the middle of words</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
@@ -179,8 +85,8 @@
<property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
@@ -188,229 +94,198 @@
<property name="visible">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
<property name="right_attach">2</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
- <property name="y_options"/>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="scope_workbook">
+ <property name="label" translatable="yes">_Entire workbook</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Search in all cells in the workbook</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Entire workbook</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Search in all cells in the workbook</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">4</property>
<property name="bottom_attach">5</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="scope_sheet">
+ <property name="label" translatable="yes">_Current sheet</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Search in current sheet only</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Current sheet</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Search in current sheet only</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="group">scope_workbook</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">5</property>
<property name="bottom_attach">6</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="scope_range">
+ <property name="label" translatable="yes">_Range</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Search in specified range only</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Range</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Search in specified range only</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="group">scope_workbook</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">6</property>
<property name="bottom_attach">7</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
</child>
<child type="tab">
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="label" translatable="yes">Normal</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_CENTER</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
+ <property name="justify">center</property>
</object>
+ <packing>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
<child>
<object class="GtkVBox" id="vbox4">
- <property name="border_width">4</property>
<property name="visible">True</property>
- <property name="homogeneous">False</property>
+ <property name="border_width">4</property>
<property name="spacing">4</property>
<child>
<object class="GtkTable" id="page2-table">
<property name="visible">True</property>
<property name="n_rows">2</property>
<property name="n_columns">2</property>
- <property name="homogeneous">False</property>
- <property name="row_spacing">4</property>
<property name="column_spacing">4</property>
+ <property name="row_spacing">4</property>
<child>
<object class="GtkFrame" id="frame3">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
<child>
<object class="GtkTable" id="table2">
- <property name="border_width">12</property>
<property name="visible">True</property>
+ <property name="border_width">12</property>
<property name="n_rows">3</property>
<property name="n_columns">2</property>
- <property name="homogeneous">True</property>
- <property name="row_spacing">6</property>
<property name="column_spacing">6</property>
+ <property name="row_spacing">6</property>
+ <property name="homogeneous">True</property>
<child>
<object class="GtkCheckButton" id="search_other">
+ <property name="label" translatable="yes">_Other values</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Find text within non-string values</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Other values</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Find text within non-string values</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="search_expr">
+ <property name="label" translatable="yes">_Expressions</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Find text within expressions</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Expressions</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Find text within expressions</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="search_string">
+ <property name="label" translatable="yes">_Strings</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Find text within string values</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Strings</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Find text within string values</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="search_comments">
+ <property name="label" translatable="yes">_Comments</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Find text within cell comments</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Comments</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Find text within cell comments</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="search_expr_results">
+ <property name="label" translatable="yes">_Results</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Find text within the calculated values of expressions</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Results</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Find text within the calculated values of expressions</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
@@ -418,113 +293,84 @@
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
+ <child>
+ <placeholder/>
+ </child>
</object>
</child>
<child type="label">
<object class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="label" translatable="yes">Search cells containing</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- </packing>
</child>
<child>
<object class="GtkFrame" id="frame5">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
<child>
<object class="GtkTable" id="table5">
- <property name="border_width">12</property>
<property name="visible">True</property>
+ <property name="border_width">12</property>
<property name="n_rows">3</property>
- <property name="n_columns">1</property>
- <property name="homogeneous">True</property>
- <property name="row_spacing">6</property>
<property name="column_spacing">6</property>
+ <property name="row_spacing">6</property>
+ <property name="homogeneous">True</property>
<child>
<object class="GtkRadioButton" id="search_type_text">
+ <property name="label" translatable="yes">_Plain text</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">The search text is taken literally.</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Plain text</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">The search text is taken literally.</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="search_type_regexp">
+ <property name="label" translatable="yes">Re_gular expression</property>
<property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">The search text is a regular expression</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">Re_gular expression</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">The search text is a regular expression</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="group">search_type_text</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="search_type_number">
+ <property name="label" translatable="yes">_Number</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="label" translatable="yes">_Number</property>
+ <property name="receives_default">False</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="focus_on_click">True</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="group">search_type_text</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
</object>
@@ -533,79 +379,75 @@
<object class="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="label" translatable="yes">Search text is</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
</packing>
</child>
<child>
<object class="GtkFrame" id="frame4">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
<child>
<object class="GtkTable" id="table4">
- <property name="border_width">6</property>
<property name="visible">True</property>
- <property name="n_rows">1</property>
+ <property name="border_width">6</property>
+ <property name="n_rows">2</property>
<property name="n_columns">2</property>
- <property name="homogeneous">True</property>
- <property name="row_spacing">6</property>
<property name="column_spacing">6</property>
+ <property name="row_spacing">6</property>
+ <property name="homogeneous">True</property>
<child>
<object class="GtkRadioButton" id="row_major">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Search line by line</property>
<property name="label" translatable="yes">_Row major</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Search line by line</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="active">True</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
<object class="GtkRadioButton" id="column_major">
- <property name="visible">True</property>
- <property name="tooltip-text" translatable="yes">Search column by column</property>
<property name="label" translatable="yes">C_olumn major</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Search column by column</property>
<property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="group">row_major</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"/>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="save-in-prefs">
+ <property name="label" translatable="yes">Save settings as _default</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">These settings are shared with the Search & Replace dialog.</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
</packing>
</child>
</object>
@@ -614,84 +456,151 @@
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="label" translatable="yes">Miscellaneous</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
</object>
</child>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
+ <child>
+ <placeholder/>
+ </child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
<packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
<child type="tab">
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="label" translatable="yes">Advanced</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_CENTER</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
+ <property name="justify">center</property>
</object>
+ <packing>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
<child>
<object class="GtkVBox" id="matches_vbox">
<property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
</object>
<packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
+ <property name="position">2</property>
</packing>
</child>
<child type="tab">
<object class="GtkLabel" id="matches_tab">
<property name="visible">True</property>
<property name="label" translatable="yes">Matches</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_CENTER</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
+ <property name="justify">center</property>
+ </object>
+ <packing>
+ <property name="position">2</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area1">
+ <property name="visible">True</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="help_button">
+ <property name="label">gtk-help</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_stock">True</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="close_button">
+ <property name="label">gtk-close</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Dismiss search center</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="prev_button">
+ <property name="label">gtk-go-back</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Show previous match</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="next_button">
+ <property name="label">gtk-go-forward</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Show next match</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="search_button">
+ <property name="label">gtk-find</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Start search</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">4</property>
+ </packing>
</child>
</object>
<packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="expand">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
diff --git a/src/gnumeric-gconf.c b/src/gnumeric-gconf.c
index 65b1521..457f359 100644
--- a/src/gnumeric-gconf.c
+++ b/src/gnumeric-gconf.c
@@ -3318,6 +3318,32 @@ gnm_conf_get_searchreplace_scope_node (void)
return get_node (watch_searchreplace_scope.key);
}
+static struct cb_watch_bool watch_searchreplace_search_results = {
+ 0, "searchreplace/search-results", TRUE,
+};
+
+gboolean
+gnm_conf_get_searchreplace_search_results (void)
+{
+ if (!watch_searchreplace_search_results.handler)
+ watch_bool (&watch_searchreplace_search_results);
+ return watch_searchreplace_search_results.var;
+}
+
+void
+gnm_conf_set_searchreplace_search_results (gboolean x)
+{
+ if (!watch_searchreplace_search_results.handler)
+ watch_bool (&watch_searchreplace_search_results);
+ set_bool (&watch_searchreplace_search_results, x);
+}
+
+GOConfNode *
+gnm_conf_get_searchreplace_search_results_node (void)
+{
+ return get_node (watch_searchreplace_search_results.key);
+}
+
static struct cb_watch_bool watch_searchreplace_whole_words_only = {
0, "searchreplace/whole-words-only", FALSE,
};
diff --git a/src/gnumeric-gconf.h b/src/gnumeric-gconf.h
index 0ad20c6..66f6527 100644
--- a/src/gnumeric-gconf.h
+++ b/src/gnumeric-gconf.h
@@ -441,6 +441,10 @@ GOConfNode *gnm_conf_get_searchreplace_scope_node (void);
int gnm_conf_get_searchreplace_scope (void);
void gnm_conf_set_searchreplace_scope (int);
+GOConfNode *gnm_conf_get_searchreplace_search_results_node (void);
+gboolean gnm_conf_get_searchreplace_search_results (void);
+void gnm_conf_set_searchreplace_search_results (gboolean);
+
GOConfNode *gnm_conf_get_searchreplace_whole_words_only_node (void);
gboolean gnm_conf_get_searchreplace_whole_words_only (void);
void gnm_conf_set_searchreplace_whole_words_only (gboolean);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]