]> git.saurik.com Git - wxWidgets.git/blob - src/stc/scintilla/src/LineMarker.h
wxMGL fixes (patch #884758)
[wxWidgets.git] / 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 XPM *pxpm;
19 LineMarker() {
20 markType = SC_MARK_CIRCLE;
21 fore = ColourDesired(0,0,0);
22 back = ColourDesired(0xff,0xff,0xff);
23 pxpm = NULL;
24 }
25 LineMarker(const LineMarker &) {
26 // Defined to avoid pxpm being blindly copied, not as real copy constructor
27 markType = SC_MARK_CIRCLE;
28 fore = ColourDesired(0,0,0);
29 back = ColourDesired(0xff,0xff,0xff);
30 pxpm = NULL;
31 }
32 ~LineMarker() {
33 delete pxpm;
34 }
35 LineMarker &operator=(const LineMarker &) {
36 // Defined to avoid pxpm being blindly copied, not as real assignment operator
37 markType = SC_MARK_CIRCLE;
38 fore = ColourDesired(0,0,0);
39 back = ColourDesired(0xff,0xff,0xff);
40 delete pxpm;
41 pxpm = NULL;
42 return *this;
43 }
44 void RefreshColourPalette(Palette &pal, bool want);
45 void SetXPM(const char *textForm);
46 void SetXPM(const char * const *linesForm);
47 void Draw(Surface *surface, PRectangle &rc, Font &fontForCharacter);
48 };
49
50 #endif