// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifndef __WINDOWH__
-#define __WINDOWH__
+#ifndef _WX_WINDOW_H_
+#define _WX_WINDOW_H_
#ifdef __GNUG__
#pragma interface "window.h"
#include "wx/string.h"
#include "wx/list.h"
#include "wx/region.h"
+#include "wx/msw/accel.h"
#define wxKEY_SHIFT 1
#define wxKEY_CTRL 2
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxValidator;
-#if USE_DRAG_AND_DROP
-class wxDropTarget;
+#if wxUSE_DRAG_AND_DROP
+class WXDLLEXPORT wxDropTarget;
#endif
-#if USE_WX_RESOURCES
+#if wxUSE_WX_RESOURCES
class WXDLLEXPORT wxResourceTable;
class WXDLLEXPORT wxItemResource;
#endif
{
DECLARE_ABSTRACT_CLASS(wxWindow)
- friend class wxUpdateIterator;
friend class wxDC;
friend class wxPaintDC;
// Enable or disable the window
virtual void Enable(bool enable);
-#if USE_DRAG_AND_DROP
+#if wxUSE_DRAG_AND_DROP
// Associate a drop target with this window (if the window already had a drop
// target, it's deleted!) and return the current drop target (may be NULL).
void SetDropTarget(wxDropTarget *pDropTarget);
inline bool GetDoubleClick(void) const;
inline void AllowDoubleClick(bool value) { SetDoubleClick(value); }
- // Old way to handle a control command
+ // Handle a control command
virtual void OnCommand(wxWindow& win, wxCommandEvent& event);
// Set/get event handler
inline virtual wxButton *GetDefaultItem(void) const;
inline virtual void SetDefaultItem(wxButton *but);
+ virtual void SetAcceleratorTable(const wxAcceleratorTable& accel);
+ inline virtual wxAcceleratorTable& GetAcceleratorTable() const { return (wxAcceleratorTable&) m_acceleratorTable; }
+
// Override to define new behaviour for default action (e.g. double clicking
// on a listbox)
virtual void OnDefaultAction(wxControl *initiatingItem);
// Resource loading
-#if USE_WX_RESOURCES
+#if wxUSE_WX_RESOURCES
virtual bool LoadFromResource(wxWindow *parent, const wxString& resourceName, const wxResourceTable *table = NULL);
virtual wxControl *CreateItem(const wxItemResource *childResource, const wxResourceTable *table = NULL);
#endif
// Does this window want to accept keyboard focus?
virtual bool AcceptsFocus() const;
+ virtual void PrepareDC( wxDC &dc ) {};
public:
////////////////////////////////////////////////////////////////////////
//// IMPLEMENTATION
////////////////////////////////////////////////////////////////////////
//// PROTECTED DATA
protected:
+ wxAcceleratorTable m_acceleratorTable;
int m_windowId;
long m_windowStyle; // Store the window's style
wxEvtHandler * m_windowEventHandler; // Usually is 'this'
bool m_useCtl3D; // Using CTL3D for this control
bool m_inOnSize; // Protection against OnSize reentry
-#ifndef __WIN32__
+#ifndef _WX_WIN32__
// Pointer to global memory, for EDIT controls that need
// special treatment to reduce USER area consumption.
WXHGLOBAL m_globalHandle;
bool m_winCaptured;
wxString m_windowName; // Window name
-#if USE_EXTENDED_STATICS
+#if wxUSE_EXTENDED_STATICS
wxList m_staticItems;
#endif
bool m_mouseInWindow;
-#if USE_DRAG_AND_DROP
+#if wxUSE_DRAG_AND_DROP
wxDropTarget *m_pDropTarget; // the current drop target or NULL
#endif //USE_DRAG_AND_DROP
// Window specific (so far)
wxWindow* WXDLLEXPORT wxGetActiveWindow(void);
-// OBSOLETE
-#if 0
-// Allows iteration through damaged rectangles in OnPaint
-class WXDLLEXPORT wxUpdateIterator
-{
- int rects; // How many rects in Update region
- int current; // Current rectangle index
- void *rp; // current rectangle
-#ifdef __WIN32__
- WXRGNDATA *rlist; // Storage for regiondata
-#endif
-
- public:
- wxUpdateIterator(wxWindow* wnd);
- ~wxUpdateIterator(void);
-
- operator int (void);
- wxUpdateIterator* operator ++(int);
- void GetRect(wxRectangle *rect);
- int GetX();
- int GetY();
- int GetW();
- int GetH();
-};
-#endif
-
WXDLLEXPORT_DATA(extern wxList) wxTopLevelWindows;
int WXDLLEXPORT wxCharCodeMSWToWX(int keySym);
int WXDLLEXPORT NewControlId(void);
#endif
- // __WINDOWH__
+ // _WX_WINDOW_H_