diff options
26 files changed, 115 insertions, 60 deletions
diff --git a/zlibrary/text/CMakeLists.txt b/zlibrary/text/CMakeLists.txt index 62b1262..ea2bbb8 100644 --- a/zlibrary/text/CMakeLists.txt +++ b/zlibrary/text/CMakeLists.txt @@ -1,11 +1,15 @@ include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/zlibrary/core/include + ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/zlibrary/core/include + ${CMAKE_BINARY_DIR}/zlibrary/text/include ) +configure_file( include/text_export.h.cmake include/text_export.h ) + + ##### libzltext-tqt (shared) file( GLOB_RECURSE _zltext_cpp_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp) diff --git a/zlibrary/text/include/ZLTextArea.h b/zlibrary/text/include/ZLTextArea.h index a1bda7f..03b0a7d 100644 --- a/zlibrary/text/include/ZLTextArea.h +++ b/zlibrary/text/include/ZLTextArea.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTAREA_H__ #define __ZLTEXTAREA_H__ +#include "text_export.h" + #include <vector> #include <set> @@ -38,7 +40,7 @@ class ZLTextLineInfoPtr; struct ZLTextTreeNodeInfo; class ZLTextSelectionModel; -class ZLTextArea { +class ZLTEXT_EXPORT ZLTextArea { public: class Style; diff --git a/zlibrary/text/include/ZLTextAreaController.h b/zlibrary/text/include/ZLTextAreaController.h index 096c308..17e0bb9 100644 --- a/zlibrary/text/include/ZLTextAreaController.h +++ b/zlibrary/text/include/ZLTextAreaController.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTAREACONTROLLER_H__ #define __ZLTEXTAREACONTROLLER_H__ +#include "text_export.h" + #include <vector> #include <set> @@ -30,7 +32,7 @@ #include "ZLTextArea.h" -class ZLTextAreaController { +class ZLTEXT_EXPORT ZLTextAreaController { public: enum ScrollingMode { diff --git a/zlibrary/text/include/ZLTextAreaStyle.h b/zlibrary/text/include/ZLTextAreaStyle.h index 90f4f05..1a3fb23 100644 --- a/zlibrary/text/include/ZLTextAreaStyle.h +++ b/zlibrary/text/include/ZLTextAreaStyle.h @@ -20,12 +20,14 @@ #ifndef __ZLTEXTAREASTYLE_H__ #define __ZLTEXTAREASTYLE_H__ +#include "text_export.h" + #include <ZLTextParagraphCursor.h> #include <ZLTextArea.h> class ZLTextStyle; -class ZLTextArea::Style { +class ZLTEXT_EXPORT ZLTextArea::Style { public: Style(const ZLTextArea &area, shared_ptr<ZLTextStyle> style); diff --git a/zlibrary/text/include/ZLTextDecoratedStyle.h b/zlibrary/text/include/ZLTextDecoratedStyle.h index aab8ed2..e26a4e8 100644 --- a/zlibrary/text/include/ZLTextDecoratedStyle.h +++ b/zlibrary/text/include/ZLTextDecoratedStyle.h @@ -20,10 +20,12 @@ #ifndef __ZLTEXTSTYLEIMPLEMENTATION_H__ #define __ZLTEXTSTYLEIMPLEMENTATION_H__ +#include "text_export.h" + #include <ZLTextStyle.h> #include <ZLOptions.h> -class ZLTextDecoratedStyle : public ZLTextStyle { +class ZLTEXT_EXPORT ZLTextDecoratedStyle : public ZLTextStyle { protected: ZLTextDecoratedStyle(const shared_ptr<ZLTextStyle> base); @@ -40,7 +42,7 @@ private: class ZLTextStyleEntry; -class ZLTextForcedStyle : public ZLTextDecoratedStyle { +class ZLTEXT_EXPORT ZLTextForcedStyle : public ZLTextDecoratedStyle { public: ZLTextForcedStyle(shared_ptr<ZLTextStyle> base, const ZLTextStyleEntry &entry); @@ -69,7 +71,7 @@ private: const ZLTextStyleEntry &myEntry; }; -class ZLTextPartialDecoratedStyle : public ZLTextDecoratedStyle { +class ZLTEXT_EXPORT ZLTextPartialDecoratedStyle : public ZLTextDecoratedStyle { private: ZLTextPartialDecoratedStyle(const shared_ptr<ZLTextStyle> base, const ZLTextStyleDecoration &decoration); @@ -100,7 +102,7 @@ private: const ZLTextStyleDecoration &myDecoration; }; -class ZLTextFullDecoratedStyle : public ZLTextDecoratedStyle { +class ZLTEXT_EXPORT ZLTextFullDecoratedStyle : public ZLTextDecoratedStyle { private: ZLTextFullDecoratedStyle(const shared_ptr<ZLTextStyle> base, const ZLTextFullStyleDecoration &decoration); diff --git a/zlibrary/text/include/ZLTextElement.h b/zlibrary/text/include/ZLTextElement.h index 5a40600..336ceb1 100644 --- a/zlibrary/text/include/ZLTextElement.h +++ b/zlibrary/text/include/ZLTextElement.h @@ -20,13 +20,15 @@ #ifndef __ZLTEXTELEMENT_H__ #define __ZLTEXTELEMENT_H__ +#include "text_export.h" + #include <ZLImageManager.h> #include <ZLTextKind.h> #include <ZLTextParagraph.h> #include <ZLTextStyleEntry.h> -class ZLTextElement { +class ZLTEXT_EXPORT ZLTextElement { protected: ZLTextElement(); @@ -58,7 +60,7 @@ private: ZLTextElement &operator = (const ZLTextElement&); }; -class ZLTextImageElement : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextImageElement : public ZLTextElement { public: ZLTextImageElement(const std::string &id, shared_ptr<ZLImageData> image); @@ -74,7 +76,7 @@ private: shared_ptr<ZLImageData> myImage; }; -class ZLTextSpecialElement : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextSpecialElement : public ZLTextElement { public: ZLTextSpecialElement(Kind kind); @@ -87,7 +89,7 @@ private: Kind myKind; }; -class ZLTextStyleElement : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextStyleElement : public ZLTextElement { public: ZLTextStyleElement(shared_ptr<ZLTextParagraphEntry> entry); @@ -101,7 +103,7 @@ private: const shared_ptr<ZLTextParagraphEntry> myEntry; }; -class ZLTextFixedHSpaceElement : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextFixedHSpaceElement : public ZLTextElement { public: ZLTextFixedHSpaceElement(unsigned char length); @@ -114,7 +116,7 @@ private: const unsigned char myLength; }; -class ZLTextControlElement : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextControlElement : public ZLTextElement { private: ZLTextControlElement(shared_ptr<ZLTextParagraphEntry> entry); diff --git a/zlibrary/text/include/ZLTextHyphenationReader.h b/zlibrary/text/include/ZLTextHyphenationReader.h index e071435..93d5850 100644 --- a/zlibrary/text/include/ZLTextHyphenationReader.h +++ b/zlibrary/text/include/ZLTextHyphenationReader.h @@ -20,13 +20,15 @@ #ifndef __ZLTEXTHYPHENATIONREADER_H__ #define __ZLTEXTHYPHENATIONREADER_H__ +#include "text_export.h" + #include <string> #include <ZLXMLReader.h> class ZLTextTeXHyphenator; -class ZLTextHyphenationReader : public ZLXMLReader { +class ZLTEXT_EXPORT ZLTextHyphenationReader : public ZLXMLReader { public: ZLTextHyphenationReader(ZLTextTeXHyphenator *hyphenator); diff --git a/zlibrary/text/include/ZLTextHyphenator.h b/zlibrary/text/include/ZLTextHyphenator.h index cde1e00..a2e3655 100644 --- a/zlibrary/text/include/ZLTextHyphenator.h +++ b/zlibrary/text/include/ZLTextHyphenator.h @@ -20,13 +20,15 @@ #ifndef __ZLTEXTHYPHENATOR_H__ #define __ZLTEXTHYPHENATOR_H__ +#include "text_export.h" + #include <string> #include <ZLUnicodeUtil.h> class ZLTextWord; -class ZLTextHyphenationInfo { +class ZLTEXT_EXPORT ZLTextHyphenationInfo { private: ZLTextHyphenationInfo(int length); @@ -42,7 +44,7 @@ private: friend class ZLTextHyphenator; }; -class ZLTextHyphenator { +class ZLTEXT_EXPORT ZLTextHyphenator { public: static ZLTextHyphenator &Instance(); diff --git a/zlibrary/text/include/ZLTextLineInfo.h b/zlibrary/text/include/ZLTextLineInfo.h index dfd8526..f8b8715 100644 --- a/zlibrary/text/include/ZLTextLineInfo.h +++ b/zlibrary/text/include/ZLTextLineInfo.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTLINEINFO_H__ #define __ZLTEXTLINEINFO_H__ +#include "text_export.h" + #include <vector> #include <shared_ptr.h> @@ -58,7 +60,7 @@ private: ZLTextLineInfo &operator = (const ZLTextLineInfo&); }; -class ZLTextLineInfoPtr : public shared_ptr<ZLTextLineInfo> { +class ZLTEXT_EXPORT ZLTextLineInfoPtr : public shared_ptr<ZLTextLineInfo> { public: ZLTextLineInfoPtr(ZLTextLineInfo *ptr); diff --git a/zlibrary/text/include/ZLTextModel.h b/zlibrary/text/include/ZLTextModel.h index a801710..ce6ecd1 100644 --- a/zlibrary/text/include/ZLTextModel.h +++ b/zlibrary/text/include/ZLTextModel.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTMODEL_H__ #define __ZLTEXTMODEL_H__ +#include "text_export.h" + #include <vector> #include <string> #include <algorithm> @@ -34,7 +36,7 @@ class ZLTextParagraph; class ZLTextTreeParagraph; class ZLTextStyleEntry; -class ZLTextModel { +class ZLTEXT_EXPORT ZLTextModel { public: enum Kind { @@ -92,7 +94,7 @@ private: const ZLTextModel &operator = (const ZLTextModel&); }; -class ZLTextPlainModel : public ZLTextModel { +class ZLTEXT_EXPORT ZLTextPlainModel : public ZLTextModel { public: ZLTextPlainModel(const std::string &language, const std::size_t rowSize); @@ -100,7 +102,7 @@ public: void createParagraph(ZLTextParagraph::Kind kind); }; -class ZLTextTreeModel : public ZLTextModel { +class ZLTEXT_EXPORT ZLTextTreeModel : public ZLTextModel { public: ZLTextTreeModel(const std::string &language); diff --git a/zlibrary/text/include/ZLTextParagraph.h b/zlibrary/text/include/ZLTextParagraph.h index a1364aa..1f092d4 100644 --- a/zlibrary/text/include/ZLTextParagraph.h +++ b/zlibrary/text/include/ZLTextParagraph.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTPARAGRAPH_H__ #define __ZLTEXTPARAGRAPH_H__ +#include "text_export.h" + #include <map> #include <vector> #include <string> @@ -33,7 +35,7 @@ class ZLImage; typedef std::map<std::string,shared_ptr<const ZLImage> > ZLImageMap; -class ZLTextParagraphEntry { +class ZLTEXT_EXPORT ZLTextParagraphEntry { public: enum Kind { @@ -59,7 +61,7 @@ private: // disable copying const ZLTextParagraphEntry &operator = (const ZLTextParagraphEntry &entry); }; -class ZLTextControlEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ZLTextControlEntry : public ZLTextParagraphEntry { protected: ZLTextControlEntry(ZLTextKind kind, bool isStart); @@ -77,7 +79,7 @@ private: friend class ZLTextControlEntryPool; }; -class ZLTextFixedHSpaceEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ZLTextFixedHSpaceEntry : public ZLTextParagraphEntry { public: ZLTextFixedHSpaceEntry(unsigned char length); @@ -87,7 +89,7 @@ private: const unsigned char myLength; }; -class ZLTextControlEntryPool { +class ZLTEXT_EXPORT ZLTextControlEntryPool { public: static ZLTextControlEntryPool Pool; @@ -102,7 +104,7 @@ private: std::map<ZLTextKind, shared_ptr<ZLTextParagraphEntry> > myEndEntries; }; -class ZLTextHyperlinkControlEntry : public ZLTextControlEntry { +class ZLTEXT_EXPORT ZLTextHyperlinkControlEntry : public ZLTextControlEntry { public: ZLTextHyperlinkControlEntry(const char *address); @@ -116,7 +118,7 @@ private: ZLHyperlinkType myHyperlinkType; }; -class ZLTextEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ZLTextEntry : public ZLTextParagraphEntry { public: ZLTextEntry(const char *address); @@ -129,7 +131,7 @@ private: const char *myAddress; }; -class ImageEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ImageEntry : public ZLTextParagraphEntry { public: ImageEntry(const std::string &id, const ZLImageMap *imageMap, short vOffset); @@ -144,7 +146,7 @@ private: const short myVOffset; }; -class ResetBidiEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ResetBidiEntry : public ZLTextParagraphEntry { public: static const shared_ptr<ZLTextParagraphEntry> Instance; @@ -153,7 +155,7 @@ private: ResetBidiEntry(); }; -class ZLTextParagraph { +class ZLTEXT_EXPORT ZLTextParagraph { public: class Iterator { @@ -208,7 +210,7 @@ friend class ZLTextModel; friend class ZLTextPlainModel; }; -class ZLTextSpecialParagraph : public ZLTextParagraph { +class ZLTEXT_EXPORT ZLTextSpecialParagraph : public ZLTextParagraph { private: ZLTextSpecialParagraph(Kind kind); @@ -223,7 +225,7 @@ private: friend class ZLTextPlainModel; }; -class ZLTextTreeParagraph : public ZLTextParagraph { +class ZLTEXT_EXPORT ZLTextTreeParagraph : public ZLTextParagraph { public: ZLTextTreeParagraph(ZLTextTreeParagraph *parent = 0); diff --git a/zlibrary/text/include/ZLTextParagraphBuilder.h b/zlibrary/text/include/ZLTextParagraphBuilder.h index f23b35c..ab71536 100644 --- a/zlibrary/text/include/ZLTextParagraphBuilder.h +++ b/zlibrary/text/include/ZLTextParagraphBuilder.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTPARAGRAPHBUILDER_H__ #define __ZLTEXTPARAGRAPHBUILDER_H__ +#include "text_export.h" + #include <vector> #include <string> @@ -32,7 +34,7 @@ class ZLTextParagraph; -class ZLTextParagraphCursor::Builder { +class ZLTEXT_EXPORT ZLTextParagraphCursor::Builder { public: Builder(ZLTextParagraphCursor &cursor); diff --git a/zlibrary/text/include/ZLTextParagraphCursor.h b/zlibrary/text/include/ZLTextParagraphCursor.h index 729e86e..4cad0d6 100644 --- a/zlibrary/text/include/ZLTextParagraphCursor.h +++ b/zlibrary/text/include/ZLTextParagraphCursor.h @@ -34,14 +34,14 @@ class ZLTextParagraph; -class ZLTextElementVector : public std::vector<ZLTextElement*> { +class ZLTEXT_EXPORT ZLTextElementVector : public std::vector<ZLTextElement*> { public: ZLTextElementVector(); ~ZLTextElementVector(); }; -class ZLTextElementPool { +class ZLTEXT_EXPORT ZLTextElementPool { public: static ZLTextElementPool Pool; @@ -69,10 +69,10 @@ private: Allocator<sizeof(ZLTextControlElement),32> myControlAllocator; }; -class ZLTextParagraphCursor; +class ZLTEXT_EXPORT ZLTextParagraphCursor; typedef shared_ptr<ZLTextParagraphCursor> ZLTextParagraphCursorPtr; -class ZLTextParagraphCursor { +class ZLTEXT_EXPORT ZLTextParagraphCursor { private: class Builder; @@ -117,7 +117,7 @@ protected: friend class ZLTextWordCursor; }; -class ZLTextParagraphCursorCache { +class ZLTEXT_EXPORT ZLTextParagraphCursorCache { public: static void put(const ZLTextParagraph *paragraph, ZLTextParagraphCursorPtr cursor); @@ -135,7 +135,7 @@ private: ZLTextParagraphCursorCache(); }; -class ZLTextWordCursor { +class ZLTEXT_EXPORT ZLTextWordCursor { public: ZLTextWordCursor(); @@ -176,7 +176,7 @@ private: unsigned int myCharIndex; }; -class ZLTextPlainParagraphCursor : public ZLTextParagraphCursor { +class ZLTEXT_EXPORT ZLTextPlainParagraphCursor : public ZLTextParagraphCursor { private: ZLTextPlainParagraphCursor(const ZLTextModel &model, std::size_t index); @@ -191,7 +191,7 @@ public: friend class ZLTextParagraphCursor; }; -class ZLTextTreeParagraphCursor : public ZLTextParagraphCursor { +class ZLTEXT_EXPORT ZLTextTreeParagraphCursor : public ZLTextParagraphCursor { private: ZLTextTreeParagraphCursor(const ZLTextTreeModel &model, std::size_t index); diff --git a/zlibrary/text/include/ZLTextPositionIndicator.h b/zlibrary/text/include/ZLTextPositionIndicator.h index a2e27e9..971c318 100644 --- a/zlibrary/text/include/ZLTextPositionIndicator.h +++ b/zlibrary/text/include/ZLTextPositionIndicator.h @@ -20,9 +20,11 @@ #ifndef __ZLTEXTPOSITIONINDICATOR_H__ #define __ZLTEXTPOSITIONINDICATOR_H__ +#include "text_export.h" + #include <ZLTextView.h> -class ZLTextView::PositionIndicator { +class ZLTEXT_EXPORT ZLTextView::PositionIndicator { public: PositionIndicator(ZLTextView &textView, const ZLTextPositionIndicatorInfo &info); diff --git a/zlibrary/text/include/ZLTextPositionIndicatorInfo.h b/zlibrary/text/include/ZLTextPositionIndicatorInfo.h index 9815588..3611a38 100644 --- a/zlibrary/text/include/ZLTextPositionIndicatorInfo.h +++ b/zlibrary/text/include/ZLTextPositionIndicatorInfo.h @@ -24,7 +24,7 @@ #include <ZLOptions.h> -class ZLTextPositionIndicatorInfo { +class ZLTEXT_EXPORT ZLTextPositionIndicatorInfo { protected: ZLTextPositionIndicatorInfo(); diff --git a/zlibrary/text/include/ZLTextRowMemoryAllocator.h b/zlibrary/text/include/ZLTextRowMemoryAllocator.h index a6e5221..2f836dd 100644 --- a/zlibrary/text/include/ZLTextRowMemoryAllocator.h +++ b/zlibrary/text/include/ZLTextRowMemoryAllocator.h @@ -20,9 +20,11 @@ #ifndef __ZLTEXTROWMEMORYALLOCATOR_H__ #define __ZLTEXTROWMEMORYALLOCATOR_H__ +#include "text_export.h" + #include <vector> -class ZLTextRowMemoryAllocator { +class ZLTEXT_EXPORT ZLTextRowMemoryAllocator { public: ZLTextRowMemoryAllocator(const std::size_t rowSize); diff --git a/zlibrary/text/include/ZLTextSelectionModel.h b/zlibrary/text/include/ZLTextSelectionModel.h index bc8cfde..05efdb2 100644 --- a/zlibrary/text/include/ZLTextSelectionModel.h +++ b/zlibrary/text/include/ZLTextSelectionModel.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTSELECTIONMODEL_H__ #define __ZLTEXTSELECTIONMODEL_H__ +#include "text_export.h" + #include <set> #include <string> @@ -33,7 +35,7 @@ class ZLTextArea; class ZLImageData; struct ZLTextElementRectangle; -class ZLTextSelectionModel { +class ZLTEXT_EXPORT ZLTextSelectionModel { public: struct BoundElement { diff --git a/zlibrary/text/include/ZLTextSelectionScroller.h b/zlibrary/text/include/ZLTextSelectionScroller.h index 4bf14d8..c36de4f 100644 --- a/zlibrary/text/include/ZLTextSelectionScroller.h +++ b/zlibrary/text/include/ZLTextSelectionScroller.h @@ -20,11 +20,13 @@ #ifndef __ZLTEXTSELECTIONSCROLLER_H__ #define __ZLTEXTSELECTIONSCROLLER_H__ +#include "text_export.h" + #include <ZLRunnable.h> class ZLTextView; -class ZLTextSelectionScroller : public ZLRunnable { +class ZLTEXT_EXPORT ZLTextSelectionScroller : public ZLRunnable { public: enum Direction { diff --git a/zlibrary/text/include/ZLTextStyle.h b/zlibrary/text/include/ZLTextStyle.h index bc3f07f..a389e94 100644 --- a/zlibrary/text/include/ZLTextStyle.h +++ b/zlibrary/text/include/ZLTextStyle.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTSTYLE_H__ #define __ZLTEXTSTYLE_H__ +#include "text_export.h" + #include <string> #include <shared_ptr.h> @@ -28,7 +30,7 @@ #include <ZLTextParagraph.h> #include <ZLTextStyleEntry.h> -class ZLTextStyle { +class ZLTEXT_EXPORT ZLTextStyle { public: static const std::string REGULAR_TEXT; diff --git a/zlibrary/text/include/ZLTextStyleCollection.h b/zlibrary/text/include/ZLTextStyleCollection.h index 642f85a..e6446b7 100644 --- a/zlibrary/text/include/ZLTextStyleCollection.h +++ b/zlibrary/text/include/ZLTextStyleCollection.h @@ -20,12 +20,14 @@ #ifndef __ZLTEXTSTYLECOLLECTION_H__ #define __ZLTEXTSTYLECOLLECTION_H__ +#include "text_export.h" + #include <map> #include <ZLOptions.h> #include <ZLTextStyle.h> -class ZLTextStyleDecoration { +class ZLTEXT_EXPORT ZLTextStyleDecoration { public: ZLTextStyleDecoration(const std::string &name, int fontSizeDelta, ZLBoolean3 bold, ZLBoolean3 italic, int verticalShift, ZLBoolean3 allowHyphenations); @@ -56,7 +58,7 @@ private: std::string myColorStyle; }; -class ZLTextFullStyleDecoration : public ZLTextStyleDecoration { +class ZLTEXT_EXPORT ZLTextFullStyleDecoration : public ZLTextStyleDecoration { public: ZLTextFullStyleDecoration(const std::string &name, int fontSizeDelta, ZLBoolean3 bold, ZLBoolean3 italic, short spaceBefore, short spaceAfter, short lineStartIndent, short lineEndIndent, short firstLineIndentDelta, int verticalShift, ZLTextAlignmentType alignment, double lineSpace, ZLBoolean3 allowHyphenations); @@ -79,7 +81,7 @@ public: ZLIntegerOption LineSpacePercentOption; }; -class ZLTextStyleCollection { +class ZLTEXT_EXPORT ZLTextStyleCollection { public: static ZLTextStyleCollection &Instance(); diff --git a/zlibrary/text/include/ZLTextStyleEntry.h b/zlibrary/text/include/ZLTextStyleEntry.h index c114422..1533686 100644 --- a/zlibrary/text/include/ZLTextStyleEntry.h +++ b/zlibrary/text/include/ZLTextStyleEntry.h @@ -26,7 +26,7 @@ #include <ZLTextAlignmentType.h> #include <ZLBoolean3.h> -class ZLTextStyleEntry : public ZLTextParagraphEntry { +class ZLTEXT_EXPORT ZLTextStyleEntry : public ZLTextParagraphEntry { public: enum SizeUnit { diff --git a/zlibrary/text/include/ZLTextStyleOptions.h b/zlibrary/text/include/ZLTextStyleOptions.h index d07dd0f..e3a5d6a 100644 --- a/zlibrary/text/include/ZLTextStyleOptions.h +++ b/zlibrary/text/include/ZLTextStyleOptions.h @@ -20,6 +20,8 @@ #ifndef __ZLTEXTSTYLEOPTIONS_H__ #define __ZLTEXTSTYLEOPTIONS_H__ +#include "text_export.h" + #include <string> #include <ZLResource.h> @@ -28,7 +30,7 @@ class ZLPaintContext; -class ZLTextFontFamilyWithBaseOptionEntry : public ZLFontFamilyOptionEntry { +class ZLTEXT_EXPORT ZLTextFontFamilyWithBaseOptionEntry : public ZLFontFamilyOptionEntry { private: static std::vector<std::string> ourAllFamilies; @@ -46,7 +48,7 @@ private: }; // TODO: remove deprecated class -class ZLTextLineSpacingOptionEntry : public ZLComboOptionEntry { +class ZLTEXT_EXPORT ZLTextLineSpacingOptionEntry : public ZLComboOptionEntry { private: static std::vector<std::string> ourAllValues; @@ -67,7 +69,7 @@ private: bool myAllowBase; }; -class ZLTextLineSpaceOptionEntry : public ZLComboOptionEntry { +class ZLTEXT_EXPORT ZLTextLineSpaceOptionEntry : public ZLComboOptionEntry { private: static std::vector<std::string> ourAllValues; @@ -88,7 +90,7 @@ private: bool myAllowBase; }; -class ZLTextAlignmentOptionEntry : public ZLComboOptionEntry { +class ZLTEXT_EXPORT ZLTextAlignmentOptionEntry : public ZLComboOptionEntry { private: std::vector<std::string> &values4() const; diff --git a/zlibrary/text/include/ZLTextTeXHyphenator.h b/zlibrary/text/include/ZLTextTeXHyphenator.h index 6ddc10a..ad71c11 100644 --- a/zlibrary/text/include/ZLTextTeXHyphenator.h +++ b/zlibrary/text/include/ZLTextTeXHyphenator.h @@ -20,12 +20,14 @@ #ifndef __ZLTEXTTEXHYPHENATOR_H__ #define __ZLTEXTTEXHYPHENATOR_H__ +#include "text_export.h" + #include <vector> #include <string> #include "ZLTextHyphenator.h" -class ZLTextTeXHyphenationPattern { +class ZLTEXT_EXPORT ZLTextTeXHyphenationPattern { public: ZLTextTeXHyphenationPattern(ZLUnicodeUtil::Ucs4Char *ucs4String, int length); @@ -43,13 +45,13 @@ private: friend class ZLTextTeXPatternComparator; }; -class ZLTextTeXPatternComparator { +class ZLTEXT_EXPORT ZLTextTeXPatternComparator { public: bool operator () (const ZLTextTeXHyphenationPattern *p1, const ZLTextTeXHyphenationPattern *p2) const; }; -class ZLTextTeXHyphenator : public ZLTextHyphenator { +class ZLTEXT_EXPORT ZLTextTeXHyphenator : public ZLTextHyphenator { private: static const std::string PatternZip(); diff --git a/zlibrary/text/include/ZLTextView.h b/zlibrary/text/include/ZLTextView.h index a40f5ab..3ddd511 100644 --- a/zlibrary/text/include/ZLTextView.h +++ b/zlibrary/text/include/ZLTextView.h @@ -44,7 +44,7 @@ struct ZLTextLineInfo; class ZLTextLineInfoPtr; class ZLTextSelectionModel; -class ZLTextView : public ZLView, public ZLTextArea::Properties { +class ZLTEXT_EXPORT ZLTextView : public ZLView, public ZLTextArea::Properties { public: class PositionIndicator; diff --git a/zlibrary/text/include/ZLTextWord.h b/zlibrary/text/include/ZLTextWord.h index d37ee03..e5b699f 100644 --- a/zlibrary/text/include/ZLTextWord.h +++ b/zlibrary/text/include/ZLTextWord.h @@ -27,7 +27,7 @@ #include "ZLTextElement.h" -class ZLTextWord : public ZLTextElement { +class ZLTEXT_EXPORT ZLTextWord : public ZLTextElement { public: class Mark { diff --git a/zlibrary/text/include/text_export.h.cmake b/zlibrary/text/include/text_export.h.cmake new file mode 100644 index 0000000..fdca8ee --- /dev/null +++ b/zlibrary/text/include/text_export.h.cmake @@ -0,0 +1,13 @@ +#ifndef _TEXT_EXPORT_H_ +#define _TEXT_EXPORT_H_ + +// Set by configure +#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 + +#ifdef __KDE_HAVE_GCC_VISIBILITY +#define ZLTEXT_EXPORT __attribute__ ((visibility("default"))) +#else +#define ZLTEXT_EXPORT +#endif + +#endif |