diff options
author | Pranav Kant <pranavk@gnome.org> | 2015-07-07 21:16:45 +0530 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-07-28 15:04:13 +0200 |
commit | da129b682f81a8fdbc6be95142456f204b2b7951 (patch) | |
tree | f9f1049f165a4f7276ad4858839f38d86f54cdbc /libreofficekit/qa/gtktiledviewer | |
parent | 645f00543405450cd3a3862482dc4e1cda65d098 (diff) |
lokdocview: Emit load-changed signal showing load progress
Change-Id: I69b4c05d12c0c0b2ca6b7d1ad76ed74cc1f4346a
Diffstat (limited to 'libreofficekit/qa/gtktiledviewer')
-rw-r--r-- | libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx index a2080511c2cd..e8091a73f1ae 100644 --- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx +++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx @@ -30,6 +30,7 @@ static int help() } static GtkWidget* pDocView; +static GtkWidget* pStatusBar; static GtkToolItem* pEnableEditing; static GtkToolItem* pBold; static GtkToolItem* pItalic; @@ -286,6 +287,12 @@ static void signalCommand(LOKDocView* /*pLOKDocView*/, char* pPayload, gpointer } } +static void loadChanged(LOKDocView* /*pLOKDocView*/, gdouble fValue, gpointer pData) +{ + GtkWidget* pProgressBar = GTK_WIDGET (pData); + gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR(pProgressBar), fValue); +} + /// LOKDocView found no search matches -> set the search label accordingly. static void signalSearch(LOKDocView* /*pLOKDocView*/, char* /*pPayload*/, gpointer /*pData*/) { @@ -403,6 +410,8 @@ static void openDocumentCallback (GObject* source_object, GAsyncResult* res, gpo focusChain = g_list_append( focusChain, pDocView1 ); gtk_container_set_focus_chain ( GTK_CONTAINER (pVBox), focusChain ); + + gtk_widget_hide (pStatusBar); } int main( int argc, char* argv[] ) @@ -555,6 +564,7 @@ int main( int argc, char* argv[] ) g_signal_connect(pDocView, "part-changed", G_CALLBACK(signalPart), NULL); g_signal_connect(pDocView, "hyperlink-clicked", G_CALLBACK(signalHyperlink), NULL); + // Scrolled window for DocView pScrolledWindow = gtk_scrolled_window_new(0, 0); gtk_widget_set_hexpand (pScrolledWindow, TRUE); @@ -563,6 +573,13 @@ int main( int argc, char* argv[] ) gtk_container_add(GTK_CONTAINER(pScrolledWindow), pDocView); + GtkWidget* pProgressBar = gtk_progress_bar_new (); + g_signal_connect(pDocView, "load-changed", G_CALLBACK(loadChanged), pProgressBar); + + pStatusBar = gtk_statusbar_new (); + gtk_container_add (GTK_CONTAINER(pVBox), pStatusBar); + gtk_container_add (GTK_CONTAINER(pStatusBar), pProgressBar); + gtk_widget_show_all( pWindow ); // Hide the findbar by default. gtk_widget_hide(pFindbar); |