vconstants.h 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. #ifndef VCONSTANTS_H
  2. #define VCONSTANTS_H
  3. #include <QString>
  4. #include <QStringList>
  5. typedef unsigned long long TimeStamp;
  6. // Html: rich text file;
  7. // Markdown: Markdown text file;
  8. // List: Infinite list file like WorkFlowy;
  9. // Container: a composite file containing multiple files;
  10. enum class DocType { Html = 0, Markdown, List, Container, Unknown };
  11. // Note: note file managed by VNote;
  12. // Orphan: external file;
  13. enum class FileType { Note, Orphan };
  14. enum class ClipboardOpType { CopyFile, CopyDir, Invalid };
  15. namespace ClipboardConfig
  16. {
  17. static const QString c_type = "type";
  18. static const QString c_magic = "magic";
  19. static const QString c_isCut = "is_cut";
  20. static const QString c_files = "files";
  21. static const QString c_dirs = "dirs";
  22. static const QString c_format = "text/json";
  23. }
  24. enum class OpenFileMode {Read = 0, Edit, Invalid };
  25. static const qreal c_webZoomFactorMax = 5;
  26. static const qreal c_webZoomFactorMin = 0.25;
  27. static const int c_editorZoomDeltaMax = 10;
  28. static const int c_editorZoomDeltaMin = -10;
  29. static const int c_tabSequenceBase = 1;
  30. // HTML and JS.
  31. namespace HtmlHolder
  32. {
  33. static const QString c_JSHolder = "JS_PLACE_HOLDER";
  34. static const QString c_cssHolder = "CSS_PLACE_HOLDER";
  35. static const QString c_codeBlockCssHolder = "HIGHLIGHTJS_CSS_PLACE_HOLDER";
  36. static const QString c_commonCssHolder = "COMMON_CSS_PLACE_HOLDER";
  37. static const QString c_scaleFactorHolder = "SCALE_FACTOR_PLACE_HOLDER";
  38. static const QString c_globalStyleHolder = "/* STYLE_GLOBAL_PLACE_HOLDER */";
  39. static const QString c_extraHolder = "<!-- EXTRA_PLACE_HOLDER -->";
  40. static const QString c_bodyHolder = "<!-- BODY_PLACE_HOLDER -->";
  41. static const QString c_headHolder = "<!-- HEAD_PLACE_HOLDER -->";
  42. static const QString c_styleHolder = "/* STYLE_PLACE_HOLDER */";
  43. static const QString c_outlineStyleHolder = "/* STYLE_OUTLINE_PLACE_HOLDER */";
  44. static const QString c_headTitleHolder = "<!-- HEAD_TITLE_PLACE_HOLDER -->";
  45. }
  46. // Directory Config file items.
  47. namespace DirConfig
  48. {
  49. static const QString c_version = "version";
  50. static const QString c_subDirectories = "sub_directories";
  51. static const QString c_files = "files";
  52. static const QString c_attachments = "attachments";
  53. static const QString c_imageFolder = "image_folder";
  54. static const QString c_attachmentFolder = "attachment_folder";
  55. static const QString c_recycleBinFolder = "recycle_bin_folder";
  56. static const QString c_tags = "tags";
  57. static const QString c_name = "name";
  58. static const QString c_createdTime = "created_time";
  59. static const QString c_modifiedTime = "modified_time";
  60. }
  61. // Snippet Cofnig file items.
  62. namespace SnippetConfig
  63. {
  64. static const QString c_version = "version";
  65. static const QString c_snippets = "snippets";
  66. static const QString c_name = "name";
  67. static const QString c_type = "type";
  68. static const QString c_cursorMark = "cursor_mark";
  69. static const QString c_selectionMark = "selection_mark";
  70. static const QString c_shortcut = "shortcut";
  71. static const QString c_autoIndent = "auto_indent";
  72. }
  73. namespace Shortcut
  74. {
  75. static const QString c_expand = "Ctrl+B";
  76. static const QString c_info = "F2";
  77. static const QString c_copy = "Ctrl+C";
  78. static const QString c_cut = "Ctrl+X";
  79. static const QString c_paste = "Ctrl+V";
  80. }
  81. static const QString c_emptyHeaderName = "[EMPTY]";
  82. enum class TextDecoration
  83. {
  84. None,
  85. Bold,
  86. Italic,
  87. Underline,
  88. Strikethrough,
  89. InlineCode,
  90. CodeBlock,
  91. Heading
  92. };
  93. enum FindOption
  94. {
  95. CaseSensitive = 0x1U,
  96. WholeWordOnly = 0x2U,
  97. RegularExpression = 0x4U,
  98. IncrementalSearch = 0x8U
  99. };
  100. enum class ImageProperty {/* ID of the image preview (long long). Unique for each source. */
  101. ImageID = 1,
  102. /* Source type of the preview, such as image, codeblock. */
  103. ImageSource,
  104. /* Type of the preview, block or inline. */
  105. ImageType };
  106. enum class PreviewImageType { Block, Inline, Invalid };
  107. enum class PreviewImageSource { Image, CodeBlock, Invalid };
  108. enum HighlightBlockState
  109. {
  110. Normal = -1,
  111. // A fenced code block.
  112. CodeBlockStart,
  113. CodeBlock,
  114. CodeBlockEnd,
  115. HRule
  116. };
  117. // Pages to open on start up.
  118. enum class StartupPageType
  119. {
  120. None = 0,
  121. ContinueLeftOff = 1,
  122. SpecificPages = 2,
  123. Invalid
  124. };
  125. // Cursor block mode.
  126. enum class CursorBlock
  127. {
  128. None = 0,
  129. // Display a cursor block on the character on the right side of the cursor.
  130. RightSide,
  131. // Display a cursor block on the character on the left side of the cursor.
  132. LeftSide
  133. };
  134. enum class UpdateAction
  135. {
  136. // The info of a file/directory has been changed.
  137. InfoChanged = 0,
  138. // The file/directory has been moved.
  139. Moved
  140. };
  141. enum MarkdownConverterType
  142. {
  143. Hoedown = 0,
  144. Marked,
  145. MarkdownIt,
  146. Showdown
  147. };
  148. enum PlantUMLMode
  149. {
  150. DisablePlantUML = 0,
  151. OnlinePlantUML = 1,
  152. LocalPlantUML = 2
  153. };
  154. #endif