Motif additions

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
1998-10-18 22:31:48 +00:00
parent 02847e5984
commit a4294b7832
61 changed files with 1919 additions and 650 deletions

View File

@@ -142,7 +142,7 @@ public:
wxBitmap(const char bits[], int width, int height, int depth = 1);
// Initialize with XPM data
wxBitmap(const char **data, wxControl* control = NULL);
wxBitmap(char **data, wxControl* control = NULL);
// Load a file or resource
wxBitmap(const wxString& name, long type = wxBITMAP_TYPE_XBM);

View File

@@ -26,7 +26,8 @@ class WXDLLEXPORT wxBitmapButton: public wxButton
{
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
public:
inline wxBitmapButton() { m_marginX = wxDEFAULT_BUTTON_MARGIN; m_marginY = wxDEFAULT_BUTTON_MARGIN; }
wxBitmapButton();
~wxBitmapButton();
inline wxBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
@@ -54,29 +55,24 @@ class WXDLLEXPORT wxBitmapButton: public wxButton
inline wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_buttonBitmapFocus; }
inline wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_buttonBitmapDisabled; }
inline void SetBitmapSelected(const wxBitmap& sel) { m_buttonBitmapSelected = sel; };
inline void SetBitmapFocus(const wxBitmap& focus) { m_buttonBitmapFocus = focus; };
inline void SetBitmapDisabled(const wxBitmap& disabled) { m_buttonBitmapDisabled = disabled; };
void SetBitmapSelected(const wxBitmap& sel);
void SetBitmapFocus(const wxBitmap& focus);
void SetBitmapDisabled(const wxBitmap& disabled);
inline void SetMargins(int x, int y) { m_marginX = x; m_marginY = y; }
inline int GetMarginX() { return m_marginX; }
inline int GetMarginY() { return m_marginY; }
/*
// TODO: Implementation
virtual bool MSWOnDraw(WXDRAWITEMSTRUCT *item);
virtual void DrawFace( WXHDC dc, int left, int top, int right, int bottom, bool sel );
virtual void DrawButtonFocus( WXHDC dc, int left, int top, int right, int bottom, bool sel );
virtual void DrawButtonDisable( WXHDC dc, int left, int top, int right, int bottom, bool with_marg );
*/
protected:
wxBitmap m_buttonBitmap;
wxBitmap m_buttonBitmapSelected;
wxBitmap m_buttonBitmapFocus;
wxBitmap m_buttonBitmapDisabled;
int m_marginX;
int m_marginY;
WXPixmap m_insensPixmap;
};
#endif

View File

@@ -77,8 +77,6 @@ protected:
WXWidget* m_widgetList ;
WXWidget m_formWidget;
wxStringList m_stringList;
public:
bool m_inSetValue;
};
#endif

View File

@@ -23,27 +23,31 @@
// General item class
class WXDLLEXPORT wxControl: public wxWindow
{
DECLARE_ABSTRACT_CLASS(wxControl)
DECLARE_ABSTRACT_CLASS(wxControl)
public:
wxControl();
~wxControl();
wxControl();
~wxControl();
virtual void Command(wxCommandEvent& WXUNUSED(event)) {}; // Simulates an event
virtual void ProcessCommand(wxCommandEvent& event); // Calls the callback and
virtual void Command(wxCommandEvent& WXUNUSED(event)) {}; // Simulates an event
virtual void ProcessCommand(wxCommandEvent& event); // Calls the callback and
// appropriate event handlers
virtual void SetLabel(const wxString& label);
virtual wxString GetLabel() const ;
virtual void SetLabel(const wxString& label);
virtual wxString GetLabel() const ;
// Places item in centre of panel - so can't be used BEFORE panel->Fit()
void Centre(int direction = wxHORIZONTAL);
inline void Callback(const wxFunction function) { m_callback = function; }; // Adds callback
// Places item in centre of panel - so can't be used BEFORE panel->Fit()
void Centre(int direction = wxHORIZONTAL);
inline void Callback(const wxFunction function) { m_callback = function; }; // Adds callback
inline wxFunction GetCallback() { return m_callback; }
inline wxFunction GetCallback() { return m_callback; }
inline bool InSetValue() const { return m_inSetValue; }
protected:
wxFunction m_callback; // Callback associated with the window
wxFunction m_callback; // Callback associated with the window
DECLARE_EVENT_TABLE()
bool m_inSetValue; // Motif: prevent callbacks being called while
// in SetValue
DECLARE_EVENT_TABLE()
};
#endif

View File

@@ -97,6 +97,7 @@ class WXDLLEXPORT wxWindowDC: public wxDC
void SetDCClipping (); // Helper function for setting clipping
inline WXGC GetGC() const { return m_gc; }
inline WXDisplay* GetDisplay() const { return m_display; }
inline bool GetAutoSetting() const { return m_autoSetting; }
inline void SetAutoSetting(bool flag) { m_autoSetting = flag; }

View File

@@ -49,7 +49,7 @@ public:
wxIcon(const char bits[], int width, int height);
// Initialize with XPM data
wxIcon(const char **data);
wxIcon(char **data);
wxIcon(const wxString& name, long flags = wxBITMAP_TYPE_ICO_RESOURCE,
int desiredWidth = -1, int desiredHeight = -1);

View File

@@ -97,9 +97,6 @@ protected:
// List mapping positions->client data
wxList m_clientDataList;
public:
bool m_inSetValue;
};
#endif

View File

