summaryrefslogtreecommitdiff
path: root/libreofficekit/source
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-05-21 13:17:18 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-05-21 13:31:08 +0100
commitcb0b7ff34dc193c37e89f4a968e1cb7502338230 (patch)
tree0e5b4d54fd35410ad1e784c38fae584a3dadb5e0 /libreofficekit/source
parent5b248f1348260f953686b20621255aece57358fe (diff)
gtktiledviewer: handle LOK_CALLBACK_SEARCH_NOT_FOUND
Change-Id: Ic545bbd14d11a3b310f4d72ee02e51a7cb6f4f22
Diffstat (limited to 'libreofficekit/source')
-rw-r--r--libreofficekit/source/gtk/lokdocview.cxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx
index 2cbd450a7f62..2e8e24c666d3 100644
--- a/libreofficekit/source/gtk/lokdocview.cxx
+++ b/libreofficekit/source/gtk/lokdocview.cxx
@@ -190,6 +190,8 @@ struct LOKDocView_Impl
void globalCallbackWorkerImpl(int nType, const char* pPayload);
/// Command state (various buttons like bold are toggled or not) is changed.
void commandChanged(const std::string& rPayload);
+ /// Search did not find any matches.
+ void searchNotFound(const std::string& rPayload);
};
namespace {
@@ -1001,6 +1003,9 @@ gboolean LOKDocView_Impl::callbackImpl(CallbackData* pCallback)
}
break;
case LOK_CALLBACK_SEARCH_NOT_FOUND:
+ {
+ searchNotFound(pCallback->m_aPayload);
+ }
break;
default:
g_assert(false);
@@ -1045,6 +1050,7 @@ enum
{
EDIT_CHANGED,
COMMAND_CHANGED,
+ SEARCH_NOT_FOUND,
LAST_SIGNAL
};
@@ -1055,6 +1061,11 @@ void LOKDocView_Impl::commandChanged(const std::string& rString)
g_signal_emit(m_pDocView, docview_signals[COMMAND_CHANGED], 0, rString.c_str());
}
+void LOKDocView_Impl::searchNotFound(const std::string& rString)
+{
+ g_signal_emit(m_pDocView, docview_signals[SEARCH_NOT_FOUND], 0, rString.c_str());
+}
+
static void lok_docview_class_init( gpointer ptr )
{
LOKDocViewClass* pClass = static_cast<LOKDocViewClass *>(ptr);
@@ -1079,6 +1090,16 @@ static void lok_docview_class_init( gpointer ptr )
g_cclosure_marshal_VOID__STRING,
G_TYPE_NONE, 1,
G_TYPE_STRING);
+ pClass->search_not_found = 0;
+ docview_signals[SEARCH_NOT_FOUND] =
+ g_signal_new("search-not-found",
+ G_TYPE_FROM_CLASS(gobject_class),
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(LOKDocViewClass, search_not_found),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__STRING,
+ G_TYPE_NONE, 1,
+ G_TYPE_STRING);
}
static void lok_docview_init( GTypeInstance* pInstance, gpointer )