#############################################################################
## Name:        XS/BookCtrl.xsp
## Purpose:     XS+++ for Wx::BookCtrl
## Author:      Mattia Barbon
## Modified by:
## Created:     06/12/2003
## RCS-ID:      $Id: BookCtrl.xsp,v 1.2 2004/08/04 20:13:54 mbarbon Exp $
## Copyright:   (c) 2003 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, 5, 1 )

#include <wx/bookctrl.h>
%}

%name{Wx::BookCtrl} class wxBookCtrl
{
    size_t GetPageCount() const;
    wxWindow *GetPage(size_t n);
    int GetSelection() const;
    bool SetPageText(size_t n, const wxString& strText);
    wxString GetPageText(size_t n) const;
    void SetImageList(wxImageList *imageList);
    void AssignImageList(wxImageList *imageList);
##    wxImageList* GetImageList() const;
    int GetPageImage(size_t n) const;
    bool SetPageImage(size_t n, int imageId);
    void SetPageSize(const wxSize& size);
    wxSize CalcSizeFromPage(const wxSize& sizePage) const;
    bool DeletePage(size_t n);
    bool RemovePage(size_t n);
    bool DeleteAllPages();
    bool AddPage(wxWindow *page, const wxString& text, bool bSelect = false,
                 int imageId = -1);
    bool InsertPage(size_t n, wxWindow *page, const wxString& text,
                    bool bSelect = false, int imageId = -1);
    int SetSelection(size_t n);
    void AdvanceSelection(bool forward = true);
};

%{
wxImageList*
wxBookCtrl::GetImageList()
  OUTPUT:
    RETVAL
  CLEANUP:
    wxPli_object_set_deleteable( aTHX_ ST(0), false );
%}

%name{Wx::BookCtrlEvent} class wxBookCtrlEvent
{
    int GetSelection() const;
    void SetSelection(int nSel);
    int GetOldSelection() const;
    void SetOldSelection(int nOldSel);
};

%{
#endif
%}