diff options
Diffstat (limited to 'qt/ScintillaEditBase/PlatQt.cpp')
-rw-r--r-- | qt/ScintillaEditBase/PlatQt.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/qt/ScintillaEditBase/PlatQt.cpp b/qt/ScintillaEditBase/PlatQt.cpp index 6503d9c19..d61abf7b2 100644 --- a/qt/ScintillaEditBase/PlatQt.cpp +++ b/qt/ScintillaEditBase/PlatQt.cpp @@ -157,6 +157,16 @@ SurfaceImpl::SurfaceImpl() : device(nullptr), painter(nullptr), deviceOwned(false), painterOwned(false), x(0), y(0), codecName(nullptr), codec(nullptr) {} + +SurfaceImpl::SurfaceImpl(int width, int height, SurfaceMode mode_) +{ + if (width < 1) width = 1; + if (height < 1) height = 1; + deviceOwned = true; + device = new QPixmap(width, height); + mode = mode_; +} + SurfaceImpl::~SurfaceImpl() { Clear(); @@ -203,6 +213,11 @@ void SurfaceImpl::InitPixMap(int width, mode = psurfOther->mode; } +std::unique_ptr<Surface> SurfaceImpl::AllocatePixMap(int width, int height) +{ + return std::make_unique<SurfaceImpl>(width, height, mode); +} + void SurfaceImpl::SetMode(SurfaceMode mode_) { mode = mode_; |