merged 2.2 branch

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty
2000-07-15 19:51:35 +00:00
parent 8a693e6e04
commit f6bcfd974e
1835 changed files with 237729 additions and 67990 deletions

View File

@@ -142,8 +142,8 @@ public:
wxMask *GetMask() const { return (GetBitmapData() ? GetBitmapData()->m_bitmapMask : (wxMask*) NULL); }
void SetMask(wxMask *mask) ;
bool operator==(const wxBitmap& bitmap) { return m_refData == bitmap.m_refData; }
bool operator!=(const wxBitmap& bitmap) { return m_refData != bitmap.m_refData; }
bool operator==(const wxBitmap& bitmap) const { return m_refData == bitmap.m_refData; }
bool operator!=(const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; }
#if WXWIN_COMPATIBILITY_2
void SetOk(bool isOk);

View File

@@ -57,8 +57,8 @@ public:
virtual void SetStipple(const wxBitmap& stipple) ;
inline wxBrush& operator = (const wxBrush& brush) { if (*this == brush) return (*this); Ref(brush); return *this; }
inline bool operator == (const wxBrush& brush) { return m_refData == brush.m_refData; }
inline bool operator != (const wxBrush& brush) { return m_refData != brush.m_refData; }
inline bool operator == (const wxBrush& brush) const { return m_refData == brush.m_refData; }
inline bool operator != (const wxBrush& brush) const { return m_refData != brush.m_refData; }
inline wxColour& GetColour(void) const { return (M_BRUSHDATA ? M_BRUSHDATA->m_colour : wxNullColour); };
inline int GetStyle(void) const { return (M_BRUSHDATA ? M_BRUSHDATA->m_style : 0); };

View File

@@ -66,6 +66,8 @@ public:
// MSW only
virtual bool MSWCommand(WXUINT param, WXWORD id);
long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
protected:
virtual void DoSetItemClientData( int n, void* clientData );

View File

@@ -1,12 +1,12 @@
/////////////////////////////////////////////////////////////////////////////
// Name: colordlg.h
// Name: wx/msw/colordlg.h
// Purpose: wxColourDialog class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_COLORDLG_H_
@@ -20,25 +20,37 @@
#include "wx/dialog.h"
#include "wx/cmndata.h"
/*
* COLOUR DIALOG
*/
// ----------------------------------------------------------------------------
// wxColourDialog: dialog for choosing a colours
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxColourDialog: public wxDialog
class WXDLLEXPORT wxColourDialog : public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxColourDialog)
public:
wxColourDialog(void);
wxColourDialog();
wxColourDialog(wxWindow *parent, wxColourData *data = NULL);
bool Create(wxWindow *parent, wxColourData *data = NULL);
int ShowModal(void);
wxColourData& GetColourData(void) { return m_colourData; }
wxColourData& GetColourData() { return m_colourData; }
// override some base class virtuals
virtual void SetTitle(const wxString& title);
virtual wxString GetTitle();
virtual int ShowModal();
protected:
virtual void DoGetSize(int *width, int *height) const;
virtual void DoGetClientSize(int *width, int *height) const;
virtual void DoSetSize(int x, int y,
int width, int height,
int sizeFlags = wxSIZE_AUTO);
wxColourData m_colourData;
wxWindow* m_dialogParent;
wxString m_title;
DECLARE_DYNAMIC_CLASS(wxColourDialog)
};
#endif

View File

@@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////////
// Name: combobox.h
// Name: wx/msw/combobox.h
// Purpose: wxComboBox class
// Author: Julian Smart
// Modified by:
@@ -46,14 +46,16 @@ public:
Create(parent, id, value, pos, size, n, choices, style, validator, name);
}
bool Create(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
int n = 0, const wxString choices[] = NULL,
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr);
bool Create(wxWindow *parent,
wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
int n = 0,
const wxString choices[] = NULL,
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr);
// List functions: see wxChoice
@@ -75,7 +77,13 @@ public:
virtual void SetSelection(long from, long to);
virtual void SetEditable(bool editable);
// implementation only from now on
virtual bool MSWCommand(WXUINT param, WXWORD id);
bool MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam);
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
WXHWND GetEditHWND() const;
protected:
virtual void DoMoveWindow(int x, int y, int width, int height);

View File

