#ifndef VCONSTANTS_H #define VCONSTANTS_H // Html: rich text file; // Markdown: Markdown text file; // List: Infinite list file like WorkFlowy; // Container: a composite file containing multiple files; enum class DocType { Html = 0, Markdown, List, Container, Invalid }; // Normal: note file managed by VNote; // Orphan: external file; enum class FileType { Normal, Orphan }; enum class ClipboardOpType { Invalid, CopyFile, CopyDir }; enum class OpenFileMode {Read = 0, Edit}; static const qreal c_webZoomFactorMax = 5; static const qreal c_webZoomFactorMin = 0.25; static const int c_tabSequenceBase = 1; // HTML and JS. static const QString c_htmlJSHolder = "JS_PLACE_HOLDER"; static const QString c_htmlExtraHolder = ""; // Directory Config file items. namespace DirConfig { static const QString c_version = "version"; static const QString c_subDirectories = "sub_directories"; static const QString c_files = "files"; static const QString c_imageFolder = "image_folder"; static const QString c_recycleBinFolder = "recycle_bin_folder"; static const QString c_name = "name"; static const QString c_createdTime = "created_time"; static const QString c_modifiedTime = "modified_time"; } static const QString c_emptyHeaderName = "[EMPTY]"; enum class TextDecoration { None, Bold, Italic, Underline, Strikethrough, InlineCode }; enum FindOption { CaseSensitive = 0x1U, WholeWordOnly = 0x2U, RegularExpression = 0x4U, IncrementalSearch = 0x8U }; enum class ImageProperty {/* ID of the image preview (long long). Unique for each source. */ ImageID = 1, /* Source type of the preview, such as image, codeblock. */ ImageSource, /* Type of the preview, block or inline. */ ImageType }; enum class PreviewImageType { Block, Inline, Invalid }; enum class PreviewImageSource { Image, CodeBlock, Invalid }; enum HighlightBlockState { Normal = 0, // A fenced code block. CodeBlockStart, CodeBlock, CodeBlockEnd, // This block is inside a HTML comment region. Comment }; enum class LineNumberType { None = 0, Absolute, Relative, CodeBlock }; #endif