no message

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
1999-10-22 22:00:20 +00:00
parent 3f9ca77023
commit dcd307ee1f
6 changed files with 459 additions and 397 deletions

View File

@@ -20,6 +20,7 @@ class WXDLLEXPORT wxChoice: public wxChoiceBase
DECLARE_DYNAMIC_CLASS(wxChoice) DECLARE_DYNAMIC_CLASS(wxChoice)
public: public:
// ctors
inline wxChoice() { } inline wxChoice() { }
inline wxChoice(wxWindow *parent, wxWindowID id, inline wxChoice(wxWindow *parent, wxWindowID id,
@@ -41,6 +42,7 @@ class WXDLLEXPORT wxChoice: public wxChoiceBase
const wxValidator& validator = wxDefaultValidator, const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxChoiceNameStr); const wxString& name = wxChoiceNameStr);
// Implement base class virtuals
virtual int DoAppend(const wxString& item); virtual int DoAppend(const wxString& item);
virtual void Delete(int n); virtual void Delete(int n);
virtual void Clear(); virtual void Clear();
@@ -51,16 +53,17 @@ class WXDLLEXPORT wxChoice: public wxChoiceBase
virtual int FindString(const wxString& s) const; virtual int FindString(const wxString& s) const;
virtual wxString GetString(int n) const ; virtual wxString GetString(int n) const ;
virtual void SetString(int n, const wxString& s);
// OS2 only // OS2 only
virtual bool OS2Command(WXUINT param, WXWORD id); virtual bool OS2Command(WXUINT param, WXWORD id);
MRESULT OS2WindowProc(HWND hwnd, WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); MRESULT OS2WindowProc(HWND hwnd, WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
protected: protected:
virtual void DoSetClientData( int n, void* clientData ); virtual void DoSetItemClientData( int n, void* clientData );
virtual void* DoGetClientData( int n ) const; virtual void* DoGetItemClientData( int n ) const;
virtual void DoSetClientObject( int n, wxClientData* clientData ); virtual void DoSetItemClientObject( int n, wxClientData* clientData );
virtual wxClientData* DoGetClientObject( int n ) const; virtual wxClientData* DoGetItemClientObject( int n ) const;
// OS2 implementation // OS2 implementation
virtual wxSize DoGetBestSize(); virtual wxSize DoGetBestSize();
@@ -69,6 +72,7 @@ protected:
int sizeFlags = wxSIZE_AUTO); int sizeFlags = wxSIZE_AUTO);
private: private:
// Virtual function hiding supression // Virtual function hiding supression
/*
inline virtual void DoSetClientData( void *data ) inline virtual void DoSetClientData( void *data )
{ wxWindowBase::DoSetClientData(data); } { wxWindowBase::DoSetClientData(data); }
inline virtual void DoSetClientObject( wxClientData *data ) inline virtual void DoSetClientObject( wxClientData *data )
@@ -77,6 +81,7 @@ private:
{ return(wxWindowBase::DoGetClientObject());} { return(wxWindowBase::DoGetClientObject());}
inline virtual void *DoGetClientData() const inline virtual void *DoGetClientData() const
{ return(wxWindowBase::DoGetClientData());} { return(wxWindowBase::DoGetClientData());}
*/
}; };
#endif // _WX_CHOICE_H_ #endif // _WX_CHOICE_H_

View File

