// ------------
wxDC* m_pSelectedInto;
- HPS m_hPresentationSpace;
- LONG m_lId;
- // optional mask for transparent drawing
+ //
+ // Optional mask for transparent drawing
+ //
wxMask* m_pBitmapMask;
-};
+}; // end of CLASS wxBitmapRefData
// ----------------------------------------------------------------------------
// wxBitmap: a mono or colour bitmap
);
// Initialize with XPM data
- wxBitmap( char** ppData
- ,wxControl* pAnItem = NULL
- );
+ wxBitmap(const char** ppData);
+ wxBitmap(char** ppData);
// Load a file or resource
wxBitmap( const wxString& rName
// An OS/2 version that probably doesn't do anything like the msw version
wxBitmap GetBitmapForDC(wxDC& rDc) const;
- inline LONG GetId() const
- { return (GetBitmapData() ? GetBitmapData()->m_lId : 0L); }
+// inline LONG GetId() const
+// { return (GetBitmapData() ? GetBitmapData()->m_lId : 0L); }
protected:
protected:
WXHBITMAP m_hMaskBitmap;
DECLARE_DYNAMIC_CLASS(wxMask)
-private:
- HDC m_hDc;
- HPS m_hPs;
-}; // end of wxMask
+}; // end of CLASS wxMask
// ----------------------------------------------------------------------------
// wxBitmapHandler is a class which knows how to load/save bitmaps to/from file
);
private:
DECLARE_DYNAMIC_CLASS(wxBitmapHandler)
-}; // end of wxBitmapHandler
+}; // end of CLASS wxBitmapHandler
#endif
// _WX_BITMAP_H_
bool m_bOk;
#endif // WXWIN_COMPATIBILITY_2
+ UINT m_uId;
};
// ----------------------------------------------------------------------------
}
void SetSize(const wxSize& rSize) { SetSize(rSize.x, rSize.y); }
+ UINT GetId(void) const
+ {
+ wxGDIImageRefData* pData;
+
+ pData = GetGDIImageData();
+ if (!pData)
+ return 0;
+ else
+ return pData->m_uId;
+ } // end of WxWinGdi_CGDIImage::GetId
+ void SetId(UINT uId)
+ {
+ wxGDIImageRefData* pData;
+
+ EnsureHasData();
+ pData = GetGDIImageData();
+ pData->m_uId = uId;
+ }
// forward some of base class virtuals to wxGDIImageRefData
bool FreeResource(bool bForce = FALSE);
virtual WXHANDLE GetResourceHandle();
,int nWidth
,int nHeight
);
+ inline wxIcon(const char** ppData) { CreateIconFromXpm(ppData); }
+ inline wxIcon(char** ppData) { CreateIconFromXpm((const char**)ppData); }
wxIcon( const wxString& rName
,long lFlags = wxBITMAP_TYPE_ICO_RESOURCE
,int nDesiredWidth = -1
inline void SetHICON(WXHICON hIcon) { SetHandle((WXHANDLE)hIcon); }
inline WXHICON GetHICON() const { return (WXHICON)GetHandle(); }
+ void CopyFromBitmap(const wxBitmap& rBmp);
protected:
virtual wxGDIImageRefData* CreateData() const
{
return new wxIconRefData;
}
+ void CreateIconFromXpm(const char **ppData);
private:
DECLARE_DYNAMIC_CLASS(wxIcon)
#define GetHdc() ((HDC)GetHDC())
#define GetHdcOf(dc) ((HDC)(dc).GetHDC())
+#define GetHbitmap() ((HBITMAP)GetHBITMAP())
+#define GetHbitmapOf(bmp) ((HBITMAP)(bmp).GetHBITMAP())
+
#define GetHicon() ((HICON)GetHICON())
#define GetHiconOf(icon) ((HICON)(icon).GetHICON())
#define GetHmenu() ((HMENU)GetHMenu())
#define GetHmenuOf(menu) ((HMENU)menu->GetHMenu())
+#define GetHcursor() ((HCURSOR)GetHCURSOR())
+#define GetHcursorOf(cursor) ((HCURSOR)(cursor).GetHCURSOR())
+
+#define GetHfont() ((HFONT)GetHFONT())
+#define GetHfontOf(font) ((HFONT)(font).GetHFONT())
+
+// OS/2 convention of the mask is opposed to the wxWindows one, so we need
+// to invert the mask each time we pass one/get one to/from Windows
+extern HBITMAP wxInvertMask(HBITMAP hbmpMask, int w = 0, int h = 0);
+
// ---------------------------------------------------------------------------
// global data
// ---------------------------------------------------------------------------
const wxEventType wxEVT_TASKBAR_LEFT_DCLICK = wxEVT_FIRST + 1555;
const wxEventType wxEVT_TASKBAR_RIGHT_DCLICK = wxEVT_FIRST + 1556;
-#define EVT_TASKBAR_MOVE(fn) { wxEVT_TASKBAR_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_LEFT_DOWN(fn) { wxEVT_TASKBAR_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_LEFT_UP(fn) { wxEVT_TASKBAR_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_RIGHT_DOWN(fn) { wxEVT_TASKBAR_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_RIGHT_UP(fn) { wxEVT_TASKBAR_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_LEFT_DCLICK(fn) { wxEVT_TASKBAR_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
-#define EVT_TASKBAR_RIGHT_DCLICK(fn) { wxEVT_TASKBAR_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL },
+#define EVT_TASKBAR_MOVE(fn) wxEventTableEntry(wxEVT_TASKBAR_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_LEFT_DOWN(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_LEFT_UP(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_RIGHT_DOWN(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_RIGHT_UP(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_LEFT_DCLICK(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
+#define EVT_TASKBAR_RIGHT_DCLICK(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL),
#endif