summaryrefslogtreecommitdiff
path: root/include/LibreOfficeKit
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-02-20 16:21:06 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-02-23 10:10:30 +0100
commit77debb673e61340dfc3ddc63b6d72731c091c210 (patch)
tree00166a3ca1312f24dd7a1689ec310e11c089e8ac /include/LibreOfficeKit
parent916d40e047ae7a46ce8da05776c66a4e8630c809 (diff)
Extract LibreOfficeKitEnums.h from LibreOfficeKit.h
This massively reduces the rebuild time in case only a new enumeration value is added to one of the enums. Change-Id: I4e58adf36fcd29da1672a5e5091bd3f6744f148d
Diffstat (limited to 'include/LibreOfficeKit')
-rw-r--r--include/LibreOfficeKit/LibreOfficeKit.h109
-rw-r--r--include/LibreOfficeKit/LibreOfficeKit.hxx2
-rw-r--r--include/LibreOfficeKit/LibreOfficeKitEnums.h124
-rw-r--r--include/LibreOfficeKit/LibreOfficeKitGtk.h2
4 files changed, 136 insertions, 101 deletions
diff --git a/include/LibreOfficeKit/LibreOfficeKit.h b/include/LibreOfficeKit/LibreOfficeKit.h
index c7dac9aed627..f8a62b243959 100644
--- a/include/LibreOfficeKit/LibreOfficeKit.h
+++ b/include/LibreOfficeKit/LibreOfficeKit.h
@@ -31,103 +31,6 @@ typedef struct _LibreOfficeKitDocumentClass LibreOfficeKitDocumentClass;
#define LIBREOFFICEKIT_HAS(pKit,member) LIBREOFFICEKIT_HAS_MEMBER(LibreOfficeKitClass,member,(pKit)->pClass->nSize)
#ifdef LOK_USE_UNSTABLE_API
-typedef enum
-{
- LOK_DOCTYPE_TEXT,
- LOK_DOCTYPE_SPREADSHEET,
- LOK_DOCTYPE_PRESENTATION,
- LOK_DOCTYPE_DRAWING,
- LOK_DOCTYPE_OTHER
-}
-LibreOfficeKitDocumentType;
-
-typedef enum
-{
- LOK_PARTMODE_DEFAULT,
- LOK_PARTMODE_SLIDE,
- LOK_PARTMODE_NOTES,
- LOK_PARTMODE_SLIDENOTES,
- LOK_PARTMODE_EMBEDDEDOBJ
-}
-LibreOfficeKitPartMode;
-
-typedef enum
-{
- /**
- * Any tiles which are over the rectangle described in the payload are no
- * longer valid.
- *
- * Rectangle format: "width, height, x, y", where all numbers are document
- * coordinates, in twips.
- */
- LOK_CALLBACK_INVALIDATE_TILES,
- /**
- * The size and/or the position of the visible cursor changed.
- *
- * Rectangle format is the same as LOK_CALLBACK_INVALIDATE_TILES.
- */
- LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR,
- /**
- * The list of rectangles representing the current text selection changed.
- *
- * List format is "rectangle1[; rectangle2[; ...]]" (without quotes and
- * brackets), where rectangleN has the same format as
- * LOK_CALLBACK_INVALIDATE_TILES. When there is no selection, an empty
- * string is provided.
- */
- LOK_CALLBACK_TEXT_SELECTION,
- /**
- * The size and/or the position of the cursor rectangle at the text
- * selection start changed.
- *
- * If this callback is emitted, it's always followed by a
- * LOK_CALLBACK_TEXT_SELECTION one. Rectangle format is the same as
- * LOK_CALLBACK_INVALIDATE_TILES.
- */
- LOK_CALLBACK_TEXT_SELECTION_START,
- /**
- * The size and/or the position of the cursor rectangle at the text
- * selection end changed.
- *
- * If this callback is emitted, it's always followed by a
- * LOK_CALLBACK_TEXT_SELECTION one. Rectangle format is the same as
- * LOK_CALLBACK_INVALIDATE_TILES.
- */
- LOK_CALLBACK_TEXT_SELECTION_END
-}
-LibreOfficeKitCallbackType;
-
-typedef enum
-{
- /// A key on the keyboard is pressed.
- LOK_KEYEVENT_KEYINPUT,
- /// A key on the keyboard is released.
- LOK_KEYEVENT_KEYUP
-}
-LibreOfficeKitKeyEventType;
-
-typedef enum
-{
- /// A pressed gesture has started.
- LOK_MOUSEEVENT_MOUSEBUTTONDOWN,
- /// A pressed gesture has finished.
- LOK_MOUSEEVENT_MOUSEBUTTONUP,
- /// A change has happened during a press gesture.
- LOK_MOUSEEVENT_MOUSEMOVE
-}
-LibreOfficeKitMouseEventType;
-
-typedef enum
-{
- /// The start of selection is to be adjusted.
- LOK_SETTEXTSELECTION_START,
- /// The end of selection is to be adjusted.
- LOK_SETTEXTSELECTION_END,
- /// Both the start and the end of selection is to be adjusted.
- LOK_SETTEXTSELECTION_RESET
-}
-LibreOfficeKitSetTextSelectionType;
-
typedef void (*LibreOfficeKitCallback)(int nType, const char* pPayload, void* pData);
#endif // LOK_USE_UNSTABLE_API
@@ -168,7 +71,11 @@ struct _LibreOfficeKitDocumentClass
const char* pFormat,
const char* pFilterOptions);
#ifdef LOK_USE_UNSTABLE_API
- LibreOfficeKitDocumentType (*getDocumentType) (LibreOfficeKitDocument* pThis);
+ /** Get document type.
+ *
+ * @returns an element of the LibreOfficeKitDocumentType enum.
+ */
+ int (*getDocumentType) (LibreOfficeKitDocument* pThis);
/** Get number of part that the document contains.
* Part refers to either indivual sheets in a Spreadsheet,
@@ -185,8 +92,12 @@ struct _LibreOfficeKitDocumentClass
char* (*getPartName) (LibreOfficeKitDocument* pThis,
int nPart);
+ /** Sets mode of the current part.
+ *
+ * @param nMode - element from the LibreOfficeKitPartMode enum.
+ */
void (*setPartMode) (LibreOfficeKitDocument* pThis,
- LibreOfficeKitPartMode eMode);
+ int nMode);
void (*paintTile) (LibreOfficeKitDocument* pThis,
unsigned char* pBuffer,
diff --git a/include/LibreOfficeKit/LibreOfficeKit.hxx b/include/LibreOfficeKit/LibreOfficeKit.hxx
index 8f1958266c01..f8d6e195c82a 100644
--- a/include/LibreOfficeKit/LibreOfficeKit.hxx
+++ b/include/LibreOfficeKit/LibreOfficeKit.hxx
@@ -44,7 +44,7 @@ public:
inline LibreOfficeKitDocument *get() { return mpDoc; }
#ifdef LOK_USE_UNSTABLE_API
- inline LibreOfficeKitDocumentType getDocumentType()
+ inline int getDocumentType()
{
return mpDoc->pClass->getDocumentType(mpDoc);
}
diff --git a/include/LibreOfficeKit/LibreOfficeKitEnums.h b/include/LibreOfficeKit/LibreOfficeKitEnums.h
new file mode 100644
index 000000000000..a8aca2f7abec
--- /dev/null
+++ b/include/LibreOfficeKit/LibreOfficeKitEnums.h
@@ -0,0 +1,124 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#ifndef INCLUDED_LIBREOFFICEKIT_LIBREOFFICEKITENUMS_H
+#define INCLUDED_LIBREOFFICEKIT_LIBREOFFICEKITENUMS_H
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+#ifdef LOK_USE_UNSTABLE_API
+typedef enum
+{
+ LOK_DOCTYPE_TEXT,
+ LOK_DOCTYPE_SPREADSHEET,
+ LOK_DOCTYPE_PRESENTATION,
+ LOK_DOCTYPE_DRAWING,
+ LOK_DOCTYPE_OTHER
+}
+LibreOfficeKitDocumentType;
+
+typedef enum
+{
+ LOK_PARTMODE_DEFAULT,
+ LOK_PARTMODE_SLIDE,
+ LOK_PARTMODE_NOTES,
+ LOK_PARTMODE_SLIDENOTES,
+ LOK_PARTMODE_EMBEDDEDOBJ
+}
+LibreOfficeKitPartMode;
+
+typedef enum
+{
+ /**
+ * Any tiles which are over the rectangle described in the payload are no
+ * longer valid.
+ *
+ * Rectangle format: "width, height, x, y", where all numbers are document
+ * coordinates, in twips.
+ */
+ LOK_CALLBACK_INVALIDATE_TILES,
+ /**
+ * The size and/or the position of the visible cursor changed.
+ *
+ * Rectangle format is the same as LOK_CALLBACK_INVALIDATE_TILES.
+ */
+ LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR,
+ /**
+ * The list of rectangles representing the current text selection changed.
+ *
+ * List format is "rectangle1[; rectangle2[; ...]]" (without quotes and
+ * brackets), where rectangleN has the same format as
+ * LOK_CALLBACK_INVALIDATE_TILES. When there is no selection, an empty
+ * string is provided.
+ */
+ LOK_CALLBACK_TEXT_SELECTION,
+ /**
+ * The size and/or the position of the cursor rectangle at the text
+ * selection start changed.
+ *
+ * If this callback is emitted, it's always followed by a
+ * LOK_CALLBACK_TEXT_SELECTION one. Rectangle format is the same as
+ * LOK_CALLBACK_INVALIDATE_TILES.
+ */
+ LOK_CALLBACK_TEXT_SELECTION_START,
+ /**
+ * The size and/or the position of the cursor rectangle at the text
+ * selection end changed.
+ *
+ * If this callback is emitted, it's always followed by a
+ * LOK_CALLBACK_TEXT_SELECTION one. Rectangle format is the same as
+ * LOK_CALLBACK_INVALIDATE_TILES.
+ */
+ LOK_CALLBACK_TEXT_SELECTION_END
+}
+LibreOfficeKitCallbackType;
+
+typedef enum
+{
+ /// A key on the keyboard is pressed.
+ LOK_KEYEVENT_KEYINPUT,
+ /// A key on the keyboard is released.
+ LOK_KEYEVENT_KEYUP
+}
+LibreOfficeKitKeyEventType;
+
+typedef enum
+{
+ /// A pressed gesture has started.
+ LOK_MOUSEEVENT_MOUSEBUTTONDOWN,
+ /// A pressed gesture has finished.
+ LOK_MOUSEEVENT_MOUSEBUTTONUP,
+ /// A change has happened during a press gesture.
+ LOK_MOUSEEVENT_MOUSEMOVE
+}
+LibreOfficeKitMouseEventType;
+
+typedef enum
+{
+ /// The start of selection is to be adjusted.
+ LOK_SETTEXTSELECTION_START,
+ /// The end of selection is to be adjusted.
+ LOK_SETTEXTSELECTION_END,
+ /// Both the start and the end of selection is to be adjusted.
+ LOK_SETTEXTSELECTION_RESET
+}
+LibreOfficeKitSetTextSelectionType;
+
+#endif // LOK_USE_UNSTABLE_API
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // INCLUDED_LIBREOFFICEKIT_LIBREOFFICEKITENUMS_H
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/LibreOfficeKit/LibreOfficeKitGtk.h b/include/LibreOfficeKit/LibreOfficeKitGtk.h
index c1a17319a4d5..d6d720e9ec90 100644
--- a/include/LibreOfficeKit/LibreOfficeKitGtk.h
+++ b/include/LibreOfficeKit/LibreOfficeKitGtk.h
@@ -100,7 +100,7 @@ void lok_docview_set_part (LOKDocView* pDocView,
char* lok_docview_get_part_name (LOKDocView* pDocView,
int nPart);
void lok_docview_set_partmode (LOKDocView* pDocView,
- LibreOfficeKitPartMode ePartMode);
+ int nPartMode);
/// Sets if the viewer is actually an editor or not.
void lok_docview_set_edit (LOKDocView* pDocView,
gboolean bEdit);