// This file has been generated by Py++.

#include "boost/python.hpp"
#include "python_CEGUI.h"
#include "WidgetComponent.pypp.hpp"

namespace bp = boost::python;

void register_WidgetComponent_class(){

    { //::CEGUI::WidgetComponent
        typedef bp::class_< CEGUI::WidgetComponent > WidgetComponent_exposer_t;
        WidgetComponent_exposer_t WidgetComponent_exposer = WidgetComponent_exposer_t( "WidgetComponent", "*!\n\
            \n\
                Class that encapsulates information regarding a sub-widget required for a widget.\n\
        \n\
            @todo \n\
                This is not finished in the slightest!  There will be many changes here...\n\
            *\n", bp::init< >() );
        bp::scope WidgetComponent_scope( WidgetComponent_exposer );
        WidgetComponent_exposer.def( bp::init< CEGUI::String const &, CEGUI::String const &, CEGUI::String const &, CEGUI::String const & >(( bp::arg("type"), bp::arg("look"), bp::arg("suffix"), bp::arg("renderer") )) );
        { //::CEGUI::WidgetComponent::addPropertyInitialiser
        
            typedef void ( ::CEGUI::WidgetComponent::*addPropertyInitialiser_function_type )( ::CEGUI::PropertyInitialiser const & ) ;
            
            WidgetComponent_exposer.def( 
                "addPropertyInitialiser"
                , addPropertyInitialiser_function_type( &::CEGUI::WidgetComponent::addPropertyInitialiser )
                , ( bp::arg("initialiser") ) );
        
        }
        { //::CEGUI::WidgetComponent::clearPropertyInitialisers
        
            typedef void ( ::CEGUI::WidgetComponent::*clearPropertyInitialisers_function_type )(  ) ;
            
            WidgetComponent_exposer.def( 
                "clearPropertyInitialisers"
                , clearPropertyInitialisers_function_type( &::CEGUI::WidgetComponent::clearPropertyInitialisers ) );
        
        }
        { //::CEGUI::WidgetComponent::create
        
            typedef void ( ::CEGUI::WidgetComponent::*create_function_type )( ::CEGUI::Window & ) const;
            
            WidgetComponent_exposer.def( 
                "create"
                , create_function_type( &::CEGUI::WidgetComponent::create )
                , ( bp::arg("parent") )
                , "*!\n\
            \n\
                Create an instance of this widget component adding it as a child to the given Window.\n\
            *\n" );
        
        }
        { //::CEGUI::WidgetComponent::findPropertyInitialiser
        
            typedef ::CEGUI::PropertyInitialiser const * ( ::CEGUI::WidgetComponent::*findPropertyInitialiser_function_type )( ::CEGUI::String const & ) const;
            
            WidgetComponent_exposer.def( 
                "findPropertyInitialiser"
                , findPropertyInitialiser_function_type( &::CEGUI::WidgetComponent::findPropertyInitialiser )
                , ( bp::arg("propertyName") )
                , bp::return_value_policy< bp::reference_existing_object >()
                , "*!\n\
                    \n\
                        Takes the name of a property and returns a pointer to the last\n\
                        PropertyInitialiser for this property or 0 if the is no\n\
                        PropertyInitialiser for this property in the WidgetLookFeel\n\
            \n\
                    @param propertyName\n\
                        The name of the property to look for.\n\
                    *\n" );
        
        }
        { //::CEGUI::WidgetComponent::getBaseWidgetType
        
            typedef ::CEGUI::String const & ( ::CEGUI::WidgetComponent::*getBaseWidgetType_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getBaseWidgetType"
                , getBaseWidgetType_function_type( &::CEGUI::WidgetComponent::getBaseWidgetType )
                , bp::return_value_policy< bp::copy_const_reference >() );
        
        }
        { //::CEGUI::WidgetComponent::getComponentArea
        
            typedef ::CEGUI::ComponentArea const & ( ::CEGUI::WidgetComponent::*getComponentArea_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getComponentArea"
                , getComponentArea_function_type( &::CEGUI::WidgetComponent::getComponentArea )
                , bp::return_value_policy< bp::copy_const_reference >() );
        
        }
        { //::CEGUI::WidgetComponent::getHorizontalWidgetAlignment
        
            typedef ::CEGUI::HorizontalAlignment ( ::CEGUI::WidgetComponent::*getHorizontalWidgetAlignment_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getHorizontalWidgetAlignment"
                , getHorizontalWidgetAlignment_function_type( &::CEGUI::WidgetComponent::getHorizontalWidgetAlignment ) );
        
        }
        { //::CEGUI::WidgetComponent::getVerticalWidgetAlignment
        
            typedef ::CEGUI::VerticalAlignment ( ::CEGUI::WidgetComponent::*getVerticalWidgetAlignment_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getVerticalWidgetAlignment"
                , getVerticalWidgetAlignment_function_type( &::CEGUI::WidgetComponent::getVerticalWidgetAlignment ) );
        
        }
        { //::CEGUI::WidgetComponent::getWidgetLookName
        
            typedef ::CEGUI::String const & ( ::CEGUI::WidgetComponent::*getWidgetLookName_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getWidgetLookName"
                , getWidgetLookName_function_type( &::CEGUI::WidgetComponent::getWidgetLookName )
                , bp::return_value_policy< bp::copy_const_reference >() );
        
        }
        { //::CEGUI::WidgetComponent::getWidgetNameSuffix
        
            typedef ::CEGUI::String const & ( ::CEGUI::WidgetComponent::*getWidgetNameSuffix_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getWidgetNameSuffix"
                , getWidgetNameSuffix_function_type( &::CEGUI::WidgetComponent::getWidgetNameSuffix )
                , bp::return_value_policy< bp::copy_const_reference >() );
        
        }
        { //::CEGUI::WidgetComponent::getWindowRendererType
        
            typedef ::CEGUI::String const & ( ::CEGUI::WidgetComponent::*getWindowRendererType_function_type )(  ) const;
            
            WidgetComponent_exposer.def( 
                "getWindowRendererType"
                , getWindowRendererType_function_type( &::CEGUI::WidgetComponent::getWindowRendererType )
                , bp::return_value_policy< bp::copy_const_reference >() );
        
        }
        { //::CEGUI::WidgetComponent::layout
        
            typedef void ( ::CEGUI::WidgetComponent::*layout_function_type )( ::CEGUI::Window const & ) const;
            
            WidgetComponent_exposer.def( 
                "layout"
                , layout_function_type( &::CEGUI::WidgetComponent::layout )
                , ( bp::arg("owner") ) );
        
        }
        { //::CEGUI::WidgetComponent::setBaseWidgetType
        
            typedef void ( ::CEGUI::WidgetComponent::*setBaseWidgetType_function_type )( ::CEGUI::String const & ) ;
            
            WidgetComponent_exposer.def( 
                "setBaseWidgetType"
                , setBaseWidgetType_function_type( &::CEGUI::WidgetComponent::setBaseWidgetType )
                , ( bp::arg("type") ) );
        
        }
        { //::CEGUI::WidgetComponent::setComponentArea
        
            typedef void ( ::CEGUI::WidgetComponent::*setComponentArea_function_type )( ::CEGUI::ComponentArea const & ) ;
            
            WidgetComponent_exposer.def( 
                "setComponentArea"
                , setComponentArea_function_type( &::CEGUI::WidgetComponent::setComponentArea )
                , ( bp::arg("area") ) );
        
        }
        { //::CEGUI::WidgetComponent::setHorizontalWidgetAlignment
        
            typedef void ( ::CEGUI::WidgetComponent::*setHorizontalWidgetAlignment_function_type )( ::CEGUI::HorizontalAlignment ) ;
            
            WidgetComponent_exposer.def( 
                "setHorizontalWidgetAlignment"
                , setHorizontalWidgetAlignment_function_type( &::CEGUI::WidgetComponent::setHorizontalWidgetAlignment )
                , ( bp::arg("alignment") ) );
        
        }
        { //::CEGUI::WidgetComponent::setVerticalWidgetAlignment
        
            typedef void ( ::CEGUI::WidgetComponent::*setVerticalWidgetAlignment_function_type )( ::CEGUI::VerticalAlignment ) ;
            
            WidgetComponent_exposer.def( 
                "setVerticalWidgetAlignment"
                , setVerticalWidgetAlignment_function_type( &::CEGUI::WidgetComponent::setVerticalWidgetAlignment )
                , ( bp::arg("alignment") ) );
        
        }
        { //::CEGUI::WidgetComponent::setWidgetLookName
        
            typedef void ( ::CEGUI::WidgetComponent::*setWidgetLookName_function_type )( ::CEGUI::String const & ) ;
            
            WidgetComponent_exposer.def( 
                "setWidgetLookName"
                , setWidgetLookName_function_type( &::CEGUI::WidgetComponent::setWidgetLookName )
                , ( bp::arg("look") ) );
        
        }
        { //::CEGUI::WidgetComponent::setWidgetNameSuffix
        
            typedef void ( ::CEGUI::WidgetComponent::*setWidgetNameSuffix_function_type )( ::CEGUI::String const & ) ;
            
            WidgetComponent_exposer.def( 
                "setWidgetNameSuffix"
                , setWidgetNameSuffix_function_type( &::CEGUI::WidgetComponent::setWidgetNameSuffix )
                , ( bp::arg("suffix") ) );
        
        }
        { //::CEGUI::WidgetComponent::setWindowRendererType
        
            typedef void ( ::CEGUI::WidgetComponent::*setWindowRendererType_function_type )( ::CEGUI::String const & ) ;
            
            WidgetComponent_exposer.def( 
                "setWindowRendererType"
                , setWindowRendererType_function_type( &::CEGUI::WidgetComponent::setWindowRendererType )
                , ( bp::arg("type") ) );
        
        }
        { //::CEGUI::WidgetComponent::writeXMLToStream
        
            typedef void ( ::CEGUI::WidgetComponent::*writeXMLToStream_function_type )( ::CEGUI::XMLSerializer & ) const;
            
            WidgetComponent_exposer.def( 
                "writeXMLToStream"
                , writeXMLToStream_function_type( &::CEGUI::WidgetComponent::writeXMLToStream )
                , ( bp::arg("xml_stream") )
                , "*!\n\
                    \n\
                        Writes an xml representation of this WidgetComponent to  out_stream.\n\
            \n\
                    @param xml_stream\n\
                        Stream where xml data should be output.\n\
            \n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
    }

}
