Bump version to 24.04.3.4
[LibreOffice.git] / libreofficekit / qa / gtktiledviewer / gtv-application-window.hxx
blob9d3d519627cdcb1f239f57474d799b32d80c05ee
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
10 #ifndef GTV_APPLICATION_WINDOW_H
11 #define GTV_APPLICATION_WINDOW_H
13 #include <gtk/gtk.h>
15 #include <LibreOfficeKit/LibreOfficeKitEnums.h>
17 #include "gtv-main-toolbar.hxx"
19 #include <string>
21 struct GtvRenderingArgs
23 std::string m_aLoPath;
24 std::string m_aUserProfile;
25 bool m_bEnableTiledAnnotations;
26 bool m_bUnipoll;
28 std::string m_aBackgroundColor;
29 bool m_bHidePageShadow;
30 bool m_bHideWhiteSpace;
32 GtvRenderingArgs()
33 : m_bEnableTiledAnnotations(false),
34 m_bUnipoll(false),
35 m_bHidePageShadow(false),
36 m_bHideWhiteSpace(false)
37 { }
40 G_BEGIN_DECLS
42 #define GTV_TYPE_APPLICATION_WINDOW (gtv_application_window_get_type())
43 #define GTV_APPLICATION_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTV_TYPE_APPLICATION_WINDOW, GtvApplicationWindow))
44 #define GTV_IS_APPLICATION_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GTV_TYPE_APPLICATION_WINDOW))
45 #define GTV_APPLICATION_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GTV_TYPE_APPLICATION_WINDOW, GtvApplicationWindowClass))
46 #define GTV_IS_APPLICATION_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GTV_TYPE_APPLICATION_WINDOW))
47 #define GTV_APPLICATION_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GTV_TYPE_APPLICATION_WINDOW, GtvApplicationWindowClass))
49 struct GtvApplicationWindow
51 GtkApplicationWindow parent_instance;
53 GtkWidget* scrolledwindow;
54 GtkWidget* lokdocview;
55 LibreOfficeKitDocumentType doctype;
57 GtkWidget* rowbar;
58 GtkWidget* columnbar;
59 GtkWidget* cornerarea;
61 GtkWidget* commentssidebar;
62 GtkWidget* statusbar;
63 GtkWidget* zoomlabel;
64 GtkWidget* redlinelabel;
65 GtkWidget* findbarlabel;
66 GtkWidget* findbarEntry;
67 GtkWidget* findAll;
69 GtkWidget* findtoolbar;
72 struct GtvApplicationWindowClass
74 GtkApplicationWindowClass parentClass;
77 GType gtv_application_window_get_type (void) G_GNUC_CONST;
79 GtvApplicationWindow* gtv_application_window_new(GtkApplication* application);
81 void gtv_application_window_load_document(GtvApplicationWindow* application,
82 const GtvRenderingArgs* aArgs,
83 const std::string& aDocPath);
85 void gtv_application_window_create_view_from_window(GtvApplicationWindow* window);
87 void gtv_application_window_get_visible_area(GtvApplicationWindow* pWindow, GdkRectangle* pArea);
89 void gtv_application_window_toggle_findbar(GtvApplicationWindow* window);
91 GtkToolItem* gtv_application_window_find_tool_by_unocommand(GtvApplicationWindow* window, const std::string& unoCmd);
93 GtvMainToolbar* gtv_application_window_get_main_toolbar(GtvApplicationWindow* window);
95 void gtv_application_window_set_toolbar_broadcast(GtvApplicationWindow* window, bool broadcast);
97 gboolean gtv_application_window_get_toolbar_broadcast(GtvApplicationWindow* window);
99 void gtv_application_window_set_part_broadcast(GtvApplicationWindow* window, bool broadcast);
101 gboolean gtv_application_window_get_part_broadcast(GtvApplicationWindow* window);
103 void gtv_application_window_register_child_window(GtvApplicationWindow* window, GtkWindow* pChildWin);
105 void gtv_application_window_unregister_child_window(GtvApplicationWindow* window, GtkWindow* pChildWin);
107 GtkWindow* gtv_application_window_get_child_window_by_id(GtvApplicationWindow* window, guint nWinId);
109 GtkWidget* gtv_application_window_get_parent(GtvApplicationWindow* window, guint nWinId);
111 G_END_DECLS
113 #endif /* GTV_APPLICATION_WINDOW_H */
115 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */