diff options
| author | Neil <nyamatongwe@gmail.com> | 2018-03-15 10:15:10 +1100 | 
|---|---|---|
| committer | Neil <nyamatongwe@gmail.com> | 2018-03-15 10:15:10 +1100 | 
| commit | 601277bddb0a4d871b8ab90e88b5d7dfde3ec2a3 (patch) | |
| tree | 8b66bcf23cff57af312098c98147c5169fd92065 /src/LineMarker.cxx | |
| parent | 49daf8127b8d8df7a307be5c4a2b65a6a6708678 (diff) | |
| download | scintilla-mirror-601277bddb0a4d871b8ab90e88b5d7dfde3ec2a3.tar.gz | |
Use forward class definitions of XPM and RGBAImage so only code that uses them
needs to #include "XPM.h".
Move definition of standard methods on LineMarker from header to implementation
to reduce included text and further isolate use of XPM and RGBAImage.
Diffstat (limited to 'src/LineMarker.cxx')
| -rw-r--r-- | src/LineMarker.cxx | 39 | 
1 files changed, 39 insertions, 0 deletions
| diff --git a/src/LineMarker.cxx b/src/LineMarker.cxx index 261916e11..820ab9fae 100644 --- a/src/LineMarker.cxx +++ b/src/LineMarker.cxx @@ -24,6 +24,45 @@  using namespace Scintilla; +LineMarker::~LineMarker() { +} + +LineMarker::LineMarker() { +	markType = SC_MARK_CIRCLE; +	fore = ColourDesired(0, 0, 0); +	back = ColourDesired(0xff, 0xff, 0xff); +	backSelected = ColourDesired(0xff, 0x00, 0x00); +	alpha = SC_ALPHA_NOALPHA; +	customDraw = nullptr; +} + +LineMarker::LineMarker(const LineMarker &) { +	// Defined to avoid pxpm and image being blindly copied, not as a complete copy constructor. +	markType = SC_MARK_CIRCLE; +	fore = ColourDesired(0, 0, 0); +	back = ColourDesired(0xff, 0xff, 0xff); +	backSelected = ColourDesired(0xff, 0x00, 0x00); +	alpha = SC_ALPHA_NOALPHA; +	pxpm.reset(); +	image.reset(); +	customDraw = nullptr; +} + +LineMarker &LineMarker::operator=(const LineMarker &other) { +	// Defined to avoid pxpm and image being blindly copied, not as a complete assignment operator. +	if (this != &other) { +		markType = SC_MARK_CIRCLE; +		fore = ColourDesired(0, 0, 0); +		back = ColourDesired(0xff, 0xff, 0xff); +		backSelected = ColourDesired(0xff, 0x00, 0x00); +		alpha = SC_ALPHA_NOALPHA; +		pxpm.reset(); +		image.reset(); +		customDraw = nullptr; +	} +	return *this; +} +  void LineMarker::SetXPM(const char *textForm) {  	pxpm = std::make_unique<XPM>(textForm);  	markType = SC_MARK_PIXMAP; | 
