blob: 930c3bd15b616aa4aabd83e6230bd64020322b26 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
#ifndef DOCUMENTSTYLE_HPP
#define DOCUMENTSTYLE_HPP
#include <QUrl>
#include <QFont>
#include <QColor>
#include <QSettings>
struct DocumentStyle
{
enum Theme {
Fixed = 0,
AutoDarkTheme = 1,
AutoLightTheme = 2
};
DocumentStyle(bool do_init = true);
void initialiseDefaultFonts();
//! Calculates a filtered/legal file name with all non-allowed chars escaped
static QString createFileNameFromName(QString const & src, int index);
Theme theme;
//! This is only a runtime value that is used to create
//! unique font names in `derive()`.
//! This is a terrible hack
QString cookie;
QFont standard_font;
QFont h1_font;
QFont h2_font;
QFont h3_font;
QFont preformatted_font;
QColor background_color;
QColor standard_color;
QColor preformatted_color;
QColor h1_color;
QColor h2_color;
QColor h3_color;
QColor blockquote_color;
QColor internal_link_color;
QColor external_link_color;
QColor cross_scheme_link_color;
QString internal_link_prefix;
QString external_link_prefix;
double margin;
bool save(QSettings & settings) const;
bool load(QSettings & settings);
//! Create a new style with auto-generated colors for the given
//! url. The colors are based on the host name
DocumentStyle derive(QUrl const & url) const;
//! Converts this style into a CSS document for
//! non-gemini rendered files.
QString toStyleSheet() const;
};
#endif // DOCUMENTSTYLE_HPP
|