wxWidgets/include/wx/os2/icon.h
Stefan Neis 6dd0883d55 Do not put semicolons after the definition of an inline function.
Even though most compilers just ignore this, it's just wrong and if you
do get warnings about header files, they can become quite overwhelming.
Forward port of r70163.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-29 14:42:13 +00:00

93 lines
2.7 KiB
C++

/////////////////////////////////////////////////////////////////////////////
// Name: wx/os2/icon.h
// Purpose: wxIcon class
// Author: David Webster
// Modified by:
// Created: 10/09/99
// RCS-ID: $Id$
// Copyright: (c) David Webster
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_ICON_H_
#define _WX_ICON_H_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/bitmap.h"
#include "wx/os2/gdiimage.h"
#define wxIconRefDataBase wxGDIImageRefData
#define wxIconBase wxGDIImage
class WXDLLIMPEXP_CORE wxIconRefData: public wxIconRefDataBase
{
public:
wxIconRefData() { }
virtual ~wxIconRefData() { Free(); }
virtual void Free();
}; // end of
// ---------------------------------------------------------------------------
// Icon
// ---------------------------------------------------------------------------
class WXDLLIMPEXP_CORE wxIcon: public wxIconBase
{
public:
wxIcon();
wxIcon( const char bits[]
,int nWidth
,int nHeight
);
wxIcon(const char* const* ppData) { CreateIconFromXpm(ppData); }
#ifdef wxNEEDS_CHARPP
wxIcon(char** ppData) { CreateIconFromXpm(const_cast<const char* const*>(ppData)); }
#endif
wxIcon( const wxString& rName
,wxBitmapType lFlags = wxICON_DEFAULT_TYPE
,int nDesiredWidth = -1
,int nDesiredHeight = -1
);
wxIcon(const wxIconLocation& loc)
{
LoadFile(loc.GetFileName(), wxBITMAP_TYPE_ICO);
}
virtual ~wxIcon();
bool LoadFile( const wxString& rName
,wxBitmapType lFlags = wxICON_DEFAULT_TYPE
,int nDesiredWidth = -1
,int nDesiredHeight = -1
);
wxIconRefData *GetIconData() const { return (wxIconRefData *)m_refData; }
inline void SetHICON(WXHICON hIcon) { SetHandle((WXHANDLE)hIcon); }
inline WXHICON GetHICON() const { return (WXHICON)GetHandle(); }
inline bool IsXpm(void) const { return m_bIsXpm; }
inline const wxBitmap& GetXpmSrc(void) const { return m_vXpmSrc; }
void CopyFromBitmap(const wxBitmap& rBmp);
protected:
virtual wxGDIImageRefData* CreateData() const
{
return new wxIconRefData;
}
void CreateIconFromXpm(const char* const* ppData);
private:
bool m_bIsXpm;
wxBitmap m_vXpmSrc;
DECLARE_DYNAMIC_CLASS(wxIcon)
};
#endif
// _WX_ICON_H_