]> git.saurik.com Git - wxWidgets.git/blob - src/stc/scintilla/src/LineMarker.h
no real change: divide in groups the wxEvtHandler methods
[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 #ifdef SCI_NAMESPACE
12 namespace Scintilla {
13 #endif
14
15 /**
16 */
17 class LineMarker {
18 public:
19 int markType;
20 ColourPair fore;
21 ColourPair back;
22 int alpha;
23 XPM *pxpm;
24 LineMarker() {
25 markType = SC_MARK_CIRCLE;
26 fore = ColourDesired(0,0,0);
27 back = ColourDesired(0xff,0xff,0xff);
28 alpha = SC_ALPHA_NOALPHA;
29 pxpm = NULL;
30 }
31 LineMarker(const LineMarker &) {
32 // Defined to avoid pxpm being blindly copied, not as real copy constructor
33 markType = SC_MARK_CIRCLE;
34 fore = ColourDesired(0,0,0);
35 back = ColourDesired(0xff,0xff,0xff);
36 alpha = SC_ALPHA_NOALPHA;
37 pxpm = NULL;
38 }
39 ~LineMarker() {
40 delete pxpm;
41 }
42 LineMarker &operator=(const LineMarker &other) {
43 // Defined to avoid pxpm being blindly copied, not as real assignment operator
44 if ( &other != this ) {
45 markType = SC_MARK_CIRCLE;
46 fore = ColourDesired(0,0,0);
47 back = ColourDesired(0xff,0xff,0xff);
48 alpha = SC_ALPHA_NOALPHA;
49 delete pxpm;
50 pxpm = NULL;
51 }
52 return *this;
53 }
54 void RefreshColourPalette(Palette &pal, bool want);
55 void SetXPM(const char *textForm);
56 void SetXPM(const char * const *linesForm);
57 void Draw(Surface *surface, PRectangle &rc, Font &fontForCharacter);
58 };
59
60 #ifdef SCI_NAMESPACE
61 }
62 #endif
63
64 #endif