Remove duplication in wxImageList defines and always default to using the native wxImageList when available, even for wxGenericListCtrl.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Kevin Ollivier
2006-09-18 04:41:09 +00:00
parent f418332658
commit 8a3e173a02
7 changed files with 55 additions and 137 deletions

View File

@@ -19,36 +19,6 @@ class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxBitmap;
class WXDLLEXPORT wxColour;
/*
* wxImageList is used for wxListCtrl, wxTreeCtrl. These controls refer to
* images for their items by an index into an image list.
* A wxImageList is capable of creating images with optional masks from
* a variety of sources - a single bitmap plus a colour to indicate the mask,
* two bitmaps, or an icon.
*
* Image lists can also create and draw images used for drag and drop functionality.
* This is not yet implemented in wxImageList. We need to discuss a generic API
* for doing drag and drop and see whether it ties in with the Win95 view of it.
* See below for candidate functions and an explanation of how they might be
* used.
*/
#if !defined(wxIMAGELIST_DRAW_NORMAL)
// Flags for Draw
#define wxIMAGELIST_DRAW_NORMAL 0x0001
#define wxIMAGELIST_DRAW_TRANSPARENT 0x0002
#define wxIMAGELIST_DRAW_SELECTED 0x0004
#define wxIMAGELIST_DRAW_FOCUSED 0x0008
// Flag values for Set/GetImageList
enum {
wxIMAGE_LIST_NORMAL, // Normal icons
wxIMAGE_LIST_SMALL, // Small icons
wxIMAGE_LIST_STATE // State icons: unimplemented (see WIN32 documentation)
};
#endif
class WXDLLEXPORT wxGenericImageList: public wxObject
{
@@ -87,7 +57,7 @@ private:
DECLARE_DYNAMIC_CLASS(wxGenericImageList)
};
#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
#if !defined(__WXMSW__) && !defined(__WXMAC__)
/*
* wxImageList has to be a real class or we have problems with
* the run-time information.
@@ -105,7 +75,7 @@ public:
{
}
};
#endif // !__WXMSW__ || __WXUNIVERSAL__
#endif // !HAVE_NATIVE_IMAGELIST
#endif // __IMAGELISTH_G__

View File

@@ -13,18 +13,14 @@
#include "wx/defs.h"
#include "wx/object.h"
#ifdef __WXMAC__
#include "wx/imaglist.h"
#else
#include "wx/generic/imaglist.h"
#endif
#include "wx/control.h"
#include "wx/timer.h"
#include "wx/dcclient.h"
#include "wx/scrolwin.h"
#include "wx/settings.h"
#include "wx/listbase.h"
#include "wx/listctrl.h"
#include "wx/textctrl.h"
#if wxUSE_DRAG_AND_DROP
@@ -37,23 +33,6 @@ class WXDLLEXPORT wxDropTarget;
extern WXDLLEXPORT_DATA(const wxChar) wxGenericListCtrlNameStr[];
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListItem;
class WXDLLEXPORT wxListEvent;
#if (!defined(__WXMSW__) || defined(__WXUNIVERSAL__))
#ifndef __WXMAC__
class WXDLLEXPORT wxListCtrl;
#endif
#define wxImageListType wxImageList
#else
#define wxImageListType wxGenericImageList
#endif
//-----------------------------------------------------------------------------
// internal classes
//-----------------------------------------------------------------------------
@@ -136,9 +115,9 @@ public:
void SetWindowStyleFlag( long style );
void RecreateWindow() {}
long GetNextItem( long item, int geometry = wxLIST_NEXT_ALL, int state = wxLIST_STATE_DONTCARE ) const;
wxImageListType *GetImageList( int which ) const;
void SetImageList( wxImageListType *imageList, int which );
void AssignImageList( wxImageListType *imageList, int which );
wxImageList *GetImageList( int which ) const;
void SetImageList( wxImageList *imageList, int which );
void AssignImageList( wxImageList *imageList, int which );
bool Arrange( int flag = wxLIST_ALIGN_DEFAULT ); // always wxLIST_ALIGN_LEFT in wxGLC
void ClearAll();
@@ -230,9 +209,9 @@ public:
// implementation
// --------------
wxImageListType *m_imageListNormal;
wxImageListType *m_imageListSmall;
wxImageListType *m_imageListState; // what's that ?
wxImageList *m_imageListNormal;
wxImageList *m_imageListSmall;
wxImageList *m_imageListState; // what's that ?
bool m_ownsImageListNormal,
m_ownsImageListSmall,
m_ownsImageListState;