mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 09:09:52 -06:00
Upgrade WX to r74856, mainly to support @2x.
This commit is contained in:
38
Externals/wxWidgets3/include/wx/bitmap.h
vendored
38
Externals/wxWidgets3/include/wx/bitmap.h
vendored
@ -4,7 +4,6 @@
|
||||
// Author: Vaclav Slavik
|
||||
// Modified by:
|
||||
// Created: 22.04.01
|
||||
// RCS-ID: $Id: bitmap.h 70353 2012-01-15 14:46:41Z VZ $
|
||||
// Copyright: (c) wxWidgets team
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
@ -26,6 +25,7 @@ class WXDLLIMPEXP_FWD_CORE wxBitmapHandler;
|
||||
class WXDLLIMPEXP_FWD_CORE wxIcon;
|
||||
class WXDLLIMPEXP_FWD_CORE wxMask;
|
||||
class WXDLLIMPEXP_FWD_CORE wxPalette;
|
||||
class WXDLLIMPEXP_FWD_CORE wxDC;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxVariant support
|
||||
@ -83,6 +83,23 @@ protected:
|
||||
#define wxBITMAP_SCREEN_DEPTH (-1)
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxBitmapHelpers: container for various bitmap methods common to all ports.
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Unfortunately, currently wxBitmap does not inherit from wxBitmapBase on all
|
||||
// platforms and this is not easy to fix. So we extract at least some common
|
||||
// methods into this class from which both wxBitmapBase (and hence wxBitmap on
|
||||
// all platforms where it does inherit from it) and wxBitmap in wxMSW and other
|
||||
// exceptional ports (only wxPM and old wxCocoa) inherit.
|
||||
class WXDLLIMPEXP_CORE wxBitmapHelpers
|
||||
{
|
||||
public:
|
||||
// Create a new wxBitmap from the PNG data in the given buffer.
|
||||
static wxBitmap NewFromPNGData(const void* data, size_t size);
|
||||
};
|
||||
|
||||
|
||||
// All ports except wxMSW and wxOS2 use wxBitmapHandler and wxBitmapBase as
|
||||
// base class for wxBitmapHandler; wxMSW and wxOS2 use wxGDIImageHandler as
|
||||
// base class since it allows some code reuse there.
|
||||
@ -132,12 +149,12 @@ private:
|
||||
DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
|
||||
};
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxBitmap: class which represents platform-dependent bitmap (unlike wxImage)
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class WXDLLIMPEXP_CORE wxBitmapBase : public wxGDIObject
|
||||
class WXDLLIMPEXP_CORE wxBitmapBase : public wxGDIObject,
|
||||
public wxBitmapHelpers
|
||||
{
|
||||
public:
|
||||
/*
|
||||
@ -157,6 +174,8 @@ public:
|
||||
|
||||
virtual bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH) = 0;
|
||||
virtual bool Create(const wxSize& sz, int depth = wxBITMAP_SCREEN_DEPTH) = 0;
|
||||
virtual bool CreateScaled(int w, int h, int d, double logicalScale)
|
||||
{ return Create(w*logicalScale,h*logicalScale,d); }
|
||||
|
||||
virtual int GetHeight() const = 0;
|
||||
virtual int GetWidth() const = 0;
|
||||
@ -165,6 +184,13 @@ public:
|
||||
wxSize GetSize() const
|
||||
{ return wxSize(GetWidth(), GetHeight()); }
|
||||
|
||||
// support for scaled bitmaps
|
||||
virtual double GetScaleFactor() const { return 1.0; }
|
||||
virtual double GetScaledWidth() const { return GetWidth() / GetScaleFactor(); }
|
||||
virtual double GetScaledHeight() const { return GetHeight() / GetScaleFactor(); }
|
||||
virtual wxSize GetScaledSize() const
|
||||
{ return wxSize(GetScaledWidth(), GetScaledHeight()); }
|
||||
|
||||
#if wxUSE_IMAGE
|
||||
virtual wxImage ConvertToImage() const = 0;
|
||||
|
||||
@ -243,7 +269,11 @@ protected:
|
||||
#define wxBITMAP_DEFAULT_TYPE wxBITMAP_TYPE_XPM
|
||||
#include "wx/x11/bitmap.h"
|
||||
#elif defined(__WXGTK20__)
|
||||
#define wxBITMAP_DEFAULT_TYPE wxBITMAP_TYPE_XPM
|
||||
#ifdef __WINDOWS__
|
||||
#define wxBITMAP_DEFAULT_TYPE wxBITMAP_TYPE_BMP_RESOURCE
|
||||
#else
|
||||
#define wxBITMAP_DEFAULT_TYPE wxBITMAP_TYPE_XPM
|
||||
#endif
|
||||
#include "wx/gtk/bitmap.h"
|
||||
#elif defined(__WXGTK__)
|
||||
#define wxBITMAP_DEFAULT_TYPE wxBITMAP_TYPE_XPM
|
||||
|
Reference in New Issue
Block a user