git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			195 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			195 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
/////////////////////////////////////////////////////////////////////////////
 | 
						|
// Name:        wx/os2/radiobox.h
 | 
						|
// Purpose:     wxRadioBox class
 | 
						|
// Author:      David Webster
 | 
						|
// Modified by:
 | 
						|
// Created:     10/12/99
 | 
						|
// RCS-ID:      $Id$
 | 
						|
// Copyright:   (c) David Webster
 | 
						|
// Licence:     wxWindows licence
 | 
						|
/////////////////////////////////////////////////////////////////////////////
 | 
						|
 | 
						|
#ifndef _WX_RADIOBOX_H_
 | 
						|
#define _WX_RADIOBOX_H_
 | 
						|
 | 
						|
// List box item
 | 
						|
class WXDLLIMPEXP_FWD_CORE wxBitmap ;
 | 
						|
 | 
						|
class WXDLLIMPEXP_CORE wxRadioBox: public wxControl, public wxRadioBoxBase
 | 
						|
{
 | 
						|
public:
 | 
						|
    wxRadioBox();
 | 
						|
 | 
						|
    inline wxRadioBox( wxWindow*          pParent
 | 
						|
                      ,wxWindowID         vId
 | 
						|
                      ,const wxString&    rsTitle
 | 
						|
                      ,const wxPoint&     rPos = wxDefaultPosition
 | 
						|
                      ,const wxSize&      rSize = wxDefaultSize
 | 
						|
                      ,int                nNum = 0
 | 
						|
                      ,const wxString     asChoices[] = NULL
 | 
						|
                      ,int                nMajorDim = 0
 | 
						|
                      ,long               lStyle = wxRA_HORIZONTAL
 | 
						|
                      ,const wxValidator& rVal = wxDefaultValidator
 | 
						|
                      ,const wxString&    rsName = wxRadioBoxNameStr
 | 
						|
                     )
 | 
						|
    {
 | 
						|
        Create( pParent
 | 
						|
               ,vId
 | 
						|
               ,rsTitle
 | 
						|
               ,rPos
 | 
						|
               ,rSize
 | 
						|
               ,nNum
 | 
						|
               ,asChoices
 | 
						|
               ,nMajorDim
 | 
						|
               ,lStyle
 | 
						|
               ,rVal
 | 
						|
               ,rsName
 | 
						|
              );
 | 
						|
    }
 | 
						|
 | 
						|
    inline wxRadioBox( wxWindow*            pParent
 | 
						|
                      ,wxWindowID           vId
 | 
						|
                      ,const wxString&      rsTitle
 | 
						|
                      ,const wxPoint&       rPos
 | 
						|
                      ,const wxSize&        rSize
 | 
						|
                      ,const wxArrayString& asChoices
 | 
						|
                      ,int                  nMajorDim = 0
 | 
						|
                      ,long                 lStyle = wxRA_HORIZONTAL
 | 
						|
                      ,const wxValidator&   rVal = wxDefaultValidator
 | 
						|
                      ,const wxString&      rsName = wxRadioBoxNameStr
 | 
						|
                     )
 | 
						|
    {
 | 
						|
        Create( pParent
 | 
						|
               ,vId
 | 
						|
               ,rsTitle
 | 
						|
               ,rPos
 | 
						|
               ,rSize
 | 
						|
               ,asChoices
 | 
						|
               ,nMajorDim
 | 
						|
               ,lStyle
 | 
						|
               ,rVal
 | 
						|
               ,rsName
 | 
						|
              );
 | 
						|
    }
 | 
						|
 | 
						|
    virtual ~wxRadioBox();
 | 
						|
 | 
						|
    bool Create( wxWindow*          pParent
 | 
						|
                ,wxWindowID         vId
 | 
						|
                ,const wxString&    rsTitle
 | 
						|
                ,const wxPoint&     rPos = wxDefaultPosition
 | 
						|
                ,const wxSize&      rSize = wxDefaultSize
 | 
						|
                ,int                nNum = 0
 | 
						|
                ,const wxString     asChoices[] = NULL
 | 
						|
                ,int                nMajorDim = 0
 | 
						|
                ,long               lStyle = wxRA_HORIZONTAL
 | 
						|
                ,const wxValidator& rVal = wxDefaultValidator
 | 
						|
                ,const wxString&    rsName = wxRadioBoxNameStr
 | 
						|
               );
 | 
						|
 | 
						|
    bool Create( wxWindow*            pParent
 | 
						|
                ,wxWindowID           vId
 | 
						|
                ,const wxString&      rsTitle
 | 
						|
                ,const wxPoint&       rPos
 | 
						|
                ,const wxSize&        rSize
 | 
						|
                ,const wxArrayString& asChoices
 | 
						|
                ,int                  nMajorDim = 0
 | 
						|
                ,long                 lStyle = wxRA_HORIZONTAL
 | 
						|
                ,const wxValidator&   rVal = wxDefaultValidator
 | 
						|
                ,const wxString&      rsName = wxRadioBoxNameStr
 | 
						|
               );
 | 
						|
 | 
						|
    // Enabling
 | 
						|
    virtual bool Enable(bool bEnable = true);
 | 
						|
    virtual bool Enable(unsigned int nItem, bool bEnable = true);
 | 
						|
    virtual bool IsItemEnabled(unsigned int WXUNUSED(n)) const
 | 
						|
    {
 | 
						|
        /* TODO */
 | 
						|
        return true;
 | 
						|
    }
 | 
						|
 | 
						|
    // Showing
 | 
						|
    virtual bool Show(bool bShow = true);
 | 
						|
    virtual bool Show(unsigned int nItem, bool bShow = true);
 | 
						|
    virtual bool IsItemShown(unsigned int WXUNUSED(n)) const
 | 
						|
    {
 | 
						|
        /* TODO */
 | 
						|
        return true;
 | 
						|
    }
 | 
						|
 | 
						|
    void Command(wxCommandEvent& rEvent);
 | 
						|
    bool ContainsHWND(WXHWND hWnd) const;
 | 
						|
 | 
						|
    virtual WXHBRUSH OnCtlColor( WXHDC    hDC
 | 
						|
                                ,WXHWND   hWnd
 | 
						|
                                ,WXUINT   uCtlColor
 | 
						|
                                ,WXUINT   uMessage
 | 
						|
                                ,WXWPARAM wParam
 | 
						|
                                ,WXLPARAM lParam
 | 
						|
                               );
 | 
						|
    virtual bool     OS2Command( WXUINT uParam
 | 
						|
                                ,WXWORD wId
 | 
						|
                               );
 | 
						|
    void             SendNotificationEvent(void);
 | 
						|
    MRESULT          WindowProc( WXUINT   uMsg
 | 
						|
                                ,WXWPARAM wParam
 | 
						|
                                ,WXLPARAM lParam
 | 
						|
                               );
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
           virtual unsigned int GetCount() const;
 | 
						|
    inline         WXHWND*  GetRadioButtons(void) const { return m_ahRadioButtons; }
 | 
						|
                   int      GetSelection(void) const;
 | 
						|
                   void     GetSize(int* pnX, int* pnY) const;
 | 
						|
    inline         int      GetSizeFlags(void) const { return m_nSizeFlags; }
 | 
						|
           virtual wxString GetString(unsigned int nIndex) const;
 | 
						|
           virtual wxString GetStringSelection(void) const;
 | 
						|
 | 
						|
    inline         void     SetButtonFont(const wxFont& rFont) { SetFont(rFont); }
 | 
						|
                   void     SetFocus(void);
 | 
						|
           virtual bool     SetFont(const wxFont& rFont);
 | 
						|
    inline         void     SetLabelFont(const wxFont& WXUNUSED(font)) {};
 | 
						|
           virtual void     SetSelection(int nIndex);
 | 
						|
           virtual void     SetString(unsigned int nNum, const wxString& rsLabel);
 | 
						|
    virtual bool SetStringSelection(const wxString& rsStr);
 | 
						|
 | 
						|
    virtual void SetLabel(const wxString& rsLabel)
 | 
						|
        { wxControl::SetLabel(rsLabel); }
 | 
						|
    virtual wxString GetLabel() const
 | 
						|
        { return wxControl::GetLabel(); }
 | 
						|
 | 
						|
    void SetLabel( int nItem, const wxString& rsLabel );
 | 
						|
    void SetLabel( int item, wxBitmap* pBitmap );
 | 
						|
    wxString GetLabel(int nItem) const;
 | 
						|
 | 
						|
protected:
 | 
						|
    virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
 | 
						|
    virtual wxSize DoGetBestSize(void) const;
 | 
						|
    virtual void   DoSetSize( int nX
 | 
						|
                             ,int nY
 | 
						|
                             ,int nWidth
 | 
						|
                             ,int nHeight
 | 
						|
                             ,int nSizeFlags = wxSIZE_AUTO
 | 
						|
                            );
 | 
						|
    wxSize GetMaxButtonSize(void) const;
 | 
						|
    wxSize GetTotalButtonSize(const wxSize& rSizeBtn) const;
 | 
						|
    void   SubclassRadioButton(WXHWND hWndBtn);
 | 
						|
 | 
						|
 | 
						|
    WXHWND* m_ahRadioButtons;
 | 
						|
    int*    m_pnRadioWidth;  // for bitmaps
 | 
						|
    int*    m_pnRadioHeight;
 | 
						|
    int     m_nSelectedButton;
 | 
						|
    int     m_nSizeFlags;
 | 
						|
 | 
						|
private:
 | 
						|
 | 
						|
    unsigned int m_nNoItems;
 | 
						|
 | 
						|
    DECLARE_DYNAMIC_CLASS(wxRadioBox)
 | 
						|
}; // end of wxRadioBox
 | 
						|
 | 
						|
#endif // _WX_RADIOBOX_H_
 |