@@ -78,6 +78,11 @@ public:
virtual bool RealizeResource();
virtual WXHANDLE GetResourceHandle();
virtual bool FreeResource(bool force = FALSE);
// for consistency with other wxMSW classes and to have a const
// GetResourceHandle()-like function we have a synonym for it
WXHFONT GetHFONT() const;
/*
virtual bool UseResource();
virtual bool ReleaseResource();

View File

@@ -149,6 +149,9 @@ protected:
static bool m_useNativeStatusBar;
#endif // wxUSE_STATUSBAR
// the last focused child: we restore focus to it on activation
wxWindow *m_winLastFocused;
// Data to save/restore when calling ShowFullScreen
long m_fsStyle; // Passed to ShowFullScreen
wxRect m_fsOldSize;

57
include/wx/msw/helpchm.h Normal file
View File

@@ -0,0 +1,57 @@
/////////////////////////////////////////////////////////////////////////////
// Name: helpchm.h
// Purpose: Help system: MS HTML Help implementation
// Author: Julian Smart
// Modified by:
// Created: 16/04/2000
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_HELPCHM_H_
#define _WX_HELPCHM_H_
#ifdef __GNUG__
#pragma interface "helpchm.h"
#endif
#include "wx/wx.h"
#if wxUSE_HELP
#include "wx/helpbase.h"
class WXDLLEXPORT wxCHMHelpController: public wxHelpControllerBase
{
DECLARE_CLASS(wxCHMHelpController)
public:
wxCHMHelpController() {}
~wxCHMHelpController() {}
// Must call this to set the filename
virtual bool Initialize(const wxString& file);
// If file is "", reloads file given in Initialize
virtual bool LoadFile(const wxString& file = wxEmptyString);
virtual bool DisplayContents();
virtual bool DisplaySection(int sectionNo);
virtual bool DisplaySection(const wxString& section);
virtual bool DisplayBlock(long blockNo);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit();
inline wxString GetHelpFile() const { return m_helpFile; }
protected:
// Append extension if necessary.
wxString GetValidFilename(const wxString& file) const;
protected:
wxString m_helpFile;
};
#endif // wxUSE_HELP
#endif
// _WX_HELPCHM_H_

View File

@@ -24,31 +24,33 @@
class WXDLLEXPORT wxWinHelpController: public wxHelpControllerBase
{
DECLARE_CLASS(wxWinHelpController)
DECLARE_CLASS(wxWinHelpController)
public:
wxWinHelpController() {};
~wxWinHelpController() {};
public:
wxWinHelpController(void);
~wxWinHelpController(void);
// Must call this to set the filename
virtual bool Initialize(const wxString& file);
// Must call this to set the filename and server name
virtual bool Initialize(const wxString& file);
// If file is "", reloads file given in Initialize
virtual bool LoadFile(const wxString& file = wxEmptyString);
virtual bool DisplayContents();
virtual bool DisplaySection(int sectionNo);
virtual bool DisplayBlock(long blockNo);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit();
// If file is "", reloads file given in Initialize
virtual bool LoadFile(const wxString& file = "");
virtual bool DisplayContents(void);
virtual bool DisplaySection(int sectionNo);
virtual bool DisplayBlock(long blockNo);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit(void);
virtual void OnQuit(void);
inline wxString GetHelpFile(void) const { return m_helpFile; }
inline wxString GetHelpFile() const { return m_helpFile; }
protected:
wxString m_helpFile;
// Append extension if necessary.
wxString GetValidFilename(const wxString& file) const;
private:
wxString m_helpFile;
};
#endif // wxUSE_HELP
#endif
// _WX_HELPWIN_H_
// _WX_HELPWIN_H_

View File

@@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////////
// Name: imaglist.h
// Name: wx/msw/imaglist.h
// Purpose: wxImageList class
// Author: Julian Smart
// Modified by:
@@ -49,32 +49,34 @@ enum {
// now, the app must take care of ownership issues. That is, the
// image lists must be explicitly deleted after the control(s) that uses them
// is (are) deleted, or when the app exits.
class WXDLLEXPORT wxImageList: public wxObject
class WXDLLEXPORT wxImageList : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxImageList)
public:
public:
/*
* Public interface
*/
wxImageList(void);
wxImageList();
// Creates an image list.
// Specify the width and height of the images in the list,
// whether there are masks associated with them (e.g. if creating images
// from icons), and the initial size of the list.
inline wxImageList(int width, int height, bool mask = TRUE, int initialCount = 1)
wxImageList(int width, int height, bool mask = TRUE, int initialCount = 1)
{
Create(width, height, mask, initialCount);
}
~wxImageList(void);
~wxImageList();
// Attributes
////////////////////////////////////////////////////////////////////////////
// Returns the number of images in the image list.
int GetImageCount(void) const;
int GetImageCount() const;
// Returns the size (same for all images) of the images in the list
bool GetSize(int index, int &width, int &height) const;
// Operations
////////////////////////////////////////////////////////////////////////////
@@ -118,14 +120,15 @@ class WXDLLEXPORT wxImageList: public wxObject
bool Remove(int index);
// Remove all images
bool RemoveAll(void);
bool RemoveAll();
// Draws the given image on a dc at the specified position.
// If 'solidBackground' is TRUE, Draw sets the image list background
// colour to the background colour of the wxDC, to speed up
// drawing by eliminating masked drawing where possible.
bool Draw(int index, wxDC& dc, int x, int y,
int flags = wxIMAGELIST_DRAW_NORMAL, bool solidBackground = FALSE);
int flags = wxIMAGELIST_DRAW_NORMAL,
bool solidBackground = FALSE);
// TODO: miscellaneous functionality
/*
@@ -155,7 +158,7 @@ class WXDLLEXPORT wxImageList: public wxObject
bool BeginDrag(int index, const wxPoint& hotSpot);
// Ends a drag operation.
bool EndDrag(void);
bool EndDrag();
// Call this function to move the image that is being dragged during a drag-and-drop operation.
// This function is typically called in response to a mouse move message. To begin a drag
@@ -216,10 +219,12 @@ class WXDLLEXPORT wxImageList: public wxObject
////////////////////////////////////////////////////////////////////////////
// Returns the native image list handle
inline WXHIMAGELIST GetHIMAGELIST(void) const { return m_hImageList; }
WXHIMAGELIST GetHIMAGELIST() const { return m_hImageList; }
protected:
WXHIMAGELIST m_hImageList;
DECLARE_DYNAMIC_CLASS(wxImageList)
};
#endif

View File

@@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////////
// Name: mdi.h
// Name: wx/msw/mdi.h
// Purpose: MDI (Multiple Document Interface) classes
// Author: Julian Smart
// Modified by:
@@ -121,7 +121,7 @@ private:
class WXDLLEXPORT wxMDIChildFrame : public wxFrame
{
public:
wxMDIChildFrame();
wxMDIChildFrame() { Init(); }
wxMDIChildFrame(wxMDIParentFrame *parent,
wxWindowID id,
const wxString& title,
@@ -130,6 +130,8 @@ public:
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr)
{
Init();
Create(parent, id, title, pos, size, style, name);
}
@@ -150,8 +152,10 @@ public:
virtual void Restore();
virtual void Activate();
// Handlers
// Implementation only from now on
// -------------------------------
// Handlers
bool HandleMDIActivate(long bActivate, WXHWND, WXHWND);
bool HandleWindowPosChanging(void *lpPos);
bool HandleCommand(WXWORD id, WXWORD cmd, WXHWND control);
@@ -162,14 +166,22 @@ public:
virtual void MSWDestroyWindow();
// Implementation
bool ResetWindowStyle(void *vrect);
void OnIdle(wxIdleEvent& event);
protected:
virtual void DoGetPosition(int *x, int *y) const;
virtual void DoSetClientSize(int width, int height);
virtual void InternalSetMenuBar();
// common part of all ctors
void Init();
private:
bool m_needsResize; // flag which tells us to artificially resize the frame
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxMDIChildFrame)
};
@@ -179,8 +191,6 @@ protected:
class WXDLLEXPORT wxMDIClientWindow : public wxWindow
{
DECLARE_DYNAMIC_CLASS(wxMDIClientWindow)
public:
wxMDIClientWindow() { Init(); }
wxMDIClientWindow(wxMDIParentFrame *parent, long style = 0)
@@ -207,6 +217,7 @@ protected:
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxMDIClientWindow)
};
#endif

View File

@@ -31,7 +31,8 @@ class WXDLLEXPORT wxImageList;
class WXDLLEXPORT wxWindow;
// array of notebook pages
typedef wxWindow WXDLLEXPORT wxNotebookPage; // so far, any window can be a page
//typedef wxWindow WXDLLEXPORT wxNotebookPage; // so far, any window can be a page
typedef wxWindow wxNotebookPage; // so far, any window can be a page
WX_DEFINE_EXPORTED_ARRAY(wxNotebookPage *, wxArrayPages);

View File

@@ -42,7 +42,7 @@ public:
#ifdef __WXDEBUG__
// function to return symbolic name of clipboard format (for debug messages)
static const char *GetFormatName(wxDataFormat format);
static const wxChar *GetFormatName(wxDataFormat format);
#define wxGetFormatName(format) wxDataObject::GetFormatName(format)
#else // !Debug

View File

@@ -28,6 +28,16 @@ class wxIDropSource;
class WXDLLEXPORT wxDataObject;
class WXDLLEXPORT wxWindow;
// ----------------------------------------------------------------------------
// macros
// ----------------------------------------------------------------------------
// this macro may be used instead for wxDropSource ctor arguments: it will use
// the cursor 'name' from the resources under MSW, but will expand to
// something else under GTK. If you don't use it, you will have to use #ifdef
// in the application code.
#define wxDROP_ICON(name) wxCursor(#name)
// ----------------------------------------------------------------------------
// wxDropSource is used to start the drag-&-drop operation on associated
// wxDataObject object. It's responsible for giving UI feedback while dragging.

View File

@@ -85,9 +85,9 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
#define IMPLEMENT_IUNKNOWN_METHODS(classname) \
STDMETHODIMP classname::QueryInterface(REFIID riid, void **ppv) \
{ \
wxLogQueryInterface(#classname, riid); \
wxLogQueryInterface(_T(#classname), riid); \
\
if ( IsIidFromList(riid, ms_aIids, WXSIZEOF(ms_aIids)) ) { \
if ( IsIidFromList(riid, ms_aIids, WXSIZEOF(ms_aIids)) ) { \
*ppv = this; \
AddRef(); \
\
@@ -96,20 +96,20 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
else { \
*ppv = NULL; \
\
return (HRESULT) E_NOINTERFACE; \
return (HRESULT) E_NOINTERFACE; \
} \
} \
\
STDMETHODIMP_(ULONG) classname::AddRef() \
{ \
wxLogAddRef(#classname, m_cRef); \
wxLogAddRef(_T(#classname), m_cRef); \
\
return ++m_cRef; \
} \
\
STDMETHODIMP_(ULONG) classname::Release() \
{ \
wxLogRelease(#classname, m_cRef); \
wxLogRelease(_T(#classname), m_cRef); \
\
if ( --m_cRef == 0 ) { \
delete this; \
@@ -132,11 +132,11 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
// ----------------------------------------------------------------------------
// tries to translate riid into a symbolic name, if possible
void wxLogQueryInterface(const char *szInterface, REFIID riid);
void wxLogQueryInterface(const wxChar *szInterface, REFIID riid);
// these functions print out the new value of reference counter
void wxLogAddRef (const char *szInterface, ULONG cRef);
void wxLogRelease(const char *szInterface, ULONG cRef);
void wxLogAddRef (const wxChar *szInterface, ULONG cRef);
void wxLogRelease(const wxChar *szInterface, ULONG cRef);
#else //!WXDEBUG
#define wxLogQueryInterface(szInterface, riid)

View File

@@ -49,8 +49,8 @@ public:
virtual bool Ok(void) const { return (m_refData != NULL) ; }
inline wxPalette& operator = (const wxPalette& palette) { if (*this == palette) return (*this); Ref(palette); return *this; }
inline bool operator == (const wxPalette& palette) { return m_refData == palette.m_refData; }
inline bool operator != (const wxPalette& palette) { return m_refData != palette.m_refData; }
inline bool operator == (const wxPalette& palette) const { return m_refData == palette.m_refData; }
inline bool operator != (const wxPalette& palette) const { return m_refData != palette.m_refData; }
virtual bool FreeResource(bool force = FALSE);

View File

@@ -57,8 +57,8 @@ public:
~wxPen();
inline wxPen& operator = (const wxPen& pen) { if (*this == pen) return (*this); Ref(pen); return *this; }
inline bool operator == (const wxPen& pen) { return m_refData == pen.m_refData; }
inline bool operator != (const wxPen& pen) { return m_refData != pen.m_refData; }
inline bool operator == (const wxPen& pen) const { return m_refData == pen.m_refData; }
inline bool operator != (const wxPen& pen) const { return m_refData != pen.m_refData; }
virtual bool Ok() const { return (m_refData != NULL) ; }

View File

@@ -67,44 +67,17 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT;
// this defines a CASTWNDPROC macro which casts a pointer to the type of a
// window proc
#ifdef __GNUWIN32_OLD__
# define CASTWNDPROC (long unsigned)
#define CASTWNDPROC (long unsigned)
#else
# ifdef __BORLANDC__
# ifdef __WIN32__
#if __BORLANDC__ > 0x530
typedef long (__stdcall * WndProcCast)( HWND__*, unsigned int, unsigned int, long) ;
#else
typedef int (pascal * WndProcCast) ();
#endif
# define CASTWNDPROC (WndProcCast)
# else
typedef int (pascal * WndProcCast) ();
# define CASTWNDPROC (WndProcCast)
# endif
# else
# if defined (__WIN32__) && defined(STRICT)
typedef long (_stdcall * WndProcCast) (HWND, unsigned int, unsigned int, long);
# define CASTWNDPROC (WndProcCast)
# elif defined(__WIN16__)
# ifdef __BORLANDC__
typedef int (pascal * WndProcCast) ();
# define CASTWNDPROC (WndProcCast)
# else
# if defined(__VISUALC__) && defined(STRICT)
# define CASTWNDPROC (WNDPROC)
# else
typedef int (PASCAL * WndProcCast) ();
# define CASTWNDPROC (WndProcCast)
# endif
# endif
# else
# define CASTWNDPROC
# endif
# endif
#endif
#if defined(STRICT) || defined(__GNUC__)
typedef WNDPROC WndProcCast;
#else
typedef FARPROC WndProcCast;
#endif
#define CASTWNDPROC (WndProcCast)
#endif // __GNUWIN32_OLD__
// ---------------------------------------------------------------------------
// some stuff for old Windows versions (FIXME: what does it do here??)
@@ -182,7 +155,8 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT;
#define DEFAULT_ITEM_HEIGHT 80
// Scale font to get edit control height
#define EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy) (3*(cy)/2)
//#define EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy) (3*(cy)/2)
#define EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy) (cy+8)
// Generic subclass proc, for panel item moving/sizing and intercept
// EDIT control VK_RETURN messages
@@ -216,6 +190,8 @@ extern LONG APIENTRY _EXPORT
#define wxZeroMemory(obj) memset((void*) & obj, 0, sizeof(obj))
#endif
#if wxUSE_GUI
#include <wx/gdicmn.h>
// make conversion from wxColour and COLORREF a bit less painful
@@ -314,15 +290,15 @@ private:
#define GetHcursor() ((HCURSOR)GetHCURSOR())
#define GetHcursorOf(cursor) ((HCURSOR)(cursor).GetHCURSOR())
#define GetHfont() ((HFONT)GetHFONT())
#define GetHfontOf(font) ((HFONT)(font).GetHFONT())
#endif // wxUSE_GUI
// ---------------------------------------------------------------------------
// global data
// ---------------------------------------------------------------------------
#if 0 // where is this??
// The MakeProcInstance version of the function wxSubclassedGenericControlProc
WXDLLEXPORT_DATA(extern FARPROC) wxGenericControlSubClassProc;
#endif // 0
WXDLLEXPORT_DATA(extern wxChar*) wxBuffer;
WXDLLEXPORT_DATA(extern HINSTANCE) wxhInstance;
@@ -349,6 +325,7 @@ WXDLLEXPORT wxWindow* wxFindWinFromHandle(WXHWND hWnd);
WXDLLEXPORT void wxGetCharSize(WXHWND wnd, int *x, int *y, const wxFont *the_font);
WXDLLEXPORT void wxFillLogFont(LOGFONT *logFont, const wxFont *font);
WXDLLEXPORT wxFont wxCreateFontFromLogFont(const LOGFONT *logFont);
WXDLLEXPORT wxFontEncoding wxGetFontEncFromCharSet(int charset);
WXDLLEXPORT void wxSliderEvent(WXHWND control, WXWORD wParam, WXWORD pos);
WXDLLEXPORT void wxScrollBarEvent(WXHWND hbar, WXWORD wParam, WXWORD pos);

View File

@@ -81,6 +81,8 @@ public:
virtual bool SetFont(const wxFont& font);
long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
WXHWND *GetRadioButtons() const { return m_radioButtons; }
bool ContainsHWND(WXHWND hWnd) const;
void SendNotificationEvent();

View File

@@ -48,6 +48,9 @@ class WXDLLEXPORT wxRadioButton: public wxControl
virtual bool GetValue(void) const ;
bool MSWCommand(WXUINT param, WXWORD id);
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
void Command(wxCommandEvent& event);
};

View File

@@ -16,8 +16,11 @@
// global settings
// ----------------------------------------------------------------------------
// define this to 0 when building wxBase library
#define wxUSE_GUI 1
// define this to 0 when building wxBase library - this can also be done from
// makefile/project file overriding the value here
#ifndef wxUSE_GUI
#define wxUSE_GUI 1
#endif // wxUSE_GUI
// ----------------------------------------------------------------------------
// compatibility settings
@@ -118,6 +121,33 @@
#define wxUSE_ON_FATAL_EXCEPTION 0
#endif
// ----------------------------------------------------------------------------
// Unicode support
// ----------------------------------------------------------------------------
// Set wxUSE_UNICODE to 1 to compile wxWindows in Unicode mode: wxChar will be
// defined as wchar_t, wxString will use Unicode internally. If you set this
// to 1, you must use wxT() macro for all literal strings in the program.
//
// Unicode is currently only fully supported under Windows NT/2000 (Windows 9x
// doesn't support it and the programs compiled in Unicode mode will not run
// under 9x).
//
// Default is 0
//
// Recommended setting: 0 (unless you only plan to use Windows NT/2000)
#define wxUSE_UNICODE 0
// Setting wxUSE_WCHAR_T to 1 gives you some degree of Unicode support without
// compiling the program in Unicode mode. More precisely, it will be possible
// to construct wxString from a wide (Unicode) string and convert any wxString
// to Unicode.
//
// Default is 1
//
// Recommended setting: 1
#define wxUSE_WCHAR_T 1
// ----------------------------------------------------------------------------
// global features
// ----------------------------------------------------------------------------
@@ -442,9 +472,10 @@
#define wxUSE_IPC 1
// 0 for no interprocess comms
// Note: wxHELP uses IPC under X so these are interdependent!
#define wxUSE_HELP 1
// 0 for no help facility
#define wxUSE_MS_HTML_HELP 0
// 0 for no MS HTML Help
#define wxUSE_RESOURCES 1
// 0 for no wxGetResource/wxWriteResource
#define wxUSE_CONSTRAINTS 1
@@ -502,6 +533,14 @@
// Support for backward scrolling cursors is dependent on the
// data source as well as the ODBC driver being used.
#define wxODBC_BACKWARD_COMPATABILITY 0
// Default is 0. Set to 1 to use the deprecated classes, enum
// types, function, member variables. With a setting of 1, full
// backward compatability with the 2.0.x release is possible.
// It is STRONGLY recommended that this be set to 0, as
// future development will be done only on the non-deprecated
// functions/classes/member variables/etc.
// ----------------------------------------------------------------------------
// other compiler (mis)features
// ----------------------------------------------------------------------------
@@ -545,8 +584,6 @@
// Windows-only settings
// ----------------------------------------------------------------------------
// Most of the settings in this section are obsolete or not used
// Make settings compatible with MFC
#define wxUSE_MFC 0
@@ -557,7 +594,6 @@
#define wxUSE_CTL3D 0
#else
// Define 1 to use Microsoft CTL3D library.
// See note above about using FAFA and CTL3D.
#define wxUSE_CTL3D 1
#endif
@@ -580,6 +616,10 @@
// Define 1 for font size to be backward compatible
// to 1.63 and earlier. 1.64 and later define point
// sizes to be compatible with Windows.
#define wxDIALOG_UNIT_COMPATIBILITY 0
// Set to 0 for accurate dialog units, else
// 1 to be as per 2.1.16 and before. If migrating
// between versions, your dialogs may seem to shrink.
#define wxUSE_PENWINDOWS 0
// Set to 1 to use PenWindows
@@ -596,8 +636,8 @@
// disable the settings which don't work for some compilers
// ----------------------------------------------------------------------------
// These don't work as expected for mingw32 and cygwin32
#if defined(__GNUWIN32__)
// These don't work as expected for mingw32 and cygwin32
#undef wxUSE_MEMORY_TRACING
#define wxUSE_MEMORY_TRACING 0
@@ -606,8 +646,18 @@
#undef wxUSE_DEBUG_NEW_ALWAYS
#define wxUSE_DEBUG_NEW_ALWAYS 0
#undef wxUSE_MS_HTML_HELP
#define wxUSE_MS_HTML_HELP 0
#endif // __GNUWIN32__
// Cygwin b20 doesn't have wcslen
#if defined(__GNUWIN32__) && !defined(__MINGW32__)
#undef wxUSE_WCHAR_T
#define wxUSE_WCHAR_T 0
#endif
// MFC duplicates these operators
#if wxUSE_MFC
#undef wxUSE_GLOBAL_MEMORY_OPERATORS
@@ -617,6 +667,12 @@
#define wxUSE_DEBUG_NEW_ALWAYS 0
#endif // wxUSE_MFC
// ODBC classes aren't Unicode-compatible yet
#if wxUSE_UNICODE
#undef wxUSE_ODBC
#define wxUSE_ODBC 0
#endif
#if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS)
// Can't use OLE drag and drop in Windows 3.1 because we don't know how
// to implement UUIDs
@@ -631,6 +687,11 @@
#define wxUSE_NATIVE_STATUSBAR 0
#endif
#if !wxUSE_OWNER_DRAWN
#undef wxUSE_CHECKLISTBOX
#define wxUSE_CHECKLISTBOX 0
#endif
// Salford C++ doesn't like some of the memory operator definitions
#ifdef __SALFORDC__
#undef wxUSE_MEMORY_TRACING
@@ -647,7 +708,7 @@
#undef wxUSE_OWNER_DRAWN
#define wxUSE_OWNER_DRAWN 0
#endif
#endif // __SALFORDC__
#ifdef __TWIN32__
@@ -657,7 +718,7 @@
#undef wxUSE_ODBC
#define wxUSE_ODBC 0
#endif
#endif // __TWIN32__
// BC++/Win16 can't cope with the amount of data in resource.cpp
#if defined(__WIN16__) && defined(__BORLANDC__)
@@ -677,15 +738,29 @@
#define wxUSE_LIBJPEG 0
#endif
#if defined(__BORLANDC__)
// Need a BC++-specific htmlhelp.lib before we can enable this
#undef wxUSE_MS_HTML_HELP
#define wxUSE_MS_HTML_HELP 0
#endif
// wxUSE_DBEUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode
#if defined(__BORLANDC__) && (defined(WXMAKINGDLL) || defined(WXUSINGDLL))
#undef wxUSE_DEBUG_NEW_ALWAYS
#define wxUSE_DEBUG_NEW_ALWAYS 0
#endif
#if defined(__WXMSW__) && defined(__WATCOMC__)
#undef wxUSE_LIBJPEG
#define wxUSE_LIBJPEG 0
#undef wxUSE_LIBTIFF
#define wxUSE_LIBTIFF 0
/*
#undef wxUSE_GLCANVAS
#define wxUSE_GLCANVAS 0
*/
#undef wxUSE_MS_HTML_HELP
#define wxUSE_MS_HTML_HELP 0
#undef wxUSE_WCHAR_T
#define wxUSE_WCHAR_T 0
#endif
#if defined(__WXMSW__) && !defined(__WIN32__)
@@ -726,7 +801,37 @@
#undef wxUSE_GLCANVAS
#define wxUSE_GLCANVAS 0
#undef wxUSE_MS_HTML_HELP
#define wxUSE_MS_HTML_HELP 0
#undef wxUSE_WCHAR_T
#define wxUSE_WCHAR_T 0
#endif // Win16
// ----------------------------------------------------------------------------
// check the settings consistency: do it here to abort compilation immediately
// and not almost in the very end when the relevant file fails to compile and
// you need to modify setup.h and rebuild everything
// ----------------------------------------------------------------------------
#if wxUSE_TIMEDATE && !wxUSE_LONGLONG
#error wxDateTime requires wxLongLong
#endif
#if wxUSE_TEXTFILE && !wxUSE_FILE
#error You cannot compile wxTextFile without wxFile
#endif
#if wxUSE_FILESYSTEM && !wxUSE_STREAMS
#error You cannot compile virtual file systems without wxUSE_STREAMS
#endif
#if wxUSE_HTML && !wxUSE_FILESYSTEM
#error You cannot compile wxHTML without virtual file systems
#endif
// add more tests here...
#endif
// _WX_SETUP_H_