@@ -19,32 +19,32 @@ public:
typedef unsigned short NativeFormat; typedef unsigned short NativeFormat;
wxDataFormat(); wxDataFormat();
wxDataFormat( wxDataFormatId type ); wxDataFormat(wxDataFormatId vType);
wxDataFormat( const wxString &id ); wxDataFormat(const wxString& rId);
wxDataFormat( const wxChar *id ); wxDataFormat(const wxChar* pId);
wxDataFormat( NativeFormat format ); wxDataFormat(NativeFormat vFormat);
wxDataFormat& operator=(NativeFormat format) wxDataFormat& operator=(NativeFormat vFormat)
{ SetId(format); return *this; } { SetId(vFormat); return *this; }
// comparison (must have both versions) // comparison (must have both versions)
bool operator==(NativeFormat format) const bool operator==(NativeFormat vFormat) const
{ return m_format == (NativeFormat)format; } { return m_vFormat == (NativeFormat)vFormat; }
bool operator!=(NativeFormat format) const bool operator!=(NativeFormat vFormat) const
{ return m_format != (NativeFormat)format; } { return m_vFormat != (NativeFormat)vFormat; }
// explicit and implicit conversions to NativeFormat which is one of // explicit and implicit conversions to NativeFormat which is one of
// standard data types (implicit conversion is useful for preserving the // standard data types (implicit conversion is useful for preserving the
// compatibility with old code) // compatibility with old code)
NativeFormat GetFormatId() const { return m_format; } NativeFormat GetFormatId() const { return m_vFormat; }
operator NativeFormat() const { return m_format; } operator NativeFormat() const { return m_vFormat; }
void SetId( NativeFormat format ); void SetId(NativeFormat vFormat);
// string ids are used for custom types - this SetId() must be used for // string ids are used for custom types - this SetId() must be used for
// application-specific formats // application-specific formats
wxString GetId() const; wxString GetId() const;
void SetId( const wxChar *id ); void SetId(const wxChar* pId);
// implementation // implementation
wxDataFormatId GetType() const; wxDataFormatId GetType() const;
@@ -54,7 +54,7 @@ private:
NativeFormat m_vFormat; NativeFormat m_vFormat;
void PrepareFormats(); void PrepareFormats();
void SetType( wxDataFormatId type ); void SetType(wxDataFormatId vType);
}; };
#endif // _WX_GTK_DATAFORM_H #endif // _WX_GTK_DATAFORM_H

View File

@@ -12,9 +12,9 @@
#ifndef _WX_LISTBOX_H_ #ifndef _WX_LISTBOX_H_
#define _WX_LISTBOX_H_ #define _WX_LISTBOX_H_
#include "wx/control.h" // ----------------------------------------------------------------------------
// simple types
WXDLLEXPORT_DATA(extern const char*) wxListBoxNameStr; // ----------------------------------------------------------------------------
#if wxUSE_OWNER_DRAWN #if wxUSE_OWNER_DRAWN
class WXDLLEXPORT wxOwnerDrawn; class WXDLLEXPORT wxOwnerDrawn;
@@ -22,22 +22,22 @@ WXDLLEXPORT_DATA(extern const char*) wxListBoxNameStr;
// define the array of list box items // define the array of list box items
#include <wx/dynarray.h> #include <wx/dynarray.h>
WX_DEFINE_ARRAY(wxOwnerDrawn *, wxListBoxItemsArray); WX_DEFINE_EXPORTED_ARRAY(wxOwnerDrawn *, wxListBoxItemsArray);
#endif #endif // wxUSE_OWNER_DRAWN
// forward decl for GetSelections() // forward decl for GetSelections()
class WXDLLEXPORT wxArrayInt; class wxArrayInt;
WXDLLEXPORT_DATA(extern const char*) wxEmptyString; // ----------------------------------------------------------------------------
// List box control
// ----------------------------------------------------------------------------
// List box item class WXDLLEXPORT wxListBox : public wxListBoxBase
class WXDLLEXPORT wxListBox: public wxControl
{ {
DECLARE_DYNAMIC_CLASS(wxListBox)
public: public:
// ctors and such
wxListBox(); wxListBox();
inline wxListBox(wxWindow *parent, wxWindowID id, wxListBox(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition, const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, const wxSize& size = wxDefaultSize,
int n = 0, const wxString choices[] = NULL, int n = 0, const wxString choices[] = NULL,
@@ -56,10 +56,34 @@ class WXDLLEXPORT wxListBox: public wxControl
const wxValidator& validator = wxDefaultValidator, const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxListBoxNameStr); const wxString& name = wxListBoxNameStr);
~wxListBox(); virtual ~wxListBox();
bool OS2Command(WXUINT param, WXWORD id); // implement base class pure virtuals
virtual void Clear();
virtual void Delete(int n);
virtual int GetCount() const;
virtual wxString GetString(int n) const;
virtual void SetString(int n, const wxString& s);
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;
virtual int DoAppend(const wxString& item);
virtual void DoInsertItems(const wxArrayString& items, int pos);
virtual void DoSetItems(const wxArrayString& items, void **clientData);
virtual void DoSetFirstItem(int n);
virtual void DoSetItemClientData(int n, void* clientData);
virtual void* DoGetItemClientData(int n) const;
virtual void DoSetItemClientObject(int n, wxClientData* clientData);
virtual wxClientData* DoGetItemClientObject(int n) const;
// wxCheckListBox support
#if wxUSE_OWNER_DRAWN #if wxUSE_OWNER_DRAWN
bool OS2OnMeasure(WXMEASUREITEMSTRUCT *item); bool OS2OnMeasure(WXMEASUREITEMSTRUCT *item);
bool OS2OnDraw(WXDRAWITEMSTRUCT *item); bool OS2OnDraw(WXDRAWITEMSTRUCT *item);
@@ -74,53 +98,24 @@ class WXDLLEXPORT wxListBox: public wxControl
int GetItemIndex(wxOwnerDrawn *item) const { return m_aItems.Index(item); } int GetItemIndex(wxOwnerDrawn *item) const { return m_aItems.Index(item); }
#endif // wxUSE_OWNER_DRAWN #endif // wxUSE_OWNER_DRAWN
virtual void Append(const wxString& item); // Windows-specific code to set the horizontal extent of the listbox, if
virtual void Append(const wxString& item, void *clientData); // necessary. If s is non-NULL, it's used to calculate the horizontal
virtual void Set(int n, const wxString* choices, char **clientData = NULL); // extent. Otherwise, all strings are used.
virtual int FindString(const wxString& s) const ;
virtual void Clear();
virtual void SetSelection(int n, bool select = TRUE);
virtual void Deselect(int n);
// For single choice list item only
virtual int GetSelection() const ;
virtual void Delete(int n);
virtual void *GetClientData(int n) const ;
virtual void SetClientData(int n, void *clientData);
virtual void SetString(int n, const wxString& s);
// For single or multiple choice list item
virtual int GetSelections(wxArrayInt& aSelections) const;
virtual bool Selected(int n) const ;
virtual wxString GetString(int n) const ;
// Set the specified item at the first visible item
// or scroll to max range.
virtual void SetFirstItem(int n) ;
virtual void SetFirstItem(const wxString& s) ;
virtual void InsertItems(int nItems, const wxString items[], int pos);
virtual wxString GetStringSelection() const ;
virtual bool SetStringSelection(const wxString& s, bool flag = TRUE);
virtual int Number() const ;
void Command(wxCommandEvent& event);
// OS/2-PM-specific code to set the horizontal extent of
// the listbox, if necessary. If s is non-NULL, it's
// used to calculate the horizontal extent.
// Otherwise, all strings are used.
virtual void SetHorizontalExtent(const wxString& s = wxEmptyString); virtual void SetHorizontalExtent(const wxString& s = wxEmptyString);
// Windows callbacks
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor, virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
WXUINT message, WXWPARAM wParam, WXLPARAM lParam); WXUINT message,
WXWPARAM wParam, WXLPARAM lParam);
bool OS2Command(WXUINT param, WXWORD id);
virtual MRESULT OS2WindowProc(HWND hwnd, WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
virtual void SetupColours(); virtual void SetupColours();
protected: protected:
// do we have multiple selections?
bool HasMultipleSelection() const;
int m_noItems; int m_noItems;
int m_selected; int m_selected;
@@ -130,12 +125,17 @@ protected:
// control items // control items
wxListBoxItemsArray m_aItems; wxListBoxItemsArray m_aItems;
#endif #endif
private: private:
//Virtual function hiding suppression, do not use #if wxUSE_WX_RESOURCES
# if wxUSE_OWNER_DRAWN
virtual wxControl *CreateItem(const wxItemResource* childResource, virtual wxControl *CreateItem(const wxItemResource* childResource,
const wxItemResource* parentResource, const wxItemResource* parentResource,
const wxResourceTable *table = (const wxResourceTable *) NULL) const wxResourceTable *table = (const wxResourceTable *) NULL)
{ return(wxWindowBase::CreateItem(childResource, parentResource, table));}; { return(wxWindowBase::CreateItem(childResource, parentResource, table)); }
# endif
#endif
DECLARE_DYNAMIC_CLASS(wxListBox)
}; };
#endif #endif

