diff options
author | Borja Lorente | 2016-06-03 20:49:54 +0200 |
---|---|---|
committer | Borja Lorente | 2016-07-31 14:45:37 +0200 |
commit | f642ad1caec00295094fe89ded56a3302bafad2d (patch) | |
tree | e41cf466be142849be84dee34259777737192e68 /graphics/macgui/macwindowborder.cpp | |
parent | 1bfb1a561c61a30865ba5fadeb3cdb76831ad522 (diff) | |
download | scummvm-rg350-f642ad1caec00295094fe89ded56a3302bafad2d.tar.gz scummvm-rg350-f642ad1caec00295094fe89ded56a3302bafad2d.tar.bz2 scummvm-rg350-f642ad1caec00295094fe89ded56a3302bafad2d.zip |
GRAPHICS: Refactor MacWindow to accept MacWindowBorder
Diffstat (limited to 'graphics/macgui/macwindowborder.cpp')
-rw-r--r-- | graphics/macgui/macwindowborder.cpp | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/graphics/macgui/macwindowborder.cpp b/graphics/macgui/macwindowborder.cpp index cbb2ef0571..761e1b6853 100644 --- a/graphics/macgui/macwindowborder.cpp +++ b/graphics/macgui/macwindowborder.cpp @@ -2,9 +2,9 @@ namespace Graphics { -MacWindowBorder::MacWindowBorder() { +MacWindowBorder::MacWindowBorder() : _activeInitialized(false), _inactiveInitialized(false) { _activeBorder = nullptr; - _inactiveBorder = nullptr; + _inactiveBorder = nullptr; } @@ -15,15 +15,20 @@ MacWindowBorder::~MacWindowBorder() { delete _inactiveBorder; } -bool MacWindowBorder::empty() { return !(_activeBorder || _inactiveBorder); } +bool MacWindowBorder::hasBorder(bool active) { + return active ? _activeInitialized : _inactiveInitialized; +} -void MacWindowBorder::addActiveBorder(TransparentSurface *source) { - // Assumes NinePatchBitmap invariants hold - _activeBorder = new NinePatchBitmap(source, false); +void MacWindowBorder::addActiveBorder(TransparentSurface &source) { + assert(!_activeBorder); + _activeBorder = new NinePatchBitmap(&source, false); + _activeInitialized = true; } -void MacWindowBorder::addInactiveBorder(TransparentSurface *source) { - _inactiveBorder = new NinePatchBitmap(source, false); +void MacWindowBorder::addInactiveBorder(TransparentSurface &source) { + assert(!_inactiveBorder); + _inactiveBorder = new NinePatchBitmap(&source, false); + _inactiveInitialized = true; } void MacWindowBorder::blitBorderInto(ManagedSurface &destination, bool active) { |