View File

@@ -1,4 +1,4 @@
/////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
// Name: msw/spinctrl.h
// Purpose: wxSpinCtrl class declaration for Win32
// Author: Vadim Zeitlin
@@ -57,6 +57,8 @@ public:
// implementation only from now on
// -------------------------------
virtual ~wxSpinCtrl();
virtual void SetValue(int val) { wxSpinButton::SetValue(val); }
virtual int GetValue() const;
virtual bool SetFont(const wxFont &font);
@@ -65,16 +67,23 @@ public:
virtual bool Enable(bool enable = TRUE);
virtual bool Show(bool show = TRUE);
virtual bool AcceptsFocus() const { return TRUE; }
// wxSpinButton doesn't accept focus, but we do
virtual bool AcceptsFocus() const { return wxWindow::AcceptsFocus(); }
WXFARPROC GetBuddyWndProc() const { return m_oldBuddyWndProc; }
protected:
virtual void DoGetPosition(int *x, int *y) const;
virtual void DoMoveWindow(int x, int y, int width, int height);
virtual wxSize DoGetBestSize() const;
virtual void DoGetSize(int *width, int *height) const;
// the handler for wxSpinButton events
void OnSpinChange(wxSpinEvent& event);
WXHWND m_hwndBuddy;
// the data for the "buddy" text ctrl
WXHWND m_hwndBuddy;
WXFARPROC m_oldBuddyWndProc;
private:
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)

