VSTGUI 4.5 Graphical User Interface Framework not only for VST plugins

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
CBitmap Class Reference

Encapsulates various platform depended kinds of bitmaps. More...

Inheritance diagram for CBitmap:

## Public Types
using | PlatformBitmapPtr = SharedPointer< IPlatformBitmap >

## Public Member Functions
| CBitmap (const CResourceDescription &desc)
| Create an image from a resource identifier. More...
| CBitmap (CCoord width, CCoord height)
| Create an image with a given size. More...
| CBitmap (CPoint size, double scaleFactor=1.)
| Create an image with a given size and scale factor. More...
| CBitmap (const PlatformBitmapPtr &platformBitmap)
| ~CBitmap () noexceptoverride=default
CBitmap Methods
virtual void | draw (CDrawContext *context, const CRect &rect, const CPoint &offset=CPoint(0, 0), float alpha=1.f)
CCoord | getWidth () const
| get the width of the image More...
CCoord | getHeight () const
| get the height of the image More...
CPoint | getSize () const
| get size of image More...
bool | isLoaded () const
| check if image is loaded More...
const CResourceDescription & | getResourceDescription () const
PlatformBitmapPtr | getPlatformBitmap () const
void | setPlatformBitmap (const PlatformBitmapPtr &bitmap)
bool | addBitmap (const PlatformBitmapPtr &platformBitmap)
PlatformBitmapPtr | getBestPlatformBitmapForScaleFactor (double scaleFactor) const
Public Member Functions inherited from ReferenceCounted< T >
| ReferenceCounted ()=default
virtual | ~ReferenceCounted () noexcept=default
| ReferenceCounted (const ReferenceCounted &)
ReferenceCounted & | operator= (const ReferenceCounted &)
void | forget () override
| decrease refcount and delete object if refcount == 0 More...
void | remember () override
| increase refcount More...
virtual int32_t | getNbReference () const
| get refcount More...
virtual void | beforeDelete ()

## Protected Types
using | BitmapVector = std::vector< PlatformBitmapPtr >

## Protected Member Functions
| CBitmap ()

## Protected Attributes
CResourceDescription | resourceDesc
BitmapVector | bitmaps

## Detailed Description

Encapsulates various platform depended kinds of bitmaps.

# Changes in 4.0

In Version 4.0 CBitmap was simplified. Previous versions supported drawing a color transparent of the bitmap. Since CBitmap supports alpha drawing of bitmaps since some time, it's now the only way of drawing a bitmap with some parts transparent.

# Supported file formats

File format support is handled in a platform dependent way. On Windows GDI+ is used to import images. On Mac OS X CoreGraphics is used to import them. For cross platform compatibility it is recommended to use PNG files.

# Loading Bitmaps

You load a bitmap via a CResourceDescription which can hold a string or a number. If you use names, you need to use the real filename with extension. Then it gets automaticly loaded on Mac OS X out of the Resources folder of the vst bundle. On Windows you also specify the resource in the .rc file with the real filename.

// using a number
1001 PNG DISCARDABLE "bmp01001.png"
// using a string
RealFileName.png PNG DISCARDABLE "RealFileName.png"
CBitmap* bitmap1 = new CBitmap (1001); // number
CBitmap* bitmap2 = new CBitmap ("RealFileName.png"); // string

## Member Typedef Documentation

using BitmapVector = std::vector<PlatformBitmapPtr>
| protected

using PlatformBitmapPtr = SharedPointer<IPlatformBitmap>

## Constructor & Destructor Documentation

CBitmap | ( | const CResourceDescription & | desc | ) |
| explicit

Create an image from a resource identifier.

CBitmap | ( | CCoord | width,
|  | CCoord | height
| ) |  |

Create an image with a given size.

CBitmap | ( | CPoint | size,
|  | double | scaleFactor = `1.`
| ) |  |

Create an image with a given size and scale factor.

CBitmap | ( | const PlatformBitmapPtr & | platformBitmap | ) |
| explicit

~CBitmap | ( |  | ) |
| override default noexcept

CBitmap | ( |  | ) |
| protected

## Member Function Documentation

bool addBitmap | ( | const PlatformBitmapPtr & | platformBitmap | ) |

void draw | ( | CDrawContext * | context,
|  | const CRect & | rect,
|  | const CPoint & | offset = `CPoint (0, 0)`,
|  | float | alpha = `1.f`
| ) |  |
| virtual

Reimplemented in CNinePartTiledBitmap.

auto getBestPlatformBitmapForScaleFactor | ( | double | scaleFactor | ) | const

CCoord getHeight | ( |  | ) | const

get the height of the image

auto getPlatformBitmap | ( |  | ) | const

const CResourceDescription& getResourceDescription | ( |  | ) | const
| inline

CPoint getSize | ( |  | ) | const

get size of image

CCoord getWidth | ( |  | ) | const

get the width of the image

bool isLoaded | ( |  | ) | const
| inline

check if image is loaded

void setPlatformBitmap | ( | const PlatformBitmapPtr & | bitmap | ) |

## Member Data Documentation

BitmapVector bitmaps
| protected

CResourceDescription resourceDesc
| protected

The documentation for this class was generated from the following files:

- cbitmap.h
- cbitmap.cpp