]> git.saurik.com Git - wxWidgets.git/blob - contrib/src/stc/scintilla/src/LineMarker.h
GetBestFittingSize --> GetEffectiveMinSize
[wxWidgets.git] / contrib / src / stc / scintilla / src / LineMarker.h
1 // Scintilla source code edit control
2 /** @file LineMarker.h
3 ** Defines the look of a line marker in the margin .
4 **/
5 // Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org>
6 // The License.txt file describes the conditions under which this software may be distributed.
7
8 #ifndef LINEMARKER_H
9 #define LINEMARKER_H
10
11 /**
12 */
13 class LineMarker {
14 public:
15 int markType;
16 ColourPair fore;
17 ColourPair back;
18 int alpha;
19 XPM *pxpm;
20 LineMarker() {
21 markType = SC_MARK_CIRCLE;
22 fore = ColourDesired(0,0,0);
23 back = ColourDesired(0xff,0xff,0xff);
24 alpha = SC_ALPHA_NOALPHA;
25 pxpm = NULL;
26 }
27 LineMarker(const LineMarker &) {
28 // Defined to avoid pxpm being blindly copied, not as real copy constructor
29 markType = SC_MARK_CIRCLE;
30 fore = ColourDesired(0,0,0);
31 back = ColourDesired(0xff,0xff,0xff);
32 alpha = SC_ALPHA_NOALPHA;
33 pxpm = NULL;
34 }
35 ~LineMarker() {
36 delete pxpm;
37 }
38 LineMarker &operator=(const LineMarker &) {
39 // Defined to avoid pxpm being blindly copied, not as real assignment operator
40 markType = SC_MARK_CIRCLE;
41 fore = ColourDesired(0,0,0);
42 back = ColourDesired(0xff,0xff,0xff);
43 alpha = SC_ALPHA_NOALPHA;
44 delete pxpm;
45 pxpm = NULL;
46 return *this;
47 }
48 void RefreshColourPalette(Palette &pal, bool want);
49 void SetXPM(const char *textForm);
50 void SetXPM(const char * const *linesForm);
51 void Draw(Surface *surface, PRectangle &rc, Font &fontForCharacter);
52 };
53
54 #endif