View File

@@ -115,10 +115,23 @@ public:
virtual void Command(wxCommandEvent& event);
virtual bool MSWCommand(WXUINT param, WXWORD id);
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
// In WIN16, need to override normal erasing because
// Ctl3D doesn't use the wxWindows background colour.
#ifdef __WIN16__
void OnEraseBackground(wxEraseEvent& event);
#endif
#if wxUSE_RICHEDIT
bool IsRich() const { return m_isRich; }
void SetRichEdit(bool isRich) { m_isRich = isRich; }
// rich edit controls are not compatible with normal ones and wem ust set
// the colours for them otherwise
virtual bool SetBackgroundColour(const wxColour& colour);
virtual bool SetForegroundColour(const wxColour& colour);
#endif // wxUSE_RICHEDIT
virtual void AdoptAttributesFromHWND();

View File

@@ -161,6 +161,10 @@ public:
wxWindow* GetWindowChild1(wxWindowID id);
wxWindow* GetWindowChild(wxWindowID id);
// a MSW only function which sends a size event to the window using its
// current size - this has an effect of refreshing the window layout
void SendSizeEvent();
// implementation from now on
// --------------------------

View File

@@ -177,27 +177,33 @@
#ifdef LoadLibrary
#undef LoadLibrary
inline HINSTANCE LoadLibrary(LPCTSTR lpLibFileName)
{
#ifdef _UNICODE
inline HINSTANCE LoadLibrary(LPCWSTR lpLibFileName)
{
return LoadLibraryW(lpLibFileName);
#else
return LoadLibraryA(lpLibFileName);
#endif
}
#else
inline HINSTANCE LoadLibrary(LPCSTR lpLibFileName)
{
return LoadLibraryA(lpLibFileName);
}
#endif
#endif
// FindResource
#ifdef FindResource
#undef FindResource
inline HRSRC FindResource(HMODULE hModule, LPCTSTR lpName, LPCTSTR lpType)
{
#ifdef _UNICODE
inline HRSRC FindResource(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType)
{
return FindResourceW(hModule, lpName, lpType);
#else
return FindResourceA(hModule, lpName, lpType);
#endif
}
#else
inline HRSRC FindResource(HMODULE hModule, LPCSTR lpName, LPCSTR lpType)
{
return FindResourceA(hModule, lpName, lpType);
}
#endif
#endif
// IsMaximized