Kaydet (Commit) aa3f607f authored tarafından Miklos Vajna's avatar Miklos Vajna

gtktiledviewer: make it possible to trigger SearchItem.Command

Change-Id: I210da07802bae1f2f2948976bc0faf90e93152b4
üst 22d342a8
......@@ -53,6 +53,7 @@ public:
GtkWidget* m_pFindbar;
GtkWidget* m_pFindbarEntry;
GtkWidget* m_pFindbarLabel;
bool m_bFindAll;
TiledWindow()
: m_pDocView(0),
......@@ -70,7 +71,8 @@ public:
m_bPartSelectorBroadcast(true),
m_pFindbar(0),
m_pFindbarEntry(0),
m_pFindbarLabel(0)
m_pFindbarLabel(0),
m_bFindAll(false)
{
}
};
......@@ -178,6 +180,13 @@ static void toggleEditing(GtkWidget* pButton, gpointer /*pItem*/)
lok_doc_view_set_edit(pLOKDocView, bActive);
}
/// Toggles if search should find all results or only the first one.
static void toggleFindAll(GtkWidget* pButton, gpointer /*pItem*/)
{
TiledWindow& rWindow = lcl_getTiledWindow(pButton);
rWindow.m_bFindAll = !rWindow.m_bFindAll;
}
/// Toggle the visibility of the findbar.
static void toggleFindbar(GtkWidget* pButton, gpointer /*pItem*/)
{
......@@ -285,6 +294,12 @@ static void doSearch(GtkWidget* pButton, bool bBackwards)
aTree.put(boost::property_tree::ptree::path_type("SearchItem.SearchString/value", '/'), pText);
aTree.put(boost::property_tree::ptree::path_type("SearchItem.Backward/type", '/'), "boolean");
aTree.put(boost::property_tree::ptree::path_type("SearchItem.Backward/value", '/'), bBackwards);
if (rWindow.m_bFindAll)
{
aTree.put(boost::property_tree::ptree::path_type("SearchItem.Command/type", '/'), "unsigned short");
// SvxSearchCmd::FIND_ALL
aTree.put(boost::property_tree::ptree::path_type("SearchItem.Command/value", '/'), "1");
}
LOKDocView* pLOKDocView = LOK_DOC_VIEW(rWindow.m_pDocView);
GdkRectangle aArea;
......@@ -730,6 +745,11 @@ static GtkWidget* createWindow(TiledWindow& rWindow)
gtk_toolbar_insert(GTK_TOOLBAR(rWindow.m_pFindbar), pFindbarPrev, -1);
g_signal_connect(G_OBJECT(pFindbarPrev), "clicked", G_CALLBACK(signalSearchPrev), NULL);
GtkToolItem* pFindAll = gtk_toggle_tool_button_new();
gtk_tool_button_set_label(GTK_TOOL_BUTTON(pFindAll), "Highlight All");
gtk_toolbar_insert(GTK_TOOLBAR(rWindow.m_pFindbar), pFindAll, -1);
g_signal_connect(G_OBJECT(pFindAll), "toggled", G_CALLBACK(toggleFindAll), NULL);
GtkToolItem* pFindbarLabelContainer = gtk_tool_item_new();
rWindow.m_pFindbarLabel = gtk_label_new("");
gtk_container_add(GTK_CONTAINER(pFindbarLabelContainer), rWindow.m_pFindbarLabel);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment