wxControl and wxChoice derive from the base classes under wxGTK too now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -92,10 +92,10 @@ treectrl.cpp G 16
|
|||||||
wizard.cpp G
|
wizard.cpp G
|
||||||
|
|
||||||
appcmn.cpp C B
|
appcmn.cpp C B
|
||||||
choiccmn.cpp C R
|
choiccmn.cpp C
|
||||||
cmndata.cpp C
|
cmndata.cpp C
|
||||||
config.cpp C B
|
config.cpp C B
|
||||||
ctrlcmn.cpp C R
|
ctrlcmn.cpp C
|
||||||
date.cpp C B
|
date.cpp C B
|
||||||
datstrm.cpp C
|
datstrm.cpp C
|
||||||
db.cpp C
|
db.cpp C
|
||||||
|
@@ -93,7 +93,7 @@ public:
|
|||||||
// deprecated functions, heer for backwards compatibility only
|
// deprecated functions, heer for backwards compatibility only
|
||||||
int Number() const { return GetCount(); }
|
int Number() const { return GetCount(); }
|
||||||
|
|
||||||
private:
|
protected:
|
||||||
// pure virtuals to implement in the derived classes
|
// pure virtuals to implement in the derived classes
|
||||||
virtual int DoAppend(const wxString& item) = 0;
|
virtual int DoAppend(const wxString& item) = 0;
|
||||||
|
|
||||||
@@ -102,13 +102,18 @@ private:
|
|||||||
virtual void DoSetClientObject( int n, wxClientData* clientData ) = 0;
|
virtual void DoSetClientObject( int n, wxClientData* clientData ) = 0;
|
||||||
virtual wxClientData* DoGetClientObject( int n ) const = 0;
|
virtual wxClientData* DoGetClientObject( int n ) const = 0;
|
||||||
|
|
||||||
|
// the above pure virtuals hide these virtuals in wxWindowBase
|
||||||
|
virtual void DoSetClientData(void* clientData )
|
||||||
|
{ wxWindowBase::DoSetClientData(clientData); };
|
||||||
|
virtual void* DoGetClientData() const
|
||||||
|
{ return(wxWindowBase::DoGetClientData()); };
|
||||||
|
virtual void DoSetClientObject( wxClientData* clientData )
|
||||||
|
{ wxWindowBase::DoSetClientObject(clientData); };
|
||||||
|
virtual wxClientData* DoGetClientObject() const
|
||||||
|
{ return(wxWindowBase::DoGetClientObject()); };
|
||||||
|
|
||||||
// the type of the client data for the items
|
// the type of the client data for the items
|
||||||
wxClientDataType m_clientDataItemsType;
|
wxClientDataType m_clientDataItemsType;
|
||||||
// the above pure virtuals hide these virtuals in wxWindowBase
|
|
||||||
virtual void DoSetClientData(void* clientData ) { wxWindowBase::DoSetClientData(clientData); };
|
|
||||||
virtual void* DoGetClientData() const { return(wxWindowBase::DoGetClientData()); };
|
|
||||||
virtual void DoSetClientObject( wxClientData* clientData ) { wxWindowBase::DoSetClientObject(clientData); };
|
|
||||||
virtual wxClientData* DoGetClientObject() const { return(wxWindowBase::DoGetClientObject()); };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -11,32 +11,14 @@
|
|||||||
#define __GTKCHOICEH__
|
#define __GTKCHOICEH__
|
||||||
|
|
||||||
#ifdef __GNUG__
|
#ifdef __GNUG__
|
||||||
#pragma interface
|
#pragma interface "choice.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "wx/defs.h"
|
|
||||||
|
|
||||||
#include "wx/object.h"
|
|
||||||
#include "wx/list.h"
|
|
||||||
#include "wx/control.h"
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
// classes
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
class wxChoice;
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
// global data
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
extern const wxChar *wxChoiceNameStr;
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// wxChoice
|
// wxChoice
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
class wxChoice : public wxControl
|
class wxChoice : public wxChoiceBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxChoice();
|
wxChoice();
|
||||||
@@ -59,35 +41,18 @@ public:
|
|||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
const wxString& name = wxChoiceNameStr );
|
const wxString& name = wxChoiceNameStr );
|
||||||
|
|
||||||
void Append( const wxString &item );
|
// implement base class pure virtuals
|
||||||
void Append( const wxString &item, void* clientData );
|
|
||||||
void Append( const wxString &item, wxClientData* clientData );
|
|
||||||
|
|
||||||
void SetClientData( int n, void* clientData );
|
|
||||||
void* GetClientData( int n );
|
|
||||||
void SetClientObject( int n, wxClientData* clientData );
|
|
||||||
wxClientData* GetClientObject( int n );
|
|
||||||
|
|
||||||
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
|
|
||||||
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
|
|
||||||
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
|
|
||||||
void *GetClientData() const { return wxControl::GetClientData(); }
|
|
||||||
|
|
||||||
void Clear();
|
|
||||||
void Delete(int n);
|
void Delete(int n);
|
||||||
|
void Clear();
|
||||||
|
|
||||||
int FindString( const wxString &string ) const;
|
int GetSelection() const;
|
||||||
int GetColumns() const;
|
|
||||||
int GetSelection();
|
|
||||||
wxString GetString( int n ) const;
|
|
||||||
wxString GetStringSelection() const;
|
|
||||||
int Number() const;
|
|
||||||
void SetColumns( int n = 1 );
|
|
||||||
void SetSelection( int n );
|
void SetSelection( int n );
|
||||||
void SetStringSelection( const wxString &string );
|
|
||||||
|
virtual int GetCount() const;
|
||||||
|
int FindString( const wxString &string ) const;
|
||||||
|
wxString GetString( int n ) const;
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
|
||||||
wxList m_clientDataList;
|
wxList m_clientDataList;
|
||||||
wxList m_clientObjectList;
|
wxList m_clientObjectList;
|
||||||
|
|
||||||
@@ -96,6 +61,14 @@ public:
|
|||||||
void AppendCommon( const wxString &item );
|
void AppendCommon( const wxString &item );
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual int DoAppend(const wxString& item);
|
||||||
|
|
||||||
|
virtual void DoSetClientData( int n, void* clientData );
|
||||||
|
virtual void* DoGetClientData( int n ) const;
|
||||||
|
virtual void DoSetClientObject( int n, wxClientData* clientData );
|
||||||
|
virtual wxClientData* DoGetClientObject( int n ) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_DYNAMIC_CLASS(wxChoice)
|
DECLARE_DYNAMIC_CLASS(wxChoice)
|
||||||
};
|
};
|
||||||
|
@@ -29,7 +29,7 @@ class wxControl;
|
|||||||
// wxControl
|
// wxControl
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
class wxControl : public wxWindow
|
class wxControl : public wxControlBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxControl();
|
wxControl();
|
||||||
|
@@ -11,32 +11,14 @@
|
|||||||
#define __GTKCHOICEH__
|
#define __GTKCHOICEH__
|
||||||
|
|
||||||
#ifdef __GNUG__
|
#ifdef __GNUG__
|
||||||
#pragma interface
|
#pragma interface "choice.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "wx/defs.h"
|
|
||||||
|
|
||||||
#include "wx/object.h"
|
|
||||||
#include "wx/list.h"
|
|
||||||
#include "wx/control.h"
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
// classes
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
class wxChoice;
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
// global data
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
extern const wxChar *wxChoiceNameStr;
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// wxChoice
|
// wxChoice
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
class wxChoice : public wxControl
|
class wxChoice : public wxChoiceBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxChoice();
|
wxChoice();
|
||||||
@@ -59,35 +41,18 @@ public:
|
|||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
const wxString& name = wxChoiceNameStr );
|
const wxString& name = wxChoiceNameStr );
|
||||||
|
|
||||||
void Append( const wxString &item );
|
// implement base class pure virtuals
|
||||||
void Append( const wxString &item, void* clientData );
|
|
||||||
void Append( const wxString &item, wxClientData* clientData );
|
|
||||||
|
|
||||||
void SetClientData( int n, void* clientData );
|
|
||||||
void* GetClientData( int n );
|
|
||||||
void SetClientObject( int n, wxClientData* clientData );
|
|
||||||
wxClientData* GetClientObject( int n );
|
|
||||||
|
|
||||||
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
|
|
||||||
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
|
|
||||||
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
|
|
||||||
void *GetClientData() const { return wxControl::GetClientData(); }
|
|
||||||
|
|
||||||
void Clear();
|
|
||||||
void Delete(int n);
|
void Delete(int n);
|
||||||
|
void Clear();
|
||||||
|
|
||||||
int FindString( const wxString &string ) const;
|
int GetSelection() const;
|
||||||
int GetColumns() const;
|
|
||||||
int GetSelection();
|
|
||||||
wxString GetString( int n ) const;
|
|
||||||
wxString GetStringSelection() const;
|
|
||||||
int Number() const;
|
|
||||||
void SetColumns( int n = 1 );
|
|
||||||
void SetSelection( int n );
|
void SetSelection( int n );
|
||||||
void SetStringSelection( const wxString &string );
|
|
||||||
|
virtual int GetCount() const;
|
||||||
|
int FindString( const wxString &string ) const;
|
||||||
|
wxString GetString( int n ) const;
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
|
||||||
wxList m_clientDataList;
|
wxList m_clientDataList;
|
||||||
wxList m_clientObjectList;
|
wxList m_clientObjectList;
|
||||||
|
|
||||||
@@ -96,6 +61,14 @@ public:
|
|||||||
void AppendCommon( const wxString &item );
|
void AppendCommon( const wxString &item );
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual int DoAppend(const wxString& item);
|
||||||
|
|
||||||
|
virtual void DoSetClientData( int n, void* clientData );
|
||||||
|
virtual void* DoGetClientData( int n ) const;
|
||||||
|
virtual void DoSetClientObject( int n, wxClientData* clientData );
|
||||||
|
virtual wxClientData* DoGetClientObject( int n ) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_DYNAMIC_CLASS(wxChoice)
|
DECLARE_DYNAMIC_CLASS(wxChoice)
|
||||||
};
|
};
|
||||||
|
@@ -29,7 +29,7 @@ class wxControl;
|
|||||||
// wxControl
|
// wxControl
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
class wxControl : public wxWindow
|
class wxControl : public wxControlBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxControl();
|
wxControl();
|
||||||
|
@@ -123,9 +123,9 @@ wxChoice::~wxChoice()
|
|||||||
Clear();
|
Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::AppendCommon( const wxString &item )
|
int wxChoice::DoAppend( const wxString &item )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
||||||
|
|
||||||
GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) );
|
GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) );
|
||||||
GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() );
|
GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() );
|
||||||
@@ -144,71 +144,54 @@ void wxChoice::AppendCommon( const wxString &item )
|
|||||||
GTK_SIGNAL_FUNC(gtk_choice_clicked_callback), (gpointer*)this );
|
GTK_SIGNAL_FUNC(gtk_choice_clicked_callback), (gpointer*)this );
|
||||||
|
|
||||||
gtk_widget_show( menu_item );
|
gtk_widget_show( menu_item );
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item )
|
|
||||||
{
|
|
||||||
m_clientDataList.Append( (wxObject*) NULL );
|
m_clientDataList.Append( (wxObject*) NULL );
|
||||||
m_clientObjectList.Append( (wxObject*) NULL );
|
m_clientObjectList.Append( (wxObject*) NULL );
|
||||||
|
|
||||||
AppendCommon( item );
|
// return the index of the item in the control
|
||||||
|
return GetCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item, void *clientData )
|
void wxChoice::DoSetClientData( int n, void* clientData )
|
||||||
{
|
|
||||||
m_clientDataList.Append( (wxObject*) clientData );
|
|
||||||
m_clientObjectList.Append( (wxObject*) NULL );
|
|
||||||
|
|
||||||
AppendCommon( item );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item, wxClientData *clientData )
|
|
||||||
{
|
|
||||||
m_clientObjectList.Append( (wxObject*) clientData );
|
|
||||||
m_clientDataList.Append( (wxObject*) NULL );
|
|
||||||
|
|
||||||
AppendCommon( item );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::SetClientData( int n, void* clientData )
|
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientDataList.Nth( n );
|
wxNode *node = m_clientDataList.Nth( n );
|
||||||
if (!node) return;
|
wxCHECK_RET( node, wxT("invalid index in wxChoice::DoSetClientData") );
|
||||||
|
|
||||||
node->SetData( (wxObject*) clientData );
|
node->SetData( (wxObject*) clientData );
|
||||||
}
|
}
|
||||||
|
|
||||||
void* wxChoice::GetClientData( int n )
|
void* wxChoice::DoGetClientData( int n ) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") );
|
wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientDataList.Nth( n );
|
wxNode *node = m_clientDataList.Nth( n );
|
||||||
if (!node) return NULL;
|
wxCHECK_MSG( node, NULL, wxT("invalid index in wxChoice::DoGetClientData") );
|
||||||
|
|
||||||
return node->Data();
|
return node->Data();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetClientObject( int n, wxClientData* clientData )
|
void wxChoice::DoSetClientObject( int n, wxClientData* clientData )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientObjectList.Nth( n );
|
wxNode *node = m_clientObjectList.Nth( n );
|
||||||
if (!node) return;
|
wxCHECK_RET( node, wxT("invalid index in wxChoice::DoSetClientObject") );
|
||||||
|
|
||||||
wxClientData *cd = (wxClientData*) node->Data();
|
wxClientData *cd = (wxClientData*) node->Data();
|
||||||
if (cd) delete cd;
|
delete cd;
|
||||||
|
|
||||||
node->SetData( (wxObject*) clientData );
|
node->SetData( (wxObject*) clientData );
|
||||||
}
|
}
|
||||||
|
|
||||||
wxClientData* wxChoice::GetClientObject( int n )
|
wxClientData* wxChoice::DoGetClientObject( int n ) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") );
|
wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientObjectList.Nth( n );
|
wxNode *node = m_clientObjectList.Nth( n );
|
||||||
if (!node) return (wxClientData*) NULL;
|
wxCHECK_MSG( node, (wxClientData *)NULL,
|
||||||
|
wxT("invalid index in wxChoice::DoGetClientObject") );
|
||||||
|
|
||||||
return (wxClientData*) node->Data();
|
return (wxClientData*) node->Data();
|
||||||
}
|
}
|
||||||
@@ -267,12 +250,7 @@ int wxChoice::FindString( const wxString &string ) const
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int wxChoice::GetColumns() const
|
int wxChoice::GetSelection() const
|
||||||
{
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxChoice::GetSelection()
|
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
||||||
|
|
||||||
@@ -319,18 +297,7 @@ wxString wxChoice::GetString( int n ) const
|
|||||||
return wxT("");
|
return wxT("");
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxChoice::GetStringSelection() const
|
int wxChoice::GetCount() const
|
||||||
{
|
|
||||||
wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") );
|
|
||||||
|
|
||||||
GtkLabel *label = GTK_LABEL( GTK_BUTTON(m_widget)->child );
|
|
||||||
|
|
||||||
wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") );
|
|
||||||
|
|
||||||
return wxString(label->label,*wxConvCurrent);
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxChoice::Number() const
|
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") );
|
||||||
|
|
||||||
@@ -345,10 +312,6 @@ int wxChoice::Number() const
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetColumns( int WXUNUSED(n) )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::SetSelection( int n )
|
void wxChoice::SetSelection( int n )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
||||||
@@ -357,14 +320,6 @@ void wxChoice::SetSelection( int n )
|
|||||||
gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp );
|
gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp );
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetStringSelection( const wxString &string )
|
|
||||||
{
|
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
|
||||||
|
|
||||||
int n = FindString( string );
|
|
||||||
if (n != -1) SetSelection( n );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::DisableEvents()
|
void wxChoice::DisableEvents()
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
// wxControl
|
// wxControl
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxControl,wxWindow)
|
IMPLEMENT_DYNAMIC_CLASS(wxControl, wxWindow)
|
||||||
|
|
||||||
wxControl::wxControl()
|
wxControl::wxControl()
|
||||||
{
|
{
|
||||||
@@ -32,8 +32,8 @@ wxControl::wxControl( wxWindow *parent,
|
|||||||
const wxSize &size,
|
const wxSize &size,
|
||||||
long style,
|
long style,
|
||||||
const wxString &name )
|
const wxString &name )
|
||||||
: wxWindow( parent, id, pos, size, style, name )
|
|
||||||
{
|
{
|
||||||
|
(void)Create(parent, id, pos, size, style, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxControl::SetLabel( const wxString &label )
|
void wxControl::SetLabel( const wxString &label )
|
||||||
@@ -52,7 +52,7 @@ void wxControl::SetLabel( const wxString &label )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxControl::GetLabel(void) const
|
wxString wxControl::GetLabel() const
|
||||||
{
|
{
|
||||||
return m_label;
|
return m_label;
|
||||||
}
|
}
|
||||||
|
@@ -123,9 +123,9 @@ wxChoice::~wxChoice()
|
|||||||
Clear();
|
Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::AppendCommon( const wxString &item )
|
int wxChoice::DoAppend( const wxString &item )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
||||||
|
|
||||||
GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) );
|
GtkWidget *menu = gtk_option_menu_get_menu( GTK_OPTION_MENU(m_widget) );
|
||||||
GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() );
|
GtkWidget *menu_item = gtk_menu_item_new_with_label( item.mbc_str() );
|
||||||
@@ -144,71 +144,54 @@ void wxChoice::AppendCommon( const wxString &item )
|
|||||||
GTK_SIGNAL_FUNC(gtk_choice_clicked_callback), (gpointer*)this );
|
GTK_SIGNAL_FUNC(gtk_choice_clicked_callback), (gpointer*)this );
|
||||||
|
|
||||||
gtk_widget_show( menu_item );
|
gtk_widget_show( menu_item );
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item )
|
|
||||||
{
|
|
||||||
m_clientDataList.Append( (wxObject*) NULL );
|
m_clientDataList.Append( (wxObject*) NULL );
|
||||||
m_clientObjectList.Append( (wxObject*) NULL );
|
m_clientObjectList.Append( (wxObject*) NULL );
|
||||||
|
|
||||||
AppendCommon( item );
|
// return the index of the item in the control
|
||||||
|
return GetCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item, void *clientData )
|
void wxChoice::DoSetClientData( int n, void* clientData )
|
||||||
{
|
|
||||||
m_clientDataList.Append( (wxObject*) clientData );
|
|
||||||
m_clientObjectList.Append( (wxObject*) NULL );
|
|
||||||
|
|
||||||
AppendCommon( item );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::Append( const wxString &item, wxClientData *clientData )
|
|
||||||
{
|
|
||||||
m_clientObjectList.Append( (wxObject*) clientData );
|
|
||||||
m_clientDataList.Append( (wxObject*) NULL );
|
|
||||||
|
|
||||||
AppendCommon( item );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::SetClientData( int n, void* clientData )
|
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientDataList.Nth( n );
|
wxNode *node = m_clientDataList.Nth( n );
|
||||||
if (!node) return;
|
wxCHECK_RET( node, wxT("invalid index in wxChoice::DoSetClientData") );
|
||||||
|
|
||||||
node->SetData( (wxObject*) clientData );
|
node->SetData( (wxObject*) clientData );
|
||||||
}
|
}
|
||||||
|
|
||||||
void* wxChoice::GetClientData( int n )
|
void* wxChoice::DoGetClientData( int n ) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") );
|
wxCHECK_MSG( m_widget != NULL, NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientDataList.Nth( n );
|
wxNode *node = m_clientDataList.Nth( n );
|
||||||
if (!node) return NULL;
|
wxCHECK_MSG( node, NULL, wxT("invalid index in wxChoice::DoGetClientData") );
|
||||||
|
|
||||||
return node->Data();
|
return node->Data();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetClientObject( int n, wxClientData* clientData )
|
void wxChoice::DoSetClientObject( int n, wxClientData* clientData )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientObjectList.Nth( n );
|
wxNode *node = m_clientObjectList.Nth( n );
|
||||||
if (!node) return;
|
wxCHECK_RET( node, wxT("invalid index in wxChoice::DoSetClientObject") );
|
||||||
|
|
||||||
wxClientData *cd = (wxClientData*) node->Data();
|
wxClientData *cd = (wxClientData*) node->Data();
|
||||||
if (cd) delete cd;
|
delete cd;
|
||||||
|
|
||||||
node->SetData( (wxObject*) clientData );
|
node->SetData( (wxObject*) clientData );
|
||||||
}
|
}
|
||||||
|
|
||||||
wxClientData* wxChoice::GetClientObject( int n )
|
wxClientData* wxChoice::DoGetClientObject( int n ) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") );
|
wxCHECK_MSG( m_widget != NULL, (wxClientData*) NULL, wxT("invalid combobox") );
|
||||||
|
|
||||||
wxNode *node = m_clientObjectList.Nth( n );
|
wxNode *node = m_clientObjectList.Nth( n );
|
||||||
if (!node) return (wxClientData*) NULL;
|
wxCHECK_MSG( node, (wxClientData *)NULL,
|
||||||
|
wxT("invalid index in wxChoice::DoGetClientObject") );
|
||||||
|
|
||||||
return (wxClientData*) node->Data();
|
return (wxClientData*) node->Data();
|
||||||
}
|
}
|
||||||
@@ -267,12 +250,7 @@ int wxChoice::FindString( const wxString &string ) const
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int wxChoice::GetColumns() const
|
int wxChoice::GetSelection() const
|
||||||
{
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxChoice::GetSelection()
|
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, -1, wxT("invalid choice") );
|
||||||
|
|
||||||
@@ -319,18 +297,7 @@ wxString wxChoice::GetString( int n ) const
|
|||||||
return wxT("");
|
return wxT("");
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxChoice::GetStringSelection() const
|
int wxChoice::GetCount() const
|
||||||
{
|
|
||||||
wxCHECK_MSG( m_widget != NULL, wxT(""), wxT("invalid choice") );
|
|
||||||
|
|
||||||
GtkLabel *label = GTK_LABEL( GTK_BUTTON(m_widget)->child );
|
|
||||||
|
|
||||||
wxASSERT_MSG( label != NULL , wxT("wxChoice: invalid label") );
|
|
||||||
|
|
||||||
return wxString(label->label,*wxConvCurrent);
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxChoice::Number() const
|
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") );
|
wxCHECK_MSG( m_widget != NULL, 0, wxT("invalid choice") );
|
||||||
|
|
||||||
@@ -345,10 +312,6 @@ int wxChoice::Number() const
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetColumns( int WXUNUSED(n) )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::SetSelection( int n )
|
void wxChoice::SetSelection( int n )
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
||||||
@@ -357,14 +320,6 @@ void wxChoice::SetSelection( int n )
|
|||||||
gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp );
|
gtk_option_menu_set_history( GTK_OPTION_MENU(m_widget), (gint)tmp );
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxChoice::SetStringSelection( const wxString &string )
|
|
||||||
{
|
|
||||||
wxCHECK_RET( m_widget != NULL, wxT("invalid choice") );
|
|
||||||
|
|
||||||
int n = FindString( string );
|
|
||||||
if (n != -1) SetSelection( n );
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxChoice::DisableEvents()
|
void wxChoice::DisableEvents()
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
// wxControl
|
// wxControl
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxControl,wxWindow)
|
IMPLEMENT_DYNAMIC_CLASS(wxControl, wxWindow)
|
||||||
|
|
||||||
wxControl::wxControl()
|
wxControl::wxControl()
|
||||||
{
|
{
|
||||||
@@ -32,8 +32,8 @@ wxControl::wxControl( wxWindow *parent,
|
|||||||
const wxSize &size,
|
const wxSize &size,
|
||||||
long style,
|
long style,
|
||||||
const wxString &name )
|
const wxString &name )
|
||||||
: wxWindow( parent, id, pos, size, style, name )
|
|
||||||
{
|
{
|
||||||
|
(void)Create(parent, id, pos, size, style, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxControl::SetLabel( const wxString &label )
|
void wxControl::SetLabel( const wxString &label )
|
||||||
@@ -52,7 +52,7 @@ void wxControl::SetLabel( const wxString &label )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxControl::GetLabel(void) const
|
wxString wxControl::GetLabel() const
|
||||||
{
|
{
|
||||||
return m_label;
|
return m_label;
|
||||||
}
|
}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T!
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T!
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G95.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G95.T!
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T!
|
||||||
|
|
||||||
# Symantec C++ makefile for the msw objects
|
# Symantec C++ makefile for the msw objects
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
|
||||||
|
|
||||||
# File: makefile.vc
|
# File: makefile.vc
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
# This file was automatically generated by tmake at 15:50, 1999/10/18
|
# This file was automatically generated by tmake at 17:32, 1999/10/18
|
||||||
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
|
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
|
||||||
|
|
||||||
#!/binb/wmake.exe
|
#!/binb/wmake.exe
|
||||||
|
Reference in New Issue
Block a user