############################################################################# ## Name: XS/ComboCtrl.xsp ## Purpose: XS++ for Wx::ComboCtrl ## Author: Mattia Barbon ## Modified by: ## Created: 12/08/2007 ## RCS-ID: $Id: ComboCtrl.xsp 2626 2009-10-18 22:48:17Z mbarbon $ ## Copyright: (c) 2007, 2009 Mattia Barbon ## Licence: This program is free software; you can redistribute it and/or ## modify it under the same terms as Perl itself ############################################################################# %module{Wx}; #if WXPERL_W_VERSION_GE( 2, 7, 2 ) #include %typemap{wxComboPopup*}{simple}; %typemap{wxComboCtrl*}{simple}; %name{Wx::ComboCtrl} class wxComboCtrl { %{ void new( ... ) PPCODE: BEGIN_OVERLOAD() MATCH_VOIDM_REDISP( newDefault ) MATCH_ANY_REDISP( newFull ) END_OVERLOAD( "Wx::ComboCtrl::new" ) %} %name{newDefault} wxComboCtrl() %code{% RETVAL = new wxComboCtrl(); wxPli_create_evthandler( aTHX_ RETVAL, CLASS ); %}; %name{newFull} wxComboCtrl( wxWindow *parent, wxWindowID id = wxID_ANY, const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidatorPtr, const wxString& name = wxEmptyString) %code{% RETVAL = new wxComboCtrl( parent, id, value, pos, size, style, *validator, name ); wxPli_create_evthandler( aTHX_ RETVAL, CLASS ); %}; bool Create( wxWindow *parent, wxWindowID id, const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidatorPtr, const wxString& name = wxEmptyString ); void ShowPopup(); void HidePopup(); ## virtual void OnButtonClick(); bool IsPopupShown() const; void SetPopupControl( wxComboPopup* popup ); wxComboPopup* GetPopupControl(); wxWindow *GetPopupWindow() const; wxTextCtrl *GetTextCtrl() const; wxWindow *GetButton() const; wxString GetValue() const; void SetValue( const wxString& value ); void Copy(); void Cut(); void Paste(); void SetInsertionPoint( long pos ); void SetInsertionPointEnd(); long GetInsertionPoint() const; long GetLastPosition() const; void Replace( long from, long to, const wxString& value ); void Remove( long from, long to ); void SetSelection( long from, long to ); void Undo(); void SetText( const wxString& value ); void SetPopupMinWidth( int width ); void SetPopupMaxHeight( int height ); void SetPopupExtents( int extLeft, int extRight ); void SetCustomPaintWidth( int width ); int GetCustomPaintWidth() const; void SetPopupAnchor( int anchorSide ); void SetButtonPosition( int width = -1, int height = -1, int side = wxRIGHT, int spacingX = 0 ); wxSize GetButtonSize(); void SetButtonBitmaps( const wxBitmap& bmpNormal, bool pushButtonBg = false, const wxBitmap& bmpPressed = wxNullBitmapPtr, const wxBitmap& bmpHover = wxNullBitmapPtr, const wxBitmap& bmpDisabled = wxNullBitmapPtr ); #if WXPERL_W_VERSION_LT( 2, 7, 0 ) || WXWIN_COMPATIBILITY_2_6 void SetTextIndent( int indent ); wxCoord GetTextIndent() const; #endif const wxRect& GetTextRect() const; void UseAltPopupWindow( bool enable = true ); void EnablePopupAnimation( bool enable = true ); const wxBitmap& GetBitmapNormal() const; const wxBitmap& GetBitmapPressed() const; const wxBitmap& GetBitmapHover() const; const wxBitmap& GetBitmapDisabled() const; }; #endif