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

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

namespace bp = boost::python;

void register_FrameComponent_class(){

    { //::CEGUI::FrameComponent
        typedef bp::class_< CEGUI::FrameComponent, bp::bases< CEGUI::FalagardComponentBase > > FrameComponent_exposer_t;
        FrameComponent_exposer_t FrameComponent_exposer = FrameComponent_exposer_t( "FrameComponent", "*!\n\
            \n\
                Class that encapsulates information for a frame with background (9 images in total)\n\
        \n\
                Corner images are always drawn at their natural size, edges are stretched between the\
                corner\n\
                pieces for a particular edge, the background image will cover the inner rectangle formed\
                by\n\
                the edge images and can be stretched or tiled in either dimension.\n\
            *\n", bp::init< >("*!\n\
        \n\
            Constructor\n\
        *\n") );
        bp::scope FrameComponent_scope( FrameComponent_exposer );
        { //::CEGUI::FrameComponent::getBackgroundHorizontalFormatting
        
            typedef ::CEGUI::HorizontalFormatting ( ::CEGUI::FrameComponent::*getBackgroundHorizontalFormatting_function_type )(  ) const;
            
            FrameComponent_exposer.def( 
                "getBackgroundHorizontalFormatting"
                , getBackgroundHorizontalFormatting_function_type( &::CEGUI::FrameComponent::getBackgroundHorizontalFormatting )
                , "*!\n\
                    \n\
                        Return the current horizontal formatting setting for this FrameComponent.\n\
            \n\
                    @return\n\
                        One of the HorizontalFormatting enumerated values.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::getBackgroundVerticalFormatting
        
            typedef ::CEGUI::VerticalFormatting ( ::CEGUI::FrameComponent::*getBackgroundVerticalFormatting_function_type )(  ) const;
            
            FrameComponent_exposer.def( 
                "getBackgroundVerticalFormatting"
                , getBackgroundVerticalFormatting_function_type( &::CEGUI::FrameComponent::getBackgroundVerticalFormatting )
                , "*!\n\
                    \n\
                        Return the current vertical formatting setting for this FrameComponent.\n\
            \n\
                    @return\n\
                        One of the VerticalFormatting enumerated values.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::getImage
        
            typedef ::CEGUI::Image const * ( ::CEGUI::FrameComponent::*getImage_function_type )( ::CEGUI::FrameImageComponent ) const;
            
            FrameComponent_exposer.def( 
                "getImage"
                , getImage_function_type( &::CEGUI::FrameComponent::getImage )
                , ( bp::arg("part") )
                , bp::return_value_policy< bp::reference_existing_object >()
                , "*!\n\
                    \n\
                        Return the Image object that will be drawn by this FrameComponent for a specified frame\
                        part.\n\
            \n\
                    @param part\n\
                        One of the FrameImageComponent enumerated values specifying the component image to be\
                        accessed.\n\
            \n\
                    @return\n\
                        Image object.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::setBackgroundHorizontalFormatting
        
            typedef void ( ::CEGUI::FrameComponent::*setBackgroundHorizontalFormatting_function_type )( ::CEGUI::HorizontalFormatting ) ;
            
            FrameComponent_exposer.def( 
                "setBackgroundHorizontalFormatting"
                , setBackgroundHorizontalFormatting_function_type( &::CEGUI::FrameComponent::setBackgroundHorizontalFormatting )
                , ( bp::arg("fmt") )
                , "*!\n\
                    \n\
                        Set the horizontal formatting setting for this FrameComponent.\n\
            \n\
                    @param fmt\n\
                        One of the HorizontalFormatting enumerated values.\n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::setBackgroundVerticalFormatting
        
            typedef void ( ::CEGUI::FrameComponent::*setBackgroundVerticalFormatting_function_type )( ::CEGUI::VerticalFormatting ) ;
            
            FrameComponent_exposer.def( 
                "setBackgroundVerticalFormatting"
                , setBackgroundVerticalFormatting_function_type( &::CEGUI::FrameComponent::setBackgroundVerticalFormatting )
                , ( bp::arg("fmt") )
                , "*!\n\
                    \n\
                        Set the vertical formatting setting for this FrameComponent.\n\
            \n\
                    @param fmt\n\
                        One of the VerticalFormatting enumerated values.\n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::setImage
        
            typedef void ( ::CEGUI::FrameComponent::*setImage_function_type )( ::CEGUI::FrameImageComponent,::CEGUI::Image const * ) ;
            
            FrameComponent_exposer.def( 
                "setImage"
                , setImage_function_type( &::CEGUI::FrameComponent::setImage )
                , ( bp::arg("part"), bp::arg("image") )
                , "*!\n\
                    \n\
                        Set the Image that will be drawn by this ImageryComponent.\n\
            \n\
                    @param part\n\
                        One of the FrameImageComponent enumerated values specifying the component image to be\
                        accessed.\n\
            \n\
                    @param image\n\
                        Pointer to the Image object to be drawn by this FrameComponent.\n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::setImage
        
            typedef void ( ::CEGUI::FrameComponent::*setImage_function_type )( ::CEGUI::FrameImageComponent,::CEGUI::String const &,::CEGUI::String const & ) ;
            
            FrameComponent_exposer.def( 
                "setImage"
                , setImage_function_type( &::CEGUI::FrameComponent::setImage )
                , ( bp::arg("part"), bp::arg("imageset"), bp::arg("image") )
                , "*!\n\
                    \n\
                        Set the Image that will be drawn by this FrameComponent.\n\
            \n\
                    @param part\n\
                        One of the FrameImageComponent enumerated values specifying the component image to be\
                        accessed.\n\
            \n\
                    @param imageset\n\
                        String holding the name of the Imagset that contains the Image to be rendered.\n\
            \n\
                    @param image\n\
                        String holding the name of the Image to be rendered.\n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
        { //::CEGUI::FrameComponent::writeXMLToStream
        
            typedef void ( ::CEGUI::FrameComponent::*writeXMLToStream_function_type )( ::CEGUI::XMLSerializer & ) const;
            
            FrameComponent_exposer.def( 
                "writeXMLToStream"
                , writeXMLToStream_function_type( &::CEGUI::FrameComponent::writeXMLToStream )
                , ( bp::arg("xml_stream") )
                , "*!\n\
                    \n\
                        Writes an xml representation of this FrameComponent to  out_stream.\n\
            \n\
                    @param xml_stream\n\
                        Stream where xml data should be output.\n\
            \n\
            \n\
                    @return\n\
                        Nothing.\n\
                    *\n" );
        
        }
    }

}