@@ -34,6 +34,7 @@ extern KeySym wxCharCodeWXToX(int id);
bool wxTranslateMouseEvent(wxMouseEvent& wxevent, wxWindow *win, Widget widget, XEvent *xevent);
bool wxTranslateKeyEvent(wxKeyEvent& wxevent, wxWindow *win, Widget widget, XEvent *xevent);
int wxGetBestMatchingPixel(Display *display, XColor *desiredColor, Colormap cmap);
Pixmap XCreateInsensitivePixmap( Display *display, Pixmap pixmap );
#define wxNO_COLORS 0x00
#define wxBACK_COLORS 0x01

View File

@@ -51,19 +51,14 @@ public:
int GetSelection() const;
wxString GetString(int N) const;
void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO);
void GetSize(int *x, int *y) const;
void GetPosition(int *x, int *y) const;
wxString GetLabel() const;
void SetLabel(const wxString& label);
void SetLabel(const wxString& label) { wxControl::SetLabel(label); };
void SetLabel(int item, const wxString& label) ;
wxString GetLabel(int item) const;
bool Show(bool show);
void SetFocus();
wxString GetLabel() const { return wxControl::GetLabel(); };
void Enable(bool enable);
void Enable(int item, bool enable);
void Show(int item, bool show) ;
inline void SetLabelFont(const wxFont& WXUNUSED(font)) {};
inline void SetButtonFont(const wxFont& font) { SetFont(font); }
bool Show(bool show) { return wxControl::Show(show); };
virtual wxString GetStringSelection() const;
virtual bool SetStringSelection(const wxString& s);
@@ -73,15 +68,21 @@ public:
inline int GetNumberOfRowsOrCols() const { return m_noRowsOrCols; }
inline void SetNumberOfRowsOrCols(int n) { m_noRowsOrCols = n; }
WXWidget GetTopWidget() const { return m_formWidget; }
WXWidget GetLabelWidget() const { return m_labelWidget; }
inline WXWidget* GetRadioButtons() const { return m_radioButtons; }
inline void SetSel(int i) { m_selectedButton = i; }
protected:
/* TODO: implementation
WXHWND * m_radioButtons;
*/
int m_majorDim ;
int m_noItems;
int m_noRowsOrCols;
int m_selectedButton;
WXWidget m_formWidget;
WXWidget m_labelWidget;
WXWidget* m_radioButtons;
wxString* m_radioButtonLabels;
};
#endif

View File

@@ -22,32 +22,38 @@ WXDLLEXPORT_DATA(extern const char*) wxRadioButtonNameStr;
class WXDLLEXPORT wxRadioButton: public wxControl
{
DECLARE_DYNAMIC_CLASS(wxRadioButton)
protected:
public:
inline wxRadioButton() {}
inline wxRadioButton(wxWindow *parent, wxWindowID id,
DECLARE_DYNAMIC_CLASS(wxRadioButton)
protected:
public:
wxRadioButton();
inline wxRadioButton(wxWindow *parent, wxWindowID id,
const wxString& label,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxRadioButtonNameStr)
{
Create(parent, id, label, pos, size, style, validator, name);
}
{
Create(parent, id, label, pos, size, style, validator, name);
}
bool Create(wxWindow *parent, wxWindowID id,
bool Create(wxWindow *parent, wxWindowID id,
const wxString& label,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxRadioButtonNameStr);
virtual void SetLabel(const wxString& label);
virtual void SetValue(bool val);
virtual bool GetValue() const ;
virtual void SetValue(bool val);
virtual bool GetValue() const ;
void Command(wxCommandEvent& event);
void Command(wxCommandEvent& event);
WXWidget GetTopWidget() const { return m_formWidget; }
WXWidget GetLabelWidget() const { return m_labelWidget; }
private:
WXWidget m_formWidget;
WXWidget m_labelWidget;
};
// Not implemented

View File

@@ -51,9 +51,12 @@
// AIAI spline code is slower, but freer of copyright issues.
// 0 for no splines
#define wxUSE_TOOLBAR 1
#define wxUSE_XPM 1
// Use XPMs
#define wxUSE_TOOLBAR 1
// Use toolbars
#define wxUSE_COMBOBOX 1
#define wxUSE_COMBOBOX 1
// Use wxComboBox
#define wxUSE_DRAG_AND_DROP 1
// 0 for no drag and drop
@@ -110,6 +113,10 @@
// if enabled, compiles built-in OS independent wxConfig
// class and it's file (any platform) and registry (Win)
// based implementations
#define wxUSE_GADGETS 0
// Use gadgets where possible
/*
* Finer detail
*

View File

@@ -53,8 +53,6 @@ public:
virtual void SetValue(int);
void GetSize(int *x, int *y) const ;
void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO);
void GetPosition(int *x, int *y) const ;
bool Show(bool show);
void SetRange(int minValue, int maxValue);

View File

@@ -25,6 +25,7 @@ class WXDLLEXPORT wxStaticBitmap: public wxControl
DECLARE_DYNAMIC_CLASS(wxStaticBitmap)
public:
inline wxStaticBitmap() { }
~wxStaticBitmap();
inline wxStaticBitmap(wxWindow *parent, wxWindowID id,
const wxBitmap& label,

View File

@@ -139,7 +139,6 @@ public:
void* m_tempCallbackStruct;
bool m_modified;
wxString m_value; // Required for password text controls
bool m_inSetValue;
bool m_processedDefault; // Did we call wxTextCtrl::OnChar?
// If so, generate a command event.
DECLARE_EVENT_TABLE()

View File

@@ -465,7 +465,7 @@ public:
// Get main widget for this window, e.g. a text widget
virtual WXWidget GetMainWidget() const;
// Get the widget that supports font setting
// Get the widget that corresponds to the label (for font setting, label setting etc.)
virtual WXWidget GetLabelWidget() const { return GetMainWidget(); }
// Get the client widget for this window (something we can
// create other windows on)