View File

@@ -128,6 +128,16 @@ int wxChoice::FindString(const wxString& s) const
return 0; return 0;
} }
void wxChoice::SetString(int n, const wxString& s)
{
wxFAIL_MSG(wxT("not implemented"));
#if 0 // should do this, but no Insert() so far
Delete(n);
Insert(n + 1, s);
#endif
}
wxString wxChoice::GetString(int n) const wxString wxChoice::GetString(int n) const
{ {
size_t len = 0; // TODO: (size_t)::SendMessage(GetHwnd(), CB_GETLBTEXTLEN, n, 0); size_t len = 0; // TODO: (size_t)::SendMessage(GetHwnd(), CB_GETLBTEXTLEN, n, 0);
@@ -149,7 +159,7 @@ wxString wxChoice::GetString(int n) const
// client data // client data
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
void wxChoice::DoSetClientData( int n, void* clientData ) void wxChoice::DoSetItemClientData( int n, void* clientData )
{ {
// TODO: // TODO:
/* /*
@@ -160,7 +170,7 @@ void wxChoice::DoSetClientData( int n, void* clientData )
*/ */
} }
void* wxChoice::DoGetClientData( int n ) const void* wxChoice::DoGetItemClientData( int n ) const
{ {
// TODO: // TODO:
/* /*
@@ -178,12 +188,12 @@ void* wxChoice::DoGetClientData( int n ) const
return NULL; return NULL;
} }
void wxChoice::DoSetClientObject( int n, wxClientData* clientData ) void wxChoice::DoSetItemClientObject( int n, wxClientData* clientData )
{ {
DoSetClientData(n, clientData); DoSetClientData(n, clientData);
} }
wxClientData* wxChoice::DoGetClientObject( int n ) const wxClientData* wxChoice::DoGetItemClientObject( int n ) const
{ {
// TODO: return (wxClientData *)DoGetClientData(n); // TODO: return (wxClientData *)DoGetClientData(n);
return NULL; return NULL;

File diff suppressed because it is too large Load Diff

View File

@@ -136,9 +136,11 @@ NONESSENTIALOBJS= \
COMMONOBJS = \ COMMONOBJS = \
..\common\$D\appcmn.obj \ ..\common\$D\appcmn.obj \
..\common\$D\choiccmn.obj \ ..\common\$D\choiccmn.obj \
..\common\$D\clipcmn.obj \
..\common\$D\cmndata.obj \ ..\common\$D\cmndata.obj \
..\common\$D\config.obj \ ..\common\$D\config.obj \
..\common\$D\ctrlcmn.obj \ ..\common\$D\ctrlcmn.obj \
..\common\$D\ctrlsub.obj \
..\common\$D\date.obj \ ..\common\$D\date.obj \
..\common\$D\datstrm.obj \ ..\common\$D\datstrm.obj \
..\common\$D\db.obj \ ..\common\$D\db.obj \
@@ -178,6 +180,7 @@ COMMONOBJS = \
..\common\$D\intl.obj \ ..\common\$D\intl.obj \
..\common\$D\ipcbase.obj \ ..\common\$D\ipcbase.obj \
..\common\$D\layout.obj \ ..\common\$D\layout.obj \
..\common\$D\lboxcmn.obj \
..\common\$D\list.obj \ ..\common\$D\list.obj \
..\common\$D\log.obj \ ..\common\$D\log.obj \
..\common\$D\longlong.obj \ ..\common\$D\longlong.obj \
@@ -230,9 +233,11 @@ COMMONOBJS = \
COMLIBOBJS1 = \ COMLIBOBJS1 = \
appcmn.obj \ appcmn.obj \
choiccmn.obj \ choiccmn.obj \
clipcmn.obj \
cmndata.obj \ cmndata.obj \
config.obj \ config.obj \
ctrlcmn.obj \ ctrlcmn.obj \
ctrlsub.obj \
date.obj \ date.obj \
datstrm.obj \ datstrm.obj \
db.obj \ db.obj \
@@ -272,6 +277,7 @@ COMLIBOBJS1 = \
intl.obj \ intl.obj \
ipcbase.obj \ ipcbase.obj \
layout.obj \ layout.obj \
lboxcmn.obj \
list.obj \ list.obj \
log.obj log.obj
@@ -530,9 +536,11 @@ $(HTMLDIR)\$D:
$(COMLIBOBJS1): $(COMLIBOBJS1):
copy ..\common\$D\appcmn.obj copy ..\common\$D\appcmn.obj
copy ..\common\$D\choiccmn.obj copy ..\common\$D\choiccmn.obj
copy ..\common\$D\clipcmn.obj
copy ..\common\$D\cmndata.obj copy ..\common\$D\cmndata.obj
copy ..\common\$D\config.obj copy ..\common\$D\config.obj
copy ..\common\$D\ctrlcmn.obj copy ..\common\$D\ctrlcmn.obj
copy ..\common\$D\ctrlsub.obj
copy ..\common\$D\date.obj copy ..\common\$D\date.obj
copy ..\common\$D\datstrm.obj copy ..\common\$D\datstrm.obj
copy ..\common\$D\db.obj copy ..\common\$D\db.obj
@@ -572,6 +580,7 @@ $(COMLIBOBJS1):
copy ..\common\$D\intl.obj copy ..\common\$D\intl.obj
copy ..\common\$D\ipcbase.obj copy ..\common\$D\ipcbase.obj
copy ..\common\$D\layout.obj copy ..\common\$D\layout.obj
copy ..\common\$D\lboxcmn.obj
copy ..\common\$D\list.obj copy ..\common\$D\list.obj
copy ..\common\$D\log.obj copy ..\common\$D\log.obj
@@ -838,9 +847,11 @@ $(WXDIR)\lib\wx200.dll: $(OBJECTS) $(WXDIR)\lib\wx210.lib
!endif !endif
$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h $D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
@echo $<
icc $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /Tp dummy.cpp icc $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /Tp dummy.cpp
$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h $D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
@echo $<
icc @<< icc @<<
$(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp
<< <<
@@ -851,11 +862,13 @@ $(WXDIR)\include\wx\os2\setup.h: $(WXDIR)\include\wx\os2\setup0.h
copy "$(WXDIR)"\include\wx\os2\setup0.h "$(WXDIR)"\include\wx\os2\setup.h copy "$(WXDIR)"\include\wx\os2\setup0.h "$(WXDIR)"\include\wx\os2\setup.h
..\common\$D\extended.obj: ..\common\extended.c ..\common\$D\extended.obj: ..\common\extended.c
@echo $<
icc @<< icc @<<
$(CPPFLAGS2) /Fo$@ $(COMMDIR)\extended.c $(CPPFLAGS2) /Fo$@ $(COMMDIR)\extended.c
<< <<
..\common\$D\y_tab.obj: ..\common\y_tab.c ..\common\lex_yy.c ..\common\$D\y_tab.obj: ..\common\y_tab.c ..\common\lex_yy.c
@echo $<
icc @<< icc @<<
$(CPPFLAGS2) /DUSE_DEFINE /DYY_USE_PROTOS /Fo$@ ..\common\y_tab.c $(CPPFLAGS2) /DUSE_DEFINE /DYY_USE_PROTOS /Fo$@ ..\common\y_tab.c
<< <<
@@ -869,6 +882,7 @@ $(CPPFLAGS2) /DUSE_DEFINE /DYY_USE_PROTOS /Fo$@ ..\common\y_tab.c
$(OBJECTS): $(WXDIR)/include/wx/setup.h $(OBJECTS): $(WXDIR)/include/wx/setup.h
..\common\$D\unzip.obj: ..\common\unzip.c ..\common\$D\unzip.obj: ..\common\unzip.c
@echo $<
icc @<< icc @<<
$(CPPFLAGS2) /Fo$@ $(COMMDIR)\unzip.c $(CPPFLAGS2) /Fo$@ $(COMMDIR)\unzip.c
<< <<