Add first version of wxBitmapBundle and use it in wxToolBar
This first version provides only a generic implementation of wxBitmapBundle using a collection of bitmaps and only supports using it in wxToolBar in wxMSW and wxGTK. More methods of creating wxBitmapBundle will be provided later and more functions taking wxBitmap will be changed to take wxBitmapBundle later too and, of course, all the other ports will be updated to use the new API too.
This commit is contained in:
37
include/wx/private/bmpbndl.h
Normal file
37
include/wx/private/bmpbndl.h
Normal file
@@ -0,0 +1,37 @@
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Name: wx/private/bmpbndl.h
|
||||
// Purpose: wxBitmapBundleImpl declaration.
|
||||
// Author: Vadim Zeitlin
|
||||
// Created: 2021-09-22
|
||||
// Copyright: (c) 2021 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_PRIVATE_BMPBNDL_H_
|
||||
#define _WX_PRIVATE_BMPBNDL_H_
|
||||
|
||||
#include "wx/object.h"
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxBitmapBundleImpl is the base class for all wxBitmapBundle implementations
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// This class inherits from wxRefCounter to make it possible to use it with
|
||||
// wxObjectDataPtr in wxBitmapBundle.
|
||||
class wxBitmapBundleImpl : public wxRefCounter
|
||||
{
|
||||
public:
|
||||
// Return the size of the bitmaps represented by this bundle in the default
|
||||
// DPI (a.k.a. 100% resolution).
|
||||
//
|
||||
// Must always return a valid size.
|
||||
virtual wxSize GetDefaultSize() const = 0;
|
||||
|
||||
// Retrieve the bitmap of exactly the given size.
|
||||
//
|
||||
// Note that this function is non-const because it may generate the bitmap
|
||||
// on demand and cache it.
|
||||
virtual wxBitmap GetBitmap(const wxSize size) = 0;
|
||||
};
|
||||
|
||||
#endif // _WX_PRIVATE_BMPBNDL_H_
|
Reference in New Issue
Block a user