packages feed

HGamer3D-CEGUI-Binding (empty) → 0.1.9

raw patch · 157 files changed

+24662/−0 lines, 157 filesdep +HGamer3D-Datadep +basesetup-changed

Dependencies added: HGamer3D-Data, base

Files

+ HGamer3D-CEGUI-Binding.cabal view
@@ -0,0 +1,35 @@+Name:                HGamer3D-CEGUI-Binding
+Version:             0.1.9
+Synopsis:            Windows Game Engine for the Haskell Programmer - CEGUI  Bindings
+Description:         
+   HGamer3D is a game engine for developing 3D games in the programming 
+   language Haskell. The game engine uses available libraries for 3D graphics, 
+   sound, input device handling, gui programming and other areas and make
+   those functions available for the Haskell programmer by providing  
+   a Haskell API on top of that. HGamer3D is available on Windows only.
+   
+
+	
+License:             OtherLicense
+License-file:        LICENSE
+Author:              Peter Althainz
+Maintainer:          althainz@gmail.com
+Build-Type:          Simple
+Cabal-Version:       >=1.2
+Homepage:            http://www.hgamer3d.org
+Category:            Game
+Extra-source-files:  Setup.hs, include/CEGUIDllDefines.h, include/ClassCheckbox.h, include/ClassCombobox.h, include/ClassComboDropList.h, include/ClassDefaultLogger.h, include/ClassDefaultResourceProvider.h, include/ClassDragContainer.h, include/ClassEditbox.h, include/ClassEventArgs.h, include/ClassEventSet.h, include/ClassFont.h, include/ClassFontManager.h, include/ClassFrameWindow.h, include/ClassHG3DEventController.h, include/ClassHG3DEventStaticFunctions.h, include/ClassHG3DListboxStaticFunctions.h, include/ClassHG3DWindowStaticFunctions.h, include/ClassImageCodec.h, include/ClassImageset.h, include/ClassItemEntry.h, include/ClassItemListbox.h, include/ClassListbox.h, include/ClassListboxItem.h, include/ClassListboxTextItem.h, include/ClassListHeader.h, include/ClassListHeaderSegment.h, include/ClassLogger.h, include/ClassMenuBase.h, include/ClassMenuItem.h, include/ClassMultiColumnList.h, include/ClassMultiLineEditbox.h, include/ClassOgreRenderer.h, include/ClassOgreResourceProvider.h, include/ClassProgressBar.h, include/ClassPropertySet.h, include/ClassPtr.h, include/ClassPushButton.h, include/ClassRadioButton.h, include/ClassRenderer.h, include/ClassResourceProvider.h, include/ClassScheme.h, include/ClassSchemeManager.h, include/ClassScriptFunctor.h, include/ClassScriptModule.h, include/ClassScrollablePane.h, include/ClassScrollbar.h, include/ClassScrolledContainer.h, include/ClassScrolledItemListBase.h, include/ClassSlider.h, include/ClassSpinner.h, include/ClassSystem.h, include/ClassSystemHG3D.h, include/ClassTabButton.h, include/ClassThumb.h, include/ClassTooltip.h, include/ClassTree.h, include/ClassWidgetLookManager.h, include/ClassWindow.h, include/ClassWindowManager.h, include/ClassWindowManagerHG3D.h, include/ClassXMLParser.h, include/EnumBlendMode.h, include/EnumFWSizingLocation.h, include/EnumHorizontalAlignment.h, include/EnumKeyScan.h, include/EnumLoggingLevel.h, include/EnumMouseButton.h, include/EnumQuadSplitMode.h, include/EnumSelectionMode.h, include/EnumSortDirection.h, include/EnumSystemKey.h, include/EnumTabPanePosition.h, include/EnumTextInputMode.h, include/EnumTipState.h, include/EnumVerticalAlignment.h, include/EnumWindowUpdateMode.h, include/StructHG3DClass.h
+
+Library
+  Build-Depends:     base >= 3 && < 5,  HGamer3D-Data >= 0.1.9
+
+  Exposed-modules:   HGamer3D.Bindings.CEGUI.Utils, HGamer3D.Bindings.CEGUI.ClassPtr, HGamer3D.Bindings.CEGUI.StructHG3DClass, HGamer3D.Bindings.CEGUI.EnumBlendMode, HGamer3D.Bindings.CEGUI.EnumFWSizingLocation, HGamer3D.Bindings.CEGUI.EnumHorizontalAlignment, HGamer3D.Bindings.CEGUI.EnumKeyScan, HGamer3D.Bindings.CEGUI.EnumLoggingLevel, HGamer3D.Bindings.CEGUI.EnumMouseButton, HGamer3D.Bindings.CEGUI.EnumQuadSplitMode, HGamer3D.Bindings.CEGUI.EnumSelectionMode, HGamer3D.Bindings.CEGUI.EnumSortDirection, HGamer3D.Bindings.CEGUI.EnumSystemKey, HGamer3D.Bindings.CEGUI.EnumTabPanePosition, HGamer3D.Bindings.CEGUI.EnumTextInputMode, HGamer3D.Bindings.CEGUI.EnumTipState, HGamer3D.Bindings.CEGUI.EnumVerticalAlignment, HGamer3D.Bindings.CEGUI.EnumWindowUpdateMode, HGamer3D.Bindings.CEGUI.ClassCheckbox, HGamer3D.Bindings.CEGUI.ClassCombobox, HGamer3D.Bindings.CEGUI.ClassComboDropList, HGamer3D.Bindings.CEGUI.ClassDefaultLogger, HGamer3D.Bindings.CEGUI.ClassDefaultResourceProvider, HGamer3D.Bindings.CEGUI.ClassDragContainer, HGamer3D.Bindings.CEGUI.ClassEditbox, HGamer3D.Bindings.CEGUI.ClassEventArgs, HGamer3D.Bindings.CEGUI.ClassEventSet, HGamer3D.Bindings.CEGUI.ClassFont, HGamer3D.Bindings.CEGUI.ClassFontManager, HGamer3D.Bindings.CEGUI.ClassFrameWindow, HGamer3D.Bindings.CEGUI.ClassHG3DEventController, HGamer3D.Bindings.CEGUI.ClassHG3DEventStaticFunctions, HGamer3D.Bindings.CEGUI.ClassHG3DListboxStaticFunctions, HGamer3D.Bindings.CEGUI.ClassHG3DWindowStaticFunctions, HGamer3D.Bindings.CEGUI.ClassImageCodec, HGamer3D.Bindings.CEGUI.ClassImageset, HGamer3D.Bindings.CEGUI.ClassItemEntry, HGamer3D.Bindings.CEGUI.ClassItemListbox, HGamer3D.Bindings.CEGUI.ClassListbox, HGamer3D.Bindings.CEGUI.ClassListboxItem, HGamer3D.Bindings.CEGUI.ClassListboxTextItem, HGamer3D.Bindings.CEGUI.ClassListHeader, HGamer3D.Bindings.CEGUI.ClassListHeaderSegment, HGamer3D.Bindings.CEGUI.ClassLogger, HGamer3D.Bindings.CEGUI.ClassMenuBase, HGamer3D.Bindings.CEGUI.ClassMenuItem, HGamer3D.Bindings.CEGUI.ClassMultiColumnList, HGamer3D.Bindings.CEGUI.ClassMultiLineEditbox, HGamer3D.Bindings.CEGUI.ClassOgreRenderer, HGamer3D.Bindings.CEGUI.ClassOgreResourceProvider, HGamer3D.Bindings.CEGUI.ClassProgressBar, HGamer3D.Bindings.CEGUI.ClassPropertySet, HGamer3D.Bindings.CEGUI.ClassPushButton, HGamer3D.Bindings.CEGUI.ClassRadioButton, HGamer3D.Bindings.CEGUI.ClassRenderer, HGamer3D.Bindings.CEGUI.ClassResourceProvider, HGamer3D.Bindings.CEGUI.ClassScheme, HGamer3D.Bindings.CEGUI.ClassSchemeManager, HGamer3D.Bindings.CEGUI.ClassScriptFunctor, HGamer3D.Bindings.CEGUI.ClassScriptModule, HGamer3D.Bindings.CEGUI.ClassScrollablePane, HGamer3D.Bindings.CEGUI.ClassScrollbar, HGamer3D.Bindings.CEGUI.ClassScrolledContainer, HGamer3D.Bindings.CEGUI.ClassScrolledItemListBase, HGamer3D.Bindings.CEGUI.ClassSlider, HGamer3D.Bindings.CEGUI.ClassSpinner, HGamer3D.Bindings.CEGUI.ClassSystem, HGamer3D.Bindings.CEGUI.ClassSystemHG3D, HGamer3D.Bindings.CEGUI.ClassTabButton, HGamer3D.Bindings.CEGUI.ClassThumb, HGamer3D.Bindings.CEGUI.ClassTooltip, HGamer3D.Bindings.CEGUI.ClassTree, HGamer3D.Bindings.CEGUI.ClassWidgetLookManager, HGamer3D.Bindings.CEGUI.ClassWindow, HGamer3D.Bindings.CEGUI.ClassWindowManager, HGamer3D.Bindings.CEGUI.ClassWindowManagerHG3D, HGamer3D.Bindings.CEGUI.ClassXMLParser
+  Other-modules:     
+
+  ghc-options:       
+  cc-options:        -Wno-attributes 
+  hs-source-dirs:    .
+  Include-dirs:      include
+  Build-tools:       
+  build-depends:     
+  extra-libraries:   
+ HGamer3D/Bindings/CEGUI/ClassCheckbox.hs view
@@ -0,0 +1,110 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassCheckbox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassCheckbox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+
+-- | return true if the check-box is selected (has the checkmark) 
+isSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the widget is selected and has the check-mark, false if the widget is not selected and does not have the check-mark.     
+isSelected a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelected'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+
+-- | set whether the check-box is selected or not 
+setSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ select - true to select the widget and give it the check-mark. false to de-select the widget and remove the check-mark.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelected'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+
+-- | Constructor for Checkbox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+
+-- | Destructor for Checkbox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs.h cegui_chkbx_isSelected"
+  isSelected'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs.h cegui_chkbx_setSelected"
+  setSelected'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs.h cegui_chkbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCheckbox.chs.h cegui_chkbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassComboDropList.hs view
@@ -0,0 +1,159 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassComboDropList.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassComboDropList where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Set whether the drop-list is 'armed' for selection.  - Details: This setting is not exclusively under client control; the ComboDropListComboDropList
+--
+setArmed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setArmed a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setArmed'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Return the 'armed' state of the ComboDropList - Details: 
+--
+isArmed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isArmed a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isArmed'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Set the mode of operation for the ComboDropList
+setAutoArmEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setAutoArmEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAutoArmEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | returns the mode of operation for the drop-list 
+isAutoArmEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isAutoArmEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAutoArmEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Constructor for ComboDropList
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+-- | Destructor for ComboDropList
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_setArmed"
+  setArmed'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_isArmed"
+  isArmed'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_setAutoArmEnabled"
+  setAutoArmEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_isAutoArmEnabled"
+  isAutoArmEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassComboDropList.chs.h cegui_cmbdrplst_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassCombobox.hs view
@@ -0,0 +1,774 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassCombobox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassCombobox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | returns the mode of operation for the combo box. 
+getSingleClickEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+getSingleClickEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSingleClickEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | returns true if the drop down list is visible. 
+isDropDownListVisible :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the drop down list is visible, false otherwise.     
+isDropDownListVisible a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDropDownListVisible'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return a pointer to the EditboxCombobox
+getEditbox :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to an     
+getEditbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getEditbox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return a pointer to the PushButtonCombobox
+getPushButton :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getPushButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getPushButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return a pointer to the ComboDropListCombobox
+getDropList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to an     
+getDropList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDropList'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return true if the Editbox
+hasInputFocus :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the     
+hasInputFocus a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  hasInputFocus'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return true if the Editbox
+isReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the     
+isReadOnly a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isReadOnly'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return true if the Editbox - Details: It is possible to programmatically set 'invalid' text for the Editbox
+--Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+isTextValid :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the current     
+isTextValid a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTextValid'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the currently set validation string  - Details: Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+getValidationString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object containing the current validation regex data     
+getValidationString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getValidationString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the current position of the carat. 
+getCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the insert carat relative to the start of the text.     
+getCaratIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCaratIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the current selection start point. 
+getSelectionStartIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection start point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionStartIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionStartIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the current selection end point. 
+getSelectionEndIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection end point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionEndIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionEndIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the length of the current selection (in code points / characters). 
+getSelectionLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Number of code points (or characters) contained within the currently defined selection.     
+getSelectionLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return the maximum text length set for this Editbox - Details: Depending on the validation string set, the actual length of text that can be entered may be less than the value returned here (it will never be more). 
+getMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - The maximum number of code points (characters) that can be entered into this     
+getMaxTextLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxTextLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return number of items attached to the list box. 
+getItemCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - the number of items currently attached to this list box.     
+getItemCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getItemCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return a pointer to the currently selected item. 
+getSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getSelectedItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return the item at index position index
+getListboxItemFromIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index - Zero based index of the item to be returned.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getListboxItemFromIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getListboxItemFromIndex'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 129 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return the index of ListboxItemitem
+getItemIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to a ListboxItem whos zero based index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based index indicating the position of     
+getItemIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getItemIndex'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 135 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return whether list sorting is enabled 
+isSortEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the list is sorted, false if the list is not sorted     
+isSortEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSortEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 140 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | return whether the string at index position index
+isItemSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index - Zero based index of the item to be examined.
+  ->  IO (Bool)
+ -- ^ return value - true if the item at     
+isItemSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isItemSelected'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 146 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Search the list for an item with the specified text. 
+findItemWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  HG3DClass  -- ^ start_item - ListboxItem where the search is to begin, the search will not include item. If item is NULL, the search will begin from the first item in the list.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+findItemWithText a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  findItemWithText'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 153 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return whether the specified ListboxItem
+isListboxItemInList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  IO (Bool)
+ -- ^ return value - true if     
+isListboxItemInList a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isListboxItemInList'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 159 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 164 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Return whether the horizontal scroll bar is always shown. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 169 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 173 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Show the drop-down list. 
+showDropList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+showDropList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  showDropList'_ a1' >>= \res ->
+  return ()
+{-# LINE 177 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Hide the drop-down list. 
+hideDropList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+hideDropList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  hideDropList'_ a1' >>= \res ->
+  return ()
+{-# LINE 181 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set the mode of operation for the combo box. 
+setSingleClickEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSingleClickEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSingleClickEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 186 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Specify whether the Editbox
+setReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the Editbox is read only and can't be edited by the user, false if the Editbox is not read only and may be edited by the user.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setReadOnly a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setReadOnly'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 191 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set the text validation string.  - Details: Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+setValidationString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ validation_string - String object containing the validation regex data to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setValidationString a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setValidationString'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 196 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set the current position of the carat. 
+setCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ carat_pos - New index for the insert carat relative to the start of the text. If the value specified is greater than the number of characters in the Editbox, the carat is positioned at the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCaratIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setCaratIndex'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 201 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Define the current selection for the Editbox
+setSelection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ start_pos - Index of the starting point for the selection. If this value is greater than the number of characters in the Editbox, the selection start will be set to the end of the text.
+  ->  Int  -- ^ end_pos - Index of the ending point for the selection. If this value is greater than the number of characters in the Editbox, the selection start will be set to the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelection a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  setSelection'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 207 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | set the maximum text length for this Editbox - Details: Depending on the validation string set, the actual length of text that can be entered may be less than the value set here (it will never be more).
+setMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ max_len - The maximum number of code points (characters) that can be entered into this Editbox.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaxTextLength a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setMaxTextLength'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 212 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Activate the edit box component of the Combobox
+activateEditbox :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+activateEditbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  activateEditbox'_ a1' >>= \res ->
+  return ()
+{-# LINE 216 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Remove all items from the list.  - Details: Note that this will cause 'AutoDelete' items to be deleted. 
+resetList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+resetList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  resetList'_ a1' >>= \res ->
+  return ()
+{-# LINE 220 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Add the given ListboxItem
+addItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to be added to the list. Note that it is the passed object that is added to the list, a copy is not made. If this parameter is NULL, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+addItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  addItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 225 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Insert an item into the list box after a specified item already in the list.  - Details: Note that if the list is sorted, the item may not end up in the requested position.
+--
+insertItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  HG3DClass  -- ^ position
+  ->  IO ()
+ -- ^ 
+insertItem a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  insertItem'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 231 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Removes the given item from the list box. 
+removeItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem that is to be removed. If item is not attached to this list box then nothing will happen.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  removeItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 236 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Clear the selected state for all items. 
+clearAllSelections :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+clearAllSelections a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearAllSelections'_ a1' >>= \res ->
+  return ()
+{-# LINE 240 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set whether the list should be sorted. 
+setSortingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the list should be sorted, false if the list should not be sorted.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSortingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 245 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the vertical scroll bar should be shown even when it is not required. false if the vertical scroll bar should only be shown when it is required.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 250 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set whether the horizontal scroll bar should always be shown. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the horizontal scroll bar should be shown even when it is not required. false if the horizontal scroll bar should only be shown when it is required.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 255 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set the select state of an attached ListboxItem - Details: This is the recommended way of selecting and deselecting items attached to a list box as it respects the
+--multi-select mode setting.  It is possible to modify the setting on ListboxItems directly, but that approach
+--does not respect the settings of the list box.
+--
+setItemSelectState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setItemSelectState a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  setItemSelectState'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 261 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Set the select state of an attached ListboxItem - Details: This is the recommended way of selecting and deselecting items attached to a list box as it respects the
+--multi-select mode setting.  It is possible to modify the setting on ListboxItems directly, but that approach
+--does not respect the settings of the list box.
+--
+setItemSelectState2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ item_index
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setItemSelectState2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromBool a3} in 
+  setItemSelectState2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 267 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Causes the list box to update it's internal state after changes have been made to one or more attached ListboxItem - Details: Client code must call this whenever it has made any changes to ListboxItem objects already attached to the
+--list box.  If you are just adding items, or removed items to update them prior to re-adding them, there is
+--no need to call this method.
+--
+handleUpdatedListItemData :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+handleUpdatedListItemData a1 =
+  withHG3DClass a1 $ \a1' -> 
+  handleUpdatedListItemData'_ a1' >>= \res ->
+  return ()
+{-# LINE 271 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Constructor for Combobox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 277 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+-- | Destructor for Combobox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 281 ".\\HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getSingleClickEnabled"
+  getSingleClickEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isDropDownListVisible"
+  isDropDownListVisible'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getEditbox"
+  getEditbox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getPushButton"
+  getPushButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getDropList"
+  getDropList'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_hasInputFocus"
+  hasInputFocus'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isReadOnly"
+  isReadOnly'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isTextValid"
+  isTextValid'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getValidationString"
+  getValidationString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getCaratIndex"
+  getCaratIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getSelectionStartIndex"
+  getSelectionStartIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getSelectionEndIndex"
+  getSelectionEndIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getSelectionLength"
+  getSelectionLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getMaxTextLength"
+  getMaxTextLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getItemCount"
+  getItemCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getSelectedItem"
+  getSelectedItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getListboxItemFromIndex"
+  getListboxItemFromIndex'_ :: ((HG3DClassPtr) -> (CInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_getItemIndex"
+  getItemIndex'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isSortEnabled"
+  isSortEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isItemSelected"
+  isItemSelected'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_findItemWithText"
+  findItemWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isListboxItemInList"
+  isListboxItemInList'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_showDropList"
+  showDropList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_hideDropList"
+  hideDropList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setSingleClickEnabled"
+  setSingleClickEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setReadOnly"
+  setReadOnly'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setValidationString"
+  setValidationString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setCaratIndex"
+  setCaratIndex'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setSelection"
+  setSelection'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setMaxTextLength"
+  setMaxTextLength'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_activateEditbox"
+  activateEditbox'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_resetList"
+  resetList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_addItem"
+  addItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_insertItem"
+  insertItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_removeItem"
+  removeItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_clearAllSelections"
+  clearAllSelections'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setSortingEnabled"
+  setSortingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setItemSelectState"
+  setItemSelectState'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_setItemSelectState2"
+  setItemSelectState2'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_handleUpdatedListItemData"
+  handleUpdatedListItemData'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassCombobox.chs.h cegui_cmbbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassDefaultLogger.hs view
@@ -0,0 +1,114 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassDefaultLogger.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassDefaultLogger where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumLoggingLevel
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+
+-- | Constructor for DefaultLogger
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+
+-- | Destructor for DefaultLogger
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+
+-- | Add an event to the log. 
+logEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ message - String object containing the message to be added to the event log.
+  ->  EnumLoggingLevel  -- ^ level - LoggingLevel for this message. If level is greater than the current set logging level, the message is not logged.
+  ->  IO ()
+ -- ^ return value - Nothing     
+logEvent a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = cIntFromEnum a3} in 
+  logEvent'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+
+-- | Set the name of the log file where all subsequent log entries should be written.  - Details: When this is called, and the log file is created, any cached log entries are flushed to the log file.
+setLogFilename :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename - Name of the file to put log messages.
+  ->  Bool  -- ^ append - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setLogFilename a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  setLogFilename'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs.h cegui_dfltlgr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs.h cegui_dfltlgr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs.h cegui_dfltlgr_logEvent"
+  logEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultLogger.chs.h cegui_dfltlgr_setLogFilename"
+  setLogFilename'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassDefaultResourceProvider.hs view
@@ -0,0 +1,125 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassDefaultResourceProvider.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassDefaultResourceProvider where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+-- | 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+-- | 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+-- | Set the directory associated with a given resource group identifier. 
+setResourceGroupDirectory :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ resourceGroup - The resource group identifier whose directory is to be set.
+  ->  String  -- ^ directory - The directory to be associated with resource group identifier resourceGroup 
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setResourceGroupDirectory a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setResourceGroupDirectory'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+-- | Return the directory associated with the specified resource group identifier.  - Details: This member is not defined as being const because it may cause creation of an 'empty' directory specification for the resourceGroup if the resourceGroup has not previously been accessed. 
+getResourceGroupDirectory :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ resourceGroup - The resource group identifier for which the associated directory is to be returned.
+  ->  IO (String)
+ -- ^ return value - String object describing the directory currently associated with resource group identifier     
+getResourceGroupDirectory a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloc64k $ \a3' -> 
+  getResourceGroupDirectory'_ a1' a2' a3' >>= \res ->
+  peekCString  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+-- | clears any currently set directory for the specified resource group identifier. 
+clearResourceGroupDirectory :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ resourceGroup - The resource group identifier for which the associated directory is to be cleared. 
+  ->  IO ()
+ -- ^ 
+clearResourceGroupDirectory a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  clearResourceGroupDirectory'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs.h cegui_drpr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs.h cegui_drpr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs.h cegui_drpr_setResourceGroupDirectory"
+  setResourceGroupDirectory'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs.h cegui_drpr_getResourceGroupDirectory"
+  getResourceGroupDirectory'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDefaultResourceProvider.chs.h cegui_drpr_clearResourceGroupDirectory"
+  clearResourceGroupDirectory'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassDragContainer.hs view
@@ -0,0 +1,315 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassDragContainer.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassDragContainer where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Constructor for DragContainer
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Destructor for DragContainer
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return whether dragging is currently enabled for this DragContainer
+isDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isDraggingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDraggingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Set whether dragging is currently enabled for this DragContainer
+setDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDraggingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDraggingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return whether the DragContainer
+isBeingDragged :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isBeingDragged a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isBeingDragged'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return the current drag threshold in pixels.  - Details: The drag threshold is the number of pixels that the mouse must be
+--moved with the left button held down in order to commence a drag
+--operation.
+--
+getPixelDragThreshold :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getPixelDragThreshold a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getPixelDragThreshold'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Set the current drag threshold in pixels.  - Details: The drag threshold is the number of pixels that the mouse must be
+--moved with the left button held down in order to commence a drag
+--operation.
+--
+setPixelDragThreshold :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ pixels
+  ->  IO ()
+ -- ^ 
+setPixelDragThreshold a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setPixelDragThreshold'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return the alpha value that will be set on the DragContainer
+getDragAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - Current alpha value to use whilst dragging.     
+getDragAlpha a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDragAlpha'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Set the alpha value to be set on the DragContainer - Details: This method can be used while a drag is in progress to update the alpha.  Note that
+--the normal setAlpha method does not affect alpha while a drag is in progress, but
+--once the drag operation has ended, any value set via setAlpha will be restored.
+--
+setDragAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ alpha
+  ->  IO ()
+ -- ^ 
+setDragAlpha a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setDragAlpha'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Set the Image to be used for the mouse cursor when a drag operation is in progress.  - Details: This method may be used during a drag operation to update the current mouse
+--cursor image.
+--
+setDragCursorImage3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset
+  ->  String  -- ^ image
+  ->  IO ()
+ -- ^ 
+setDragCursorImage3 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setDragCursorImage3'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 94 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return the WindowDragContainer - Details: The drop target for a DragContainer is basically the Window that the DragContainer
+--is within while being dragged.  The drop target may be 0 to indicate no target.
+--
+getCurrentDropTarget :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getCurrentDropTarget a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCurrentDropTarget'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 99 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return whether sticky mode is enable or disabled. 
+isStickyModeEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isStickyModeEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isStickyModeEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Enable or disable sticky mode. 
+setStickyModeEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setStickyModeEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setStickyModeEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 109 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Immediately pick up the DragContainer
+pickUp :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ force_sticky - 
+--
+--
+  ->  IO (Bool)
+ -- ^ 
+pickUp a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  alloca $ \a3' -> 
+  pickUp'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 115 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Set whether the fixed dragging offset - as set with the setFixedDragOffset - function will be used, or whether the built-in positioning will be used. 
+setUsingFixedDragOffset :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enable - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setUsingFixedDragOffset a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setUsingFixedDragOffset'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 120 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+-- | Return whether the fixed dragging offset - as set with the setFixedDragOffset function - will be used, or whether the built-in positioning will be used. 
+isUsingFixedDragOffset :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isUsingFixedDragOffset a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUsingFixedDragOffset'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 125 ".\\HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_isDraggingEnabled"
+  isDraggingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setDraggingEnabled"
+  setDraggingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_isBeingDragged"
+  isBeingDragged'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_getPixelDragThreshold"
+  getPixelDragThreshold'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setPixelDragThreshold"
+  setPixelDragThreshold'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_getDragAlpha"
+  getDragAlpha'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setDragAlpha"
+  setDragAlpha'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setDragCursorImage3"
+  setDragCursorImage3'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_getCurrentDropTarget"
+  getCurrentDropTarget'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_isStickyModeEnabled"
+  isStickyModeEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setStickyModeEnabled"
+  setStickyModeEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_pickUp"
+  pickUp'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_setUsingFixedDragOffset"
+  setUsingFixedDragOffset'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassDragContainer.chs.h cegui_drgcnt_isUsingFixedDragOffset"
+  isUsingFixedDragOffset'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassEditbox.hs view
@@ -0,0 +1,355 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassEditbox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassEditbox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return true if the Editbox
+hasInputFocus :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+hasInputFocus a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  hasInputFocus'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return true if the Editbox
+isReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the     
+isReadOnly a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isReadOnly'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return true if the text for the Editbox
+isTextMasked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the     
+isTextMasked a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTextMasked'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return true if the Editbox - Details: It is possible to programmatically set 'invalid' text for the Editbox
+--Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+isTextValid :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isTextValid a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTextValid'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the currently set validation string  - Details: Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+getValidationString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object containing the current validation regex data     
+getValidationString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getValidationString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the current position of the carat. 
+getCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the insert carat relative to the start of the text.     
+getCaratIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCaratIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the current selection start point. 
+getSelectionStartIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection start point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionStartIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionStartIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the current selection end point. 
+getSelectionEndIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection end point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionEndIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionEndIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the length of the current selection (in code points / characters). 
+getSelectionLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Number of code points (or characters) contained within the currently defined selection.     
+getSelectionLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the utf32 code point used when rendering masked text. 
+getMaskCodePoint :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - utf32 code point value representing the Unicode code point that will be rendered instead of the     
+getMaskCodePoint a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaskCodePoint'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | return the maximum text length set for this Editbox - Details: Depending on the validation string set, the actual length of text that can be entered may be less than the value returned here (it will never be more). 
+getMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - The maximum number of code points (characters) that can be entered into this     
+getMaxTextLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxTextLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Specify whether the Editbox
+setReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the Editbox is read only and can't be edited by the user, false if the Editbox is not read only and may be edited by the user.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setReadOnly a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setReadOnly'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Specify whether the text for the Editbox
+setTextMasked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTextMasked a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setTextMasked'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Set the text validation string.  - Details: Validation is performed by means of a regular expression. If the text matches the regex, the text is said to have passed validation. If the text does not match with the regex then the text fails validation.
+setValidationString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ validation_string - String object containing the validation regex data to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setValidationString a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setValidationString'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Set the current position of the carat. 
+setCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ carat_pos - New index for the insert carat relative to the start of the text. If the value specified is greater than the number of characters in the Editbox, the carat is positioned at the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCaratIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setCaratIndex'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Define the current selection for the Editbox
+setSelection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ start_pos - Index of the starting point for the selection. If this value is greater than the number of characters in the Editbox, the selection start will be set to the end of the text.
+  ->  Int  -- ^ end_pos - Index of the ending point for the selection. If this value is greater than the number of characters in the Editbox, the selection end will be set to the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelection a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  setSelection'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | set the utf32 code point used when rendering masked text. 
+setMaskCodePoint :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ code_point - utf32 code point value representing the Unicode code point that should be rendered instead of the Editbox text when rendering in masked mode.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaskCodePoint a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setMaskCodePoint'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 129 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | set the maximum text length for this Editbox - Details: Depending on the validation string set, the actual length of text that can be entered may be less than the value set here (it will never be more).
+setMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ max_len - The maximum number of code points (characters) that can be entered into this Editbox.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaxTextLength a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setMaxTextLength'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 134 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Constructor for Editbox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 140 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+-- | Destructor for Editbox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_hasInputFocus"
+  hasInputFocus'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_isReadOnly"
+  isReadOnly'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_isTextMasked"
+  isTextMasked'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_isTextValid"
+  isTextValid'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getValidationString"
+  getValidationString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getCaratIndex"
+  getCaratIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getSelectionStartIndex"
+  getSelectionStartIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getSelectionEndIndex"
+  getSelectionEndIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getSelectionLength"
+  getSelectionLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getMaskCodePoint"
+  getMaskCodePoint'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_getMaxTextLength"
+  getMaxTextLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setReadOnly"
+  setReadOnly'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setTextMasked"
+  setTextMasked'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setValidationString"
+  setValidationString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setCaratIndex"
+  setCaratIndex'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setSelection"
+  setSelection'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setMaskCodePoint"
+  setMaskCodePoint'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_setMaxTextLength"
+  setMaxTextLength'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEditbox.chs.h cegui_edtbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassEventArgs.hs view
@@ -0,0 +1,76 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassEventArgs.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassEventArgs where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}
+
+-- | 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}
+
+-- | 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs.h cegui_evntargs_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventArgs.chs.h cegui_evntargs_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassEventSet.hs view
@@ -0,0 +1,187 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassEventSet.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassEventSet where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Constructor for EventSet
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Destructor for EventSet
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Add a new EventEventSet
+addEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object containing the name to give the new Event. The name must be unique for the EventSet.
+  ->  IO ()
+ -- ^ return value - Nothing    
+addEvent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  addEvent'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Removes the Event
+removeEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object containing the name of the Event to remove. If no such Event exists, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeEvent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  removeEvent'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Remove all EventEventSet
+removeAllEvents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+removeAllEvents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  removeAllEvents'_ a1' >>= \res ->
+  return ()
+{-# LINE 65 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Checks to see if an EventEventSet
+isEventPresent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name
+  ->  IO (Bool)
+ -- ^ return value - true if an     
+isEventPresent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isEventPresent'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 71 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Fires the named event passing the given EventArgs
+fireEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Event that is to be fired (triggered)
+  ->  HG3DClass  -- ^ args - The EventArgs (or derived) object that is to be bassed to each subscriber of the Event. Once all subscribers have been called the 'handled' field of the event is updated appropriately.
+  ->  String  -- ^ eventNamespace - String object describing the global event namespace prefix for this event.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+fireEvent a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  withCString a4 $ \a4' -> 
+  fireEvent'_ a1' a2' a3' a4' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Return whether the EventSet
+isMuted :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isMuted a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMuted'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+-- | Set the mute state for this EventSet
+setMutedState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMutedState a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMutedState'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_addEvent"
+  addEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_removeEvent"
+  removeEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_removeAllEvents"
+  removeAllEvents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_isEventPresent"
+  isEventPresent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_fireEvent"
+  fireEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_isMuted"
+  isMuted'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassEventSet.chs.h cegui_evtst_setMutedState"
+  setMutedState'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassFont.hs view
@@ -0,0 +1,282 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassFont.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassFont where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the string holding the font name. 
+getName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the type of the font. 
+getTypeName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getTypeName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTypeName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return whether this Font
+isCodepointAvailable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ cp - utf32 code point that is the subject of the query.
+  ->  IO (Bool)
+ -- ^ return value - true if the font contains a mapping for code point     
+isCodepointAvailable a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isCodepointAvailable'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Enable or disable auto-scaling for this Font
+setAutoScaled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ auto_scaled - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setAutoScaled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAutoScaled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return whether this Font
+isAutoScaled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isAutoScaled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAutoScaled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the pixel line spacing value for. 
+getLineSpacing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ y_scale - Scaling factor to be applied to the line spacing, where 1.0f is considered to be 'normal'.
+  ->  IO (Float)
+ -- ^ return value - Number of pixels between vertical base lines, i.e. The minimum pixel space between two lines of text.     
+getLineSpacing a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  alloca $ \a3' -> 
+  getLineSpacing'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | return the exact pixel height of the font. 
+getFontHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ y_scale - Scaling factor to be applied to the height, where 1.0f is considered to be 'normal'.
+  ->  IO (Float)
+ -- ^ return value - float value describing the pixel height of the font without any additional padding.     
+getFontHeight a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  alloca $ \a3' -> 
+  getFontHeight'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 85 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the number of pixels from the top of the highest glyph to the baseline. 
+getBaseline :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ y_scale - Scaling factor to be applied to the baseline distance, where 1.0f is considered to be 'normal'.
+  ->  IO (Float)
+ -- ^ return value - pixel spacing from top of front glyphs to baseline     
+getBaseline a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  alloca $ \a3' -> 
+  getBaseline'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 91 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the pixel width of the specified text if rendered with this Font
+getTextExtent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to return the rendered pixel width for.
+  ->  Float  -- ^ x_scale - Scaling factor to be applied to each glyph's x axis when measuring the extent, where 1.0f is considered to be 'normal'.
+  ->  IO (Float)
+ -- ^ return value - Number of pixels that     
+getTextExtent a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = realToFrac a3} in 
+  alloca $ \a4' -> 
+  getTextExtent'_ a1' a2' a3' a4' >>= \res ->
+  peekFloatConv  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the index of the closest text character in String textpixel
+getCharAtPixel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text.
+  ->  Float  -- ^ pixel - Specifies the (horizontal) pixel offset to return the character index for.
+  ->  Float  -- ^ x_scale - Scaling factor to be applied to each glyph's x axis when measuring the text extent, where 1.0f is considered to be 'normal'.
+  ->  IO (Int)
+ -- ^ return value - Returns a character index into String     
+getCharAtPixel a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = realToFrac a3} in 
+  let {a4' = realToFrac a4} in 
+  alloca $ \a5' -> 
+  getCharAtPixel'_ a1' a2' a3' a4' a5' >>= \res ->
+  peekIntConv  a5'>>= \a5'' -> 
+  return (a5'')
+{-# LINE 106 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Return the index of the closest text character in String textstart_charpixel
+getCharAtPixel2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text.
+  ->  Int  -- ^ start_char - index of the first character to consider. This is the lowest value that will be returned from the call.
+  ->  Float  -- ^ pixel - Specifies the (horizontal) pixel offset to return the character index for.
+  ->  Float  -- ^ x_scale - Scaling factor to be applied to each glyph's x axis when measuring the text extent, where 1.0f is considered to be 'normal'.
+  ->  IO (Int)
+ -- ^ return value - Returns a character index into String     
+getCharAtPixel2 a1 a2 a3 a4 a5 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  let {a4' = realToFrac a4} in 
+  let {a5' = realToFrac a5} in 
+  alloca $ \a6' -> 
+  getCharAtPixel2'_ a1' a2' a3' a4' a5' a6' >>= \res ->
+  peekIntConv  a6'>>= \a6'' -> 
+  return (a6'')
+{-# LINE 115 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Sets the default resource group to be used when loading font data. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 119 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+-- | Returns the default resource group currently set for Fonts. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier that will be used when loading font data.     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFont.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getName"
+  getName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getTypeName"
+  getTypeName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_isCodepointAvailable"
+  isCodepointAvailable'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_setAutoScaled"
+  setAutoScaled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_isAutoScaled"
+  isAutoScaled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getLineSpacing"
+  getLineSpacing'_ :: ((HG3DClassPtr) -> (CFloat -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getFontHeight"
+  getFontHeight'_ :: ((HG3DClassPtr) -> (CFloat -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getBaseline"
+  getBaseline'_ :: ((HG3DClassPtr) -> (CFloat -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getTextExtent"
+  getTextExtent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CFloat -> ((Ptr CFloat) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getCharAtPixel"
+  getCharAtPixel'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CFloat -> (CFloat -> ((Ptr CInt) -> (IO ()))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getCharAtPixel2"
+  getCharAtPixel2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (CFloat -> (CFloat -> ((Ptr CInt) -> (IO ())))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFont.chs.h cegui_fnt_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassFontManager.hs view
@@ -0,0 +1,76 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassFontManager.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassFontManager where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}
+
+-- | Constructor. 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs.h cegui_fntmgr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFontManager.chs.h cegui_fntmgr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassFrameWindow.hs view
@@ -0,0 +1,414 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassFrameWindow.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassFrameWindow where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Initialises the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether this window is sizable. Note that this requires that the window have an enabled frame and that sizing itself is enabled. 
+isSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the window can be sized, false if the window can not be sized     
+isSizingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSizingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether the frame for this window is enabled. 
+isFrameEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the frame for this window is enabled, false if the frame for this window is disabled.     
+isFrameEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isFrameEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether the title bar for this window is enabled. 
+isTitleBarEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the window has a title bar and it is enabled, false if the window has no title bar or if the title bar is disabled.     
+isTitleBarEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTitleBarEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether this close button for this window is enabled. 
+isCloseButtonEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the window has a close button and it is enabled, false if the window either has no close button or if the close button is disabled.     
+isCloseButtonEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isCloseButtonEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether roll up (a.k.a shading) is enabled for this window. 
+isRollupEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if roll up is enabled, false if roll up is disabled.     
+isRollupEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isRollupEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether the window is currently rolled up (a.k.a shaded). 
+isRolledup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the window is rolled up, false if the window is not rolled up.     
+isRolledup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isRolledup'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return the thickness of the sizing border. 
+getSizingBorderThickness :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value describing the thickness of the sizing border in screen pixels.     
+getSizingBorderThickness a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSizingBorderThickness'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Enables or disables sizing for this window. 
+setSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - set to true to enable sizing (also requires frame to be enabled), or false to disable sizing.
+  ->  IO ()
+ -- ^ return value - nothing     
+setSizingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSizingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Enables or disables the frame for this window. 
+setFrameEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - set to true to enable the frame for this window, or false to disable the frame for this window.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setFrameEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setFrameEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Enables or disables the title bar for the frame window. 
+setTitleBarEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - set to true to enable the title bar (if one is attached), or false to disable the title bar.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTitleBarEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setTitleBarEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Enables or disables the close button for the frame window. 
+setCloseButtonEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - Set to true to enable the close button (if one is attached), or false to disable the close button.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCloseButtonEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setCloseButtonEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 102 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Enables or disables roll-up (shading) for this window. 
+setRollupEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - Set to true to enable roll-up for the frame window, or false to disable roll-up.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setRollupEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setRollupEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Toggles the state of the window between rolled-up (shaded) and normal sizes. This requires roll-up to be enabled. 
+toggleRollup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+toggleRollup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  toggleRollup'_ a1' >>= \res ->
+  return ()
+{-# LINE 111 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set the size of the sizing border for this window. 
+setSizingBorderThickness :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ pixels - float value specifying the thickness for the sizing border in screen pixels.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSizingBorderThickness a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setSizingBorderThickness'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 116 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return whether this FrameWindow
+isDragMovingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the     
+isDragMovingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDragMovingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 121 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set whether this FrameWindow
+setDragMovingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the Window should move when the user drags the title bar, false if the window should not move.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDragMovingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDragMovingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 126 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set the image to be used for the north-south sizing mouse cursor. 
+setNSSizingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String holding the name of the Imageset containing the Image to be used.
+  ->  String  -- ^ image - String holding the name of the Image to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNSSizingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setNSSizingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set the image to be used for the east-west sizing mouse cursor. 
+setEWSizingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String holding the name of the Imageset containing the Image to be used.
+  ->  String  -- ^ image - String holding the name of the Image to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setEWSizingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setEWSizingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set the image to be used for the northwest-southeast sizing mouse cursor. 
+setNWSESizingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String holding the name of the Imageset containing the Image to be used.
+  ->  String  -- ^ image - String holding the name of the Image to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNWSESizingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setNWSESizingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Set the image to be used for the northeast-southwest sizing mouse cursor. 
+setNESWSizingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String holding the name of the Imageset containing the Image to be used.
+  ->  String  -- ^ image - String holding the name of the Image to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNESWSizingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setNESWSizingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 150 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Return a pointer to the close button component widget for this FrameWindow
+getCloseButton :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getCloseButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCloseButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 155 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Constructor for FrameWindow
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 161 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+-- | Destructor for FramwWindow objects. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 165 ".\\HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isSizingEnabled"
+  isSizingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isFrameEnabled"
+  isFrameEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isTitleBarEnabled"
+  isTitleBarEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isCloseButtonEnabled"
+  isCloseButtonEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isRollupEnabled"
+  isRollupEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isRolledup"
+  isRolledup'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_getSizingBorderThickness"
+  getSizingBorderThickness'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setSizingEnabled"
+  setSizingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setFrameEnabled"
+  setFrameEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setTitleBarEnabled"
+  setTitleBarEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setCloseButtonEnabled"
+  setCloseButtonEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setRollupEnabled"
+  setRollupEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_toggleRollup"
+  toggleRollup'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setSizingBorderThickness"
+  setSizingBorderThickness'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_isDragMovingEnabled"
+  isDragMovingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setDragMovingEnabled"
+  setDragMovingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setNSSizingCursorImage2"
+  setNSSizingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setEWSizingCursorImage2"
+  setEWSizingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setNWSESizingCursorImage2"
+  setNWSESizingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_setNESWSizingCursorImage2"
+  setNESWSizingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_getCloseButton"
+  getCloseButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassFrameWindow.chs.h cegui_frmwndw_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassHG3DEventController.hs view
@@ -0,0 +1,129 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassHG3DEventController.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassHG3DEventController where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+-- | 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+-- | 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+-- | 
+pushEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name
+  ->  String  -- ^ sender
+  ->  HG3DClass  -- ^ window
+  ->  IO ()
+ -- ^ 
+pushEvent a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  withHG3DClass a4 $ \a4' -> 
+  pushEvent'_ a1' a2' a3' a4' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+-- | 
+eventsAvailable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+eventsAvailable a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  eventsAvailable'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+-- | 
+popEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String, String, HG3DClass)
+ -- ^ name
+popEvent a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  alloc64k $ \a3' -> 
+  alloca $ \a4' -> 
+  popEvent'_ a1' a2' a3' a4' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  peekCString  a3'>>= \a3'' -> 
+  peek  a4'>>= \a4'' -> 
+  return (a2'', a3'', a4'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs.h construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs.h destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs.h pushEvent"
+  pushEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs.h eventsAvailable"
+  eventsAvailable'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventController.chs.h popEvent"
+  popEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))
+ HGamer3D/Bindings/CEGUI/ClassHG3DEventStaticFunctions.hs view
@@ -0,0 +1,67 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassHG3DEventStaticFunctions.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassHG3DEventStaticFunctions where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs" #-}
+
+-- | 
+subscribeScriptedEvent :: HG3DClass  -- ^ window
+  ->  String  -- ^ name
+  ->  String  -- ^ subscriber_name
+  ->  IO ()
+ -- ^ 
+subscribeScriptedEvent a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  subscribeScriptedEvent'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DEventStaticFunctions.chs.h cegui_hg3devtsf_subscribeScriptedEvent"
+  subscribeScriptedEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassHG3DListboxStaticFunctions.hs view
@@ -0,0 +1,80 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassHG3DListboxStaticFunctions.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassHG3DListboxStaticFunctions where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}
+
+-- | 
+listboxAddItem :: HG3DClass  -- ^ listbox
+  ->  String  -- ^ itemString
+  ->  IO ()
+ -- ^ 
+listboxAddItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  listboxAddItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}
+
+-- | 
+comboboxAddItem :: HG3DClass  -- ^ combobox
+  ->  String  -- ^ itemString
+  ->  IO ()
+ -- ^ 
+comboboxAddItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  comboboxAddItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs.h cegui_hg3dlstbxsf_listboxAddItem"
+  listboxAddItem'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DListboxStaticFunctions.chs.h cegui_hg3dlstbxsf_comboboxAddItem"
+  comboboxAddItem'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassHG3DWindowStaticFunctions.hs view
@@ -0,0 +1,230 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassHG3DWindowStaticFunctions.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassHG3DWindowStaticFunctions where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToPushButton :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToPushButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToPushButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToListbox :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToListbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToListbox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToCombobox :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToCombobox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToCombobox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToCheckbox :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToCheckbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToCheckbox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToRadioButton :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToRadioButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToRadioButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToEditbox :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToEditbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToEditbox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToMultiLineEditbox :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToMultiLineEditbox a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToMultiLineEditbox'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToFrameWindow :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToFrameWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToFrameWindow'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToProgressBar :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToProgressBar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToProgressBar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToSlider :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToSlider a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToSlider'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToSpinner :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToSpinner a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToSpinner'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+-- | 
+castWindowToMultiColumnList :: HG3DClass  -- ^ window
+  ->  IO (HG3DClass)
+ -- ^ 
+castWindowToMultiColumnList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  castWindowToMultiColumnList'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToPushButton"
+  castWindowToPushButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToListbox"
+  castWindowToListbox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToCombobox"
+  castWindowToCombobox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToCheckbox"
+  castWindowToCheckbox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToRadioButton"
+  castWindowToRadioButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToEditbox"
+  castWindowToEditbox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToMultiLineEditbox"
+  castWindowToMultiLineEditbox'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToFrameWindow"
+  castWindowToFrameWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToProgressBar"
+  castWindowToProgressBar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToSlider"
+  castWindowToSlider'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToSpinner"
+  castWindowToSpinner'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassHG3DWindowStaticFunctions.chs.h cegui_hg3dwsfs_castWindowToMultiColumnList"
+  castWindowToMultiColumnList'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassImageCodec.hs view
@@ -0,0 +1,93 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassImageCodec.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassImageCodec where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+
+-- | Return the name of the image codec object.  - Details: Return the name of the image codec
+getIdentifierString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getIdentifierString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getIdentifierString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+
+-- | Return the list of image file format supported.  - Details: Return a list of space separated image format supported by this codec
+getSupportedFormat :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getSupportedFormat a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getSupportedFormat'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs.h cegui_imgcdc_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs.h cegui_imgcdc_getIdentifierString"
+  getIdentifierString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageCodec.chs.h cegui_imgcdc_getSupportedFormat"
+  getSupportedFormat'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassImageset.hs view
@@ -0,0 +1,281 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassImageset.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassImageset where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Construct a new Imageset - Details: Under certain renderers it may be required that the source image dimensions be some power of 2, if this condition is not met then stretching and other undesired side-effects may be experienced. To be safe from such effects it is generally recommended that all images that you load have dimensions that are some power of 2.
+new :: String  -- ^ name - String object holding the name to be assigned to the created imageset.
+  ->  String  -- ^ filename - String object holding the filename of the image that is to be loaded. The image should be of some format that is supported by the Renderer that is in use.
+  ->  String  -- ^ resourceGroup - Resource group identifier to be passed to the resource manager, which may specify a group from which the image file is to be loaded.
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 a3 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  new'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 50 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Destroys Imageset
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 54 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return String object holding the name of the Imageset
+getName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object that holds the name of the     
+getName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return number of images defined for this Imageset
+getImageCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value equal to the number of Image objects defined for the     
+getImageCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getImageCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return true if an Image with the specified name exists. 
+isImageDefined :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image to look for.
+  ->  IO (Bool)
+ -- ^ return value - true if an Image object named     
+isImageDefined a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isImageDefined'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | remove the definition for the Image with the specified name. If no such Image exists, nothing happens. 
+undefineImage :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image object to be removed from the Imageset, 
+  ->  IO ()
+ -- ^ return value - Nothing.     
+undefineImage a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  undefineImage'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 75 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Removes the definitions for all Image objects currently defined in the Imageset
+undefineAllImages :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+undefineAllImages a1 =
+  withHG3DClass a1 $ \a1' -> 
+  undefineAllImages'_ a1' >>= \res ->
+  return ()
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return the width of the named image. 
+getImageWidth :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image.
+  ->  IO (Float)
+ -- ^ return value - float value equalling the width of the requested Image.    
+getImageWidth a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getImageWidth'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 85 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return the height of the named image. 
+getImageHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image.
+  ->  IO (Float)
+ -- ^ return value - float value equalling the height of the requested Image.    
+getImageHeight a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getImageHeight'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 91 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return the x rendering offset for the named image. 
+getImageOffsetX :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image.
+  ->  IO (Float)
+ -- ^ return value - float value equal to the x rendering offset applied when drawing the requested Image.    
+getImageOffsetX a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getImageOffsetX'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | return the y rendering offset for the named image. 
+getImageOffsetY :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Image.
+  ->  IO (Float)
+ -- ^ return value - float value equal to the y rendering offset applied when drawing the requested Image.    
+getImageOffsetY a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getImageOffsetY'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Return whether this Imageset
+isAutoScaled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if     
+isAutoScaled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAutoScaled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Enable or disable auto-scaling for this Imageset
+setAutoScalingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true to enable auto-scaling, false to disable auto-scaling.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setAutoScalingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAutoScalingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Sets the default resource group to be used when loading imageset data. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 117 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+-- | Returns the default resource group currently set for Imagesets. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier that will be used when loading     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 121 ".\\HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getName"
+  getName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getImageCount"
+  getImageCount'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_isImageDefined"
+  isImageDefined'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_undefineImage"
+  undefineImage'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_undefineAllImages"
+  undefineAllImages'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getImageWidth"
+  getImageWidth'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getImageHeight"
+  getImageHeight'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getImageOffsetX"
+  getImageOffsetX'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getImageOffsetY"
+  getImageOffsetY'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_isAutoScaled"
+  isAutoScaled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_setAutoScalingEnabled"
+  setAutoScalingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassImageset.chs.h cegui_imgst_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassItemEntry.hs view
@@ -0,0 +1,183 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassItemEntry.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassItemEntry where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Returns whether this item is selected or not. 
+isSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSelected a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelected'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Returns whether this item is selectable or not. 
+isSelectable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSelectable a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelectable'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Sets the selection state of this item (on/off). If this item is not selectable this function does nothing. 
+setSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 'true' to select the item. 'false' to deselect the item. 
+  ->  IO ()
+ -- ^ 
+setSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelected'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Selects the item. 
+select :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+select a1 =
+  withHG3DClass a1 $ \a1' -> 
+  select'_ a1' >>= \res ->
+  return ()
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Deselects the item. 
+deselect :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+deselect a1 =
+  withHG3DClass a1 $ \a1' -> 
+  deselect'_ a1' >>= \res ->
+  return ()
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Set the selection state for this ListItem. Internal version. Should NOT be used by client code. 
+setSelectedImpl :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ state
+  ->  Bool  -- ^ notify
+  ->  IO ()
+ -- ^ 
+setSelectedImpl a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  let {a3' = fromBool a3} in 
+  setSelectedImpl'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Sets whether this item will be selectable.  - Details: If the item is currently selectable and selected, calling this function with setting
+setSelectable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 'true' to allow this item to be selected. 'false' to disallow this item from ever being selected.
+  ->  IO ()
+ -- ^ 
+setSelectable a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelectable'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Constructor for ItemEntry
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+-- | Destructor for ItemEntry
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_isSelected"
+  isSelected'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_isSelectable"
+  isSelectable'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_setSelected"
+  setSelected'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_select"
+  select'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_deselect"
+  deselect'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_setSelected_impl"
+  setSelectedImpl'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_setSelectable"
+  setSelectable'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemEntry.chs.h cegui_itmentr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassItemListbox.hs view
@@ -0,0 +1,324 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassItemListbox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassItemListbox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns the number of selected items in this ItemListbox
+getSelectedCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ 
+getSelectedCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns a pointer to the last selected item. 
+getLastSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - A pointer to the last selected item, 0 is none.     
+getLastSelectedItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getLastSelectedItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns a pointer to the first selected item.  - Details: If multiselect is disabled then this does the equivalent of calling getLastSelectedItem. If multiselect is enabled it will search the array starting at start_index
+getFirstSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ start_index - The index where the search should begin. If omitted the search will begin with the first item.
+  ->  IO (HG3DClass)
+ -- ^ return value - A pointer to the first selected item in the listbox. If no item is selected the return value is 0. If     
+getFirstSelectedItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getFirstSelectedItem'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns a pointer to the next seleced item relative to a previous call to getFirstSelectedItem or getNextSelectedItem.  - Details: This member function will take on from where the last call to getFirstSelectedItem or getNextSelectedItem returned. So be sure to start with a call to getFirstSelectedItem.
+getNextSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - A pointer to the next seleced item. If there are no further selected items the return value is 0. If multiselect is disabled the return value is 0.    
+getNextSelectedItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getNextSelectedItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns a pointer to the next selected item after the item 'start_item' given.  - Details: This member function will search the array from the beginning and will be slow for large lists, it will not advance the internal counter used by getFirstSelectedItem and getNextSelectedItem either. 
+getNextSelectedItemAfter :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ start_item
+  ->  IO (HG3DClass)
+ -- ^ 
+getNextSelectedItemAfter a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getNextSelectedItemAfter'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns 'true' if multiple selections are allowed. 'false' if not. 
+isMultiSelectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isMultiSelectEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMultiSelectEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 75 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Returns 'true' if the item at the given index is selectable and currently selected. 
+isItemSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index
+  ->  IO (Bool)
+ -- ^ 
+isItemSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isItemSelected'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 81 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | 
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 85 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Set whether or not multiple selections should be allowed. 
+setMultiSelectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setMultiSelectEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMultiSelectEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 90 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Clears all selections. 
+clearAllSelections :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+clearAllSelections a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearAllSelections'_ a1' >>= \res ->
+  return ()
+{-# LINE 94 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Select a range of items. 
+selectRange :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ a - Start item. (inclusive)
+  ->  Int  -- ^ z - End item. (inclusive) 
+  ->  IO ()
+ -- ^ 
+selectRange a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  selectRange'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 100 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Select all items. Does nothing if multiselect is disabled. 
+selectAllItems :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+selectAllItems a1 =
+  withHG3DClass a1 $ \a1' -> 
+  selectAllItems'_ a1' >>= \res ->
+  return ()
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Constructor for the ItemListbox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 110 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Destructor for the ItemListbox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 114 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Setup size and position for the item widgets attached to this ItemListbox
+layoutItemWidgets :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+layoutItemWidgets a1 =
+  withHG3DClass a1 $ \a1' -> 
+  layoutItemWidgets'_ a1' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Return whether this window was inherited from the given class name at some point in the inheritance hierarchy. 
+testClassNameImpl :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ class_name - The class name that is to be checked.
+  ->  IO (Bool)
+ -- ^ return value - true if this window was inherited from     
+testClassNameImpl a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  testClassNameImpl'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Notify this ItemListbox
+notifyItemClicked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ li
+  ->  IO ()
+ -- ^ 
+notifyItemClicked a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  notifyItemClicked'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 129 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+-- | Notify this ItemListbox
+notifyItemSelectState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ li
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+notifyItemSelectState a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  notifyItemSelectState'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 135 ".\\HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_getSelectedCount"
+  getSelectedCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_getLastSelectedItem"
+  getLastSelectedItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_getFirstSelectedItem"
+  getFirstSelectedItem'_ :: ((HG3DClassPtr) -> (CInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_getNextSelectedItem"
+  getNextSelectedItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_getNextSelectedItemAfter"
+  getNextSelectedItemAfter'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_isMultiSelectEnabled"
+  isMultiSelectEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_isItemSelected"
+  isItemSelected'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_setMultiSelectEnabled"
+  setMultiSelectEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_clearAllSelections"
+  clearAllSelections'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_selectRange"
+  selectRange'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_selectAllItems"
+  selectAllItems'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_layoutItemWidgets"
+  layoutItemWidgets'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_testClassName_impl"
+  testClassNameImpl'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_notifyItemClicked"
+  notifyItemClicked'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassItemListbox.chs.h cegui_itmlstbx_notifyItemSelectState"
+  notifyItemSelectState'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CInt -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassListHeader.hs view
@@ -0,0 +1,560 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassListHeader.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassListHeader where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumSortDirection
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the number of columns or segments attached to the header. 
+getColumnCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value equal to the number of columns / segments currently in the header.     
+getColumnCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getColumnCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the ListHeaderSegment
+getSegmentFromColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - zero based column index of the ListHeaderSegment to be returned.
+  ->  IO (HG3DClass)
+ -- ^ 
+getSegmentFromColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getSegmentFromColumn'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 55 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the ListHeaderSegment
+getSegmentFromID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ id - id code of the ListHeaderSegment to be returned.
+  ->  IO (HG3DClass)
+ -- ^ 
+getSegmentFromID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getSegmentFromID'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the ListHeaderSegment
+getSortSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getSortSegment a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortSegment'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the zero based column index of the specified segment. 
+getColumnFromSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment whos zero based index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index of the     
+getColumnFromSegment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getColumnFromSegment'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the zero based column index of the segment with the specified ID. 
+getColumnFromID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ id - ID code of the segment whos column index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index of the first     
+getColumnFromID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getColumnFromID'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the zero based index of the current sort column. There must be at least one segment/column to successfully call this method. 
+getSortColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index that is the current sort column.    
+getSortColumn a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortColumn'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the zero based column index of the segment with the specified text. 
+getColumnWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index of the segment with the specified text.    
+getColumnWithText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getColumnWithText'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 89 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the pixel offset to the given ListHeaderSegment
+getPixelOffsetToSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment object that the offset to is to be returned.
+  ->  IO (Float)
+ -- ^ return value - The number of pixels up-to the begining of the     
+getPixelOffsetToSegment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getPixelOffsetToSegment'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 95 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the pixel offset to the ListHeaderSegment
+getPixelOffsetToColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - Zero based column index of the ListHeaderSegment whos pixel offset it to be returned.
+  ->  IO (Float)
+ -- ^ return value - The number of pixels up-to the begining of the     
+getPixelOffsetToColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getPixelOffsetToColumn'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 101 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the total pixel width of all attached segments. 
+getTotalSegmentsPixelExtent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - Sum of the pixel widths of all attached     
+getTotalSegmentsPixelExtent a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTotalSegmentsPixelExtent'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 106 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the currently set sort direction. 
+getSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumSortDirection)
+ -- ^ return value - One of the     
+getSortDirection a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortDirection'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 111 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return whether user manipulation of the sort column & direction are enabled. 
+isSortingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the sort column and direction. false if the user may not modify the sort column and direction (these can still be set programmatically).     
+isSortingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSortingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 116 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return whether the user may size column segments. 
+isColumnSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the width of column segments, false if they may not.     
+isColumnSizingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isColumnSizingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 121 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return whether the user may modify the order of the segments. 
+isColumnDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the order of the column segments, false if they may not.     
+isColumnDraggingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isColumnDraggingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 126 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Return the current segment offset value. This value is used to implement scrolling of the header segments within the ListHeader
+getSegmentOffset :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the current segment offset value in whatever metrics system is active for the     
+getSegmentOffset a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSegmentOffset'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 131 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set whether user manipulation of the sort column and direction is enabled. 
+setSortingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSortingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 136 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set the current sort direction. 
+setSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumSortDirection  -- ^ direction - One of the ListHeaderSegment::SortDirection enumerated values indicating the sort direction to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortDirection a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setSortDirection'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 141 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set the column segment to be used as the sort column. 
+setSortSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment object indicating the column to be sorted.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSortSegment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setSortSegment'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 146 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set the column to be used as the sort column. 
+setSortColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - Zero based column index indicating the column to be sorted.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSortColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setSortColumn'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 151 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set the column to to be used for sorting via its ID code. 
+setSortColumnFromID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ id - ID code of the column segment that is to be used as the sort column.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSortColumnFromID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setSortColumnFromID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 156 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set whether columns may be sized by the user. 
+setColumnSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setColumnSizingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setColumnSizingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 161 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set whether columns may be reordered by the user via drag and drop. 
+setColumnDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setColumnDraggingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setColumnDraggingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 166 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Removes a column segment from the ListHeader
+removeColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - Zero based column index indicating the segment to be removed.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+removeColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  removeColumn'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 171 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Remove the specified segment from the ListHeader
+removeSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment object that is to be removed from the ListHeader.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+removeSegment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  removeSegment'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 176 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Moves a column segment into a new position. 
+moveColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - Zero based column index indicating the column segment to be moved.
+  ->  Int  -- ^ position - Zero based column index indicating the new position for the segment. If this is greater than the current number of segments, the segment is moved to the end of the header.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveColumn a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  moveColumn'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 182 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Move a column segment to a new position. 
+moveColumn2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ column - Zero based column index indicating the column segment to be moved.
+  ->  HG3DClass  -- ^ position - ListHeaderSegment object indicating the new position for the segment. The segment at column will be moved behind segment position (that is, segment column will appear to the right of segment position).
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveColumn2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  withHG3DClass a3 $ \a3' -> 
+  moveColumn2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 188 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Moves a segment into a new position. 
+moveSegment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment object that is to be moved.
+  ->  Int  -- ^ position - Zero based column index indicating the new position for the segment. If this is greater than the current number of segments, the segment is moved to the end of the header.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveSegment a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  moveSegment'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 194 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Move a segment to a new position. 
+moveSegment2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ segment - ListHeaderSegment object that is to be moved.
+  ->  HG3DClass  -- ^ position - ListHeaderSegment object indicating the new position for the segment. The segment segment will be moved behind segment position (that is, segment segment will appear to the right of segment position).
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveSegment2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  moveSegment2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 200 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Set the current base segment offset. (This implements scrolling of the header segments within the header area). 
+setSegmentOffset :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ offset - New base offset for the first segment. The segments will of offset to the left by the amount specified. offset should be specified using the active metrics system for the ListHeader.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSegmentOffset a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setSegmentOffset'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 205 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Constructor for the list header base class. 
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 211 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+-- | Destructor for the list header base class. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 215 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getColumnCount"
+  getColumnCount'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSegmentFromColumn"
+  getSegmentFromColumn'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSegmentFromID"
+  getSegmentFromID'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSortSegment"
+  getSortSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getColumnFromSegment"
+  getColumnFromSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getColumnFromID"
+  getColumnFromID'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSortColumn"
+  getSortColumn'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getColumnWithText"
+  getColumnWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getPixelOffsetToSegment"
+  getPixelOffsetToSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getPixelOffsetToColumn"
+  getPixelOffsetToColumn'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getTotalSegmentsPixelExtent"
+  getTotalSegmentsPixelExtent'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSortDirection"
+  getSortDirection'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_isSortingEnabled"
+  isSortingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_isColumnSizingEnabled"
+  isColumnSizingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_isColumnDraggingEnabled"
+  isColumnDraggingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_getSegmentOffset"
+  getSegmentOffset'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSortingEnabled"
+  setSortingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSortDirection"
+  setSortDirection'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSortSegment"
+  setSortSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSortColumn"
+  setSortColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSortColumnFromID"
+  setSortColumnFromID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setColumnSizingEnabled"
+  setColumnSizingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setColumnDraggingEnabled"
+  setColumnDraggingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_removeColumn"
+  removeColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_removeSegment"
+  removeSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_moveColumn"
+  moveColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (CUInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_moveColumn2"
+  moveColumn2'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_moveSegment"
+  moveSegment'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_moveSegment2"
+  moveSegment2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_setSegmentOffset"
+  setSegmentOffset'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeader.chs.h cegui_lsthdr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassListHeaderSegment.hs view
@@ -0,0 +1,317 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassListHeaderSegment.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassListHeaderSegment where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumSortDirection
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether this segment can be sized. 
+isSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the segment can be horizontally sized, false if the segment can not be horizontally sized.     
+isSizingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSizingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return the current sort direction set for this segment.  - Details: Note that this has no impact on the way the segment functions (aside from the possibility
+--of varied rendering).  This is intended as a 'helper setting' to classes that make use of
+--the ListHeaderSegment objects.
+--
+getSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumSortDirection)
+ -- ^ 
+getSortDirection a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortDirection'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 54 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether drag moving is enabled for this segment. 
+isDragMovingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the segment can be drag moved, false if the segment can not be drag moved.     
+isDragMovingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDragMovingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the segment is clickable. 
+isClickable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the segment can be clicked, false of the segment can not be clicked (so no highlighting or events will happen).     
+isClickable a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isClickable'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the segment is currently in its hovering state. 
+isSegmentHovering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSegmentHovering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSegmentHovering'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 69 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the segment is currently in its pushed state. 
+isSegmentPushed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSegmentPushed a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSegmentPushed'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 74 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the splitter is currently in its hovering state. 
+isSplitterHovering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSplitterHovering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSplitterHovering'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the segment is currently being drag-moved. 
+isBeingDragMoved :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isBeingDragMoved a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isBeingDragMoved'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Return whether the segment is currently being drag-moved. 
+isBeingDragSized :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isBeingDragSized a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isBeingDragSized'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 89 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Set whether this segment can be sized. 
+setSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the segment may be horizontally sized, false if the segment may not be horizontally sized.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSizingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSizingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 94 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Set the current sort direction set for this segment.  - Details: Note that this has no impact on the way the segment functions (aside from the possibility
+--of varied rendering).  This is intended as a 'helper setting' to classes that make use of
+--the ListHeaderSegment objects.
+--
+setSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumSortDirection  -- ^ sort_dir
+  ->  IO ()
+ -- ^ 
+setSortDirection a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setSortDirection'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 99 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Set whether drag moving is allowed for this segment. 
+setDragMovingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the segment may be drag moved, false if the segment may not be drag moved.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDragMovingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDragMovingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Set whether the segment is clickable. 
+setClickable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the segment may be clicked, false of the segment may not be clicked (so no highlighting or events will happen).
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setClickable a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setClickable'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 109 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | 
+setSizingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset
+  ->  String  -- ^ image
+  ->  IO ()
+ -- ^ 
+setSizingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setSizingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 115 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | 
+setMovingCursorImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset
+  ->  String  -- ^ image
+  ->  IO ()
+ -- ^ 
+setMovingCursorImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setMovingCursorImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 121 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Constructor for list header segment base class. 
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 127 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+-- | Destructor for list header segment base class. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 131 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isSizingEnabled"
+  isSizingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_getSortDirection"
+  getSortDirection'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isDragMovingEnabled"
+  isDragMovingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isClickable"
+  isClickable'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isSegmentHovering"
+  isSegmentHovering'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isSegmentPushed"
+  isSegmentPushed'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isSplitterHovering"
+  isSplitterHovering'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isBeingDragMoved"
+  isBeingDragMoved'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_isBeingDragSized"
+  isBeingDragSized'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setSizingEnabled"
+  setSizingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setSortDirection"
+  setSortDirection'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setDragMovingEnabled"
+  setDragMovingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setClickable"
+  setClickable'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setSizingCursorImage2"
+  setSizingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_setMovingCursorImage2"
+  setMovingCursorImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListHeaderSegment.chs.h cegui_lsthdrsgm_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassListbox.hs view
@@ -0,0 +1,613 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassListbox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassListbox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return number of items attached to the list box. 
+getItemCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - the number of items currently attached to this list box.     
+getItemCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getItemCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return the number of selected items in the list box. 
+getSelectedCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Total number of attached items that are in the selected state.     
+getSelectedCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return a pointer to the first selected item. 
+getFirstSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getFirstSelectedItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getFirstSelectedItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return a pointer to the next selected item after item start_item
+getNextSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ start_item - Pointer to the ListboxItem where the search for the next selected item is to begin. If this parameter is NULL, the search will begin with the first item in the list box.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getNextSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getNextSelected'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return the item at index position index
+getListboxItemFromIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index - Zero based index of the item to be returned.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getListboxItemFromIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getListboxItemFromIndex'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return the index of ListboxItemitem
+getItemIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to a ListboxItem whos zero based index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based index indicating the position of     
+getItemIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getItemIndex'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 76 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | return whether list sorting is enabled 
+isSortEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the list is sorted, false if the list is not sorted     
+isSortEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSortEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 81 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | return whether multi-select is enabled 
+isMultiselectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if multi-select is enabled, false if multi-select is not enabled.     
+isMultiselectEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMultiselectEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 86 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | 
+isItemTooltipsEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isItemTooltipsEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isItemTooltipsEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 91 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | return whether the string at index position index
+isItemSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index - Zero based index of the item to be examined.
+  ->  IO (Bool)
+ -- ^ return value - true if the item at     
+isItemSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isItemSelected'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Search the list for an item with the specified text. 
+findItemWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  HG3DClass  -- ^ start_item - ListboxItem where the search is to begin, the search will not include item. If item is NULL, the search will begin from the first item in the list.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+findItemWithText a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  findItemWithText'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return whether the specified ListboxItem
+isListboxItemInList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  IO (Bool)
+ -- ^ return value - true if     
+isListboxItemInList a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isListboxItemInList'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 110 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 115 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return whether the horizontal scroll bar is always shown. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 120 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Remove all items from the list.  - Details: Note that this will cause 'AutoDelete' items to be deleted. 
+resetList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+resetList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  resetList'_ a1' >>= \res ->
+  return ()
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Add the given ListboxItem
+addItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to be added to the list. Note that it is the passed object that is added to the list, a copy is not made. If this parameter is NULL, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+addItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  addItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 133 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Insert an item into the list box before a specified item already in the list.  - Details: Note that if the list is sorted, the item may not end up in the
+--requested position.
+--
+insertItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  HG3DClass  -- ^ position
+  ->  IO ()
+ -- ^ 
+insertItem a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  insertItem'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 139 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Removes the given item from the list box. If the item is has the auto delete state set, the item will be deleted. 
+removeItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem that is to be removed. If item is not attached to this list box then nothing will happen.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  removeItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Clear the selected state for all items. 
+clearAllSelections :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+clearAllSelections a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearAllSelections'_ a1' >>= \res ->
+  return ()
+{-# LINE 148 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set whether the list should be sorted. 
+setSortingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the list should be sorted, false if the list should not be sorted.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSortingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 153 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set whether the list should allow multiple selections or just a single selection. 
+setMultiselectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the widget should allow multiple items to be selected, false if the widget should only allow a single selection.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMultiselectEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMultiselectEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 158 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the vertical scroll bar should be shown even when it is not required. false if the vertical scroll bar should only be shown when it is required.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 163 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set whether the horizontal scroll bar should always be shown. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the horizontal scroll bar should be shown even when it is not required. false if the horizontal scroll bar should only be shown when it is required.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 168 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | 
+setItemTooltipsEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setItemTooltipsEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setItemTooltipsEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 173 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set the select state of an attached ListboxItem - Details: This is the recommended way of selecting and deselecting items attached to a list box as it respects the
+--multi-select mode setting.  It is possible to modify the setting on ListboxItems directly, but that approach
+--does not respect the settings of the list box.
+--
+setItemSelectState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setItemSelectState a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  setItemSelectState'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 179 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Set the select state of an attached ListboxItem - Details: This is the recommended way of selecting and deselecting items attached to a list box as it respects the
+--multi-select mode setting.  It is possible to modify the setting on ListboxItems directly, but that approach
+--does not respect the settings of the list box.
+--
+setItemSelectState2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ item_index
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setItemSelectState2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromBool a3} in 
+  setItemSelectState2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 185 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Causes the list box to update it's internal state after changes have been made to one or more attached ListboxItem - Details: Client code must call this whenever it has made any changes to ListboxItem objects already attached to the
+--list box.  If you are just adding items, or removed items to update them prior to re-adding them, there is
+--no need to call this method.
+--
+handleUpdatedItemData :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+handleUpdatedItemData a1 =
+  withHG3DClass a1 $ \a1' -> 
+  handleUpdatedItemData'_ a1' >>= \res ->
+  return ()
+{-# LINE 189 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Ensure the item at the specified index is visible within the list box. 
+ensureItemIsVisible :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ item_index - Zero based index of the item to be made visible in the list box. If this value is out of range, the list is always scrolled to the bottom.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+ensureItemIsVisible a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  ensureItemIsVisible'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 194 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Ensure the item at the specified index is visible within the list box. 
+ensureItemIsVisible2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to be made visible in the list box.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+ensureItemIsVisible2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  ensureItemIsVisible2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 199 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return a pointer to the vertical scrollbar component widget for this Listbox
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 204 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return a pointer to the horizontal scrollbar component widget for this Listbox
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 209 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return the sum of all item heights. 
+getTotalItemsHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getTotalItemsHeight a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTotalItemsHeight'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 214 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Return the width of the widest item. 
+getWidestItemWidth :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getWidestItemWidth a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getWidestItemWidth'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 219 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Constructor for Listbox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 225 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+-- | Destructor for Listbox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 229 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getItemCount"
+  getItemCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getSelectedCount"
+  getSelectedCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getFirstSelectedItem"
+  getFirstSelectedItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getNextSelected"
+  getNextSelected'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getListboxItemFromIndex"
+  getListboxItemFromIndex'_ :: ((HG3DClassPtr) -> (CInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getItemIndex"
+  getItemIndex'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isSortEnabled"
+  isSortEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isMultiselectEnabled"
+  isMultiselectEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isItemTooltipsEnabled"
+  isItemTooltipsEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isItemSelected"
+  isItemSelected'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_findItemWithText"
+  findItemWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isListboxItemInList"
+  isListboxItemInList'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_resetList"
+  resetList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_addItem"
+  addItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_insertItem"
+  insertItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_removeItem"
+  removeItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_clearAllSelections"
+  clearAllSelections'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setSortingEnabled"
+  setSortingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setMultiselectEnabled"
+  setMultiselectEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setItemTooltipsEnabled"
+  setItemTooltipsEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setItemSelectState"
+  setItemSelectState'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_setItemSelectState2"
+  setItemSelectState2'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_handleUpdatedItemData"
+  handleUpdatedItemData'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_ensureItemIsVisible"
+  ensureItemIsVisible'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_ensureItemIsVisible2"
+  ensureItemIsVisible2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getTotalItemsHeight"
+  getTotalItemsHeight'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_getWidestItemWidth"
+  getWidestItemWidth'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListbox.chs.h cegui_lstbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassListboxItem.hs view
@@ -0,0 +1,314 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassListboxItem.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassListboxItem where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | base class destructor 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | return the text string set for this list box item.  - Details: Note that even if the item does not render text, the text string can still be useful, since it
+--is used for sorting list box items.
+--
+getTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getTooltipText a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTooltipText'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | 
+getText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getText a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getText'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | return text string with visual
+getTextVisual :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getTextVisual a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTextVisual'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Return the current ID assigned to this list box item.  - Details: Note that the system does not make use of this value, client code can assign any meaning it
+--wishes to the ID.
+--
+getID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ 
+getID a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getID'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | return whether this item is selected. 
+isSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the item is selected, false if the item is not selected.     
+isSelected a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelected'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | return whether this item is disabled. 
+isDisabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the item is disabled, false if the item is enabled.     
+isDisabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDisabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | return whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box. 
+isAutoDeleted :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the item object will be deleted by the system when the list box it is attached to is destroyed, or when the item is removed from the list. false if client code must destroy the item after it is removed from the list.     
+isAutoDeleted a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAutoDeleted'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Get the owner window for this ListboxItem - Details: The owner of a ListboxItem is typically set by the list box widgets when an item is added or inserted.
+--
+getOwnerWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getOwnerWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getOwnerWindow'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | set the text string for this list box item.  - Details: Note that even if the item does not render text, the text string can still be useful, since it
+--is used for sorting list box items.
+--
+setText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text
+  ->  IO ()
+ -- ^ 
+setText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | 
+setTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text
+  ->  IO ()
+ -- ^ 
+setTooltipText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setTooltipText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Set the ID assigned to this list box item.  - Details: Note that the system does not make use of this value, client code can assign any meaning it
+--wishes to the ID.
+--
+setID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ item_id
+  ->  IO ()
+ -- ^ 
+setID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 102 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | set whether this item is selected. 
+setSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the item is selected, false if the item is not selected.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelected'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | set whether this item is disabled. 
+setDisabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the item is disabled, false if the item is enabled.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDisabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDisabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 112 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Set whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box. 
+setAutoDeleted :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the item object should be deleted by the system when the list box it is attached to is destroyed, or when the item is removed from the list. false if client code will destroy the item after it is removed from the list.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setAutoDeleted a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAutoDeleted'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 117 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Set the owner window for this ListboxItem
+setOwnerWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ owner - Ponter to the window that should be considered the owner of this ListboxItem.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setOwnerWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setOwnerWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 122 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+-- | Set the selection highlighting brush image. 
+setSelectionBrushImage2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - Name of the imagest containing the image to be used.
+  ->  String  -- ^ image - Name of the image to be used
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelectionBrushImage2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setSelectionBrushImage2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_getTooltipText"
+  getTooltipText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_getText"
+  getText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_getTextVisual"
+  getTextVisual'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_getID"
+  getID'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_isSelected"
+  isSelected'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_isDisabled"
+  isDisabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_isAutoDeleted"
+  isAutoDeleted'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_getOwnerWindow"
+  getOwnerWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setText"
+  setText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setTooltipText"
+  setTooltipText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setID"
+  setID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setSelected"
+  setSelected'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setDisabled"
+  setDisabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setAutoDeleted"
+  setAutoDeleted'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setOwnerWindow"
+  setOwnerWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxItem.chs.h cegui_lstbxitm_setSelectionBrushImage2"
+  setSelectionBrushImage2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassListboxTextItem.hs view
@@ -0,0 +1,159 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassListboxTextItem.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassListboxTextItem where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | base class destructor 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | Return a pointer to the font being used by this ListboxTextItem - Details: This method will try a number of places to find a font to be used.  If no font can be
+--found, NULL is returned.
+--
+getFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getFont a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getFont'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | Set the font to be used by this ListboxTextItem
+setFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ font - Font to be used for rendering this item
+  ->  IO ()
+ -- ^ return value - Nothing     
+setFont a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setFont'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | Set the font to be used by this ListboxTextItem
+setFont2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ font_name - String object containing the name of the Font to be used for rendering this item
+  ->  IO ()
+ -- ^ return value - Nothing     
+setFont2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setFont2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | Set whether the the ListboxTextItem
+setTextParsingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enable - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setTextParsingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setTextParsingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | return whether text parsing is enabled for this ListboxTextItem
+isTextParsingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isTextParsingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTextParsingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+-- | set the text string for this list box item.  - Details: Note that even if the item does not render text, the text string can still be useful, since it
+--is used for sorting list box items.
+--
+setText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text
+  ->  IO ()
+ -- ^ 
+setText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_getFont"
+  getFont'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_setFont"
+  setFont'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_setFont2"
+  setFont2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_setTextParsingEnabled"
+  setTextParsingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_isTextParsingEnabled"
+  isTextParsingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassListboxTextItem.chs.h cegui_lstbxti_setText"
+  setText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassLogger.hs view
@@ -0,0 +1,131 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassLogger.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassLogger where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumLoggingLevel
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+-- | Destructor for Logger
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+-- | Set the level of logging information that will get out to the log file. 
+setLoggingLevel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumLoggingLevel  -- ^ level - One of the LoggingLevel enumerated values that specified the level of logging information required.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setLoggingLevel a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setLoggingLevel'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+-- | return the current logging level setting 
+getLoggingLevel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumLoggingLevel)
+ -- ^ return value - One of the LoggingLevel enumerated values specifying the current level of logging     
+getLoggingLevel a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getLoggingLevel'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+-- | Add an event to the log. 
+logEvent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ message - String object containing the message to be added to the event log.
+  ->  EnumLoggingLevel  -- ^ level - LoggingLevel for this message. If level is greater than the current set logging level, the message is not logged.
+  ->  IO ()
+ -- ^ return value - Nothing     
+logEvent a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = cIntFromEnum a3} in 
+  logEvent'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+-- | Set the name of the log file where all subsequent log entries should be written. The interpretation of file name may differ depending on the concrete logger implementation.  - Details: When this is called, and the log file is created, any cached log entries are flushed to the log file.
+setLogFilename :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename - Name of the file to put log messages.
+  ->  Bool  -- ^ append - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setLogFilename a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  setLogFilename'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs.h cegui_lggr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs.h cegui_lggr_setLoggingLevel"
+  setLoggingLevel'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs.h cegui_lggr_getLoggingLevel"
+  getLoggingLevel'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs.h cegui_lggr_logEvent"
+  logEvent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassLogger.chs.h cegui_lggr_setLogFilename"
+  setLogFilename'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassMenuBase.hs view
@@ -0,0 +1,183 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassMenuBase.chs
+
+-- abstrakte Klasse!
+
+module HGamer3D.Bindings.CEGUI.ClassMenuBase where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Get the item spacing for this menu. 
+getItemSpacing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - A float value with the current item spacing for this menu     
+getItemSpacing a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getItemSpacing'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Return whether this menu allows multiple popup menus to open at the same time. 
+isMultiplePopupsAllowed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if this menu allows multiple popup menus to be opened simultaneously. false if not     
+isMultiplePopupsAllowed a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMultiplePopupsAllowed'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Return whether this menu should close all its open child popups, when it gets hidden. 
+getAutoCloseNestedPopups :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the menu should close all its open child popups, when it gets hidden     
+getAutoCloseNestedPopups a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getAutoCloseNestedPopups'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Get currently opened MenuItem
+getPopupMenuItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getPopupMenuItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getPopupMenuItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Set the item spacing for this menu. 
+setItemSpacing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ spacing
+  ->  IO ()
+ -- ^ 
+setItemSpacing a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setItemSpacing'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Change the currently open MenuItem
+changePopupMenuItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to a MenuItem to open or NULL to close any opened. 
+  ->  IO ()
+ -- ^ 
+changePopupMenuItem a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  changePopupMenuItem'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Set whether this menu allows multiple popup menus to be opened simultaneously. 
+setAllowMultiplePopups :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setAllowMultiplePopups a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAllowMultiplePopups'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | Set whether the menu should close all its open child popups, when it gets hidden. 
+setAutoCloseNestedPopups :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setAutoCloseNestedPopups a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAutoCloseNestedPopups'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+-- | tells the current popup that it should start its closing timer. 
+setPopupMenuItemClosing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+setPopupMenuItemClosing a1 =
+  withHG3DClass a1 $ \a1' -> 
+  setPopupMenuItemClosing'_ a1' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_getItemSpacing"
+  getItemSpacing'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_isMultiplePopupsAllowed"
+  isMultiplePopupsAllowed'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_getAutoCloseNestedPopups"
+  getAutoCloseNestedPopups'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_getPopupMenuItem"
+  getPopupMenuItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_setItemSpacing"
+  setItemSpacing'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_changePopupMenuItem"
+  changePopupMenuItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_setAllowMultiplePopups"
+  setAllowMultiplePopups'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_setAutoCloseNestedPopups"
+  setAutoCloseNestedPopups'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuBase.chs.h cegui_mnbs_setPopupMenuItemClosing"
+  setPopupMenuItemClosing'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassMenuItem.hs view
@@ -0,0 +1,256 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassMenuItem.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassMenuItem where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | return true if user is hovering over this widget (or it's pushed and user is not over it for highlight) 
+isHovering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user is hovering or if the button is pushed and the mouse is not over the button. Otherwise return false.     
+isHovering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHovering'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Return true if the button widget is in the pushed state. 
+isPushed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the button-type widget is pushed, false if the widget is not pushed.     
+isPushed a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isPushed'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Returns true if the popup menu attached to the menu item is open. 
+isOpened :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isOpened a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isOpened'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Returns true if the menu item popup is closing or not. 
+isPopupClosing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isPopupClosing a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isPopupClosing'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Returns true if the menu item popup is closed or opened automatically if hovering with the mouse. 
+hasAutoPopup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+hasAutoPopup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  hasAutoPopup'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Returns the time, which has to elapse before the popup window is opened/closed if the hovering state changes. 
+getAutoPopupTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getAutoPopupTimeout a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getAutoPopupTimeout'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Sets the time, which has to elapse before the popup window is opened/closed if the hovering state changes. 
+setAutoPopupTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ time
+  ->  IO ()
+ -- ^ 
+setAutoPopupTimeout a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setAutoPopupTimeout'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Opens the PopupMenu. 
+openPopupMenu :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ notify - true if the parent menu bar or menu popup (if any) is to handle the open. 
+  ->  IO ()
+ -- ^ 
+openPopupMenu a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  openPopupMenu'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Closes the PopupMenu. 
+closePopupMenu :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ notify - true if the parent menubar (if any) is to handle the close.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+closePopupMenu a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  closePopupMenu'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Toggles the PopupMenu. 
+togglePopupMenu :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the popup was opened. false if it was closed.     
+togglePopupMenu a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  togglePopupMenu'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | starts the closing timer for the popup, which will close it if the timer is enabled. 
+startPopupClosing :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+startPopupClosing a1 =
+  withHG3DClass a1 $ \a1' -> 
+  startPopupClosing'_ a1' >>= \res ->
+  return ()
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | starts the opening timer for the popup, which will open it if the timer is enabled. 
+startPopupOpening :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+startPopupOpening a1 =
+  withHG3DClass a1 $ \a1' -> 
+  startPopupOpening'_ a1' >>= \res ->
+  return ()
+{-# LINE 101 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Constructor for MenuItem
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+-- | Destructor for MenuItem
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 111 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_isHovering"
+  isHovering'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_isPushed"
+  isPushed'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_isOpened"
+  isOpened'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_isPopupClosing"
+  isPopupClosing'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_hasAutoPopup"
+  hasAutoPopup'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_getAutoPopupTimeout"
+  getAutoPopupTimeout'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_setAutoPopupTimeout"
+  setAutoPopupTimeout'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_openPopupMenu"
+  openPopupMenu'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_closePopupMenu"
+  closePopupMenu'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_togglePopupMenu"
+  togglePopupMenu'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_startPopupClosing"
+  startPopupClosing'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_startPopupOpening"
+  startPopupOpening'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMenuItem.chs.h cegui_mnitm_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassMultiColumnList.hs view
@@ -0,0 +1,1143 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassMultiColumnList.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassMultiColumnList where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumSortDirection
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumSelectionMode
+{-# LINE 44 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return whether user manipulation of the sort column and direction are enabled. 
+isUserSortControlEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the sort column and direction. false if the user may not modify the sort column and direction (these can still be set programmatically).     
+isUserSortControlEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUserSortControlEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 50 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return whether the user may size column segments. 
+isUserColumnSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the width of columns, false if they may not.     
+isUserColumnSizingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUserColumnSizingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 55 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return whether the user may modify the order of the columns. 
+isUserColumnDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the user may interactively modify the order of the columns, false if they may not.     
+isUserColumnDraggingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUserColumnDraggingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 60 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the number of columns in the multi-column list. 
+getColumnCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value equal to the number of columns in the list.     
+getColumnCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getColumnCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 65 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the number of rows in the multi-column list. 
+getRowCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value equal to the number of rows currently in the list.     
+getRowCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getRowCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the zero based index of the current sort column. There must be at least one column to successfully call this method. 
+getSortColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index that is the current sort column.    
+getSortColumn a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortColumn'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 75 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the zero based column index of the column with the specified ID. 
+getColumnWithID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_id - ID code of the column whos index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index of the first column whos ID matches     
+getColumnWithID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getColumnWithID'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 81 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the zero based index of the column whos header text matches the specified text. 
+getColumnWithHeaderText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  IO (Int)
+ -- ^ return value - Zero based column index of the column whos header has the specified text.    
+getColumnWithHeaderText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getColumnWithHeaderText'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the currently set sort direction. 
+getSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumSortDirection)
+ -- ^ return value - One of the     
+getSortDirection a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSortDirection'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ListHeaderSegment
+getHeaderSegmentForColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - zero based index of the column whos ListHeaderSegment is to be returned.
+  ->  IO (HG3DClass)
+ -- ^ 
+getHeaderSegmentForColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getHeaderSegmentForColumn'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the zero based index of the Row that contains item
+getItemRowIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem that the row index is to returned for.
+  ->  IO (Int)
+ -- ^ return value - Zero based index of the row that contains     
+getItemRowIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getItemRowIndex'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the current zero based index of the column that contains item
+getItemColumnIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem that the column index is to returned for.
+  ->  IO (Int)
+ -- ^ return value - Zero based index of the column that contains     
+getItemColumnIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getItemColumnIndex'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 110 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | return whether ListboxItemitemcol_idx
+isListboxItemInColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to look for.
+  ->  Int  -- ^ col_idx - Zero based index of the column that is to be searched.
+  ->  IO (Bool)
+ -- ^ 
+isListboxItemInColumn a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  alloca $ \a4' -> 
+  isListboxItemInColumn'_ a1' a2' a3' a4' >>= \res ->
+  peekBoolUtil  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 117 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | return whether ListboxItemitemrow_idx
+isListboxItemInRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to look for.
+  ->  Int  -- ^ row_idx - Zero based index of the row that is to be searched.
+  ->  IO (Bool)
+ -- ^ 
+isListboxItemInRow a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  alloca $ \a4' -> 
+  isListboxItemInRow'_ a1' a2' a3' a4' >>= \res ->
+  peekBoolUtil  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | return whether ListboxItemitem
+isListboxItemInList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to look for.
+  ->  IO (Bool)
+ -- ^ 
+isListboxItemInList a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isListboxItemInList'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 130 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ListboxItemcol_idxtext
+findColumnItemWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  Int  -- ^ col_idx - Zero based index of the column to be searched.
+  ->  HG3DClass  -- ^ start_item - Pointer to the ListboxItem where the exclusive search is to start, or NULL to search from the top of the column.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+findColumnItemWithText a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  withHG3DClass a4 $ \a4' -> 
+  alloca $ \a5' -> 
+  findColumnItemWithText'_ a1' a2' a3' a4' a5' >>= \res ->
+  peek  a5'>>= \a5'' -> 
+  return (a5'')
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ListboxItemrow_idxtext
+findRowItemWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  Int  -- ^ row_idx - Zero based index of the row to be searched.
+  ->  HG3DClass  -- ^ start_item - Pointer to the ListboxItem where the exclusive search is to start, or NULL to search from the start of the row.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+findRowItemWithText a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  withHG3DClass a4 $ \a4' -> 
+  alloca $ \a5' -> 
+  findRowItemWithText'_ a1' a2' a3' a4' a5' >>= \res ->
+  peek  a5'>>= \a5'' -> 
+  return (a5'')
+{-# LINE 146 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ListboxItemtext - Details: List box searching progresses across the columns in each row.
+findListItemWithText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text to be searched for.
+  ->  HG3DClass  -- ^ start_item - Pointer to the ListboxItem where the exclusive search is to start, or NULL to search the whole list box.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+findListItemWithText a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  findListItemWithText'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 153 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return a pointer to the first selected ListboxItem - Details: List box searching progresses across the columns in each row.
+getFirstSelectedItem :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first     
+getFirstSelectedItem a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getFirstSelectedItem'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 158 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return a pointer to the next selected ListboxItemstart_item - Details: List box searching progresses across the columns in each row.
+getNextSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ start_item - Pointer to the ListboxItem where the exclusive search is to start, or NULL to search the whole list box.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the first selected     
+getNextSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getNextSelected'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 164 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the number of selected ListboxItems attached to this list box.  - Details: return uint value equal to the number of ListboxItems attached to this list box that are currently selected. 
+getSelectedCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ 
+getSelectedCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 169 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ID of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. There must be at least one column to successfully call this method.  - Details: You should only ever call this when getColumnCount()
+getNominatedSelectionColumnID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - ID code of the nominated selection column.     
+getNominatedSelectionColumnID a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getNominatedSelectionColumnID'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 174 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the index of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. 
+getNominatedSelectionColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Zero based index of the nominated selection column.     
+getNominatedSelectionColumn a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getNominatedSelectionColumn'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 179 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the index of the currently set nominated selection row to be used when in one of the NominatedRow* selection modes. 
+getNominatedSelectionRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Zero based index of the nominated selection column.     
+getNominatedSelectionRow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getNominatedSelectionRow'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 184 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the currently set selection mode. 
+getSelectionMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumSelectionMode)
+ -- ^ return value - One of the     
+getSelectionMode a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionMode'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 189 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 194 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return whether the horizontal scroll bar is always shown. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 199 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ID code assigned to the requested column. 
+getColumnID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - Zero based index of the column whos ID code is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Current ID code assigned to the column at the requested index.    
+getColumnID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getColumnID'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 205 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the ID code assigned to the requested row. 
+getRowID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx - Zero based index of the row who's ID code is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Current ID code assigned to the row at the requested index.    
+getRowID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getRowID'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 211 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the zero based row index of the row with the specified ID. 
+getRowWithID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_id - ID code of the row who's index is to be returned.
+  ->  IO (Int)
+ -- ^ return value - Zero based row index of the first row who's ID matches     
+getRowWithID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getRowWithID'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 217 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return a pointer to the vertical scrollbar component widget for this MultiColumnList
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 222 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return a pointer to the horizontal scrollbar component widget for this MultiColumnList
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 227 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return a pointer to the list header component widget for this MultiColumnList
+getListHeader :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getListHeader a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getListHeader'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 232 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the sum of all row heights in pixels. 
+getTotalRowsHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getTotalRowsHeight a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTotalRowsHeight'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 237 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return the pixel width of the widest item in the given column. 
+getWidestColumnItemWidth :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx
+  ->  IO (Float)
+ -- ^ 
+getWidestColumnItemWidth a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getWidestColumnItemWidth'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 243 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Return, in pixels, the height of the highest item in the given row. 
+getHighestRowItemHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx
+  ->  IO (Float)
+ -- ^ 
+getHighestRowItemHeight a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getHighestRowItemHeight'_ a1' a2' a3' >>= \res ->
+  peekFloatConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 249 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 253 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Remove all items from the list.  - Details: Note that this will cause 'AutoDelete' items to be deleted. 
+resetList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+resetList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  resetList'_ a1' >>= \res ->
+  return ()
+{-# LINE 257 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Removes a column from the list box. This will cause any ListboxItem
+removeColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - Zero based index of the column to be removed.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+removeColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  removeColumn'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 262 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Removes a column from the list box. This will cause any ListboxItem
+removeColumnWithID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_id - ID code of the column to be deleted.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+removeColumnWithID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  removeColumnWithID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 267 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Move the column at index col_idxposition
+moveColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - Zero based index of the column to be moved.
+  ->  Int  -- ^ position - Zero based index of the new position for the column.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveColumn a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  moveColumn'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 273 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Move the column with ID col_idposition
+moveColumnWithID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_id - ID code of the column to be moved.
+  ->  Int  -- ^ position - Zero based index of the new position for the column.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+moveColumnWithID a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  moveColumnWithID'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 279 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Add an empty row to the list box.  - Details: If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the bottom of the list.
+addRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_id - ID code to be assigned to the new row.
+  ->  IO (Int)
+ -- ^ return value - Initial zero based index of the new row.     
+addRow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  addRow'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 285 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Add a row to the list box, and set the item in the column with ID col_iditem - Details: If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the bottom of the list.
+addRow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to a ListboxItem to be used as the initial contents for the column with ID col_id.
+  ->  Int  -- ^ col_id - ID code of the column whos initial item is to be set to item.
+  ->  Int  -- ^ row_id - ID code to be assigned to the new row.
+  ->  IO (Int)
+ -- ^ return value - Initial zero based index of the new row.    
+addRow2 a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  let {a4' = fromIntegral a4} in 
+  alloca $ \a5' -> 
+  addRow2'_ a1' a2' a3' a4' a5' >>= \res ->
+  peekIntConv  a5'>>= \a5'' -> 
+  return (a5'')
+{-# LINE 293 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Insert an empty row into the list box.  - Details: If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the specified index.
+insertRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx - Zero based index where the row should be inserted. If this is greater than the current number of rows, the row is appended to the list.
+  ->  Int  -- ^ row_id - ID code to be assigned to the new row.
+  ->  IO (Int)
+ -- ^ return value - Zero based index where the row was actually inserted.     
+insertRow a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  alloca $ \a4' -> 
+  insertRow'_ a1' a2' a3' a4' >>= \res ->
+  peekIntConv  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 300 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Insert a row into the list box, and set the item in the column with ID col_iditem - Details: If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the specified index.
+insertRow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to a ListboxItem to be used as the initial contents for the column with ID col_id.
+  ->  Int  -- ^ col_id - ID code of the column whos initial item is to be set to item.
+  ->  Int  -- ^ row_idx - Zero based index where the row should be inserted. If this is greater than the current number of rows, the row is appended to the list.
+  ->  Int  -- ^ row_id - ID code to be assigned to the new row.
+  ->  IO (Int)
+ -- ^ return value - Zero based index where the row was actually inserted.    
+insertRow2 a1 a2 a3 a4 a5 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  let {a4' = fromIntegral a4} in 
+  let {a5' = fromIntegral a5} in 
+  alloca $ \a6' -> 
+  insertRow2'_ a1' a2' a3' a4' a5' a6' >>= \res ->
+  peekIntConv  a6'>>= \a6'' -> 
+  return (a6'')
+{-# LINE 309 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Remove the list box row with index row_idxListboxItemrow_idx
+removeRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx - Zero based index of the row to be removed.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+removeRow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  removeRow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 314 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the ListboxItemcol_idrow_idx
+setItem2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the ListboxItem to be set into the list.
+  ->  Int  -- ^ col_id - ID code of the column to receive item.
+  ->  Int  -- ^ row_idx - Zero based index of the row to receive item.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setItem2 a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromIntegral a3} in 
+  let {a4' = fromIntegral a4} in 
+  setItem2'_ a1' a2' a3' a4' >>= \res ->
+  return ()
+{-# LINE 321 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the selection mode for the list box. 
+setSelectionMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumSelectionMode  -- ^ sel_mode - One of the MultiColumnList::SelectionMode enumerated values specifying the selection mode to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSelectionMode a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setSelectionMode'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 326 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the column to be used for the NominatedColumn* selection modes. 
+setNominatedSelectionColumnID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_id - ID code of the column to be used in NominatedColumn* selection modes.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNominatedSelectionColumnID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setNominatedSelectionColumnID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 331 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the column to be used for the NominatedColumn* selection modes. 
+setNominatedSelectionColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - zero based index of the column to be used in NominatedColumn* selection modes.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNominatedSelectionColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setNominatedSelectionColumn'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 336 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the row to be used for the NominatedRow* selection modes. 
+setNominatedSelectionRow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx - zero based index of the row to be used in NominatedRow* selection modes.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setNominatedSelectionRow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setNominatedSelectionRow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 341 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the sort direction to be used. 
+setSortDirection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumSortDirection  -- ^ direction - One of the ListHeaderSegment::SortDirection enumerated values specifying the sort direction to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortDirection a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setSortDirection'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 346 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the column to be used as the sort key. 
+setSortColumn :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - Zero based index of the column to use as the key when sorting the list items.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSortColumn a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setSortColumn'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 351 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the column to be used as the sort key. 
+setSortColumnByID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_id - ID code of the column to use as the key when sorting the list items.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setSortColumnByID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setSortColumnByID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 356 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown, or just when needed. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 361 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set whether the horizontal scroll bar should always be shown, or just when needed. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 366 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Removed the selected state from any currently selected ListboxItem
+clearAllSelections :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+clearAllSelections a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearAllSelections'_ a1' >>= \res ->
+  return ()
+{-# LINE 370 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Sets or clears the selected state of the given ListboxItem - Details: Depending upon the current selection mode, this may cause other items to be selected, other items to be deselected, or for nothing to actually happen at all.
+setItemSelectState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - Pointer to the attached ListboxItem to be affected.
+  ->  Bool  -- ^ state - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setItemSelectState a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  setItemSelectState'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 376 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Inform the list box that one or more attached ListboxItems have been externally modified, and the list should re-sync its internal state and refresh the display as needed. 
+handleUpdatedItemData :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+handleUpdatedItemData a1 =
+  withHG3DClass a1 $ \a1' -> 
+  handleUpdatedItemData'_ a1' >>= \res ->
+  return ()
+{-# LINE 380 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set whether user manipulation of the sort column and direction are enabled. 
+setUserSortControlEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setUserSortControlEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setUserSortControlEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 385 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set whether the user may size column segments. 
+setUserColumnSizingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setUserColumnSizingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setUserColumnSizingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 390 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set whether the user may modify the order of the columns. 
+setUserColumnDraggingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setUserColumnDraggingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setUserColumnDraggingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 395 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Automatically determines the "best fit" size for the specified column and sets the column width to the same. 
+autoSizeColumnHeader :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ col_idx - Zero based index of the column to be sized.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+autoSizeColumnHeader a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  autoSizeColumnHeader'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 400 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Set the ID code assigned to a given row. 
+setRowID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ row_idx - Zero based index of the row who's ID code is to be set.
+  ->  Int  -- ^ row_id - ID code to be assigned to the row at the requested index.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setRowID a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  setRowID'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 406 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Constructor for the Multi-column list base class. 
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 412 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+-- | Destructor for the multi-column list base class. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 416 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isUserSortControlEnabled"
+  isUserSortControlEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isUserColumnSizingEnabled"
+  isUserColumnSizingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isUserColumnDraggingEnabled"
+  isUserColumnDraggingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getColumnCount"
+  getColumnCount'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getRowCount"
+  getRowCount'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getSortColumn"
+  getSortColumn'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getColumnWithID"
+  getColumnWithID'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getColumnWithHeaderText"
+  getColumnWithHeaderText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getSortDirection"
+  getSortDirection'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getHeaderSegmentForColumn"
+  getHeaderSegmentForColumn'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getItemRowIndex"
+  getItemRowIndex'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getItemColumnIndex"
+  getItemColumnIndex'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isListboxItemInColumn"
+  isListboxItemInColumn'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isListboxItemInRow"
+  isListboxItemInRow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isListboxItemInList"
+  isListboxItemInList'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_findColumnItemWithText"
+  findColumnItemWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CUInt -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_findRowItemWithText"
+  findRowItemWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CUInt -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_findListItemWithText"
+  findListItemWithText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getFirstSelectedItem"
+  getFirstSelectedItem'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getNextSelected"
+  getNextSelected'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getSelectedCount"
+  getSelectedCount'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getNominatedSelectionColumnID"
+  getNominatedSelectionColumnID'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getNominatedSelectionColumn"
+  getNominatedSelectionColumn'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getNominatedSelectionRow"
+  getNominatedSelectionRow'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getSelectionMode"
+  getSelectionMode'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getColumnID"
+  getColumnID'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getRowID"
+  getRowID'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getRowWithID"
+  getRowWithID'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getListHeader"
+  getListHeader'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getTotalRowsHeight"
+  getTotalRowsHeight'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getWidestColumnItemWidth"
+  getWidestColumnItemWidth'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_getHighestRowItemHeight"
+  getHighestRowItemHeight'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CFloat) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_resetList"
+  resetList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_removeColumn"
+  removeColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_removeColumnWithID"
+  removeColumnWithID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_moveColumn"
+  moveColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (CUInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_moveColumnWithID"
+  moveColumnWithID'_ :: ((HG3DClassPtr) -> (CUInt -> (CUInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_addRow"
+  addRow'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CUInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_addRow2"
+  addRow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> (CUInt -> ((Ptr CUInt) -> (IO ()))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_insertRow"
+  insertRow'_ :: ((HG3DClassPtr) -> (CUInt -> (CUInt -> ((Ptr CUInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_insertRow2"
+  insertRow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> (CUInt -> (CUInt -> ((Ptr CUInt) -> (IO ())))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_removeRow"
+  removeRow'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setItem2"
+  setItem2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CUInt -> (CUInt -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setSelectionMode"
+  setSelectionMode'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setNominatedSelectionColumnID"
+  setNominatedSelectionColumnID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setNominatedSelectionColumn"
+  setNominatedSelectionColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setNominatedSelectionRow"
+  setNominatedSelectionRow'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setSortDirection"
+  setSortDirection'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setSortColumn"
+  setSortColumn'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setSortColumnByID"
+  setSortColumnByID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_clearAllSelections"
+  clearAllSelections'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setItemSelectState"
+  setItemSelectState'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_handleUpdatedItemData"
+  handleUpdatedItemData'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setUserSortControlEnabled"
+  setUserSortControlEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setUserColumnSizingEnabled"
+  setUserColumnSizingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setUserColumnDraggingEnabled"
+  setUserColumnDraggingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_autoSizeColumnHeader"
+  autoSizeColumnHeader'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_setRowID"
+  setRowID'_ :: ((HG3DClassPtr) -> (CUInt -> (CUInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiColumnList.chs.h cegui_mltclmlst_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassMultiLineEditbox.hs view
@@ -0,0 +1,384 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassMultiLineEditbox.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassMultiLineEditbox where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return true if the edit box has input focus. 
+hasInputFocus :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+hasInputFocus a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  hasInputFocus'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return true if the edit box is read-only. 
+isReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isReadOnly a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isReadOnly'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return the current position of the carat. 
+getCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the insert carat relative to the start of the text.     
+getCaratIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCaratIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return the current selection start point. 
+getSelectionStartIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection start point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionStartIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionStartIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return the current selection end point. 
+getSelectionEndIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Index of the selection end point relative to the start of the text. If no selection is defined this function returns the position of the carat.     
+getSelectionEndIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionEndIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return the length of the current selection (in code points / characters). 
+getSelectionLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Number of code points (or characters) contained within the currently defined selection.     
+getSelectionLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectionLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | return the maximum text length set for this edit box. 
+getMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - The maximum number of code points (characters) that can be entered into this edit box.     
+getMaxTextLength a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxTextLength'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Return whether the text in the edit box will be word-wrapped. 
+isWordWrapped :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isWordWrapped a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isWordWrapped'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Return a pointer to the vertical scrollbar component widget for this MultiLineEditbox
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Return a pointer to the horizontal scrollbar component widget for this MultiLineEditbox
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Return the line number a given index falls on with the current formatting. Will return last line if index is out of range. 
+getLineNumberFromIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ index
+  ->  IO (Int)
+ -- ^ 
+getLineNumberFromIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getLineNumberFromIndex'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Specify whether the edit box is read-only. 
+setReadOnly :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setReadOnly a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setReadOnly'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Set the current position of the carat. 
+setCaratIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ carat_pos - New index for the insert carat relative to the start of the text. If the value specified is greater than the number of characters in the edit box, the carat is positioned at the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCaratIndex a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setCaratIndex'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Define the current selection for the edit box. 
+setSelection :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ start_pos - Index of the starting point for the selection. If this value is greater than the number of characters in the edit box, the selection start will be set to the end of the text.
+  ->  Int  -- ^ end_pos - Index of the ending point for the selection. If this value is greater than the number of characters in the edit box, the selection start will be set to the end of the text.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelection a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromIntegral a3} in 
+  setSelection'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | set the maximum text length for this edit box. 
+setMaxTextLength :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ max_len - The maximum number of code points (characters) that can be entered into this Editbox.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaxTextLength a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setMaxTextLength'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 129 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Scroll the view so that the current carat position is visible. 
+ensureCaratIsVisible :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+ensureCaratIsVisible a1 =
+  withHG3DClass a1 $ \a1' -> 
+  ensureCaratIsVisible'_ a1' >>= \res ->
+  return ()
+{-# LINE 133 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Set whether the text will be word wrapped or not. 
+setWordWrapping :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setWordWrapping a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setWordWrapping'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if the vertical scroll bar should be shown even when it is not required. false if the vertical scroll bar should only be shown when it is required.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 143 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Constructor for the MultiLineEditbox
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 149 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+-- | Destructor for the MultiLineEditbox
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 153 ".\\HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_hasInputFocus"
+  hasInputFocus'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_isReadOnly"
+  isReadOnly'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getCaratIndex"
+  getCaratIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getSelectionStartIndex"
+  getSelectionStartIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getSelectionEndIndex"
+  getSelectionEndIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getSelectionLength"
+  getSelectionLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getMaxTextLength"
+  getMaxTextLength'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_isWordWrapped"
+  isWordWrapped'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_getLineNumberFromIndex"
+  getLineNumberFromIndex'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setReadOnly"
+  setReadOnly'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setCaratIndex"
+  setCaratIndex'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setSelection"
+  setSelection'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setMaxTextLength"
+  setMaxTextLength'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_ensureCaratIsVisible"
+  ensureCaratIsVisible'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setWordWrapping"
+  setWordWrapping'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassMultiLineEditbox.chs.h cegui_mltlnedtbx_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassOgreRenderer.hs view
@@ -0,0 +1,338 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassOgreRenderer.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassOgreRenderer where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumBlendMode
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Convenience function that creates all the OgreCEGUI - Details: The created Renderer will use the default Ogre rendering window as the
+--default output surface.
+--
+--This will create and initialise the following objects for you:
+--- CEGUI::OgreRenderer
+--- CEGUI::OgreResourceProvider
+--- CEGUI::OgreImageCodec
+--- CEGUI::System
+--
+bootstrapSystem :: IO (HG3DClass)
+ -- ^ 
+bootstrapSystem =
+  alloca $ \a1' -> 
+  bootstrapSystem'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Convenience function to cleanup the CEGUI - Details: This function will destroy the following objects for you:
+--- CEGUI::System
+--- CEGUI::OgreImageCodec
+--- CEGUI::OgreResourceProvider
+--- CEGUI::OgreRenderer
+--
+destroySystem :: IO ()
+ -- ^ 
+destroySystem =
+  destroySystem'_ >>= \res ->
+  return ()
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Create an OgreRendererOgre - Details: For this to succeed you must have initialised Ogre
+create :: IO (HG3DClass)
+ -- ^ 
+create =
+  alloca $ \a1' -> 
+  create'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | destory an OgreRenderer
+destroy :: HG3DClass  -- ^ renderer
+  ->  IO ()
+ -- ^ 
+destroy a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroy'_ a1' >>= \res ->
+  return ()
+{-# LINE 60 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | function to create a CEGUI::OgreResourceProvider
+createOgreResourceProvider :: IO (HG3DClass)
+ -- ^ 
+createOgreResourceProvider =
+  alloca $ \a1' -> 
+  createOgreResourceProvider'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | function to destroy a CEGUI::OgreResourceProvider
+destroyOgreResourceProvider :: HG3DClass  -- ^ rp
+  ->  IO ()
+ -- ^ 
+destroyOgreResourceProvider a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyOgreResourceProvider'_ a1' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | set whether CEGUI
+setRenderingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enabled
+  ->  IO ()
+ -- ^ 
+setRenderingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setRenderingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | return whether CEGUI
+isRenderingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isRenderingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isRenderingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | set the render states for the specified BlendMode. 
+setupRenderingBlendMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumBlendMode  -- ^ mode
+  ->  Bool  -- ^ force
+  ->  IO ()
+ -- ^ 
+setupRenderingBlendMode a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  let {a3' = fromBool a3} in 
+  setupRenderingBlendMode'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Controls whether rendering done by CEGUI - Details: This defaults to enabled and is required when using the default hook
+--that automatically calls CEGUI::System::renderGUI via a frame listener.
+--If you disable this setting, the automated rendering will also be
+--disabled, which is useful when you wish to perform your own calls to the
+--CEGUI::System::renderGUI function (and is the sole purpose for this
+--setting).
+--
+setFrameControlExecutionEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enabled
+  ->  IO ()
+ -- ^ 
+setFrameControlExecutionEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setFrameControlExecutionEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 89 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Returns whether rendering done by CEGUI - Details: This defaults to enabled and is required when using the default hook
+--that automatically calls CEGUI::System::renderGUI via a frame listener.
+--If you disable this setting, the automated rendering will also be
+--disabled, which is useful when you wish to perform your own calls to the
+--CEGUI::System::renderGUI function (and is the sole purpose for this
+--setting).
+--
+isFrameControlExecutionEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isFrameControlExecutionEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isFrameControlExecutionEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 94 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Sets all the required render states needed for CEGUI - Details: This is a low-level function intended for certain advanced concepts; in general it will not be required to call this function directly, since it is called automatically by the system when rendering is done. 
+initialiseRenderStateSettings :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+initialiseRenderStateSettings a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseRenderStateSettings'_ a1' >>= \res ->
+  return ()
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Destroy all GeometryBuffer objects created by this Renderer
+destroyAllGeometryBuffers :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllGeometryBuffers a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllGeometryBuffers'_ a1' >>= \res ->
+  return ()
+{-# LINE 102 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Destory all TextureTarget objects created by this Renderer
+destroyAllTextureTargets :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllTextureTargets a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllTextureTargets'_ a1' >>= \res ->
+  return ()
+{-# LINE 106 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Destroy all Texture objects created by this Renderer
+destroyAllTextures :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllTextures a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllTextures'_ a1' >>= \res ->
+  return ()
+{-# LINE 110 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Perform any operations required to put the system into a state ready for rendering operations to begin. 
+beginRendering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+beginRendering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  beginRendering'_ a1' >>= \res ->
+  return ()
+{-# LINE 114 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Perform any operations required to finalise rendering. 
+endRendering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+endRendering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  endRendering'_ a1' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Return the pixel size of the maximum supported texture. 
+getMaxTextureSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Size of the maximum supported texture in pixels.     
+getMaxTextureSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxTextureSize'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+-- | Return identification string for the renderer module. 
+getIdentifierString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding text that identifies the     
+getIdentifierString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getIdentifierString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_bootstrapSystem"
+  bootstrapSystem'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroySystem"
+  destroySystem'_ :: (IO ())
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_create"
+  create'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroy"
+  destroy'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_createOgreResourceProvider"
+  createOgreResourceProvider'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroyOgreResourceProvider"
+  destroyOgreResourceProvider'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_setRenderingEnabled"
+  setRenderingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_isRenderingEnabled"
+  isRenderingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_setupRenderingBlendMode"
+  setupRenderingBlendMode'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_setFrameControlExecutionEnabled"
+  setFrameControlExecutionEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_isFrameControlExecutionEnabled"
+  isFrameControlExecutionEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_initialiseRenderStateSettings"
+  initialiseRenderStateSettings'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroyAllGeometryBuffers"
+  destroyAllGeometryBuffers'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroyAllTextureTargets"
+  destroyAllTextureTargets'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_destroyAllTextures"
+  destroyAllTextures'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_beginRendering"
+  beginRendering'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_endRendering"
+  endRendering'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_getMaxTextureSize"
+  getMaxTextureSize'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassOgreRenderer.chs.h cegui_ogrrndr_getIdentifierString"
+  getIdentifierString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassOgreResourceProvider.hs view
@@ -0,0 +1,50 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreResourceProvider.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassOgreResourceProvider.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassOgreResourceProvider where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassOgreResourceProvider.chs" #-}
+
+ HGamer3D/Bindings/CEGUI/ClassProgressBar.hs view
@@ -0,0 +1,170 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassProgressBar.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassProgressBar where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | return the current progress value 
+getProgress :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getProgress a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getProgress'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | return the current step size 
+getStep :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getStep a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getStep'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | set the current progress. 
+setProgress :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ progress - The level of progress to set. If this value is >1.0f (100%) progress will be limited to 1.0f.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setProgress a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setProgress'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | set the size of the 'step' in percentage points (default is 0.01f or 1%). 
+setStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ step_val
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setStepSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setStepSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | cause the progress to step  - Details: The amount the progress bar will step can be changed by calling the setStepSize method.  The
+--default step size is 0.01f which is equal to 1%.
+--
+step :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+step a1 =
+  withHG3DClass a1 $ \a1' -> 
+  step'_ a1' >>= \res ->
+  return ()
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | Modify the progress level by a specified delta. 
+adjustProgress :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ delta - amount to adjust the progress by. Whatever this value is, the progress of the bar will be kept within the range: 0.0f <= progress <= 1.0f.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+adjustProgress a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  adjustProgress'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | Constructor for ProgressBar
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+-- | Destructor for ProgressBar
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_getProgress"
+  getProgress'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_getStep"
+  getStep'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_setProgress"
+  setProgress'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_setStepSize"
+  setStepSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_step"
+  step'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_adjustProgress"
+  adjustProgress'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassProgressBar.chs.h cegui_prgbr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassPropertySet.hs view
@@ -0,0 +1,206 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassPropertySet.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassPropertySet where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Constructs a new PropertySet
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Destructor for PropertySet
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Removes a Property from the PropertySet
+removeProperty :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property to be removed. If Property name is not in the set, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeProperty a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  removeProperty'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Removes all Property objects from the PropertySet
+clearProperties :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+clearProperties a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearProperties'_ a1' >>= \res ->
+  return ()
+{-# LINE 60 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Checks to see if a Property with the given name is in the PropertySet
+isPropertyPresent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property to check for.
+  ->  IO (Bool)
+ -- ^ return value - true if a Property named     
+isPropertyPresent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isPropertyPresent'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Return the help text for the specified Property. 
+getPropertyHelp :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String holding the name of the Property who's help text is to be returned.
+  ->  IO (String)
+ -- ^ return value - String object containing the help text for the Property     
+getPropertyHelp a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloc64k $ \a3' -> 
+  getPropertyHelp'_ a1' a2' a3' >>= \res ->
+  peekCString  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Gets the current value of the specified Property. 
+getProperty :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property who's value is to be returned.
+  ->  IO (String)
+ -- ^ return value - String object containing a textual representation of the requested Property.    
+getProperty a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloc64k $ \a3' -> 
+  getProperty'_ a1' a2' a3' >>= \res ->
+  peekCString  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Sets the current value of a Property. 
+setProperty :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property who's value is to be set.
+  ->  String  -- ^ value - String containing a textual representation of the new value for the Property
+  ->  IO ()
+ -- ^ return value - Nothing    
+setProperty a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setProperty'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Returns whether a Property is at it's default value. 
+isPropertyDefault :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property who's default state is to be tested.
+  ->  IO (Bool)
+ -- ^ 
+isPropertyDefault a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isPropertyDefault'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 90 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+-- | Returns the default value of a Property as a String. 
+getPropertyDefault :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String containing the name of the Property who's default string is to be returned.
+  ->  IO (String)
+ -- ^ return value - String object containing a textual representation of the default value for this property.     
+getPropertyDefault a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloc64k $ \a3' -> 
+  getPropertyDefault'_ a1' a2' a3' >>= \res ->
+  peekCString  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 96 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_removeProperty"
+  removeProperty'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_clearProperties"
+  clearProperties'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_isPropertyPresent"
+  isPropertyPresent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_getPropertyHelp"
+  getPropertyHelp'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_getProperty"
+  getProperty'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_setProperty"
+  setProperty'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_isPropertyDefault"
+  isPropertyDefault'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPropertySet.chs.h cegui_prpst_getPropertyDefault"
+  getPropertyDefault'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassPtr.hs view
@@ -0,0 +1,223 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassPtr.chs
+
+-- Class Ptr Utilities
+
+module HGamer3D.Bindings.CEGUI.ClassPtr where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+
+{- class ClassCheckbox -}
+type ClassCheckbox = Ptr (())
+{-# LINE 44 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassCombobox -}
+type ClassCombobox = Ptr (())
+{-# LINE 46 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassComboDropList -}
+type ClassComboDropList = Ptr (())
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassDefaultLogger -}
+type ClassDefaultLogger = Ptr (())
+{-# LINE 50 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassDefaultResourceProvider -}
+type ClassDefaultResourceProvider = Ptr (())
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassDragContainer -}
+type ClassDragContainer = Ptr (())
+{-# LINE 54 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassEditbox -}
+type ClassEditbox = Ptr (())
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassEventArgs -}
+type ClassEventArgs = Ptr (())
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassEventSet -}
+type ClassEventSet = Ptr (())
+{-# LINE 60 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassFont -}
+type ClassFont = Ptr (())
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassFontManager -}
+type ClassFontManager = Ptr (())
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassFrameWindow -}
+type ClassFrameWindow = Ptr (())
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassImageCodec -}
+type ClassImageCodec = Ptr (())
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassImageset -}
+type ClassImageset = Ptr (())
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassItemEntry -}
+type ClassItemEntry = Ptr (())
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassItemListbox -}
+type ClassItemListbox = Ptr (())
+{-# LINE 74 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassListbox -}
+type ClassListbox = Ptr (())
+{-# LINE 76 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassListboxItem -}
+type ClassListboxItem = Ptr (())
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassListboxTextItem -}
+type ClassListboxTextItem = Ptr (())
+{-# LINE 80 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassListHeader -}
+type ClassListHeader = Ptr (())
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassListHeaderSegment -}
+type ClassListHeaderSegment = Ptr (())
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassLogger -}
+type ClassLogger = Ptr (())
+{-# LINE 86 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassMenuBase -}
+type ClassMenuBase = Ptr (())
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassMenuItem -}
+type ClassMenuItem = Ptr (())
+{-# LINE 90 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassMultiColumnList -}
+type ClassMultiColumnList = Ptr (())
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassMultiLineEditbox -}
+type ClassMultiLineEditbox = Ptr (())
+{-# LINE 94 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassOgreRenderer -}
+type ClassOgreRenderer = Ptr (())
+{-# LINE 96 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassOgreResourceProvider -}
+type ClassOgreResourceProvider = Ptr (())
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassProgressBar -}
+type ClassProgressBar = Ptr (())
+{-# LINE 100 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassPropertySet -}
+type ClassPropertySet = Ptr (())
+{-# LINE 102 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassPushButton -}
+type ClassPushButton = Ptr (())
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassRadioButton -}
+type ClassRadioButton = Ptr (())
+{-# LINE 106 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassRenderer -}
+type ClassRenderer = Ptr (())
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassResourceProvider -}
+type ClassResourceProvider = Ptr (())
+{-# LINE 110 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScheme -}
+type ClassScheme = Ptr (())
+{-# LINE 112 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassSchemeManager -}
+type ClassSchemeManager = Ptr (())
+{-# LINE 114 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScriptFunctor -}
+type ClassScriptFunctor = Ptr (())
+{-# LINE 116 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScriptModule -}
+type ClassScriptModule = Ptr (())
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScrollablePane -}
+type ClassScrollablePane = Ptr (())
+{-# LINE 120 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScrollbar -}
+type ClassScrollbar = Ptr (())
+{-# LINE 122 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScrolledContainer -}
+type ClassScrolledContainer = Ptr (())
+{-# LINE 124 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassScrolledItemListBase -}
+type ClassScrolledItemListBase = Ptr (())
+{-# LINE 126 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassSlider -}
+type ClassSlider = Ptr (())
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassSpinner -}
+type ClassSpinner = Ptr (())
+{-# LINE 130 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassSystem -}
+type ClassSystem = Ptr (())
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassTabButton -}
+type ClassTabButton = Ptr (())
+{-# LINE 134 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassThumb -}
+type ClassThumb = Ptr (())
+{-# LINE 136 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassTooltip -}
+type ClassTooltip = Ptr (())
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassTree -}
+type ClassTree = Ptr (())
+{-# LINE 140 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassWidgetLookManager -}
+type ClassWidgetLookManager = Ptr (())
+{-# LINE 142 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassWindow -}
+type ClassWindow = Ptr (())
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassWindowManager -}
+type ClassWindowManager = Ptr (())
+{-# LINE 146 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassXMLParser -}
+type ClassXMLParser = Ptr (())
+{-# LINE 148 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassHG3DEventController -}
+type ClassHG3DEventController = Ptr (())
+{-# LINE 150 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassHG3DEventStaticFunctions -}
+type ClassHG3DEventStaticFunctions = Ptr (())
+{-# LINE 152 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassHG3DListboxStaticFunctions -}
+type ClassHG3DListboxStaticFunctions = Ptr (())
+{-# LINE 154 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassHG3DWindowStaticFunctions -}
+type ClassHG3DWindowStaticFunctions = Ptr (())
+{-# LINE 156 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassSystemHG3D -}
+type ClassSystemHG3D = Ptr (())
+{-# LINE 158 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+{- class ClassWindowManagerHG3D -}
+type ClassWindowManagerHG3D = Ptr (())
+{-# LINE 160 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPtr.chs" #-}
+ HGamer3D/Bindings/CEGUI/ClassPushButton.hs view
@@ -0,0 +1,80 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassPushButton.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassPushButton where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}
+
+-- | Constructor for base PushButton
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}
+
+-- | Destructor for PushButton
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs.h cegui_pshbttn_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassPushButton.chs.h cegui_pshbttn_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassRadioButton.hs view
@@ -0,0 +1,125 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassRadioButton.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassRadioButton where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+-- | return true if the radio button is selected (has the checkmark) 
+isSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if this widget is selected, false if the widget is not selected.     
+isSelected a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelected'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+-- | Return a pointer to the RadioButtonRadioButton
+getSelectedButtonInGroup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getSelectedButtonInGroup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedButtonInGroup'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+-- | set whether the radio button is selected or not 
+setSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ select - true to put the radio button in the selected state, false to put the radio button in the deselected state. If changing to the selected state, any previously selected radio button within the same group is automatically deselected.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelected'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+-- | 
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 64 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+-- | 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs.h cegui_rdbttn_isSelected"
+  isSelected'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs.h cegui_rdbttn_getSelectedButtonInGroup"
+  getSelectedButtonInGroup'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs.h cegui_rdbttn_setSelected"
+  setSelected'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs.h cegui_rdbttn_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRadioButton.chs.h cegui_rdbttn_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassRenderer.hs view
@@ -0,0 +1,158 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassRenderer.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassRenderer where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Destroy all GeometryBuffer objects created by this Renderer
+destroyAllGeometryBuffers :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllGeometryBuffers a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllGeometryBuffers'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Destory all TextureTarget objects created by this Renderer
+destroyAllTextureTargets :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllTextureTargets a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllTextureTargets'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Destroy all Texture objects created by this Renderer
+destroyAllTextures :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroyAllTextures a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllTextures'_ a1' >>= \res ->
+  return ()
+{-# LINE 55 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Perform any operations required to put the system into a state ready for rendering operations to begin. 
+beginRendering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+beginRendering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  beginRendering'_ a1' >>= \res ->
+  return ()
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Perform any operations required to finalise rendering. 
+endRendering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+endRendering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  endRendering'_ a1' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Return the pixel size of the maximum supported texture. 
+getMaxTextureSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Size of the maximum supported texture in pixels.     
+getMaxTextureSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxTextureSize'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Return identification string for the renderer module. 
+getIdentifierString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding text that identifies the     
+getIdentifierString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getIdentifierString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_destroyAllGeometryBuffers"
+  destroyAllGeometryBuffers'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_destroyAllTextureTargets"
+  destroyAllTextureTargets'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_destroyAllTextures"
+  destroyAllTextures'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_beginRendering"
+  beginRendering'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_endRendering"
+  endRendering'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_getMaxTextureSize"
+  getMaxTextureSize'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_getIdentifierString"
+  getIdentifierString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassRenderer.chs.h cegui_rndr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassResourceProvider.hs view
@@ -0,0 +1,93 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassResourceProvider.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassResourceProvider where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+
+-- | Destructor for the ResourceProvider
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+
+-- | Return the current default resource group identifier. 
+getDefaultResourceGroup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object containing the currently set default resource group identifier.     
+getDefaultResourceGroup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getDefaultResourceGroup'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+
+-- | Set the default resource group identifier. 
+setDefaultResourceGroup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ resourceGroup - String object containing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setDefaultResourceGroup'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs.h cegui_rsrcpr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs.h cegui_rsrcpr_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassResourceProvider.chs.h cegui_rsrcpr_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassScheme.hs view
@@ -0,0 +1,145 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScheme.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScheme where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Loads all resources for this scheme. 
+loadResources :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+loadResources a1 =
+  withHG3DClass a1 $ \a1' -> 
+  loadResources'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Unloads all resources for this scheme. This should be used very carefully. 
+unloadResources :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+unloadResources a1 =
+  withHG3DClass a1 $ \a1' -> 
+  unloadResources'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Return whether the resources for this Scheme
+resourcesLoaded :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if all resources for the     
+resourcesLoaded a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  resourcesLoaded'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Return the name of this Scheme
+getName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object containing the name of this     
+getName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Destroys a Scheme
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ return value - Nothing     
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 65 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Returns the default resource group currently set for Schemes. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier that will be used when loading     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 69 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+-- | Sets the default resource group to be used when loading scheme xml data. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_loadResources"
+  loadResources'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_unloadResources"
+  unloadResources'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_resourcesLoaded"
+  resourcesLoaded'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_getName"
+  getName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScheme.chs.h cegui_schm_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassSchemeManager.hs view
@@ -0,0 +1,76 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassSchemeManager.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassSchemeManager where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}
+
+-- | Constructor. 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs.h cegui_schmmgr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSchemeManager.chs.h cegui_schmmgr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassScriptFunctor.hs view
@@ -0,0 +1,65 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScriptFunctor.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScriptFunctor where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs" #-}
+
+-- | 
+new :: String  -- ^ functionName
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 =
+  withCString a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  new'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptFunctor.chs.h cegui_scrfnct_construct"
+  new'_ :: ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassScriptModule.hs view
@@ -0,0 +1,198 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScriptModule.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScriptModule where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Destructor for ScriptModule
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Execute a script file. 
+executeScriptFile :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename - String object holding the filename of the script file that is to be executed
+  ->  String  -- ^ resourceGroup - Resource group idendifier to be passed to the ResourceProvider when loading the script file. 
+  ->  IO ()
+ -- ^ 
+executeScriptFile a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  executeScriptFile'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Execute a scripted global function. The function should not take any parameters and should return an integer. 
+executeScriptGlobal :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ function_name - String object holding the name of the function, in the global script environment, that is to be executed.
+  ->  IO (Int)
+ -- ^ return value - The integer value returned from the script function.     
+executeScriptGlobal a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  executeScriptGlobal'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Execute a scripted global 'event handler' function. The function should take some kind of EventArgsEventArgs
+executeScriptedEventHandler :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ handler_name - String object holding the name of the scripted handler function.
+  ->  HG3DClass  -- ^ e - EventArgs based object that should be passed, by any appropriate means, to the scripted function.
+  ->  IO (Bool)
+ -- ^ 
+executeScriptedEventHandler a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  executeScriptedEventHandler'_ a1' a2' a3' a4' >>= \res ->
+  peekBoolUtil  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Execute script code contained in the given CEGUI::String object. 
+executeString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ str - String object holding the valid script code that should be executed.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+executeString a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  executeString'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 71 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Method called during system initialisation, prior to running any scripts via the ScriptModuleScriptModule
+createBindings :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+createBindings a1 =
+  withHG3DClass a1 $ \a1' -> 
+  createBindings'_ a1' >>= \res ->
+  return ()
+{-# LINE 75 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Method called during system destruction, after all scripts have been run via the ScriptModuleScriptModule
+destroyBindings :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+destroyBindings a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyBindings'_ a1' >>= \res ->
+  return ()
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Return identification string for the ScriptModuleScriptModule
+getIdentifierString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding a string that identifies the     
+getIdentifierString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getIdentifierString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Sets the default resource group to be used when loading script files. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+-- | Returns the default resource group used when loading script files. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier..     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_executeScriptFile"
+  executeScriptFile'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_executeScriptGlobal"
+  executeScriptGlobal'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_executeScriptedEventHandler"
+  executeScriptedEventHandler'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_executeString"
+  executeString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_createBindings"
+  createBindings'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_destroyBindings"
+  destroyBindings'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_getIdentifierString"
+  getIdentifierString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScriptModule.chs.h cegui_scrmd_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassScrollablePane.hs view
@@ -0,0 +1,432 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScrollablePane.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScrollablePane where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Constructor for the ScrollablePane
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Destructor for the ScrollablePane
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns a pointer to the window holding the pane contents.  - Details: The purpose of this is so that attached windows may be inspected,
+--client code may not modify the returned window in any way.
+--
+getContentPane :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getContentPane a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getContentPane'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Return whether the horizontal scroll bar is always shown. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Set whether the horizontal scroll bar should always be shown. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Return whether the content pane is auto sized. 
+isContentPaneAutoSized :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isContentPaneAutoSized a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isContentPaneAutoSized'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Set whether the content pane should be auto-sized. 
+setContentPaneAutoSized :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setContentPaneAutoSized a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setContentPaneAutoSized'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the horizontal scrollbar step size as a fraction of one complete view page. 
+getHorizontalStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the step size where 1.0f would be the width of the viewing area.     
+getHorizontalStepSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorizontalStepSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the horizontal scrollbar step size as a fraction of one complete view page. 
+setHorizontalStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ step - float value specifying the step size, where 1.0f would be the width of the viewing area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setHorizontalStepSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setHorizontalStepSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the horizontal scrollbar overlap size as a fraction of one complete view page. 
+getHorizontalOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the overlap size where 1.0f would be the width of the viewing area.     
+getHorizontalOverlapSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorizontalOverlapSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the horizontal scrollbar overlap size as a fraction of one complete view page. 
+setHorizontalOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ overlap - float value specifying the overlap size, where 1.0f would be the width of the viewing area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setHorizontalOverlapSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setHorizontalOverlapSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the horizontal scroll position as a fraction of the complete scrollable width. 
+getHorizontalScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the scroll position.     
+getHorizontalScrollPosition a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorizontalScrollPosition'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the horizontal scroll position as a fraction of the complete scrollable width. 
+setHorizontalScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ position - float value specifying the new scroll position.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setHorizontalScrollPosition a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setHorizontalScrollPosition'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the vertical scrollbar step size as a fraction of one complete view page. 
+getVerticalStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the step size where 1.0f would be the height of the viewing area.     
+getVerticalStepSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVerticalStepSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the vertical scrollbar step size as a fraction of one complete view page. 
+setVerticalStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ step - float value specifying the step size, where 1.0f would be the height of the viewing area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setVerticalStepSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setVerticalStepSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the vertical scrollbar overlap size as a fraction of one complete view page. 
+getVerticalOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the overlap size where 1.0f would be the height of the viewing area.     
+getVerticalOverlapSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVerticalOverlapSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 133 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the vertical scrollbar overlap size as a fraction of one complete view page. 
+setVerticalOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ overlap - float value specifying the overlap size, where 1.0f would be the height of the viewing area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setVerticalOverlapSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setVerticalOverlapSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Returns the vertical scroll position as a fraction of the complete scrollable height. 
+getVerticalScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value specifying the scroll position.     
+getVerticalScrollPosition a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVerticalScrollPosition'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 143 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Sets the vertical scroll position as a fraction of the complete scrollable height. 
+setVerticalScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ position - float value specifying the new scroll position.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setVerticalScrollPosition a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setVerticalScrollPosition'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 148 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Return a pointer to the vertical scrollbar component widget for this ScrollablePane
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 153 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Return a pointer to the horizontal scrollbar component widget for this ScrollablePane
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 158 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Initialises the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowManager
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 162 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+-- | Internal destroy method which actually just adds the window and any parent destructed child windows to the dead pool.  - Details: This is virtual to allow for specialised cleanup which may be required
+--in some advanced cases.  If you override this for the above reason, you
+--MUST call this base class version.
+--
+destroy :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroy a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroy'_ a1' >>= \res ->
+  return ()
+{-# LINE 166 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getContentPane"
+  getContentPane'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_isContentPaneAutoSized"
+  isContentPaneAutoSized'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setContentPaneAutoSized"
+  setContentPaneAutoSized'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getHorizontalStepSize"
+  getHorizontalStepSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setHorizontalStepSize"
+  setHorizontalStepSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getHorizontalOverlapSize"
+  getHorizontalOverlapSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setHorizontalOverlapSize"
+  setHorizontalOverlapSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getHorizontalScrollPosition"
+  getHorizontalScrollPosition'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setHorizontalScrollPosition"
+  setHorizontalScrollPosition'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getVerticalStepSize"
+  getVerticalStepSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setVerticalStepSize"
+  setVerticalStepSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getVerticalOverlapSize"
+  getVerticalOverlapSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setVerticalOverlapSize"
+  setVerticalOverlapSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getVerticalScrollPosition"
+  getVerticalScrollPosition'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_setVerticalScrollPosition"
+  setVerticalScrollPosition'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollablePane.chs.h cegui_scrlpn_destroy"
+  destroy'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassScrollbar.hs view
@@ -0,0 +1,365 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScrollbar.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScrollbar where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return the size of the document or data.  - Details: The document size should be thought of as the total size of the data
+--that is being scrolled through (the number of lines in a text file for
+--example).
+--
+getDocumentSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getDocumentSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDocumentSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return the page size for this scroll bar.  - Details: The page size is typically the amount of data that can be displayed at
+--one time.  This value is also used when calculating the amount the
+--position will change when you click either side of the scroll bar
+--thumb, the amount the position changes will is (pageSize - overlapSize).
+--
+getPageSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getPageSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getPageSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return the step size for this scroll bar.  - Details: The step size is typically a single unit of data that can be displayed,
+--this is the amount the position will change when you click either of
+--the arrow buttons on the scroll bar.  (this could be 1 for a single
+--line of text, for example).
+--
+getStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getStepSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getStepSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return the overlap size for this scroll bar.  - Details: The overlap size is the amount of data from the end of a 'page' that
+--will remain visible when the position is moved by a page.  This is
+--usually used so that the user keeps some context of where they were
+--within the document's data when jumping a page at a time.
+--
+getOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getOverlapSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getOverlapSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return the current position of scroll bar within the document.  - Details: The range of the scroll bar is from 0 to the size of the document minus
+--the size of a page (0 <= position <= (documentSize - pageSize)).
+--
+getScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getScrollPosition a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getScrollPosition'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return a pointer to the 'increase' PushButtoncomponent widget for this Scrollbar
+getIncreaseButton :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getIncreaseButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getIncreaseButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return a pointer to the 'decrease' PushButtonScrollbar
+getDecreaseButton :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getDecreaseButton a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDecreaseButton'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Return a pointer to the ThumbScrollbar
+getThumb :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getThumb a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getThumb'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Initialises the Scrollbar - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Set the size of the document or data.  - Details: The document size should be thought of as the total size of the data
+--that is being scrolled through (the number of lines in a text file for
+--example).
+--
+setDocumentSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ document_size
+  ->  IO ()
+ -- ^ 
+setDocumentSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setDocumentSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Set the page size for this scroll bar.  - Details: The page size is typically the amount of data that can be displayed at
+--one time.  This value is also used when calculating the amount the
+--position will change when you click either side of the scroll bar
+--thumb, the amount the position changes will is (pageSize - overlapSize).
+--
+setPageSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ page_size
+  ->  IO ()
+ -- ^ 
+setPageSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setPageSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Set the step size for this scroll bar.  - Details: The step size is typically a single unit of data that can be displayed,
+--this is the amount the position will change when you click either of the
+--arrow buttons on the scroll bar.  (this could be 1 for a single line of
+--text, for example).
+--
+setStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ step_size
+  ->  IO ()
+ -- ^ 
+setStepSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setStepSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 102 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Set the overlap size for this scroll bar.  - Details: The overlap size is the amount of data from the end of a 'page' that
+--will remain visible when the position is moved by a page.  This is
+--usually used so that the user keeps some context of where they were
+--within the document's data when jumping a page at a time.
+--
+setOverlapSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ overlap_size
+  ->  IO ()
+ -- ^ 
+setOverlapSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setOverlapSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Set the current position of scroll bar within the document.  - Details: The range of the scroll bar is from 0 to the size of the document minus
+--the size of a page (0 <= position <= (documentSize - pageSize)), any
+--attempt to set the position outside this range will be adjusted so that
+--it falls within the legal range.
+--
+setScrollPosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ position
+  ->  IO ()
+ -- ^ 
+setScrollPosition a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setScrollPosition'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 112 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Enable or disable the 'end lock' mode for the scrollbar.  - Details: When enabled and the current position of the scrollbar is at the end of
+--it's travel, the end lock mode of the scrollbar will automatically
+--update the position when the document and/or page size change in order
+--that the scroll position will remain at the end of it's travel.  This
+--can be used to implement auto-scrolling in certain other widget types.
+--
+setEndLockEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enabled
+  ->  IO ()
+ -- ^ 
+setEndLockEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setEndLockEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 117 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Returns whether the 'end lock'mode for the scrollbar is enabled.  - Details: When enabled, and the current position of the scrollbar is at the end of
+--it's travel, the end lock mode of the scrollbar will automatically
+--update the scrollbar position when the document and/or page size change
+--in order that the scroll position will remain at the end of it's travel.
+--This can be used to implement auto-scrolling in certain other widget
+--types.
+--
+isEndLockEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isEndLockEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isEndLockEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 122 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Constructor for Scrollbar
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+-- | Destructor for Scrollbar
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getDocumentSize"
+  getDocumentSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getPageSize"
+  getPageSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getStepSize"
+  getStepSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getOverlapSize"
+  getOverlapSize'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getScrollPosition"
+  getScrollPosition'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getIncreaseButton"
+  getIncreaseButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getDecreaseButton"
+  getDecreaseButton'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_getThumb"
+  getThumb'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setDocumentSize"
+  setDocumentSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setPageSize"
+  setPageSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setStepSize"
+  setStepSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setOverlapSize"
+  setOverlapSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setScrollPosition"
+  setScrollPosition'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_setEndLockEnabled"
+  setEndLockEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_isEndLockEnabled"
+  isEndLockEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrollbar.chs.h cegui_scrlbr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassScrolledContainer.hs view
@@ -0,0 +1,112 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScrolledContainer.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassScrolledContainer where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+
+-- | Constructor for ScrolledContainer
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+
+-- | Destructor for ScrolledContainer
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+
+-- | Return whether the content pane is auto sized. 
+isContentPaneAutoSized :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isContentPaneAutoSized a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isContentPaneAutoSized'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+
+-- | Set whether the content pane should be auto-sized. 
+setContentPaneAutoSized :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setContentPaneAutoSized a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setContentPaneAutoSized'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs.h cegui_scrlcnt_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs.h cegui_scrlcnt_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs.h cegui_scrlcnt_isContentPaneAutoSized"
+  isContentPaneAutoSized'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledContainer.chs.h cegui_scrlcnt_setContentPaneAutoSized"
+  setContentPaneAutoSized'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassScrolledItemListBase.hs view
@@ -0,0 +1,183 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassScrolledItemListBase.chs
+
+-- abstrakte Klasse!
+
+module HGamer3D.Bindings.CEGUI.ClassScrolledItemListBase where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Returns whether the vertical scrollbar is being forced visible. Despite content size. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Returns whether the horizontal scrollbar is being forced visible. Despite content size. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Get the vertical scrollbar component attached to this window. 
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Get the horizontal scrollbar component attached to this window. 
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Sets whether the vertical scrollbar should be forced visible. Despite content size. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ mode
+  ->  IO ()
+ -- ^ 
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Sets whether the horizontal scrollbar should be forced visible. Despite content size. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ mode
+  ->  IO ()
+ -- ^ 
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Scroll the vertical list position if needed to ensure that the ItemEntryitemScrolledItemListBase
+ensureItemIsVisibleVert :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - const reference to an ItemEntry attached to this ScrolledItemListBase that should be made visible in the view area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+ensureItemIsVisibleVert a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  ensureItemIsVisibleVert'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | Scroll the horizontal list position if needed to ensure that the ItemEntryitemScrolledItemListBase
+ensureItemIsVisibleHorz :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item - const reference to an ItemEntry attached to this ScrolledItemListBase that should be made visible in the view area.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+ensureItemIsVisibleHorz a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  ensureItemIsVisibleHorz'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+-- | 
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_ensureItemIsVisibleVert"
+  ensureItemIsVisibleVert'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_ensureItemIsVisibleHorz"
+  ensureItemIsVisibleHorz'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassScrolledItemListBase.chs.h cegui_scrlitmlstbs_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassSlider.hs view
@@ -0,0 +1,202 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassSlider.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassSlider where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | return the current slider value. 
+getCurrentValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value equal to the sliders current value.     
+getCurrentValue a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCurrentValue'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | return the maximum value set for this widget 
+getMaxValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value equal to the currently set maximum value for this slider.     
+getMaxValue a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaxValue'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | return the current click step setting for the slider.  - Details: The click step size is the amount the slider value will be adjusted when the widget
+--is clicked wither side of the slider thumb.
+--
+getClickStep :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ 
+getClickStep a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getClickStep'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | Return a pointer to the ThumbSlider
+getThumb :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getThumb a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getThumb'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | Initialises the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | set the maximum value for the slider. Note that the minimum value is fixed at 0. 
+setMaxValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ maxVal - float value specifying the maximum value for this slider widget.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaxValue a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setMaxValue'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | set the current slider value. 
+setCurrentValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ value - float value specifying the new value for this slider widget.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCurrentValue a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setCurrentValue'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | set the current click step setting for the slider.  - Details: The click step size is the amount the slider value will be adjusted when the widget
+--is clicked wither side of the slider thumb.
+--
+setClickStep :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ step
+  ->  IO ()
+ -- ^ 
+setClickStep a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setClickStep'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | Slider
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+-- | Slider
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_getCurrentValue"
+  getCurrentValue'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_getMaxValue"
+  getMaxValue'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_getClickStep"
+  getClickStep'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_getThumb"
+  getThumb'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_setMaxValue"
+  setMaxValue'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_setCurrentValue"
+  setCurrentValue'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_setClickStep"
+  setClickStep'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSlider.chs.h cegui_sldr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassSpinner.hs view
@@ -0,0 +1,245 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassSpinner.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassSpinner where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumTextInputMode
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Constructor for Spinner
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 50 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Destructor for Spinner
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 54 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Initialises the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Return the current spinner value. 
+getCurrentValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ return value - current value of the     
+getCurrentValue a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getCurrentValue'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Return the current step value. 
+getStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ return value - Step value. This is the value added to the spinner vaue when the up / down buttons are clicked.     
+getStepSize a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getStepSize'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Return the current maximum limit value for the Spinner
+getMaximumValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ return value - Maximum value that is allowed for the spinner.     
+getMaximumValue a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMaximumValue'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Return the current minimum limit value for the Spinner
+getMinimumValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ return value - Minimum value that is allowed for the spinner.     
+getMinimumValue a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMinimumValue'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 78 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Return the current text input / display mode setting. 
+getTextInputMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumTextInputMode)
+ -- ^ return value - One of the TextInputMode enumerated values indicating the current text input and display mode.     
+getTextInputMode a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTextInputMode'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Set the current spinner value. 
+setCurrentValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ value - value to be assigned to the Spinner.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setCurrentValue a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setCurrentValue'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Set the current step value. 
+setStepSize :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ step - The value added to be the spinner value when the up / down buttons are clicked.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setStepSize a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setStepSize'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Set the spinner maximum value. 
+setMaximumValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ maxValue - The maximum value to be allowed by the spinner.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMaximumValue a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setMaximumValue'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Set the spinner minimum value. 
+setMinimumValue :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ minVaue - The minimum value to be allowed by the spinner.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMinimumValue a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setMinimumValue'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+-- | Set the spinner input / display mode. 
+setTextInputMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumTextInputMode  -- ^ mode - One of the TextInputMode enumerated values indicating the text input / display mode to be used by the spinner.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTextInputMode a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setTextInputMode'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_getCurrentValue"
+  getCurrentValue'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_getStepSize"
+  getStepSize'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_getMaximumValue"
+  getMaximumValue'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_getMinimumValue"
+  getMinimumValue'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_getTextInputMode"
+  getTextInputMode'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_setCurrentValue"
+  setCurrentValue'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_setStepSize"
+  setStepSize'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_setMaximumValue"
+  setMaximumValue'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_setMinimumValue"
+  setMinimumValue'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSpinner.chs.h cegui_spnnr_setTextInputMode"
+  setTextInputMode'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassSystem.hs view
@@ -0,0 +1,1059 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassSystem.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassSystem where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumMouseButton
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Create the System
+create :: HG3DClass  -- ^ renderer - Reference to a valid Renderer object that will be used to render GUI imagery.
+  ->  HG3DClass  -- ^ resourceProvider - Pointer to a ResourceProvider object, or NULL to use whichever default the Renderer provides.
+  ->  HG3DClass  -- ^ xmlParser - Pointer to a valid XMLParser object to be used when parsing XML files, or NULL to use a default parser.
+  ->  HG3DClass  -- ^ imageCodec - Pointer to a valid ImageCodec object to be used when loading image files, or NULL to use a default image codec.
+  ->  HG3DClass  -- ^ scriptModule - Pointer to a ScriptModule object. may be NULL for none.
+  ->  String  -- ^ configFile - String object containing the name of a configuration file to use.
+  ->  String  -- ^ logFile - String object containing the name to use for the log file. 
+  ->  IO (HG3DClass)
+ -- ^ 
+create a1 a2 a3 a4 a5 a6 a7 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withHG3DClass a3 $ \a3' -> 
+  withHG3DClass a4 $ \a4' -> 
+  withHG3DClass a5 $ \a5' -> 
+  withCString a6 $ \a6' -> 
+  withCString a7 $ \a7' -> 
+  alloca $ \a8' -> 
+  create'_ a1' a2' a3' a4' a5' a6' a7' a8' >>= \res ->
+  peek  a8'>>= \a8'' -> 
+  return (a8'')
+{-# LINE 55 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Destroy the System
+destroy :: IO ()
+ -- ^ 
+destroy =
+  destroy'_ >>= \res ->
+  return ()
+{-# LINE 59 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return singleton System
+getSingleton :: IO (HG3DClass)
+ -- ^ return value - Singleton     
+getSingleton =
+  alloca $ \a1' -> 
+  getSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return pointer to singleton System
+getSingletonPtr :: IO (HG3DClass)
+ -- ^ return value - Pointer to singleton     
+getSingletonPtr =
+  alloca $ \a1' -> 
+  getSingletonPtr'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Static member to set the name of the default XML parser module that should be used.  - Details: If you want to modify the default parser from the one compiled in, you
+--need to call this static member prior to instantiating the main
+--CEGUI::System object.
+--
+--Note that calling this member to change the name of the default module
+--after CEGUI::System, and therefore the default xml parser, has been
+--created will have no real effect - the default parser name will be
+--updated, though no actual changes to the xml parser module will occur.
+--
+--The built-in options for this are:
+-- - XercesParser
+-- - ExpatParser
+-- - LibxmlParser
+-- - TinyXMLParser
+--
+--Whether these are actually available, depends upon how you built the
+--system.  If you have some custom parser, you can provide the name of
+--that here to have it used as the default, though note that the
+--final filename of the parser module should be of the form:
+--
+--[prefix]CEGUI[parserName][suffix]
+--
+--where:
+--- [prefix] is some optional prefix; like 'lib' on linux.
+--- CEGUI is a required prefix.
+--- [parserName] is the name of the parser, as supplied to this function.
+--- [suffix] is the filename suffix, like .dll or .so
+--
+--Final module filenames are, thus, of the form:
+--- CEGUIXercesParser.dll
+--- libCEGUIXercesParser.so
+--
+setDefaultXMLParserName :: String  -- ^ parserName
+  ->  IO ()
+ -- ^ 
+setDefaultXMLParserName a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultXMLParserName'_ a1' >>= \res ->
+  return ()
+{-# LINE 71 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the name of the currently set default xml parser module. 
+getDefaultXMLParserName :: IO (String)
+ -- ^ return value - String holding the currently set default xml parser name. Note that if this name has been changed after instantiating the system, the name returned may not actually correspond to the module in use.     
+getDefaultXMLParserName =
+  alloc64k $ \a1' -> 
+  getDefaultXMLParserName'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 75 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the name of the default image codec to be used. 
+setDefaultImageCodecName :: String  -- ^ codecName
+  ->  IO ()
+ -- ^ 
+setDefaultImageCodecName a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultImageCodecName'_ a1' >>= \res ->
+  return ()
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Get the name of the default image codec. 
+getDefaultImageCodecName :: IO (String)
+ -- ^ 
+getDefaultImageCodecName =
+  alloc64k $ \a1' -> 
+  getDefaultImageCodecName'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 83 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the Renderer
+getRenderer :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getRenderer a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getRenderer'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the default font to be used by the system. 
+setDefaultFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object containing the name of the font to be used as the system default.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultFont a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setDefaultFont'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the default font to be used by the system. 
+setDefaultFont2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ font - Pointer to the font to be used as the system default.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultFont2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setDefaultFont2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the default Font
+getDefaultFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getDefaultFont a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDefaultFont'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Causes a full re-draw next time renderGUI()
+signalRedraw :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+signalRedraw a1 =
+  withHG3DClass a1 $ \a1' -> 
+  signalRedraw'_ a1' >>= \res ->
+  return ()
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a boolean value to indicate whether a full re-draw is requested next time renderGUI()
+isRedrawRequested :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if a re-draw has been requested     
+isRedrawRequested a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isRedrawRequested'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 112 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Render the GUI.  - Details: Depending upon the internal state, this may either re-use rendering from last time, or trigger a full re-draw from all elements.
+--
+renderGUI :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+renderGUI a1 =
+  withHG3DClass a1 $ \a1' -> 
+  renderGUI'_ a1' >>= \res ->
+  return ()
+{-# LINE 116 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the active GUI sheet (root) window. 
+setGUISheet :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ sheet - Pointer to a Window object that will become the new GUI 'root'
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the window that was previously set as the GUI root.     
+setGUISheet a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  setGUISheet'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 122 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the active GUI sheet (root) window. 
+getGUISheet :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the window object that has been set as the GUI root element.     
+getGUISheet a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getGUISheet'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 127 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the current timeout for generation of single-click events.  - Details: A single-click is defined here as a button being pressed and then released.
+--
+getSingleClickTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ 
+getSingleClickTimeout a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSingleClickTimeout'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the current timeout for generation of multi-click events.  - Details: A multi-click event is a double-click, or a triple-click.  The value returned
+--here is the maximum allowable time between mouse button down events for which
+--a multi-click event will be generated.
+--
+getMultiClickTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Double)
+ -- ^ 
+getMultiClickTimeout a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMultiClickTimeout'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 137 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the timeout used for generation of single-click events.  - Details: A single-click is defined here as a button being pressed and then
+--released.
+--
+setSingleClickTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ timeout
+  ->  IO ()
+ -- ^ 
+setSingleClickTimeout a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setSingleClickTimeout'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 142 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the timeout to be used for the generation of multi-click events.  - Details: A multi-click event is a double-click, or a triple-click.  The value
+--returned here is the maximum allowable time between mouse button down
+--events for which a multi-click event will be generated.
+--
+setMultiClickTimeout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Double  -- ^ timeout
+  ->  IO ()
+ -- ^ 
+setMultiClickTimeout a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setMultiClickTimeout'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 147 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return whether automatic mouse button click and multi-click (i.e. double-click and treble-click) event generation is enabled. 
+isMouseClickEventGenerationEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isMouseClickEventGenerationEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMouseClickEventGenerationEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 152 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set whether automatic mouse button click and multi-click (i.e. double-click and treble-click) event generation will occur. 
+setMouseClickEventGenerationEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enable - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setMouseClickEventGenerationEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMouseClickEventGenerationEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 157 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the image to be used as the default mouse cursor. 
+setDefaultMouseCursor3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String object that contains the name of the Imageset that contains the image to be used.
+  ->  String  -- ^ image_name - String object that contains the name of the Image on imageset that is to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setDefaultMouseCursor3 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setDefaultMouseCursor3'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 163 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the Window
+getWindowContainingMouse :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getWindowContainingMouse a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getWindowContainingMouse'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 168 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the ScriptModule
+getScriptingModule :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getScriptingModule a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getScriptingModule'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 173 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the ScriptModule
+setScriptingModule :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ scriptModule - Pointer to a ScriptModule based object, or 0 for none (be careful!)
+  ->  IO ()
+ -- ^ return value - Nothing     
+setScriptingModule a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setScriptingModule'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 178 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the ResourceProvider
+getResourceProvider :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getResourceProvider a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getResourceProvider'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 183 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Execute a script file if possible. 
+executeScriptFile :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename - String object holding the filename of the script file that is to be executed
+  ->  String  -- ^ resourceGroup - Resource group identifier to be passed to the ResourceProvider when loading the script file. 
+  ->  IO ()
+ -- ^ 
+executeScriptFile a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  executeScriptFile'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 189 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Execute a scripted global function if possible. The function should not take any parameters and should return an integer. 
+executeScriptGlobal :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ function_name - String object holding the name of the function, in the global script environment, that is to be executed.
+  ->  IO (Int)
+ -- ^ return value - The integer value returned from the script function.     
+executeScriptGlobal a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  executeScriptGlobal'_ a1' a2' a3' >>= \res ->
+  peekIntConv  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 195 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | If possible, execute script code contained in the given CEGUI::String object. 
+executeScriptString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ str - String object holding the valid script code that should be executed.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+executeScriptString a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  executeScriptString'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 200 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | return the current mouse movement scaling factor. 
+getMouseMoveScaling :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value that is equal to the currently set mouse movement scaling factor. Defaults to 1.0f.     
+getMouseMoveScaling a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getMouseMoveScaling'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 205 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the current mouse movement scaling factor. 
+setMouseMoveScaling :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ scaling - float value specifying the scaling to be applied to mouse movement inputs.
+  ->  IO ()
+ -- ^ return value - nothing.     
+setMouseMoveScaling a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setMouseMoveScaling'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 210 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Internal method used to inform the SystemSystem - Details: This method is not intended for client code usage. If you use this method anything can, and probably will, go wrong! 
+notifyWindowDestroyed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window
+  ->  IO ()
+ -- ^ 
+notifyWindowDestroyed a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  notifyWindowDestroyed'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 215 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the current system keys value. 
+getSystemKeys :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value representing a combination of the SystemKey bits.     
+getSystemKeys a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSystemKeys'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 220 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set a new XML parser module to be used.  - Details: The current XMLParser will be cleaned up and, if owned by the system,
+--also deleted, as will any dynamically loaded module associated with the
+--XMLParser object.  The newly created XMLParser object, and the
+--associated module will be owned by the system.
+--
+setXMLParser :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ parserName
+  ->  IO ()
+ -- ^ 
+setXMLParser a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setXMLParser'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 225 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Sets the XMLParser - Details: The current XMLParser will be cleaned up and, if owned by the system,
+--also deleted, as will any dynamically loaded module associated with the
+--XMLParser object.
+--
+--If the argument passed in the \a parser parameter is 0, the system will
+--cleanup any existing parser as described above, and revert to using
+--the parser provided by the default module (see getDefaultXMLParserName
+--and setDefaultXMLParserName).
+--
+setXMLParser2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ parser
+  ->  IO ()
+ -- ^ 
+setXMLParser2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setXMLParser2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 230 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return the XMLParser
+getXMLParser :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getXMLParser a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getXMLParser'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 235 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the system default TooltipTooltip
+setDefaultTooltip :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ tooltip - Pointer to a valid Tooltip based object which should be used as the default tooltip for the system, or NULL to indicate that no system default tooltip is required. Note that when passing a pointer to a Tooltip object, ownership of the Tooltip does not pass to System.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultTooltip a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setDefaultTooltip'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 240 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the system default TooltipWindow - Details: System will internally attempt to create an instance of the specified window type (which must be
+--derived from the base Tooltip class).  If the Tooltip creation fails, the error is logged and no
+--system default Tooltip will be available.
+--
+setDefaultTooltip2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ tooltipType
+  ->  IO ()
+ -- ^ 
+setDefaultTooltip2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setDefaultTooltip2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 245 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | return a poiter to the system default tooltip. May return 0. 
+getDefaultTooltip :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the current system default tooltip. May return 0 if no system default tooltip is available.     
+getDefaultTooltip a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDefaultTooltip'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 250 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Internal method to directly set the current modal target.  - Details: This method is called internally by Window
+setModalTarget :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ target
+  ->  IO ()
+ -- ^ 
+setModalTarget a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setModalTarget'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 255 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Return a pointer to the Window
+getModalTarget :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the current modal target. NULL if there is no modal target.     
+getModalTarget a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getModalTarget'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 260 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Perform updates with regards to the window that contains the mouse cursor, firing any required MouseEnters / MouseLeaves events.  - Details: The CEGUI
+updateWindowContainingMouse :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+updateWindowContainingMouse a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  updateWindowContainingMouse'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 265 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Retrieve the image codec to be used by the system. 
+getImageCodec :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getImageCodec a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getImageCodec'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 270 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the image codec to be used by the system. 
+setImageCodec :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ codecName
+  ->  IO ()
+ -- ^ 
+setImageCodec a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setImageCodec'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 275 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Set the image codec to use from an existing image codec.  - Details: In this case the renderer does not take the ownership of the image codec
+--object.
+--
+setImageCodec2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ codec
+  ->  IO ()
+ -- ^ 
+setImageCodec2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setImageCodec2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 280 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Invalidate all imagery and geometry caches for CEGUI - Details: This function will invalidate the caches used for both imagery and geometry for all content that is managed by the core CEGUIWindow
+invalidateAllCachedRendering :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+invalidateAllCachedRendering a1 =
+  withHG3DClass a1 $ \a1' -> 
+  invalidateAllCachedRendering'_ a1' >>= \res ->
+  return ()
+{-# LINE 284 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a mouse movement event into the system. 
+injectMouseMove :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ delta_x - amount the mouse moved on the x axis.
+  ->  Float  -- ^ delta_y - amount the mouse moved on the y axis.
+  ->  IO (Bool)
+ -- ^ 
+injectMouseMove a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  let {a3' = realToFrac a3} in 
+  alloca $ \a4' -> 
+  injectMouseMove'_ a1' a2' a3' a4' >>= \res ->
+  peekBoolUtil  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 291 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects that the mouse has left the application window. 
+injectMouseLeaves :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+injectMouseLeaves a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  injectMouseLeaves'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 296 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a mouse button down event into the system. 
+injectMouseButtonDown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumMouseButton  -- ^ button - One of the MouseButton values indicating which button was pressed.
+  ->  IO (Bool)
+ -- ^ 
+injectMouseButtonDown a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  alloca $ \a3' -> 
+  injectMouseButtonDown'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 302 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a mouse button up event into the system. 
+injectMouseButtonUp :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumMouseButton  -- ^ button - One of the MouseButton values indicating which button was released.
+  ->  IO (Bool)
+ -- ^ 
+injectMouseButtonUp a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  alloca $ \a3' -> 
+  injectMouseButtonUp'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 308 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a key down event into the system. 
+injectKeyDown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ key_code - uint value indicating which key was pressed.
+  ->  IO (Bool)
+ -- ^ 
+injectKeyDown a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  injectKeyDown'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 314 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a key up event into the system. 
+injectKeyUp :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ key_code - uint value indicating which key was released.
+  ->  IO (Bool)
+ -- ^ 
+injectKeyUp a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  injectKeyUp'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 320 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a typed character event into the system. 
+injectChar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ code_point - Unicode code point of the character that was typed.
+  ->  IO (Bool)
+ -- ^ 
+injectChar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  injectChar'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 326 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a mouse-wheel / scroll-wheel event into the system. 
+injectMouseWheelChange :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ delta - float value representing the amount the wheel moved.
+  ->  IO (Bool)
+ -- ^ 
+injectMouseWheelChange a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  alloca $ \a3' -> 
+  injectMouseWheelChange'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 332 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method that injects a new position for the mouse cursor. 
+injectMousePosition :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ x_pos - New absolute pixel position of the mouse cursor on the x axis.
+  ->  Float  -- ^ y_pos - New absolute pixel position of the mouse cursoe in the y axis.
+  ->  IO (Bool)
+ -- ^ 
+injectMousePosition a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  let {a3' = realToFrac a3} in 
+  alloca $ \a4' -> 
+  injectMousePosition'_ a1' a2' a3' a4' >>= \res ->
+  peekBoolUtil  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 339 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Method to inject time pulses into the system. 
+injectTimePulse :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ timeElapsed - float value indicating the amount of time passed, in seconds, since the last time this method was called.
+  ->  IO (Bool)
+ -- ^ return value - Currently, this method always returns true.     
+injectTimePulse a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  alloca $ \a3' -> 
+  injectTimePulse'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 345 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Function to directly inject a mouse button click event.  - Details: Here 'click' means a mouse button down event followed by a mouse
+--button up event.
+--
+injectMouseButtonClick :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumMouseButton  -- ^ button
+  ->  IO (Bool)
+ -- ^ 
+injectMouseButtonClick a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  alloca $ \a3' -> 
+  injectMouseButtonClick'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 351 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Function to directly inject a mouse button double-click event.  - Details: Here 'double-click' means a single mouse button had the sequence down,
+--up, down within a predefined period of time.
+--
+injectMouseButtonDoubleClick :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumMouseButton  -- ^ button
+  ->  IO (Bool)
+ -- ^ 
+injectMouseButtonDoubleClick a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  alloca $ \a3' -> 
+  injectMouseButtonDoubleClick'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 357 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+-- | Function to directly inject a mouse button triple-click event.  - Details: Here 'triple-click' means a single mouse button had the sequence down,
+--up, down, up, down within a predefined period of time.
+--
+injectMouseButtonTripleClick :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumMouseButton  -- ^ button
+  ->  IO (Bool)
+ -- ^ 
+injectMouseButtonTripleClick a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  alloca $ \a3' -> 
+  injectMouseButtonTripleClick'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 363 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_create"
+  create'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_destroy"
+  destroy'_ :: (IO ())
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getSingleton"
+  getSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getSingletonPtr"
+  getSingletonPtr'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultXMLParserName"
+  setDefaultXMLParserName'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getDefaultXMLParserName"
+  getDefaultXMLParserName'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultImageCodecName"
+  setDefaultImageCodecName'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getDefaultImageCodecName"
+  getDefaultImageCodecName'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getRenderer"
+  getRenderer'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultFont"
+  setDefaultFont'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultFont2"
+  setDefaultFont2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getDefaultFont"
+  getDefaultFont'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_signalRedraw"
+  signalRedraw'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_isRedrawRequested"
+  isRedrawRequested'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_renderGUI"
+  renderGUI'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setGUISheet"
+  setGUISheet'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getGUISheet"
+  getGUISheet'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getSingleClickTimeout"
+  getSingleClickTimeout'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getMultiClickTimeout"
+  getMultiClickTimeout'_ :: ((HG3DClassPtr) -> ((Ptr CDouble) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setSingleClickTimeout"
+  setSingleClickTimeout'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setMultiClickTimeout"
+  setMultiClickTimeout'_ :: ((HG3DClassPtr) -> (CDouble -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_isMouseClickEventGenerationEnabled"
+  isMouseClickEventGenerationEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setMouseClickEventGenerationEnabled"
+  setMouseClickEventGenerationEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultMouseCursor3"
+  setDefaultMouseCursor3'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getWindowContainingMouse"
+  getWindowContainingMouse'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getScriptingModule"
+  getScriptingModule'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setScriptingModule"
+  setScriptingModule'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getResourceProvider"
+  getResourceProvider'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_executeScriptFile"
+  executeScriptFile'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_executeScriptGlobal"
+  executeScriptGlobal'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_executeScriptString"
+  executeScriptString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getMouseMoveScaling"
+  getMouseMoveScaling'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setMouseMoveScaling"
+  setMouseMoveScaling'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_notifyWindowDestroyed"
+  notifyWindowDestroyed'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getSystemKeys"
+  getSystemKeys'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setXMLParser"
+  setXMLParser'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setXMLParser2"
+  setXMLParser2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getXMLParser"
+  getXMLParser'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultTooltip"
+  setDefaultTooltip'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setDefaultTooltip2"
+  setDefaultTooltip2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getDefaultTooltip"
+  getDefaultTooltip'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setModalTarget"
+  setModalTarget'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getModalTarget"
+  getModalTarget'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_updateWindowContainingMouse"
+  updateWindowContainingMouse'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_getImageCodec"
+  getImageCodec'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setImageCodec"
+  setImageCodec'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_setImageCodec2"
+  setImageCodec2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_invalidateAllCachedRendering"
+  invalidateAllCachedRendering'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseMove"
+  injectMouseMove'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> ((Ptr CInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseLeaves"
+  injectMouseLeaves'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseButtonDown"
+  injectMouseButtonDown'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseButtonUp"
+  injectMouseButtonUp'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectKeyDown"
+  injectKeyDown'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectKeyUp"
+  injectKeyUp'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectChar"
+  injectChar'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseWheelChange"
+  injectMouseWheelChange'_ :: ((HG3DClassPtr) -> (CFloat -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMousePosition"
+  injectMousePosition'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> ((Ptr CInt) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectTimePulse"
+  injectTimePulse'_ :: ((HG3DClassPtr) -> (CFloat -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseButtonClick"
+  injectMouseButtonClick'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseButtonDoubleClick"
+  injectMouseButtonDoubleClick'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystem.chs.h cegui_sstm_injectMouseButtonTripleClick"
+  injectMouseButtonTripleClick'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+ HGamer3D/Bindings/CEGUI/ClassSystemHG3D.hs view
@@ -0,0 +1,147 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassSystemHG3D.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassSystemHG3D where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+createNoLogger :: IO (HG3DClass)
+ -- ^ 
+createNoLogger =
+  alloca $ \a1' -> 
+  createNoLogger'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+getDefaultResourceProvider :: HG3DClass  -- ^ system
+  ->  IO (HG3DClass)
+ -- ^ 
+getDefaultResourceProvider a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDefaultResourceProvider'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+getSchemeManagerSingleton :: IO (HG3DClass)
+ -- ^ 
+getSchemeManagerSingleton =
+  alloca $ \a1' -> 
+  getSchemeManagerSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+schemeManagerCreate :: HG3DClass  -- ^ smgr
+  ->  String  -- ^ scheme
+  ->  IO ()
+ -- ^ 
+schemeManagerCreate a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  schemeManagerCreate'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+fontManagerCreate :: HG3DClass  -- ^ fmgr
+  ->  String  -- ^ font
+  ->  IO ()
+ -- ^ 
+fontManagerCreate a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  fontManagerCreate'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+getFontManagerSingleton :: IO (HG3DClass)
+ -- ^ 
+getFontManagerSingleton =
+  alloca $ \a1' -> 
+  getFontManagerSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 70 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+-- | 
+getLoggerSingleton :: IO (HG3DClass)
+ -- ^ 
+getLoggerSingleton =
+  alloca $ \a1' -> 
+  getLoggerSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 74 ".\\HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_createNoLogger"
+  createNoLogger'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_getDefaultResourceProvider"
+  getDefaultResourceProvider'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_getSchemeManagerSingleton"
+  getSchemeManagerSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_schemeManagerCreate"
+  schemeManagerCreate'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_fontManagerCreate"
+  fontManagerCreate'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_getFontManagerSingleton"
+  getFontManagerSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassSystemHG3D.chs.h cegui_sstm_hg3d_getLoggerSingleton"
+  getLoggerSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassTabButton.hs view
@@ -0,0 +1,140 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassTabButton.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassTabButton where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Constructor for base TabButton
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Destructor for TabButton
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Set whether this tab button is selected or not. 
+setSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ selected
+  ->  IO ()
+ -- ^ 
+setSelected a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSelected'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Return whether this tab button is selected or not. 
+isSelected :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSelected a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSelected'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Set the target window which is the content pane which this button is covering. 
+setTargetWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ wnd
+  ->  IO ()
+ -- ^ 
+setTargetWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setTargetWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+-- | Get the target window which is the content pane which this button is covering. 
+getTargetWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getTargetWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTargetWindow'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_setSelected"
+  setSelected'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_isSelected"
+  isSelected'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_setTargetWindow"
+  setTargetWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTabButton.chs.h cegui_tbbtn_getTargetWindow"
+  getTargetWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/ClassThumb.hs view
@@ -0,0 +1,208 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassThumb.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassThumb where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | return whether hot-tracking is enabled or not. 
+isHotTracked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if hot-tracking is enabled. false if hot-tracking is disabled.     
+isHotTracked a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHotTracked'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 48 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | return whether the thumb is movable on the vertical axis. 
+isVertFree :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the thumb is movable along the vertical axis. false if the thumb is fixed on the vertical axis.     
+isVertFree a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertFree'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | return whether the thumb is movable on the horizontal axis. 
+isHorzFree :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if the thumb is movable along the horizontal axis. false if the thumb is fixed on the horizontal axis.     
+isHorzFree a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzFree'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | set whether the thumb uses hot-tracking. 
+setHotTracked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true to enable hot-tracking. false to disable hot-tracking.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setHotTracked a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setHotTracked'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | set whether thumb is movable on the vertical axis. 
+setVertFree :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true to allow movement of thumb along the vertical axis. false to fix thumb on the vertical axis.
+  ->  IO ()
+ -- ^ return value - nothing.     
+setVertFree a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setVertFree'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | set whether thumb is movable on the horizontal axis. 
+setHorzFree :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true to allow movement of thumb along the horizontal axis. false to fix thumb on the horizontal axis.
+  ->  IO ()
+ -- ^ return value - nothing.     
+setHorzFree a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setHorzFree'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 73 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | set the movement range of the thumb for the vertical axis.  - Details: The values specified here are relative to the parent window for the thumb, and are specified in whichever
+--metrics mode is active for the widget.
+--
+setVertRange :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ min
+  ->  Float  -- ^ max
+  ->  IO ()
+ -- ^ 
+setVertRange a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  let {a3' = realToFrac a3} in 
+  setVertRange'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 79 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | set the movement range of the thumb for the horizontal axis.  - Details: The values specified here are relative to the parent window for the thumb, and are specified in whichever
+--metrics mode is active for the widget.
+--
+setHorzRange :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ min
+  ->  Float  -- ^ max
+  ->  IO ()
+ -- ^ 
+setHorzRange a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  let {a3' = realToFrac a3} in 
+  setHorzRange'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 85 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | Constructor for Thumb
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 91 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+-- | Destructor for Thumb
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 95 ".\\HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_isHotTracked"
+  isHotTracked'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_isVertFree"
+  isVertFree'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_isHorzFree"
+  isHorzFree'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_setHotTracked"
+  setHotTracked'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_setVertFree"
+  setVertFree'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_setHorzFree"
+  setHorzFree'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_setVertRange"
+  setVertRange'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_setHorzRange"
+  setHorzRange'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassThumb.chs.h cegui_thmb_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassTooltip.hs view
@@ -0,0 +1,239 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassTooltip.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassTooltip where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Constructor for the Tooltip
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 49 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Destructor for the Tooltip
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 53 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Sets the target window for the tooltip. This used internally to manage tooltips, you should not have to call this yourself. 
+setTargetWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ wnd - Window object that the tooltip should be associated with (for now).
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTargetWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setTargetWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | return the current target window for this Tooltip
+getTargetWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the target window for this     
+getTargetWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTargetWindow'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Resets the timer on the tooltip when in the Active / Inactive states. This is used internally to control the tooltip, it is not normally necessary to call this method yourself. 
+resetTimer :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+resetTimer a1 =
+  withHG3DClass a1 $ \a1' -> 
+  resetTimer'_ a1' >>= \res ->
+  return ()
+{-# LINE 67 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Return the number of seconds the mouse should hover stationary over the target window before the tooltip gets activated. 
+getHoverTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value representing a number of seconds.     
+getHoverTime a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHoverTime'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Set the number of seconds the tooltip should be displayed for before it automatically de-activates itself. 0 indicates that the tooltip should never timesout and auto-deactivate. 
+setDisplayTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ seconds - float value representing a number of seconds.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDisplayTime a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setDisplayTime'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 77 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Return the number of seconds that should be taken to fade the tooltip into and out of visibility. 
+getFadeTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value representing a number of seconds.     
+getFadeTime a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getFadeTime'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Set the number of seconds the mouse should hover stationary over the target window before the tooltip gets activated. 
+setHoverTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ seconds - float value representing a number of seconds.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setHoverTime a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setHoverTime'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 87 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Return the number of seconds the tooltip should be displayed for before it automatically de-activates itself. 0 indicates that the tooltip never timesout and auto-deactivates. 
+getDisplayTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value representing a number of seconds.     
+getDisplayTime a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getDisplayTime'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 92 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Set the number of seconds that should be taken to fade the tooltip into and out of visibility. 
+setFadeTime :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ seconds - float value representing a number of seconds.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setFadeTime a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setFadeTime'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 97 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Causes the tooltip to position itself appropriately. 
+positionSelf :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+positionSelf a1 =
+  withHG3DClass a1 $ \a1' -> 
+  positionSelf'_ a1' >>= \res ->
+  return ()
+{-# LINE 101 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+-- | Causes the tooltip to resize itself appropriately. 
+sizeSelf :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+sizeSelf a1 =
+  withHG3DClass a1 $ \a1' -> 
+  sizeSelf'_ a1' >>= \res ->
+  return ()
+{-# LINE 105 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_setTargetWindow"
+  setTargetWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_getTargetWindow"
+  getTargetWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_resetTimer"
+  resetTimer'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_getHoverTime"
+  getHoverTime'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_setDisplayTime"
+  setDisplayTime'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_getFadeTime"
+  getFadeTime'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_setHoverTime"
+  setHoverTime'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_getDisplayTime"
+  getDisplayTime'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_setFadeTime"
+  setFadeTime'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_positionSelf"
+  positionSelf'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTooltip.chs.h cegui_tltp_sizeSelf"
+  sizeSelf'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassTree.hs view
@@ -0,0 +1,408 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassTree.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassTree where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+doTreeRender :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+doTreeRender a1 =
+  withHG3DClass a1 $ \a1' -> 
+  doTreeRender'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+doScrollbars :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+doScrollbars a1 =
+  withHG3DClass a1 $ \a1' -> 
+  doScrollbars'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Return number of items attached to the tree. 
+getItemCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - the number of items currently attached to this tree.     
+getItemCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getItemCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Return the number of selected items in the tree. 
+getSelectedCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - Total number of attached items that are in the selected state.     
+getSelectedCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getSelectedCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | return whether tree sorting is enabled 
+isSortEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isSortEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isSortEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+getVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getVertScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVertScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 71 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+getHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getHorzScrollbar a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorzScrollbar'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 76 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | return whether multi-select is enabled 
+isMultiselectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if multi-select is enabled, false if multi-select is not enabled.     
+isMultiselectEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMultiselectEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 81 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+isItemTooltipsEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isItemTooltipsEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isItemTooltipsEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 86 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Return whether the vertical scroll bar is always shown. 
+isVertScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isVertScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isVertScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 91 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Return whether the horizontal scroll bar is always shown. 
+isHorzScrollbarAlwaysShown :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isHorzScrollbarAlwaysShown a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isHorzScrollbarAlwaysShown'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 96 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Initialise the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowFactory for each Window
+initialise :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialise a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialise'_ a1' >>= \res ->
+  return ()
+{-# LINE 100 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Remove all items from the tree.  - Details: Note that this will cause 'AutoDelete' items to be deleted. 
+resetList :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+resetList a1 =
+  withHG3DClass a1 $ \a1' -> 
+  resetList'_ a1' >>= \res ->
+  return ()
+{-# LINE 104 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Clear the selected state for all items. 
+clearAllSelections :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+clearAllSelections a1 =
+  withHG3DClass a1 $ \a1' -> 
+  clearAllSelections'_ a1' >>= \res ->
+  return ()
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set whether the tree should be sorted. 
+setSortingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setSortingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setSortingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set whether the tree should allow multiple selections or just a single selection. 
+setMultiselectEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMultiselectEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMultiselectEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 118 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set whether the vertical scroll bar should always be shown. 
+setShowVertScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowVertScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowVertScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set whether the horizontal scroll bar should always be shown. 
+setShowHorzScrollbar :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setShowHorzScrollbar a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setShowHorzScrollbar'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 128 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | 
+setItemTooltipsEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setItemTooltipsEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setItemTooltipsEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 133 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set the select state of an attached TreeItem.  - Details: This is the recommended way of selecting and deselecting items attached to a tree as it respects the multi-select mode setting. It is possible to modify the setting on TreeItems directly, but that approach does not respect the settings of the tree.
+setItemSelectState2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ item_index
+  ->  Bool  -- ^ state
+  ->  IO ()
+ -- ^ 
+setItemSelectState2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  let {a3' = fromBool a3} in 
+  setItemSelectState2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 139 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Set the LookNFeel that shoule be used for this window.  - Details: Once a look'n'feel has been assigned it is locked - as in cannot be changed. 
+setLookNFeel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ look - String object holding the name of the look to be assigned to the window.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setLookNFeel a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setLookNFeel'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Causes the tree to update it's internal state after changes have been made to one or more attached TreeItem objects.  - Details: Client code must call this whenever it has made any changes to TreeItem objects already attached to the tree. If you are just adding items, or removed items to update them prior to re-adding them, there is no need to call this method.
+handleUpdatedItemData :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+handleUpdatedItemData a1 =
+  withHG3DClass a1 $ \a1' -> 
+  handleUpdatedItemData'_ a1' >>= \res ->
+  return ()
+{-# LINE 148 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Constructor for Tree
+new :: String  -- ^ type
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 154 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+-- | Destructor for Tree
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 158 ".\\HGamer3D\\Bindings\\CEGUI\\ClassTree.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_doTreeRender"
+  doTreeRender'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_doScrollbars"
+  doScrollbars'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_getItemCount"
+  getItemCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_getSelectedCount"
+  getSelectedCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_isSortEnabled"
+  isSortEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_getVertScrollbar"
+  getVertScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_getHorzScrollbar"
+  getHorzScrollbar'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_isMultiselectEnabled"
+  isMultiselectEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_isItemTooltipsEnabled"
+  isItemTooltipsEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_isVertScrollbarAlwaysShown"
+  isVertScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_isHorzScrollbarAlwaysShown"
+  isHorzScrollbarAlwaysShown'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_initialise"
+  initialise'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_resetList"
+  resetList'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_clearAllSelections"
+  clearAllSelections'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setSortingEnabled"
+  setSortingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setMultiselectEnabled"
+  setMultiselectEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setShowVertScrollbar"
+  setShowVertScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setShowHorzScrollbar"
+  setShowHorzScrollbar'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setItemTooltipsEnabled"
+  setItemTooltipsEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setItemSelectState2"
+  setItemSelectState2'_ :: ((HG3DClassPtr) -> (CInt -> (CInt -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_setLookNFeel"
+  setLookNFeel'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_handleUpdatedItemData"
+  handleUpdatedItemData'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassTree.chs.h cegui_tree_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassWidgetLookManager.hs view
@@ -0,0 +1,177 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassWidgetLookManager.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassWidgetLookManager where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Constructor. 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Destructor. 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Parses a file containing window look & feel specifications (in the form of XML).  - Details: If the new file contains specifications for widget types that are already specified, it is not an error; the previous definitions are overwritten by the new data. An entry will appear in the log each time any look & feel component is overwritten.
+parseLookNFeelSpecification :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename - String object containing the filename of a file containing the widget look & feel data
+  ->  String  -- ^ resourceGroup - Resource group identifier to pass to the resource provider when loading the file.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+parseLookNFeelSpecification a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  parseLookNFeelSpecification'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 57 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Return whether a WidgetLookFeel has been created with the specified name. 
+isWidgetLookAvailable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ widget - String object holding the name of a widget look to test for.
+  ->  IO (Bool)
+ -- ^ 
+isWidgetLookAvailable a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isWidgetLookAvailable'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Erase the WidgetLookFeel that has the specified name. 
+eraseWidgetLook :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ widget - String object holding the name of a widget look to be erased. If no such WidgetLookFeel exists, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+eraseWidgetLook a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  eraseWidgetLook'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Return singleton WidgetLookManager
+getSingleton :: IO (HG3DClass)
+ -- ^ return value - Singleton     
+getSingleton =
+  alloca $ \a1' -> 
+  getSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 72 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Return pointer to singleton WidgetLookManager
+getSingletonPtr :: IO (HG3DClass)
+ -- ^ return value - Pointer to singleton     
+getSingletonPtr =
+  alloca $ \a1' -> 
+  getSingletonPtr'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 76 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Returns the default resource group currently set for LookNFeels. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier that will be used when loading LookNFeel data.     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 80 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+-- | Sets the default resource group to be used when loading LookNFeel data. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_parseLookNFeelSpecification"
+  parseLookNFeelSpecification'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_isWidgetLookAvailable"
+  isWidgetLookAvailable'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_eraseWidgetLook"
+  eraseWidgetLook'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_getSingleton"
+  getSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_getSingletonPtr"
+  getSingletonPtr'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWidgetLookManager.chs.h cegui_wdgtlmgr_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassWindow.hs view
@@ -0,0 +1,2440 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassWindow.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassWindow where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumVerticalAlignment
+{-# LINE 43 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumHorizontalAlignment
+{-# LINE 44 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+import HGamer3D.Bindings.CEGUI.EnumWindowUpdateMode
+{-# LINE 45 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Constructor for Window
+new :: String  -- ^ type - String object holding Window type (usually provided by WindowFactory).
+  ->  String  -- ^ name - String object holding unique name for the Window. 
+  ->  IO (HG3DClass)
+ -- ^ 
+new a1 a2 =
+  withCString a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  new'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Destructor for Window
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a String object holding the type name for this Window
+getType :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding the     
+getType a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getType'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a String object holding the name of this Window
+getName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding the unique     
+getName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 66 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | returns whether or not this Window
+isDestroyedByParent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isDestroyedByParent a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDestroyedByParent'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 71 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | returns whether or not this WindowWindow
+isAlwaysOnTop :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isAlwaysOnTop a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAlwaysOnTop'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 76 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return whether the Window
+isDisabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ localOnly - States whether to only return the state set for this window, and not to factor in inherited state from ancestor windows.
+  ->  IO (Bool)
+ -- ^ 
+isDisabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  alloca $ \a3' -> 
+  isDisabled'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 82 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if the Window - Details: When true is returned from this function does not mean that the window
+--is not completely obscured by other windows, just that the window will
+--be processed when rendering, and is not explicitly marked as hidden.
+--
+isVisible :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ localOnly
+  ->  IO (Bool)
+ -- ^ 
+isVisible a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  alloca $ \a3' -> 
+  isVisible'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 88 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if this is the active Window - Details: Mouse events are always sent to the window containing the mouse cursor
+--regardless of what this function reports (unless a window has captured
+--inputs).  The active state mainly determines where send other, for
+--example keyboard, inputs.
+--
+isActive :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isActive a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isActive'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if this WindowWindow
+isClippedByParent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isClippedByParent a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isClippedByParent'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 98 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the ID code currently assigned to this Window
+getID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - uint value equal to the currently assigned ID code for this     
+getID a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getID'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 103 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the number of child WindowWindow
+getChildCount :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ return value - size_t value equal to the number of     
+getChildCount a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getChildCount'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 108 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | returns whether a WindowWindow
+isChild :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object containing the name of the Window to look for.
+  ->  IO (Bool)
+ -- ^ 
+isChild a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isChild'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 114 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | returns whether at least one window with the given ID code is attached to this Window - Details: ID codes are client assigned and may or may not be unique, and as such, the return from this function will only have meaning to the client code.
+isChild2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID - uint ID code to look for.
+  ->  IO (Bool)
+ -- ^ 
+isChild2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isChild2'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 120 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | returns whether at least one window with the given ID code is attached to this Window - Details: ID codes are client assigned and may or may not be unique, and as such, the return from this function will only have meaning to the client code.
+isChildRecursive :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID
+  ->  IO (Bool)
+ -- ^ 
+isChildRecursive a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isChildRecursive'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 126 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if the given Window
+isChild3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the Window object to look for.
+  ->  IO (Bool)
+ -- ^ 
+isChild3 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isChild3'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the child window with the specified name.  - Details: This function will throw an exception if no child object with the given
+--name is attached.  This decision was made (over returning NULL if no
+--window was found) so that client code can assume that if the call
+--returns it has a valid window pointer.  We provide the isChild()
+--functions for checking if a given window is attached.
+--
+getChild :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+getChild a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getChild'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 138 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the first attached child window with the specified ID value.  - Details: This function will throw an exception if no child object with the given
+--ID is attached.  This decision was made (over returning NULL if no
+--window was found) so that client code can assume that if the call
+--returns it has a valid window pointer.  We provide the isChild()
+--functions for checking if a given window is attached.
+--
+getChild2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID
+  ->  IO (HG3DClass)
+ -- ^ 
+getChild2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getChild2'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 144 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the first attached child window with the specified name. Children are traversed recursively.  - Details: Contrary to the non recursive version of this function, this one will
+--not throw an exception, but return 0 in case no child was found.
+--
+getChildRecursive :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name
+  ->  IO (HG3DClass)
+ -- ^ 
+getChildRecursive a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getChildRecursive'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 150 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the first attached child window with the specified ID value. Children are traversed recursively.  - Details: Contrary to the non recursive version of this function, this one will
+--not throw an exception, but return 0 in case no child was found.
+--
+getChildRecursive2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID
+  ->  IO (HG3DClass)
+ -- ^ 
+getChildRecursive2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getChildRecursive2'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 156 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the child window that is attached to 'this' at the given index. 
+getChildAtIdx :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ idx - Index of the child window whos pointer should be returned. This value is not bounds checked, client code should ensure that this is less than the value returned by getChildCount().
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the child window currently attached at index position     
+getChildAtIdx a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  getChildAtIdx'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 162 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return a pointer to the WindowWindow
+getActiveChild :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the window that is active (has input focus) starting at this window. The function will return 'this' if this     
+getActiveChild a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getActiveChild'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 167 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | 
+getActiveChild2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getActiveChild2 a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getActiveChild2'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 172 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if the specified WindowWindow
+isAncestor :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Window to check for.
+  ->  IO (Bool)
+ -- ^ 
+isAncestor a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isAncestor'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 178 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if any WindowWindow
+isAncestor2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID - uint value specifying the ID to look for.
+  ->  IO (Bool)
+ -- ^ 
+isAncestor2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  alloca $ \a3' -> 
+  isAncestor2'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 184 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if the specified WindowWindow
+isAncestor3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the Window object to look for.
+  ->  IO (Bool)
+ -- ^ 
+isAncestor3 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isAncestor3'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 190 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the active FontWindow
+getFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ useDefault - Sepcifies whether to return the default font if this Window has no preferred font set.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getFont a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  alloca $ \a3' -> 
+  getFont'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 196 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the current text for the Window
+getText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - The String object that holds the current text for this     
+getText a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getText'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 201 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return text string with visual
+getTextVisual :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ 
+getTextVisual a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTextVisual'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 206 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if the Window
+inheritsAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+inheritsAlpha a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  inheritsAlpha'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 211 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the current alpha value set for this Window - Details: The alpha value set for any given window may or may not be the final alpha value that is used when rendering. All window objects, by default, inherit alpha from thier parent window(s) - this will blend child windows, relatively, down the line of inheritance. This behaviour can be overridden via the setInheritsAlpha()getEffectiveAlpha()
+getAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - the currently set alpha value for this     
+getAlpha a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getAlpha'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 216 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the effective alpha value that will be used when rendering this window, taking into account inheritance of parent window(s) alpha. 
+getEffectiveAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - the effective alpha that will be applied to this     
+getEffectiveAlpha a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getEffectiveAlpha'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 221 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if this Window
+isCapturedByThis :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isCapturedByThis a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isCapturedByThis'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 226 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if an ancestor window has captured inputs. 
+isCapturedByAncestor :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isCapturedByAncestor a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isCapturedByAncestor'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 231 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return true if a child window has captured inputs. 
+isCapturedByChild :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isCapturedByChild a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isCapturedByChild'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 236 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the parent of this Window
+getParent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getParent a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getParent'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 241 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this window is set to restore old input capture when it loses input capture.  - Details: This is only really useful for certain sub-components for widget
+--writers.
+--
+restoresOldCapture :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+restoresOldCapture a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  restoresOldCapture'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 246 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether z-order changes are enabled or disabled for this Window - Details: This is distinguished from the is/setRiseOnClickEnabled setting in that if rise on click is disabled it only affects the users ability to affect the z order of the WindowWindowWindow
+isZOrderingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isZOrderingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isZOrderingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 251 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this window will receive multi-click events or multiple 'down' events instead. 
+wantsMultiClickEvents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+wantsMultiClickEvents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  wantsMultiClickEvents'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 256 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether mouse button down event autorepeat is enabled for this window. 
+isMouseAutoRepeatEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isMouseAutoRepeatEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMouseAutoRepeatEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 261 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the current auto-repeat delay setting for this window. 
+getAutoRepeatDelay :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value indicating the delay, in seconds, defore the first repeat mouse button down event will be triggered when autorepeat is enabled.     
+getAutoRepeatDelay a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getAutoRepeatDelay'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 266 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the current auto-repeat rate setting for this window. 
+getAutoRepeatRate :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value indicating the rate, in seconds, at which repeat mouse button down events will be generated after the initial delay has expired.     
+getAutoRepeatRate a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getAutoRepeatRate'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 271 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether the window wants inputs passed to its attached child windows when the window has inputs captured. 
+distributesCapturedInputs :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+distributesCapturedInputs a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  distributesCapturedInputs'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 276 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this WindowTooltipTooltip
+isUsingDefaultTooltip :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isUsingDefaultTooltip a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUsingDefaultTooltip'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 281 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return a pointer to the TooltipWindowTooltipWindowTooltip
+getTooltip :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to a     
+getTooltip a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getTooltip'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 286 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the custom tooltip type. 
+getTooltipType :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding the current custom tooltip window type, or an empty string if no custom tooltip is set.     
+getTooltipType a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTooltipType'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 291 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the current tooltip text set for this Window
+getTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding the current tooltip text set for this window.     
+getTooltipText a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getTooltipText'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 296 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this window inherits Tooltip
+inheritsTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+inheritsTooltipText a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  inheritsTooltipText'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 301 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this window will rise to the top of the z-order when clicked with the left mouse button.  - Details: This is distinguished from the is/setZOrderingEnabled setting in that if rise on click is disabled it only affects the users ability to affect the z order of the WindowWindowWindow
+isRiseOnClickEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isRiseOnClickEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isRiseOnClickEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 306 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether this window was inherited from the given class name at some point in the inheritance hierarchy. 
+testClassName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ class_name - The class name that is to be checked.
+  ->  IO (Bool)
+ -- ^ return value - true if this window was inherited from     
+testClassName a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  testClassName'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 312 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Get the vertical alignment.  - Details: Returns the vertical alignment for the window.  This setting affects how
+--the windows position is interpreted relative to its parent.
+--
+getVerticalAlignment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumVerticalAlignment)
+ -- ^ 
+getVerticalAlignment a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getVerticalAlignment'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 317 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Get the horizontal alignment.  - Details: Returns the horizontal alignment for the window.  This setting affects
+--how the windows position is interpreted relative to its parent.
+--
+getHorizontalAlignment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumHorizontalAlignment)
+ -- ^ 
+getHorizontalAlignment a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getHorizontalAlignment'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 322 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Get the name of the LookNFeel assigned to this window. 
+getLookNFeel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding the name of the look assigned to this window. Returns the empty string if no look is assigned.     
+getLookNFeel a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getLookNFeel'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 327 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Get whether or not this Window
+getModalState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - Returns true if this     
+getModalState a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getModalState'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 332 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns a named user string. 
+getUserString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the string to be returned.
+  ->  IO (String)
+ -- ^ return value - String object holding the data stored for the requested user string.    
+getUserString a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloc64k $ \a3' -> 
+  getUserString'_ a1' a2' a3' >>= \res ->
+  peekCString  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 338 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether a user string with the specified name exists. 
+isUserStringDefined :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the string to be checked.
+  ->  IO (Bool)
+ -- ^ 
+isUserStringDefined a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isUserStringDefined'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 344 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns the active sibling window.  - Details: This searches the immediate children of this window's parent, and
+--returns a pointer to the active window.  The method will return this if
+--we are the immediate child of our parent that is active.  If our parent
+--is not active, or if no immediate child of our parent is active then 0
+--is returned.  If this window has no parent, and this window is not
+--active then 0 is returned, else this is returned.
+--
+getActiveSibling :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getActiveSibling a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getActiveSibling'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 349 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the pixel Width of the parent element. This always returns a valid number. 
+getParentPixelWidth :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value that is equal to the pixel width of this     
+getParentPixelWidth a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getParentPixelWidth'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 354 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the pixel Height of the parent element. This always returns a valid number. 
+getParentPixelHeight :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Float)
+ -- ^ return value - float value that is equal to the pixel height of this     
+getParentPixelHeight a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getParentPixelHeight'_ a1' a2' >>= \res ->
+  peekFloatConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 359 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns whether this window should ignore mouse event and pass them through to and other windows behind it. In effect making the window transparent to the mouse. 
+isMousePassThroughEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ return value - true if mouse pass through is enabled. false if mouse pass through is not enabled.     
+isMousePassThroughEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMousePassThroughEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 364 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns whether this window is an auto-child window. All auto-child windows have "__auto_" in their name, but this is faster. 
+isAutoWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isAutoWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isAutoWindow'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 369 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns whether this window is allowed to write XML. 
+isWritingXMLAllowed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isWritingXMLAllowed a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isWritingXMLAllowed'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 374 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns whether this Window
+isDragDropTarget :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isDragDropTarget a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDragDropTarget'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 379 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns whether automatic
+isUsingAutoRenderingSurface :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isUsingAutoRenderingSurface a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isUsingAutoRenderingSurface'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 384 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Returns the window at the root of the hierarchy starting at this Window
+getRootWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ return value - A pointer to the root window of the hierarchy that this window is attched to.     
+getRootWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getRootWindow'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 389 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | 
+getRootWindow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (HG3DClass)
+ -- ^ 
+getRootWindow2 a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getRootWindow2'_ a1' a2' >>= \res ->
+  peek  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 394 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether the Window - Details: A non-client window is clipped, positioned and sized according to the
+--parent window's full area as opposed to just the inner rect area used
+--for normal client windows.
+--
+isNonClientWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isNonClientWindow a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isNonClientWindow'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 399 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Renames the window. 
+rename :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ new_name - String object holding the new name for the window.
+  ->  IO ()
+ -- ^ 
+rename a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  rename'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 404 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Initialises the Window - Details: This must be called for every window created. Normally this is handled automatically by the WindowManager
+initialiseComponents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+initialiseComponents a1 =
+  withHG3DClass a1 $ \a1' -> 
+  initialiseComponents'_ a1' >>= \res ->
+  return ()
+{-# LINE 408 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether or not this WindowWindow
+setDestroyedByParent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setDestroyedByParent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDestroyedByParent'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 413 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window is always on top, or not. 
+setAlwaysOnTop :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setAlwaysOnTop a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setAlwaysOnTop'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 418 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window is enabled or disabled. A disabled window normally can not be interacted with, and may have different rendering. 
+setEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 423 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | enable the Window
+enable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+enable a1 =
+  withHG3DClass a1 $ \a1' -> 
+  enable'_ a1' >>= \res ->
+  return ()
+{-# LINE 427 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | disable the Window
+disable :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+disable a1 =
+  withHG3DClass a1 $ \a1' -> 
+  disable'_ a1' >>= \res ->
+  return ()
+{-# LINE 431 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether the Window - Details: Hiding the active window will cause that window to become deactivated. Showing a window does not, however, automatically cause that window to become the active window (call Window::activate
+setVisible :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setVisible a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setVisible'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 436 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | show the Window - Details: Showing a window does not automatically activate the window. If you want the window to also become active you will need to call the Window::activate
+show :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+show a1 =
+  withHG3DClass a1 $ \a1' -> 
+  show'_ a1' >>= \res ->
+  return ()
+{-# LINE 440 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | hide the Window - Details: If the window is the active window, it will become deactivated as a result of being hidden.
+hide :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+hide a1 =
+  withHG3DClass a1 $ \a1' -> 
+  hide'_ a1' >>= \res ->
+  return ()
+{-# LINE 444 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Activate the WindowWindow
+activate :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+activate a1 =
+  withHG3DClass a1 $ \a1' -> 
+  activate'_ a1' >>= \res ->
+  return ()
+{-# LINE 448 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Deactivate the window. No further inputs will be received by the window until it is re-activated either programmatically or by the user interacting with the gui. 
+deactivate :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+deactivate a1 =
+  withHG3DClass a1 $ \a1' -> 
+  deactivate'_ a1' >>= \res ->
+  return ()
+{-# LINE 452 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this Window
+setClippedByParent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setClippedByParent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setClippedByParent'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 457 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the current ID for the Window
+setID :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID - Client assigned ID code for this Window. The GUI system assigns no meaning to any IDs, they are a device purely for client code usage.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setID a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  setID'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 462 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the current text string for the Window
+setText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object containing the text that is to be set as the Window text.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 467 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Append the string textWindow
+appendText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ text - String object holding the text that is to be appended to the Window object's current text string. 
+  ->  IO ()
+ -- ^ 
+appendText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  appendText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 472 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the font used by this Window
+setFont :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ font - Pointer to the Font object to be used by this Window. If font is NULL, the default font will be used.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setFont a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setFont'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 477 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the font used by this Window
+setFont2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Font object to be used by this Window. If name == "", the default font will be used.
+  ->  IO ()
+ -- ^ return value - Nothing    
+setFont2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setFont2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 482 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Add the named WindowWindowWindownameWindowWindow
+addChildWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Window to be added.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+addChildWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  addChildWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 487 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Add the specified WindowWindowWindowwindowWindowWindow
+addChildWindow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the Window object to be added.
+  ->  IO ()
+ -- ^ return value - Nothing    
+addChildWindow2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  addChildWindow2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 492 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Remove the named Window
+removeChildWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the Window to be removed. If the Window specified is not attached to this Window, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeChildWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  removeChildWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 497 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Remove the specified Window
+removeChildWindow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the Window object to be removed. If the window is not attached to this Window, then nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeChildWindow2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  removeChildWindow2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 502 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Remove the first child WindowWindow
+removeChildWindow3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Int  -- ^ ID - ID number assigned to the Window to be removed. If no Window with ID code ID is attached, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+removeChildWindow3 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromIntegral a2} in 
+  removeChildWindow3'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 507 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Move the Window - Details: - If the Window is a non always-on-top window it is moved the the top of
+--  all other non always-on-top sibling windows, and the process repeated
+--  for all ancestors.
+--- If the Window is an always-on-top window it is moved to the of of all
+--  sibling Windows, and the process repeated for all ancestors.
+--
+moveToFront :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+moveToFront a1 =
+  withHG3DClass a1 $ \a1' -> 
+  moveToFront'_ a1' >>= \res ->
+  return ()
+{-# LINE 511 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Move the Window - Details: - If the window is non always-on-top the Window is sent to the very
+--  bottom of its sibling windows and the process repeated for all
+--  ancestors.
+--- If the window is always-on-top, the Window is sent to the bottom of
+--  all sibling always-on-top windows and the process repeated for all
+--  ancestors.
+--
+moveToBack :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+moveToBack a1 =
+  withHG3DClass a1 $ \a1' -> 
+  moveToBack'_ a1' >>= \res ->
+  return ()
+{-# LINE 515 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Captures input to this window. 
+captureInput :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+captureInput a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  captureInput'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 520 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Releases input capture from this WindowWindow
+releaseInput :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+releaseInput a1 =
+  withHG3DClass a1 $ \a1' -> 
+  releaseInput'_ a1' >>= \res ->
+  return ()
+{-# LINE 524 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window will remember and restore the previous window that had inputs captured.  - Details: 
+--
+setRestoreCapture :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setRestoreCapture a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setRestoreCapture'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 529 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the current alpha value for this window.  - Details: The alpha value set for any given window may or may not be the final alpha value that is used when rendering. All window objects, by default, inherit alpha from thier parent window(s) - this will blend child windows, relatively, down the line of inheritance. This behaviour can be overridden via the setInheritsAlpha()getEffectiveAlpha()
+setAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ alpha - The new alpha value for the window. Value should be between 0.0f and 1.0f.
+  ->  IO ()
+ -- ^ return value - Nothing     
+setAlpha a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setAlpha'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 534 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets whether this Window
+setInheritsAlpha :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+setInheritsAlpha a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setInheritsAlpha'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 539 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Invalidate this window causing at least this window to be redrawn during the next rendering pass. 
+invalidate :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing    
+invalidate a1 =
+  withHG3DClass a1 $ \a1' -> 
+  invalidate'_ a1' >>= \res ->
+  return ()
+{-# LINE 543 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Invalidate this window and - dependant upon recursive
+invalidate2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ recursive - Boolean value indicating whether attached child content should also be invalidated.
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing     
+invalidate2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  invalidate2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 548 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the mouse cursor image to be used when the mouse enters this window. 
+setMouseCursor3 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ imageset - String object that contains the name of the Imageset that contains the image to be used.
+  ->  String  -- ^ image_name - String object that contains the name of the Image on imageset that is to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setMouseCursor3 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setMouseCursor3'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 554 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether z-order changes are enabled or disabled for this Window - Details: This is distinguished from the is/setRiseOnClickEnabled setting in that if rise on click is disabled it only affects the users ability to affect the z order of the WindowWindowWindow
+setZOrderingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setZOrderingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setZOrderingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 559 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window will receive multi-click events or multiple 'down' events instead. 
+setWantsMultiClickEvents :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setWantsMultiClickEvents a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setWantsMultiClickEvents'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 564 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether mouse button down event autorepeat is enabled for this window. 
+setMouseAutoRepeatEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setMouseAutoRepeatEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMouseAutoRepeatEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 569 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the current auto-repeat delay setting for this window. 
+setAutoRepeatDelay :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ delay - float value indicating the delay, in seconds, defore the first repeat mouse button down event should be triggered when autorepeat is enabled.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setAutoRepeatDelay a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setAutoRepeatDelay'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 574 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the current auto-repeat rate setting for this window. 
+setAutoRepeatRate :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ rate - float value indicating the rate, in seconds, at which repeat mouse button down events should be generated after the initial delay has expired.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setAutoRepeatRate a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  setAutoRepeatRate'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 579 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether the window wants inputs passed to its attached child windows when the window has inputs captured. 
+setDistributesCapturedInputs :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setDistributesCapturedInputs a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDistributesCapturedInputs'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 584 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+notifyDragDropItemEnters :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  IO ()
+ -- ^ 
+notifyDragDropItemEnters a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  notifyDragDropItemEnters'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 589 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+notifyDragDropItemLeaves :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  IO ()
+ -- ^ 
+notifyDragDropItemLeaves a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  notifyDragDropItemLeaves'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 594 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+notifyDragDropItemDropped :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ item
+  ->  IO ()
+ -- ^ 
+notifyDragDropItemDropped a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  notifyDragDropItemDropped'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 599 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Internal destroy method which actually just adds the window and any parent destructed child windows to the dead pool.  - Details: This is virtual to allow for specialised cleanup which may be required
+--in some advanced cases.  If you override this for the above reason, you
+--MUST call this base class version.
+--
+destroy :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+destroy a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroy'_ a1' >>= \res ->
+  return ()
+{-# LINE 603 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the custom TooltipWindowWindowTooltip
+setTooltip :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ tooltip - Pointer to a valid Tooltip based object which should be used as the tooltip for this Window, or 0 to indicate that the Window should use the system default Tooltip object. Note that when passing a pointer to a Tooltip object, ownership of the Tooltip does not pass to this Window object.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTooltip a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  setTooltip'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 608 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the custom TooltipWindowWindow - Details: The Window will internally attempt to create an instance of the
+--specified window type (which must be derived from the base Tooltip
+--class).  If the Tooltip creation fails, the error is logged and the
+--Window will revert to using either the existing custom Tooltip or the
+--system default Tooltip.
+--
+setTooltipType :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ tooltipType
+  ->  IO ()
+ -- ^ 
+setTooltipType a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setTooltipType'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 613 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the tooltip text for this window. 
+setTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ tip - String object holding the text to be displayed in the tooltip for this Window.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setTooltipText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setTooltipText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 618 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window inherits Tooltip
+setInheritsTooltipText :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setInheritsTooltipText a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setInheritsTooltipText'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 623 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether this window will rise to the top of the z-order when clicked with the left mouse button.  - Details: This is distinguished from the is/setZOrderingEnabled setting in that if rise on click is disabled it only affects the users ability to affect the z order of the WindowWindowWindow
+setRiseOnClickEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setRiseOnClickEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setRiseOnClickEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 628 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the vertical alignment.  - Details: Modifies the vertical alignment for the window.  This setting affects
+--how the windows position is interpreted relative to its parent.
+--
+setVerticalAlignment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumVerticalAlignment  -- ^ alignment
+  ->  IO ()
+ -- ^ 
+setVerticalAlignment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setVerticalAlignment'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 633 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the horizontal alignment.  - Details: Modifies the horizontal alignment for the window.  This setting affects
+--how the windows position is interpreted relative to its parent.
+--
+setHorizontalAlignment :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumHorizontalAlignment  -- ^ alignment
+  ->  IO ()
+ -- ^ 
+setHorizontalAlignment a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setHorizontalAlignment'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 638 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the LookNFeel that shoule be used for this window.  - Details: Once a look'n'feel has been assigned it is locked - as in cannot be changed. 
+setLookNFeel :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ look - String object holding the name of the look to be assigned to the window.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+setLookNFeel a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setLookNFeel'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 643 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the modal state for this Window
+setModalState :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ state - Boolean value defining if this Window should be the modal target.
+--
+--
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setModalState a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setModalState'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 648 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | method called to perform extended laying out of attached child windows.  - Details: The system may call this at various times (like when it is resized for
+--example), and it may be invoked directly where required.
+--
+performChildWindowLayout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+performChildWindowLayout a1 =
+  withHG3DClass a1 $ \a1' -> 
+  performChildWindowLayout'_ a1' >>= \res ->
+  return ()
+{-# LINE 652 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets the value a named user string, creating it as required. 
+setUserString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String object holding the name of the string to be returned.
+  ->  String  -- ^ value - String object holding the value to be assigned to the user string.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setUserString a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setUserString'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 658 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Causes the Window
+render :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing     
+render a1 =
+  withHG3DClass a1 $ \a1' -> 
+  render'_ a1' >>= \res ->
+  return ()
+{-# LINE 662 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Cause window to update itself and any attached children. Client code does not need to call this method; to ensure full, and proper updates, call the injectTimePulse methodname method provided by the System - Details: The update order is such that 'this' window is updated prior to any child windows, this is so that child windows that access the parent in their update code get the correct updated state.
+update :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Float  -- ^ elapsed - float value indicating the number of seconds passed since the last update.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+update a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = realToFrac a2} in 
+  update'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 667 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets the internal 'initialising' flag to true. This can be use to optimize initialisation of some widgets, and is called automatically by the layout XML handler when it has created a window. That is just after the window has been created, but before any children or properties are read. 
+beginInitialisation :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+beginInitialisation a1 =
+  withHG3DClass a1 $ \a1' -> 
+  beginInitialisation'_ a1' >>= \res ->
+  return ()
+{-# LINE 671 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets the internal 'initialising' flag to false. This is called automatically by the layout XML handler when it is done creating a window. That is after all properties and children have been loaded and just before the next sibling gets created. 
+endInitialisation :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+endInitialisation a1 =
+  withHG3DClass a1 $ \a1' -> 
+  endInitialisation'_ a1' >>= \res ->
+  return ()
+{-# LINE 675 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets whether this window should ignore mouse events and pass them through to any windows behind it. In effect making the window transparent to the mouse. 
+setMousePassThroughEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - true if mouse pass through is enabled. false if mouse pass through is not enabled. 
+  ->  IO ()
+ -- ^ 
+setMousePassThroughEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMousePassThroughEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 680 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Assign the WindowRenderer to specify the Look'N'Feel specification to be used.  - Details: Once a window renderer has been assigned it is locked - as in cannot be changed. 
+setWindowRenderer :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - The factory name of the WindowRenderer to use.
+  ->  IO ()
+ -- ^ 
+setWindowRenderer a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  setWindowRenderer'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 685 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Get the factory name of the currently assigned WindowRenderer. (Look'N'Feel specification). 
+getWindowRendererName :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - The factory name of the currently assigned WindowRenderer. If no WindowRenderer is assigned an empty string is returned.     
+getWindowRendererName a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getWindowRendererName'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 690 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets whether this window is allowed to write XML. 
+setWritingXMLAllowed :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ allow
+  ->  IO ()
+ -- ^ 
+setWritingXMLAllowed a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setWritingXMLAllowed'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 695 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Inform the window, and optionally all children, that screen area rectangles have changed. 
+notifyScreenAreaChanged :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ recursive - 
+--
+--
+  ->  IO ()
+ -- ^ 
+notifyScreenAreaChanged a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  notifyScreenAreaChanged'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 700 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Changes the widget's falagard type, thus changing its look'n'feel and optionally its renderer in the process. 
+setFalagardType :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ type - New renderer of the widget 
+  ->  String  -- ^ rendererType
+  ->  IO ()
+ -- ^ 
+setFalagardType a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  setFalagardType'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 706 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Specifies whether this Window
+setDragDropTarget :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setDragDropTarget a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setDragDropTarget'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 711 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Invalidate the chain of rendering surfaces from this window backwards to ensure they get properly redrawn - but doing the minimum amount of work possibe - next render. 
+invalidateRenderingSurface :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+invalidateRenderingSurface a1 =
+  withHG3DClass a1 $ \a1' -> 
+  invalidateRenderingSurface'_ a1' >>= \res ->
+  return ()
+{-# LINE 715 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Sets whether automatic - Details: Note that this setting really only controls whether the WindowuseWindowEnabling this option will cause the WindowWindowWindowbut not destroyedDisabling this option will cause any automatically created RenderingSurface to be released. It is possible that the renderer in use may not support facilities for RenderingSurfaces that are suitable for full imagery caching. If this is the case, then calling getRenderingSurface after enabling this option will return 0. In these cases this option will still show as being 'enabled', this is because WindowsettingsWindowIf this option is enabled, and the client subsequently assigns a different RenderingSurface to the Window
+setUsingAutoRenderingSurface :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setUsingAutoRenderingSurface a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setUsingAutoRenderingSurface'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 720 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether the Window - Details: A non-client window is clipped, positioned and sized according to the
+--parent window's full area as opposed to just the inner rect area used
+--for normal client windows.
+--
+setNonClientWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setNonClientWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setNonClientWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 725 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return whether text parsing is enabled for this window. 
+isTextParsingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isTextParsingEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isTextParsingEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 730 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | set whether text parsing is enabled for this window. 
+setTextParsingEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ setting
+  ->  IO ()
+ -- ^ 
+setTextParsingEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setTextParsingEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 735 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Add the named property to the XML ban list for this window. 
+banPropertyFromXML :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ property_name
+  ->  IO ()
+ -- ^ 
+banPropertyFromXML a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  banPropertyFromXML'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 740 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Remove the named property from the XML ban list for this window. 
+unbanPropertyFromXML :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ property_name
+  ->  IO ()
+ -- ^ 
+unbanPropertyFromXML a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  unbanPropertyFromXML'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 745 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether the named property is banned from XML. 
+isPropertyBannedFromXML :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ property_name
+  ->  IO (Bool)
+ -- ^ 
+isPropertyBannedFromXML a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isPropertyBannedFromXML'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 751 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set the window update mode. This mode controls the behaviour of the Window::update - Details: Disabling updates can have negative effects on the behaviour of CEGUI
+setUpdateMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  EnumWindowUpdateMode  -- ^ mode - One of the WindowUpdateMode enumerated values indicating the mode to set for this Window. 
+  ->  IO ()
+ -- ^ 
+setUpdateMode a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = cIntFromEnum a2} in 
+  setUpdateMode'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 756 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the current window update mode that is set for this WindowWindow::update - Details: Disabling updates can have negative effects on the behaviour of CEGUI
+getUpdateMode :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (EnumWindowUpdateMode)
+ -- ^ return value - One of the WindowUpdateMode enumerated values indicating the current mode set for this     
+getUpdateMode a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getUpdateMode'_ a1' a2' >>= \res ->
+  peekEnumUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 761 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Set whether mouse input that is not directly handled by this WindowWindow
+setMouseInputPropagationEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  Bool  -- ^ enabled - 
+--
+--
+  ->  IO ()
+ -- ^ 
+setMouseInputPropagationEnabled a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  let {a2' = fromBool a2} in 
+  setMouseInputPropagationEnabled'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 766 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether mouse input that is not directly handled by this WindowWindow
+isMouseInputPropagationEnabled :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isMouseInputPropagationEnabled a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isMouseInputPropagationEnabled'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 771 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Clones this Window
+clone :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ newName - new name of the cloned window
+  ->  Bool  -- ^ deepCopy - if true, even children are copied (the old name prefix will be replaced with new name prefix)
+  ->  IO (HG3DClass)
+ -- ^ return value - the cloned     
+clone a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  let {a3' = fromBool a3} in 
+  alloca $ \a4' -> 
+  clone'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 778 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | copies this widget's properties to given target widget 
+clonePropertiesTo :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ target
+  ->  IO ()
+ -- ^ 
+clonePropertiesTo a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  clonePropertiesTo'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 783 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | copies this widget's child widgets to given target widget 
+cloneChildWidgetsTo :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ target
+  ->  IO ()
+ -- ^ 
+cloneChildWidgetsTo a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  cloneChildWidgetsTo'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 788 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return the (visual) z index of the window on it's parent.  - Details: The z index is a number that indicates the order that windows will be drawn (but is not a 'z co-ordinate', as such). Higher numbers are in front of lower numbers.
+getZIndex :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Int)
+ -- ^ 
+getZIndex a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  getZIndex'_ a1' a2' >>= \res ->
+  peekIntConv  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 793 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether /a this Window - Details: Here 'in front' just means that one window is drawn after the other, it is not meant to imply that the windows are overlapping nor that one window is obscured by the other. 
+isInFront :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ wnd
+  ->  IO (Bool)
+ -- ^ 
+isInFront a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isInFront'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 799 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | Return whether /a this Window - Details: Here 'behind' just means that one window is drawn before the other, it is not meant to imply that the windows are overlapping nor that one window is obscured by the other. 
+isBehind :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ wnd
+  ->  IO (Bool)
+ -- ^ 
+isBehind a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isBehind'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 805 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+-- | return the Window
+getCaptureWindow :: IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getCaptureWindow =
+  alloca $ \a1' -> 
+  getCaptureWindow'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 809 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_construct"
+  new'_ :: ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getType"
+  getType'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getName"
+  getName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isDestroyedByParent"
+  isDestroyedByParent'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isAlwaysOnTop"
+  isAlwaysOnTop'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isDisabled"
+  isDisabled'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isVisible"
+  isVisible'_ :: ((HG3DClassPtr) -> (CInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isActive"
+  isActive'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isClippedByParent"
+  isClippedByParent'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getID"
+  getID'_ :: ((HG3DClassPtr) -> ((Ptr CUInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChildCount"
+  getChildCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isChild"
+  isChild'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isChild2"
+  isChild2'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isChildRecursive"
+  isChildRecursive'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isChild3"
+  isChild3'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChild"
+  getChild'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChild2"
+  getChild2'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChildRecursive"
+  getChildRecursive'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChildRecursive2"
+  getChildRecursive2'_ :: ((HG3DClassPtr) -> (CUInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getChildAtIdx"
+  getChildAtIdx'_ :: ((HG3DClassPtr) -> (CInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getActiveChild"
+  getActiveChild'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getActiveChild2"
+  getActiveChild2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isAncestor"
+  isAncestor'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isAncestor2"
+  isAncestor2'_ :: ((HG3DClassPtr) -> (CUInt -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isAncestor3"
+  isAncestor3'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getFont"
+  getFont'_ :: ((HG3DClassPtr) -> (CInt -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getText"
+  getText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getTextVisual"
+  getTextVisual'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_inheritsAlpha"
+  inheritsAlpha'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getAlpha"
+  getAlpha'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getEffectiveAlpha"
+  getEffectiveAlpha'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isCapturedByThis"
+  isCapturedByThis'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isCapturedByAncestor"
+  isCapturedByAncestor'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isCapturedByChild"
+  isCapturedByChild'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getParent"
+  getParent'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_restoresOldCapture"
+  restoresOldCapture'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isZOrderingEnabled"
+  isZOrderingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_wantsMultiClickEvents"
+  wantsMultiClickEvents'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isMouseAutoRepeatEnabled"
+  isMouseAutoRepeatEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getAutoRepeatDelay"
+  getAutoRepeatDelay'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getAutoRepeatRate"
+  getAutoRepeatRate'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_distributesCapturedInputs"
+  distributesCapturedInputs'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isUsingDefaultTooltip"
+  isUsingDefaultTooltip'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getTooltip"
+  getTooltip'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getTooltipType"
+  getTooltipType'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getTooltipText"
+  getTooltipText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_inheritsTooltipText"
+  inheritsTooltipText'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isRiseOnClickEnabled"
+  isRiseOnClickEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_testClassName"
+  testClassName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getVerticalAlignment"
+  getVerticalAlignment'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getHorizontalAlignment"
+  getHorizontalAlignment'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getLookNFeel"
+  getLookNFeel'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getModalState"
+  getModalState'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getUserString"
+  getUserString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isUserStringDefined"
+  isUserStringDefined'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getActiveSibling"
+  getActiveSibling'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getParentPixelWidth"
+  getParentPixelWidth'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getParentPixelHeight"
+  getParentPixelHeight'_ :: ((HG3DClassPtr) -> ((Ptr CFloat) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isMousePassThroughEnabled"
+  isMousePassThroughEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isAutoWindow"
+  isAutoWindow'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isWritingXMLAllowed"
+  isWritingXMLAllowed'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isDragDropTarget"
+  isDragDropTarget'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isUsingAutoRenderingSurface"
+  isUsingAutoRenderingSurface'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getRootWindow"
+  getRootWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getRootWindow2"
+  getRootWindow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isNonClientWindow"
+  isNonClientWindow'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_rename"
+  rename'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_initialiseComponents"
+  initialiseComponents'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setDestroyedByParent"
+  setDestroyedByParent'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setAlwaysOnTop"
+  setAlwaysOnTop'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setEnabled"
+  setEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_enable"
+  enable'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_disable"
+  disable'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setVisible"
+  setVisible'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_show"
+  show'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_hide"
+  hide'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_activate"
+  activate'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_deactivate"
+  deactivate'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setClippedByParent"
+  setClippedByParent'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setID"
+  setID'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setText"
+  setText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_appendText"
+  appendText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setFont"
+  setFont'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setFont2"
+  setFont2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_addChildWindow"
+  addChildWindow'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_addChildWindow2"
+  addChildWindow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_removeChildWindow"
+  removeChildWindow'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_removeChildWindow2"
+  removeChildWindow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_removeChildWindow3"
+  removeChildWindow3'_ :: ((HG3DClassPtr) -> (CUInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_moveToFront"
+  moveToFront'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_moveToBack"
+  moveToBack'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_captureInput"
+  captureInput'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_releaseInput"
+  releaseInput'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setRestoreCapture"
+  setRestoreCapture'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setAlpha"
+  setAlpha'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setInheritsAlpha"
+  setInheritsAlpha'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_invalidate"
+  invalidate'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_invalidate2"
+  invalidate2'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setMouseCursor3"
+  setMouseCursor3'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setZOrderingEnabled"
+  setZOrderingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setWantsMultiClickEvents"
+  setWantsMultiClickEvents'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setMouseAutoRepeatEnabled"
+  setMouseAutoRepeatEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setAutoRepeatDelay"
+  setAutoRepeatDelay'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setAutoRepeatRate"
+  setAutoRepeatRate'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setDistributesCapturedInputs"
+  setDistributesCapturedInputs'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_notifyDragDropItemEnters"
+  notifyDragDropItemEnters'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_notifyDragDropItemLeaves"
+  notifyDragDropItemLeaves'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_notifyDragDropItemDropped"
+  notifyDragDropItemDropped'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_destroy"
+  destroy'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setTooltip"
+  setTooltip'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setTooltipType"
+  setTooltipType'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setTooltipText"
+  setTooltipText'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setInheritsTooltipText"
+  setInheritsTooltipText'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setRiseOnClickEnabled"
+  setRiseOnClickEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setVerticalAlignment"
+  setVerticalAlignment'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setHorizontalAlignment"
+  setHorizontalAlignment'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setLookNFeel"
+  setLookNFeel'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setModalState"
+  setModalState'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_performChildWindowLayout"
+  performChildWindowLayout'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setUserString"
+  setUserString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_render"
+  render'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_update"
+  update'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_beginInitialisation"
+  beginInitialisation'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_endInitialisation"
+  endInitialisation'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setMousePassThroughEnabled"
+  setMousePassThroughEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setWindowRenderer"
+  setWindowRenderer'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getWindowRendererName"
+  getWindowRendererName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setWritingXMLAllowed"
+  setWritingXMLAllowed'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_notifyScreenAreaChanged"
+  notifyScreenAreaChanged'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setFalagardType"
+  setFalagardType'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setDragDropTarget"
+  setDragDropTarget'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_invalidateRenderingSurface"
+  invalidateRenderingSurface'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setUsingAutoRenderingSurface"
+  setUsingAutoRenderingSurface'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setNonClientWindow"
+  setNonClientWindow'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isTextParsingEnabled"
+  isTextParsingEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setTextParsingEnabled"
+  setTextParsingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_banPropertyFromXML"
+  banPropertyFromXML'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_unbanPropertyFromXML"
+  unbanPropertyFromXML'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isPropertyBannedFromXML"
+  isPropertyBannedFromXML'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setUpdateMode"
+  setUpdateMode'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getUpdateMode"
+  getUpdateMode'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_setMouseInputPropagationEnabled"
+  setMouseInputPropagationEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isMouseInputPropagationEnabled"
+  isMouseInputPropagationEnabled'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_clone"
+  clone'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_clonePropertiesTo"
+  clonePropertiesTo'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_cloneChildWidgetsTo"
+  cloneChildWidgetsTo'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getZIndex"
+  getZIndex'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isInFront"
+  isInFront'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_isBehind"
+  isBehind'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindow.chs.h cegui_wnd_getCaptureWindow"
+  getCaptureWindow'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassWindowManager.hs view
@@ -0,0 +1,354 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassWindowManager.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassWindowManager where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Constructs a new WindowManager - Details: NB: Client code should not create WindowManagerWindowManagerSystem
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Destructor for WindowManager - Details: This will properly destry all remaining Window
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Creates a new Window
+createWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ type - String that describes the type of Window to be created. A valid WindowFactory for the specified type must be registered.
+  ->  String  -- ^ name - String that holds a unique name that is to be given to the new window. If this string is empty (""), a name will be generated for the window.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the newly created     
+createWindow a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  createWindow'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Destroy the specified Window
+destroyWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the Window object to be destroyed. If the window is null, or is not recognised, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing    
+destroyWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  destroyWindow'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 63 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Destroy the specified Window
+destroyWindow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ window - String containing the name of the Window object to be destroyed. If window is not recognised, nothing happens.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+destroyWindow2 a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  destroyWindow2'_ a1' a2' >>= \res ->
+  return ()
+{-# LINE 68 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Return a pointer to the specified Window
+getWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String holding the name of the Window object to be returned.
+  ->  IO (HG3DClass)
+ -- ^ return value - Pointer to the     
+getWindow a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  getWindow'_ a1' a2' a3' >>= \res ->
+  peek  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 74 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Examines the list of Window
+isWindowPresent :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ name - String holding the name of the Window object to look for.
+  ->  IO (Bool)
+ -- ^ return value - true if a     
+isWindowPresent a1 a2 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  alloca $ \a3' -> 
+  isWindowPresent'_ a1' a2' a3' >>= \res ->
+  peekBoolUtil  a3'>>= \a3'' -> 
+  return (a3'')
+{-# LINE 80 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Destroys all Window
+destroyAllWindows :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.    
+destroyAllWindows a1 =
+  withHG3DClass a1 $ \a1' -> 
+  destroyAllWindows'_ a1' >>= \res ->
+  return ()
+{-# LINE 84 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Return whether the window dead pool is empty. 
+isDeadPoolEmpty :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isDeadPoolEmpty a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isDeadPoolEmpty'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 89 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Permanently destroys any windows placed in the dead pool.  - Details: It is probably not a good idea to call this from a Window
+cleanDeadPool :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+cleanDeadPool a1 =
+  withHG3DClass a1 $ \a1' -> 
+  cleanDeadPool'_ a1' >>= \res ->
+  return ()
+{-# LINE 93 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Save a full XML window layout, starting at the given Window
+saveWindowLayout :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ window - String holding the name of the Window object to become the root of the layout.
+  ->  String  -- ^ filename - The name of the file to which the XML will be written. Note that this does not use any part of the ResourceProvider system, but rather will write directly to disk. If this is not desirable, you should prefer the OutStream based writeWindowLayoutToStream functions.
+  ->  Bool  -- ^ writeParent - If the starting window has a parent window, specifies whether to write the parent name into the Parent attribute of the GUILayout XML element. 
+  ->  IO ()
+ -- ^ 
+saveWindowLayout a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  let {a4' = fromBool a4} in 
+  saveWindowLayout'_ a1' a2' a3' a4' >>= \res ->
+  return ()
+{-# LINE 100 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Save a full XML window layout, starting at the given Window
+saveWindowLayout2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Window object to become the root of the layout.
+  ->  String  -- ^ filename - The name of the file to which the XML will be written. Note that this does not use any part of the ResourceProvider system, but rather will write directly to disk. If this is not desirable, you should prefer the OutStream based writeWindowLayoutToStream functions.
+  ->  Bool  -- ^ writeParent - If the starting window has a parent window, specifies whether to write the parent name into the Parent attribute of the GUILayout XML element. 
+  ->  IO ()
+ -- ^ 
+saveWindowLayout2 a1 a2 a3 a4 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  let {a4' = fromBool a4} in 
+  saveWindowLayout2'_ a1' a2' a3' a4' >>= \res ->
+  return ()
+{-# LINE 107 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Rename a window. 
+renameWindow :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ window - String holding the current name of the window to be renamed.
+  ->  String  -- ^ new_name - String holding the new name for the window
+  ->  IO ()
+ -- ^ 
+renameWindow a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  renameWindow'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 113 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Rename a window. 
+renameWindow2 :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  HG3DClass  -- ^ window - Pointer to the window to be renamed.
+  ->  String  -- ^ new_name - String holding the new name for the window
+  ->  IO ()
+ -- ^ 
+renameWindow2 a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withHG3DClass a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  renameWindow2'_ a1' a2' a3' >>= \res ->
+  return ()
+{-# LINE 119 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Put WindowManager - Details: While WindowManager is in the locked state all attempts to create a
+--Window of any type will fail with an InvalidRequestException being
+--thrown.  Calls to lock/unlock are recursive; if multiple calls to lock
+--are made, WindowManager is only unlocked after a matching number of
+--calls to unlock.
+--
+lock :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+lock a1 =
+  withHG3DClass a1 $ \a1' -> 
+  lock'_ a1' >>= \res ->
+  return ()
+{-# LINE 123 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Put WindowManager - Details: While WindowManager is in the locked state all attempts to create a
+--Window of any type will fail with an InvalidRequestException being
+--thrown.  Calls to lock/unlock are recursive; if multiple calls to lock
+--are made, WindowManager is only unlocked after a matching number of
+--calls to unlock.
+--
+unlock :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+unlock a1 =
+  withHG3DClass a1 $ \a1' -> 
+  unlock'_ a1' >>= \res ->
+  return ()
+{-# LINE 127 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Returns whether WindowManager - Details: While WindowManager is in the locked state all attempts to create a
+--Window of any type will fail with an InvalidRequestException being
+--thrown.  Calls to lock/unlock are recursive; if multiple calls to lock
+--are made, WindowManager is only unlocked after a matching number of
+--calls to unlock.
+--
+isLocked :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+isLocked a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  isLocked'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 132 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Returns the default resource group currently set for layouts. 
+getDefaultResourceGroup :: IO (String)
+ -- ^ return value - String describing the default resource group identifier that will be used when loading layouts.     
+getDefaultResourceGroup =
+  alloc64k $ \a1' -> 
+  getDefaultResourceGroup'_ a1' >>= \res ->
+  peekCString  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 136 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+-- | Sets the default resource group to be used when loading layouts. 
+setDefaultResourceGroup :: String  -- ^ resourceGroup - String describing the default resource group identifier to be used.
+  ->  IO ()
+ -- ^ return value - Nothing.     
+setDefaultResourceGroup a1 =
+  withCString a1 $ \a1' -> 
+  setDefaultResourceGroup'_ a1' >>= \res ->
+  return ()
+{-# LINE 140 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_createWindow"
+  createWindow'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_destroyWindow"
+  destroyWindow'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_destroyWindow2"
+  destroyWindow2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_getWindow"
+  getWindow'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_isWindowPresent"
+  isWindowPresent'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CInt) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_destroyAllWindows"
+  destroyAllWindows'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_isDeadPoolEmpty"
+  isDeadPoolEmpty'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_cleanDeadPool"
+  cleanDeadPool'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_saveWindowLayout"
+  saveWindowLayout'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (CInt -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_saveWindowLayout2"
+  saveWindowLayout2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_renameWindow"
+  renameWindow'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_renameWindow2"
+  renameWindow2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ()))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_lock"
+  lock'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_unlock"
+  unlock'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_isLocked"
+  isLocked'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_getDefaultResourceGroup"
+  getDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManager.chs.h cegui_wmgr_setDefaultResourceGroup"
+  setDefaultResourceGroup'_ :: ((Ptr CChar) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassWindowManagerHG3D.hs view
@@ -0,0 +1,108 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassWindowManagerHG3D.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassWindowManagerHG3D where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+
+-- | 
+new :: IO (HG3DClass)
+ -- ^ 
+new =
+  alloca $ \a1' -> 
+  new'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+
+-- | 
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 51 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+
+-- | 
+loadWindowLayoutHG3D :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  String  -- ^ filename
+  ->  String  -- ^ name_prefix
+  ->  IO (HG3DClass)
+ -- ^ 
+loadWindowLayoutHG3D a1 a2 a3 =
+  withHG3DClass a1 $ \a1' -> 
+  withCString a2 $ \a2' -> 
+  withCString a3 $ \a3' -> 
+  alloca $ \a4' -> 
+  loadWindowLayoutHG3D'_ a1' a2' a3' a4' >>= \res ->
+  peek  a4'>>= \a4'' -> 
+  return (a4'')
+{-# LINE 58 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+
+-- | 
+getSingleton :: IO (HG3DClass)
+ -- ^ 
+getSingleton =
+  alloca $ \a1' -> 
+  getSingleton'_ a1' >>= \res ->
+  peek  a1'>>= \a1'' -> 
+  return (a1'')
+{-# LINE 62 ".\\HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs.h cegui_wmgr_hg3d_construct"
+  new'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs.h cegui_wmgr_hg3d_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs.h cegui_wmgr_hg3d_loadWindowLayoutHG3D"
+  loadWindowLayoutHG3D'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CChar) -> ((HG3DClassPtr) -> (IO ())))))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassWindowManagerHG3D.chs.h cegui_wmgr_hg3d_getSingleton"
+  getSingleton'_ :: ((HG3DClassPtr) -> (IO ()))
+ HGamer3D/Bindings/CEGUI/ClassXMLParser.hs view
@@ -0,0 +1,110 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- ClassXMLParser.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.ClassXMLParser where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+import HGamer3D.Bindings.CEGUI.Utils
+{-# LINE 40 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+import HGamer3D.Bindings.CEGUI.ClassPtr
+{-# LINE 41 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+import HGamer3D.Bindings.CEGUI.StructHG3DClass
+{-# LINE 42 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+
+-- | XMLParser
+delete :: HG3DClass  -- ^ classpointer - pointer of Class instance which is going to be deleted.
+  ->  IO ()
+ -- ^ 
+delete a1 =
+  withHG3DClass a1 $ \a1' -> 
+  delete'_ a1' >>= \res ->
+  return ()
+{-# LINE 47 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+
+-- | Initialises the XMLParser - Details: Note that this calls the protected abstract method 'initialiseImpl', which should
+--be provided in your implementation to perform any required initialisation.
+--
+initialise :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (Bool)
+ -- ^ 
+initialise a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloca $ \a2' -> 
+  initialise'_ a1' a2' >>= \res ->
+  peekBoolUtil  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 52 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+
+-- | Cleans up the XMLParser - Details: Note that this calls the protected abstract method 'cleanupImpl', which should
+--be provided in your implementation to perform any required cleanup.
+--
+cleanup :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO ()
+ -- ^ 
+cleanup a1 =
+  withHG3DClass a1 $ \a1' -> 
+  cleanup'_ a1' >>= \res ->
+  return ()
+{-# LINE 56 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+
+-- | Return identification string for the XML parser module. If the internal id string has not been set by the XML parser module creator, a generic string of "Unknown XML parser" will be returned. 
+getIdentifierString :: HG3DClass  -- ^ classpointer - pointer of Class instance from which this methods is called.
+  ->  IO (String)
+ -- ^ return value - String object holding a string that identifies the XML parser in use.     
+getIdentifierString a1 =
+  withHG3DClass a1 $ \a1' -> 
+  alloc64k $ \a2' -> 
+  getIdentifierString'_ a1' a2' >>= \res ->
+  peekCString  a2'>>= \a2'' -> 
+  return (a2'')
+{-# LINE 61 ".\\HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs" #-}
+
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs.h cegui_xmlprs_destruct"
+  delete'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs.h cegui_xmlprs_initialise"
+  initialise'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs.h cegui_xmlprs_cleanup"
+  cleanup'_ :: ((HG3DClassPtr) -> (IO ()))
+
+foreign import ccall safe "HGamer3D\\Bindings\\CEGUI\\ClassXMLParser.chs.h cegui_xmlprs_getIdentifierString"
+  getIdentifierString'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
+ HGamer3D/Bindings/CEGUI/EnumBlendMode.hs view
@@ -0,0 +1,52 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumBlendMode.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumBlendMode.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumBlendMode where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumBlendMode =
+   -- | Invalid mode indicator. 
+    BM_INVALID
+   -- | Use normal blending mode. 
+                      | BM_NORMAL
+   -- | Use blending mode suitable for textures with premultiplied colours. 
+                      | BM_RTT_PREMULTIPLIED
+                   deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumFWSizingLocation.hs view
@@ -0,0 +1,64 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumFWSizingLocation.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumFWSizingLocation.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumFWSizingLocation where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumFWSizingLocation =
+   -- | Position is not a sizing location. 
+    SizingNone
+   -- | Position will size from the top-left. 
+                             | SizingTopLeft
+   -- | Position will size from the top-right. 
+                             | SizingTopRight
+   -- | Position will size from the bottom left. 
+                             | SizingBottomLeft
+   -- | Position will size from the bottom right. 
+                             | SizingBottomRight
+   -- | Position will size from the top. 
+                             | SizingTop
+   -- | Position will size from the left. 
+                             | SizingLeft
+   -- | Position will size from the bottom. 
+                             | SizingBottom
+   -- | Position will size from the right. 
+                             | SizingRight
+                          deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumHorizontalAlignment.hs view
@@ -0,0 +1,52 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumHorizontalAlignment.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumHorizontalAlignment.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumHorizontalAlignment where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumHorizontalAlignment =
+   -- |  Window
+    HA_LEFT
+   -- |  Window
+                                | HA_CENTRE
+   -- |  Window
+                                | HA_RIGHT
+                             deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumKeyScan.hs view
@@ -0,0 +1,625 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumKeyScan.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumKeyScan.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumKeyScan where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumKeyScan =
+   -- | 
+    KeyEscape
+   -- | 
+                    | KeyOne
+   -- | 
+                    | KeyTwo
+   -- | 
+                    | KeyThree
+   -- | 
+                    | KeyFour
+   -- | 
+                    | KeyFive
+   -- | 
+                    | KeySix
+   -- | 
+                    | KeySeven
+   -- | 
+                    | KeyEight
+   -- | 
+                    | KeyNine
+   -- | 
+                    | KeyZero
+   -- | 
+                    | KeyMinus
+   -- | 
+                    | KeyEquals
+   -- | 
+                    | KeyBackspace
+   -- | 
+                    | KeyTab
+   -- | 
+                    | KeyQ
+   -- | 
+                    | KeyW
+   -- | 
+                    | KeyE
+   -- | 
+                    | KeyR
+   -- | 
+                    | KeyT
+   -- | 
+                    | KeyY
+   -- | 
+                    | KeyU
+   -- | 
+                    | KeyI
+   -- | 
+                    | KeyO
+   -- | 
+                    | KeyP
+   -- | 
+                    | KeyLeftBracket
+   -- | 
+                    | KeyRightBracket
+   -- | 
+                    | KeyReturn
+   -- | 
+                    | KeyLeftControl
+   -- | 
+                    | KeyA
+   -- | 
+                    | KeyS
+   -- | 
+                    | KeyD
+   -- | 
+                    | KeyF
+   -- | 
+                    | KeyG
+   -- | 
+                    | KeyH
+   -- | 
+                    | KeyJ
+   -- | 
+                    | KeyK
+   -- | 
+                    | KeyL
+   -- | 
+                    | KeySemicolon
+   -- | 
+                    | KeyApostrophe
+   -- | 
+                    | KeyGrave
+   -- | 
+                    | KeyLeftShift
+   -- | 
+                    | KeyBackslash
+   -- | 
+                    | KeyZ
+   -- | 
+                    | KeyX
+   -- | 
+                    | KeyC
+   -- | 
+                    | KeyV
+   -- | 
+                    | KeyB
+   -- | 
+                    | KeyN
+   -- | 
+                    | KeyM
+   -- | 
+                    | KeyComma
+   -- | 
+                    | KeyPeriod
+   -- | 
+                    | KeySlash
+   -- | 
+                    | KeyRightShift
+   -- | 
+                    | KeyMultiply
+   -- | 
+                    | KeyLeftAlt
+   -- | 
+                    | KeySpace
+   -- | 
+                    | KeyCapital
+   -- | 
+                    | KeyF1
+   -- | 
+                    | KeyF2
+   -- | 
+                    | KeyF3
+   -- | 
+                    | KeyF4
+   -- | 
+                    | KeyF5
+   -- | 
+                    | KeyF6
+   -- | 
+                    | KeyF7
+   -- | 
+                    | KeyF8
+   -- | 
+                    | KeyF9
+   -- | 
+                    | KeyF10
+   -- | 
+                    | KeyNumLock
+   -- | 
+                    | KeyScrollLock
+   -- | 
+                    | KeyNumpad7
+   -- | 
+                    | KeyNumpad8
+   -- | 
+                    | KeyNumpad9
+   -- | 
+                    | KeySubtract
+   -- | 
+                    | KeyNumpad4
+   -- | 
+                    | KeyNumpad5
+   -- | 
+                    | KeyNumpad6
+   -- | 
+                    | KeyAdd
+   -- | 
+                    | KeyNumpad1
+   -- | 
+                    | KeyNumpad2
+   -- | 
+                    | KeyNumpad3
+   -- | 
+                    | KeyNumpad0
+   -- | 
+                    | KeyDecimal
+   -- | 
+                    | KeyOEM_102
+   -- | 
+                    | KeyF11
+   -- | 
+                    | KeyF12
+   -- | 
+                    | KeyF13
+   -- | 
+                    | KeyF14
+   -- | 
+                    | KeyF15
+   -- | 
+                    | KeyKana
+   -- | 
+                    | KeyABNT_C1
+   -- | 
+                    | KeyConvert
+   -- | 
+                    | KeyNoConvert
+   -- | 
+                    | KeyYen
+   -- | 
+                    | KeyABNT_C2
+   -- | 
+                    | KeyNumpadEquals
+   -- | 
+                    | KeyPrevTrack
+   -- | 
+                    | KeyAt
+   -- | 
+                    | KeyColon
+   -- | 
+                    | KeyUnderline
+   -- | 
+                    | KeyKanji
+   -- | 
+                    | KeyStop
+   -- | 
+                    | KeyAX
+   -- | 
+                    | KeyUnlabeled
+   -- | 
+                    | KeyNextTrack
+   -- | 
+                    | KeyNumpadEnter
+   -- | 
+                    | KeyRightControl
+   -- | 
+                    | KeyMute
+   -- | 
+                    | KeyCalculator
+   -- | 
+                    | KeyPlayPause
+   -- | 
+                    | KeyMediaStop
+   -- | 
+                    | KeyVolumeDown
+   -- | 
+                    | KeyVolumeUp
+   -- | 
+                    | KeyWebHome
+   -- | 
+                    | KeyNumpadComma
+   -- | 
+                    | KeyDivide
+   -- | 
+                    | KeySysRq
+   -- | 
+                    | KeyRightAlt
+   -- | 
+                    | KeyPause
+   -- | 
+                    | KeyHome
+   -- | 
+                    | KeyArrowUp
+   -- | 
+                    | KeyPageUp
+   -- | 
+                    | KeyArrowLeft
+   -- | 
+                    | KeyArrowRight
+   -- | 
+                    | KeyEnd
+   -- | 
+                    | KeyArrowDown
+   -- | 
+                    | KeyPageDown
+   -- | 
+                    | KeyInsert
+   -- | 
+                    | KeyDelete
+   -- | 
+                    | KeyLeftWindows
+   -- | 
+                    | KeyRightWindows
+   -- | 
+                    | KeyAppMenu
+   -- | 
+                    | KeyPower
+   -- | 
+                    | KeySleep
+   -- | 
+                    | KeyWake
+   -- | 
+                    | KeyWebSearch
+   -- | 
+                    | KeyWebFavorites
+   -- | 
+                    | KeyWebRefresh
+   -- | 
+                    | KeyWebStop
+   -- | 
+                    | KeyWebForward
+   -- | 
+                    | KeyWebBack
+   -- | 
+                    | KeyMyComputer
+   -- | 
+                    | KeyMail
+   -- | 
+                    | KeyMediaSelect
+                 deriving (Eq)
+instance Enum EnumKeyScan where
+  fromEnum KeyEscape = 1
+  fromEnum KeyOne = 2
+  fromEnum KeyTwo = 3
+  fromEnum KeyThree = 4
+  fromEnum KeyFour = 5
+  fromEnum KeyFive = 6
+  fromEnum KeySix = 7
+  fromEnum KeySeven = 8
+  fromEnum KeyEight = 9
+  fromEnum KeyNine = 10
+  fromEnum KeyZero = 11
+  fromEnum KeyMinus = 12
+  fromEnum KeyEquals = 13
+  fromEnum KeyBackspace = 14
+  fromEnum KeyTab = 15
+  fromEnum KeyQ = 16
+  fromEnum KeyW = 17
+  fromEnum KeyE = 18
+  fromEnum KeyR = 19
+  fromEnum KeyT = 20
+  fromEnum KeyY = 21
+  fromEnum KeyU = 22
+  fromEnum KeyI = 23
+  fromEnum KeyO = 24
+  fromEnum KeyP = 25
+  fromEnum KeyLeftBracket = 26
+  fromEnum KeyRightBracket = 27
+  fromEnum KeyReturn = 28
+  fromEnum KeyLeftControl = 29
+  fromEnum KeyA = 30
+  fromEnum KeyS = 31
+  fromEnum KeyD = 32
+  fromEnum KeyF = 33
+  fromEnum KeyG = 34
+  fromEnum KeyH = 35
+  fromEnum KeyJ = 36
+  fromEnum KeyK = 37
+  fromEnum KeyL = 38
+  fromEnum KeySemicolon = 39
+  fromEnum KeyApostrophe = 40
+  fromEnum KeyGrave = 41
+  fromEnum KeyLeftShift = 42
+  fromEnum KeyBackslash = 43
+  fromEnum KeyZ = 44
+  fromEnum KeyX = 45
+  fromEnum KeyC = 46
+  fromEnum KeyV = 47
+  fromEnum KeyB = 48
+  fromEnum KeyN = 49
+  fromEnum KeyM = 50
+  fromEnum KeyComma = 51
+  fromEnum KeyPeriod = 52
+  fromEnum KeySlash = 53
+  fromEnum KeyRightShift = 54
+  fromEnum KeyMultiply = 55
+  fromEnum KeyLeftAlt = 56
+  fromEnum KeySpace = 57
+  fromEnum KeyCapital = 58
+  fromEnum KeyF1 = 59
+  fromEnum KeyF2 = 60
+  fromEnum KeyF3 = 61
+  fromEnum KeyF4 = 62
+  fromEnum KeyF5 = 63
+  fromEnum KeyF6 = 64
+  fromEnum KeyF7 = 65
+  fromEnum KeyF8 = 66
+  fromEnum KeyF9 = 67
+  fromEnum KeyF10 = 68
+  fromEnum KeyNumLock = 69
+  fromEnum KeyScrollLock = 70
+  fromEnum KeyNumpad7 = 71
+  fromEnum KeyNumpad8 = 72
+  fromEnum KeyNumpad9 = 73
+  fromEnum KeySubtract = 74
+  fromEnum KeyNumpad4 = 75
+  fromEnum KeyNumpad5 = 76
+  fromEnum KeyNumpad6 = 77
+  fromEnum KeyAdd = 78
+  fromEnum KeyNumpad1 = 79
+  fromEnum KeyNumpad2 = 80
+  fromEnum KeyNumpad3 = 81
+  fromEnum KeyNumpad0 = 82
+  fromEnum KeyDecimal = 83
+  fromEnum KeyOEM_102 = 86
+  fromEnum KeyF11 = 87
+  fromEnum KeyF12 = 88
+  fromEnum KeyF13 = 100
+  fromEnum KeyF14 = 101
+  fromEnum KeyF15 = 102
+  fromEnum KeyKana = 112
+  fromEnum KeyABNT_C1 = 115
+  fromEnum KeyConvert = 121
+  fromEnum KeyNoConvert = 123
+  fromEnum KeyYen = 125
+  fromEnum KeyABNT_C2 = 126
+  fromEnum KeyNumpadEquals = 141
+  fromEnum KeyPrevTrack = 144
+  fromEnum KeyAt = 145
+  fromEnum KeyColon = 146
+  fromEnum KeyUnderline = 147
+  fromEnum KeyKanji = 148
+  fromEnum KeyStop = 149
+  fromEnum KeyAX = 150
+  fromEnum KeyUnlabeled = 151
+  fromEnum KeyNextTrack = 153
+  fromEnum KeyNumpadEnter = 156
+  fromEnum KeyRightControl = 157
+  fromEnum KeyMute = 160
+  fromEnum KeyCalculator = 161
+  fromEnum KeyPlayPause = 162
+  fromEnum KeyMediaStop = 164
+  fromEnum KeyVolumeDown = 174
+  fromEnum KeyVolumeUp = 176
+  fromEnum KeyWebHome = 178
+  fromEnum KeyNumpadComma = 179
+  fromEnum KeyDivide = 181
+  fromEnum KeySysRq = 183
+  fromEnum KeyRightAlt = 184
+  fromEnum KeyPause = 197
+  fromEnum KeyHome = 199
+  fromEnum KeyArrowUp = 200
+  fromEnum KeyPageUp = 201
+  fromEnum KeyArrowLeft = 203
+  fromEnum KeyArrowRight = 205
+  fromEnum KeyEnd = 207
+  fromEnum KeyArrowDown = 208
+  fromEnum KeyPageDown = 209
+  fromEnum KeyInsert = 210
+  fromEnum KeyDelete = 211
+  fromEnum KeyLeftWindows = 219
+  fromEnum KeyRightWindows = 220
+  fromEnum KeyAppMenu = 221
+  fromEnum KeyPower = 222
+  fromEnum KeySleep = 223
+  fromEnum KeyWake = 227
+  fromEnum KeyWebSearch = 229
+  fromEnum KeyWebFavorites = 230
+  fromEnum KeyWebRefresh = 231
+  fromEnum KeyWebStop = 232
+  fromEnum KeyWebForward = 233
+  fromEnum KeyWebBack = 234
+  fromEnum KeyMyComputer = 235
+  fromEnum KeyMail = 236
+  fromEnum KeyMediaSelect = 237
+
+  toEnum 1 = KeyEscape
+  toEnum 2 = KeyOne
+  toEnum 3 = KeyTwo
+  toEnum 4 = KeyThree
+  toEnum 5 = KeyFour
+  toEnum 6 = KeyFive
+  toEnum 7 = KeySix
+  toEnum 8 = KeySeven
+  toEnum 9 = KeyEight
+  toEnum 10 = KeyNine
+  toEnum 11 = KeyZero
+  toEnum 12 = KeyMinus
+  toEnum 13 = KeyEquals
+  toEnum 14 = KeyBackspace
+  toEnum 15 = KeyTab
+  toEnum 16 = KeyQ
+  toEnum 17 = KeyW
+  toEnum 18 = KeyE
+  toEnum 19 = KeyR
+  toEnum 20 = KeyT
+  toEnum 21 = KeyY
+  toEnum 22 = KeyU
+  toEnum 23 = KeyI
+  toEnum 24 = KeyO
+  toEnum 25 = KeyP
+  toEnum 26 = KeyLeftBracket
+  toEnum 27 = KeyRightBracket
+  toEnum 28 = KeyReturn
+  toEnum 29 = KeyLeftControl
+  toEnum 30 = KeyA
+  toEnum 31 = KeyS
+  toEnum 32 = KeyD
+  toEnum 33 = KeyF
+  toEnum 34 = KeyG
+  toEnum 35 = KeyH
+  toEnum 36 = KeyJ
+  toEnum 37 = KeyK
+  toEnum 38 = KeyL
+  toEnum 39 = KeySemicolon
+  toEnum 40 = KeyApostrophe
+  toEnum 41 = KeyGrave
+  toEnum 42 = KeyLeftShift
+  toEnum 43 = KeyBackslash
+  toEnum 44 = KeyZ
+  toEnum 45 = KeyX
+  toEnum 46 = KeyC
+  toEnum 47 = KeyV
+  toEnum 48 = KeyB
+  toEnum 49 = KeyN
+  toEnum 50 = KeyM
+  toEnum 51 = KeyComma
+  toEnum 52 = KeyPeriod
+  toEnum 53 = KeySlash
+  toEnum 54 = KeyRightShift
+  toEnum 55 = KeyMultiply
+  toEnum 56 = KeyLeftAlt
+  toEnum 57 = KeySpace
+  toEnum 58 = KeyCapital
+  toEnum 59 = KeyF1
+  toEnum 60 = KeyF2
+  toEnum 61 = KeyF3
+  toEnum 62 = KeyF4
+  toEnum 63 = KeyF5
+  toEnum 64 = KeyF6
+  toEnum 65 = KeyF7
+  toEnum 66 = KeyF8
+  toEnum 67 = KeyF9
+  toEnum 68 = KeyF10
+  toEnum 69 = KeyNumLock
+  toEnum 70 = KeyScrollLock
+  toEnum 71 = KeyNumpad7
+  toEnum 72 = KeyNumpad8
+  toEnum 73 = KeyNumpad9
+  toEnum 74 = KeySubtract
+  toEnum 75 = KeyNumpad4
+  toEnum 76 = KeyNumpad5
+  toEnum 77 = KeyNumpad6
+  toEnum 78 = KeyAdd
+  toEnum 79 = KeyNumpad1
+  toEnum 80 = KeyNumpad2
+  toEnum 81 = KeyNumpad3
+  toEnum 82 = KeyNumpad0
+  toEnum 83 = KeyDecimal
+  toEnum 86 = KeyOEM_102
+  toEnum 87 = KeyF11
+  toEnum 88 = KeyF12
+  toEnum 100 = KeyF13
+  toEnum 101 = KeyF14
+  toEnum 102 = KeyF15
+  toEnum 112 = KeyKana
+  toEnum 115 = KeyABNT_C1
+  toEnum 121 = KeyConvert
+  toEnum 123 = KeyNoConvert
+  toEnum 125 = KeyYen
+  toEnum 126 = KeyABNT_C2
+  toEnum 141 = KeyNumpadEquals
+  toEnum 144 = KeyPrevTrack
+  toEnum 145 = KeyAt
+  toEnum 146 = KeyColon
+  toEnum 147 = KeyUnderline
+  toEnum 148 = KeyKanji
+  toEnum 149 = KeyStop
+  toEnum 150 = KeyAX
+  toEnum 151 = KeyUnlabeled
+  toEnum 153 = KeyNextTrack
+  toEnum 156 = KeyNumpadEnter
+  toEnum 157 = KeyRightControl
+  toEnum 160 = KeyMute
+  toEnum 161 = KeyCalculator
+  toEnum 162 = KeyPlayPause
+  toEnum 164 = KeyMediaStop
+  toEnum 174 = KeyVolumeDown
+  toEnum 176 = KeyVolumeUp
+  toEnum 178 = KeyWebHome
+  toEnum 179 = KeyNumpadComma
+  toEnum 181 = KeyDivide
+  toEnum 183 = KeySysRq
+  toEnum 184 = KeyRightAlt
+  toEnum 197 = KeyPause
+  toEnum 199 = KeyHome
+  toEnum 200 = KeyArrowUp
+  toEnum 201 = KeyPageUp
+  toEnum 203 = KeyArrowLeft
+  toEnum 205 = KeyArrowRight
+  toEnum 207 = KeyEnd
+  toEnum 208 = KeyArrowDown
+  toEnum 209 = KeyPageDown
+  toEnum 210 = KeyInsert
+  toEnum 211 = KeyDelete
+  toEnum 219 = KeyLeftWindows
+  toEnum 220 = KeyRightWindows
+  toEnum 221 = KeyAppMenu
+  toEnum 222 = KeyPower
+  toEnum 223 = KeySleep
+  toEnum 227 = KeyWake
+  toEnum 229 = KeyWebSearch
+  toEnum 230 = KeyWebFavorites
+  toEnum 231 = KeyWebRefresh
+  toEnum 232 = KeyWebStop
+  toEnum 233 = KeyWebForward
+  toEnum 234 = KeyWebBack
+  toEnum 235 = KeyMyComputer
+  toEnum 236 = KeyMail
+  toEnum 237 = KeyMediaSelect
+  toEnum unmatched = error ("EnumKeyScan.toEnum: Cannot match " ++ show unmatched)
+ HGamer3D/Bindings/CEGUI/EnumLoggingLevel.hs view
@@ -0,0 +1,56 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumLoggingLevel.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumLoggingLevel.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumLoggingLevel where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumLoggingLevel =
+   -- | Only actual error conditions will be logged. 
+    LoggingLevelErrors
+   -- | Warnings will be logged as well. 
+                         | LoggingLevelWarnings
+   -- | Basic events will be logged (default level). 
+                         | LoggingLevelStandard
+   -- | Useful tracing (object creations etc) information will be logged. 
+                         | LoggingLevelInformative
+   -- | Mostly everything gets logged (use for heavy tracing only, log WILL be big). 
+                         | LoggingLevelInsane
+                      deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumMouseButton.hs view
@@ -0,0 +1,60 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumMouseButton.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumMouseButton.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumMouseButton where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumMouseButton =
+   -- | The left mouse button. 
+    MouseLeftButton
+   -- | The right mouse button. 
+                        | MouseRightButton
+   -- | The middle mouse button. 
+                        | MouseMiddleButton
+   -- | The first 'extra' mouse button. 
+                        | MouseX1Button
+   -- | The second 'extra' mouse button. 
+                        | MouseX2Button
+   -- | Value that equals the number of mouse buttons supported by CEGUI
+                        | MouseMouseButtonCount
+   -- | Value set for no mouse button. NB: This is not 0, do not assume! 
+                        | MouseNoButton
+                     deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumQuadSplitMode.hs view
@@ -0,0 +1,50 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumQuadSplitMode.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumQuadSplitMode.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumQuadSplitMode where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumQuadSplitMode =
+   -- | Diagonal split goes from top-left to bottom-right. 
+    TopLeftToBottomRight
+   -- | Diagonal split goes from bottom-left to top-right. 
+                          | BottomLeftToTopRight
+                       deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumSelectionMode.hs view
@@ -0,0 +1,66 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumSelectionMode.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumSelectionMode.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumSelectionMode where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumSelectionMode =
+   -- | 
+    SelectionModeRowSingle
+   -- | 
+                          | SelectionModeRowMultiple
+   -- | 
+                          | SelectionModeCellSingle
+   -- | 
+                          | SelectionModeCellMultiple
+   -- | 
+                          | SelectionModeNominatedColumnSingle
+   -- | 
+                          | SelectionModeNominatedColumnMultiple
+   -- | 
+                          | SelectionModeColumnSingle
+   -- | 
+                          | SelectionModeColumnMultiple
+   -- | 
+                          | SelectionModeNominatedRowSingle
+   -- | 
+                          | SelectionModeNominatedRowMultiple
+                       deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumSortDirection.hs view
@@ -0,0 +1,52 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumSortDirection.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumSortDirection.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumSortDirection where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumSortDirection =
+   -- | Items under this segment should not be sorted. 
+    SortDirectionNone
+   -- | Items under this segment should be sorted in ascending order. 
+                          | SortDirectionAscending
+   -- | Items under this segment should be sorted in descending order. 
+                          | SortDirectionDescending
+                       deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumSystemKey.hs view
@@ -0,0 +1,81 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumSystemKey.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumSystemKey.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumSystemKey where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumSystemKey =
+   -- | The left mouse button. 
+    SystemKeyLeftMouse
+   -- | The right mouse button. 
+                      | SystemKeyRightMouse
+   -- | Either shift key. 
+                      | SystemKeyShift
+   -- | Either control key. 
+                      | SystemKeyControl
+   -- | The middle mouse button. 
+                      | SystemKeyMiddleMouse
+   -- | The first 'extra' mouse button. 
+                      | SystemKeyX1Mouse
+   -- | The second 'extra' mouse button. 
+                      | SystemKeyX2Mouse
+   -- | Either alt key. 
+                      | SystemKeyAlt
+                   deriving (Eq)
+instance Enum EnumSystemKey where
+  fromEnum SystemKeyLeftMouse = 1
+  fromEnum SystemKeyRightMouse = 2
+  fromEnum SystemKeyShift = 4
+  fromEnum SystemKeyControl = 8
+  fromEnum SystemKeyMiddleMouse = 16
+  fromEnum SystemKeyX1Mouse = 32
+  fromEnum SystemKeyX2Mouse = 64
+  fromEnum SystemKeyAlt = 128
+
+  toEnum 1 = SystemKeyLeftMouse
+  toEnum 2 = SystemKeyRightMouse
+  toEnum 4 = SystemKeyShift
+  toEnum 8 = SystemKeyControl
+  toEnum 16 = SystemKeyMiddleMouse
+  toEnum 32 = SystemKeyX1Mouse
+  toEnum 64 = SystemKeyX2Mouse
+  toEnum 128 = SystemKeyAlt
+  toEnum unmatched = error ("EnumSystemKey.toEnum: Cannot match " ++ show unmatched)
+ HGamer3D/Bindings/CEGUI/EnumTabPanePosition.hs view
@@ -0,0 +1,50 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumTabPanePosition.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumTabPanePosition.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumTabPanePosition where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumTabPanePosition =
+   -- | 
+    TabPanePositionTop
+   -- | 
+                            | TabPanePositionBottom
+                         deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumTextInputMode.hs view
@@ -0,0 +1,54 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumTextInputMode.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumTextInputMode.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumTextInputMode where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumTextInputMode =
+   -- | Floating point decimal. 
+    TextInputModeFloatingPoint
+   -- | Integer decimal. 
+                          | TextInputModeInteger
+   -- | Hexadecimal. 
+                          | TextInputModeHexadecimal
+   -- | Octal. 
+                          | TextInputModeOctal
+                       deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumTipState.hs view
@@ -0,0 +1,54 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumTipState.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumTipState.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumTipState where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumTipState =
+   -- | Tooltip
+    TipStateInactive
+   -- | Tooltip
+                     | TipStateActive
+   -- | Tooltip
+                     | TipStateFadeIn
+   -- | Tooltip
+                     | TipStateFadeOut
+                  deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumVerticalAlignment.hs view
@@ -0,0 +1,52 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumVerticalAlignment.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumVerticalAlignment.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumVerticalAlignment where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumVerticalAlignment =
+   -- |  Window
+    VA_TOP
+   -- |  Window
+                              | VA_CENTRE
+   -- |  Window
+                              | VA_BOTTOM
+                           deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/EnumWindowUpdateMode.hs view
@@ -0,0 +1,52 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\EnumWindowUpdateMode.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- EnumWindowUpdateMode.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.EnumWindowUpdateMode where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+data EnumWindowUpdateMode =
+   -- | Always call the Window::update
+    WUM_ALWAYS
+   -- | Never call the Window::update
+                             | WUM_NEVER
+   -- | Only call the Window::update
+                             | WUM_VISIBLE
+                          deriving (Enum,Eq)
+ HGamer3D/Bindings/CEGUI/StructHG3DClass.hs view
@@ -0,0 +1,59 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\StructHG3DClass.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- StructHG3DClass.chs
+
+-- 
+
+module HGamer3D.Bindings.CEGUI.StructHG3DClass where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+
+import Data.Bits
+import HGamer3D.Data.HG3DClass
+
+type HG3DClassPtr = Ptr (HG3DClass)
+{-# LINE 46 ".\\HGamer3D\\Bindings\\CEGUI\\StructHG3DClass.chs" #-}
+
+withHG3DClass :: HG3DClass -> (HG3DClassPtr -> IO b) -> IO b
+withHG3DClass = with
+
+peekHG3DClass :: HG3DClassPtr -> IO HG3DClass
+peekHG3DClass = peek
+
+
+
+ HGamer3D/Bindings/CEGUI/Utils.hs view
@@ -0,0 +1,136 @@+-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell)
+-- Edit the ORIGNAL .chs file instead!
+
+
+{-# LINE 1 ".\\HGamer3D\\Bindings\\CEGUI\\Utils.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+
+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+
+
+-- Utils.hs
+
+-- Marshalling Utilities
+
+module HGamer3D.Bindings.CEGUI.Utils where
+
+import Foreign
+import Foreign.Ptr
+import Foreign.C
+
+import HGamer3D.Data.HG3DClass
+import HGamer3D.Data.Vector
+import HGamer3D.Data.Colour
+import HGamer3D.Data.Angle
+
+
+
+import Control.Monad (liftM)
+
+-- Strings with explicit length
+--
+withCStringLenIntConv :: Num n => String -> ((CString, n) -> IO a) -> IO a
+withCStringLenIntConv s f    = withCStringLen s $ \(p, n) -> f (p, fromIntegral n)
+
+peekCStringLenIntConv :: Integral n => (CString, n) -> IO String
+peekCStringLenIntConv (s, n) = peekCStringLen (s, fromIntegral n)
+
+-- Marshalling of numerals
+--
+
+withIntConv   :: (Storable b, Integral a, Integral b) 
+              => a -> (Ptr b -> IO c) -> IO c
+withIntConv    = with . fromIntegral
+
+withFloatConv :: (Storable b, RealFloat a, RealFloat b) 
+              => a -> (Ptr b -> IO c) -> IO c
+withFloatConv  = with . realToFrac
+
+peekIntConv   :: (Storable a, Integral a, Integral b) 
+              => Ptr a -> IO b
+peekIntConv    = liftM fromIntegral . peek
+
+peekFloatConv :: (Storable a, RealFloat a, RealFloat b) 
+              => Ptr a -> IO b
+peekFloatConv  = liftM realToFrac . peek
+
+
+-- String Conversion functions
+--
+
+withCUString b f = withCWString b (f . castPtr)
+peekCUString = peekCWString . castPtr
+alloc64k = allocaBytes (1024 * 64)
+
+-- c2hs replacements of utility functions, to get rid of annoying c2hs
+-- deprecated messages
+
+-- Passing Enums
+
+cIntFromEnum :: Enum a => a -> CInt
+cIntFromEnum = cIntConv . fromEnum
+
+cIntToEnum :: Enum a => CInt -> a
+cIntToEnum = toEnum . cIntConv
+
+
+-- Passing Booleans by reference
+--
+
+withBoolUtil :: (Integral a, Storable a) => Bool -> (Ptr a -> IO b) -> IO b
+withBoolUtil  = with . fromBool
+
+peekBoolUtil :: (Integral a, Storable a) => Ptr a -> IO Bool
+peekBoolUtil  = liftM toBool . peek
+
+
+-- Passing enums by reference
+--
+
+withEnumUtil :: (Enum a, Integral b, Storable b) => a -> (Ptr b -> IO c) -> IO c
+withEnumUtil  = with . cFromEnum
+
+peekEnumUtil :: (Enum a, Integral b, Storable b) => Ptr b -> IO a
+peekEnumUtil  = liftM cToEnum . peek
+
+-- Conversion routines
+-- -------------------
+
+-- |Integral conversion
+--
+cIntConv :: (Integral a, Integral b) => a -> b
+cIntConv  = fromIntegral
+
+-- |Floating conversion
+--
+cFloatConv :: (RealFloat a, RealFloat b) => a -> b
+cFloatConv  = realToFrac
+
+-- |Convert a C enumeration to Haskell.
+--
+cToEnum :: (Integral i, Enum e) => i -> e
+cToEnum  = toEnum . fromIntegral
+
+-- |Convert a Haskell enumeration to C.
+--
+cFromEnum :: (Enum e, Integral i) => e -> i
+cFromEnum  = fromIntegral . fromEnum
+
+ LICENSE view
@@ -0,0 +1,13 @@+(c) 2011, 2012 Peter Althainz
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+ Setup.hs view
@@ -0,0 +1,22 @@+-- This source file is part of HGamer3D
+-- (A project to enable 3D game development in Haskell)
+-- For the latest info, see http://www.althainz.de/HGamer3D.html
+-- 
+-- (c) 2011, 2012 Peter Althainz
+-- 
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+-- 
+--     http://www.apache.org/licenses/LICENSE-2.0
+-- 
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+-- 
+-- Setup.hs
+
+import Distribution.Simple
+main = defaultMain
+ include/CEGUIDllDefines.h view
@@ -0,0 +1,41 @@+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+
+// CEGUIDllDefines.h
+
+#ifndef _HGamer3DCEGUI019_DLLDEFINES_H_
+#define _HGamer3DCEGUI019_DLLDEFINES_H_
+
+/* Cmake will define HGamer3DCEGUI019_EXPORTS on Windows when it
+configures to build a shared library. If you are going to use
+another build system on windows or create the visual studio
+projects by hand you need to define MyLibrary_EXPORTS when
+building a DLL on windows.
+*/
+
+// We are using the Visual Studio Compiler and building Shared libraries
+
+#if (defined (_WIN32)) && !(defined (__GNUC__)) 
+  #if defined(HGamer3DCEGUI019_EXPORTS)
+    #define  CEGUI_LIB_EXPORT __declspec(dllexport)
+  #else
+    #define  CEGUI_LIB_EXPORT __declspec(dllimport)
+  #endif /* HGamer3DCEGUI019_EXPORTS */
+#else /* defined (_WIN32) */
+ #define CEGUI_LIB_EXPORT
+#endif
+
+#endif /* _HGamer3DCEGUI019_DLLDEFINES_H_ */
+ include/ClassCheckbox.h view
@@ -0,0 +1,44 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassCheckbox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassCheckbox
+#define _DEFINED_HG3D_ClassCheckbox
+
+#include "ClassPtr.h"
+
+
+
+// return true if the check-box is selected (has the checkmark) 
+void cegui_chkbx_isSelected(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// set whether the check-box is selected or not 
+void cegui_chkbx_setSelected(struct hg3dclass_struct * thisclass_c, int select_c);
+
+// Constructor for Checkbox
+void cegui_chkbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Checkbox
+void cegui_chkbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassComboDropList.h view
@@ -0,0 +1,53 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassComboDropList.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassComboDropList
+#define _DEFINED_HG3D_ClassComboDropList
+
+#include "ClassPtr.h"
+
+
+
+// Initialise the Window
+void cegui_cmbdrplst_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the drop-list is 'armed' for selection. 
+void cegui_cmbdrplst_setArmed(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Return the 'armed' state of the ComboDropList
+void cegui_cmbdrplst_isArmed(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set the mode of operation for the ComboDropList
+void cegui_cmbdrplst_setAutoArmEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// returns the mode of operation for the drop-list 
+void cegui_cmbdrplst_isAutoArmEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Constructor for ComboDropList
+void cegui_cmbdrplst_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for ComboDropList
+void cegui_cmbdrplst_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassCombobox.h view
@@ -0,0 +1,177 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassCombobox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassCombobox
+#define _DEFINED_HG3D_ClassCombobox
+
+#include "ClassPtr.h"
+#include "ClassEditbox.h"
+#include "ClassPushButton.h"
+#include "ClassComboDropList.h"
+#include "ClassListboxItem.h"
+
+
+
+// returns the mode of operation for the combo box. 
+void cegui_cmbbx_getSingleClickEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// returns true if the drop down list is visible. 
+void cegui_cmbbx_isDropDownListVisible(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the EditboxCombobox
+void cegui_cmbbx_getEditbox(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the PushButtonCombobox
+void cegui_cmbbx_getPushButton(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the ComboDropListCombobox
+void cegui_cmbbx_getDropList(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// return true if the Editbox
+void cegui_cmbbx_hasInputFocus(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the Editbox
+void cegui_cmbbx_isReadOnly(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the Editbox
+void cegui_cmbbx_isTextValid(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the currently set validation string 
+void cegui_cmbbx_getValidationString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return the current position of the carat. 
+void cegui_cmbbx_getCaratIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection start point. 
+void cegui_cmbbx_getSelectionStartIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection end point. 
+void cegui_cmbbx_getSelectionEndIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the length of the current selection (in code points / characters). 
+void cegui_cmbbx_getSelectionLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the maximum text length set for this Editbox
+void cegui_cmbbx_getMaxTextLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return number of items attached to the list box. 
+void cegui_cmbbx_getItemCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the currently selected item. 
+void cegui_cmbbx_getSelectedItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the item at index position index
+void cegui_cmbbx_getListboxItemFromIndex(struct hg3dclass_struct * thisclass_c, int index_c, struct hg3dclass_struct * result_c);
+
+// Return the index of ListboxItemitem
+void cegui_cmbbx_getItemIndex(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int * result_c);
+
+// return whether list sorting is enabled 
+void cegui_cmbbx_isSortEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether the string at index position index
+void cegui_cmbbx_isItemSelected(struct hg3dclass_struct * thisclass_c, int index_c, int * result_c);
+
+// Search the list for an item with the specified text. 
+void cegui_cmbbx_findItemWithText(struct hg3dclass_struct * thisclass_c, char * text_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return whether the specified ListboxItem
+void cegui_cmbbx_isListboxItemInList(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_cmbbx_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the horizontal scroll bar is always shown. 
+void cegui_cmbbx_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Initialise the Window
+void cegui_cmbbx_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Show the drop-down list. 
+void cegui_cmbbx_showDropList(struct hg3dclass_struct * thisclass_c);
+
+// Hide the drop-down list. 
+void cegui_cmbbx_hideDropList(struct hg3dclass_struct * thisclass_c);
+
+// Set the mode of operation for the combo box. 
+void cegui_cmbbx_setSingleClickEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Specify whether the Editbox
+void cegui_cmbbx_setReadOnly(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the text validation string. 
+void cegui_cmbbx_setValidationString(struct hg3dclass_struct * thisclass_c, char * validation_string_c);
+
+// Set the current position of the carat. 
+void cegui_cmbbx_setCaratIndex(struct hg3dclass_struct * thisclass_c, int carat_pos_c);
+
+// Define the current selection for the Editbox
+void cegui_cmbbx_setSelection(struct hg3dclass_struct * thisclass_c, int start_pos_c, int end_pos_c);
+
+// set the maximum text length for this Editbox
+void cegui_cmbbx_setMaxTextLength(struct hg3dclass_struct * thisclass_c, int max_len_c);
+
+// Activate the edit box component of the Combobox
+void cegui_cmbbx_activateEditbox(struct hg3dclass_struct * thisclass_c);
+
+// Remove all items from the list. 
+void cegui_cmbbx_resetList(struct hg3dclass_struct * thisclass_c);
+
+// Add the given ListboxItem
+void cegui_cmbbx_addItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Insert an item into the list box after a specified item already in the list. 
+void cegui_cmbbx_insertItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, struct hg3dclass_struct * position_c);
+
+// Removes the given item from the list box. 
+void cegui_cmbbx_removeItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Clear the selected state for all items. 
+void cegui_cmbbx_clearAllSelections(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the list should be sorted. 
+void cegui_cmbbx_setSortingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the vertical scroll bar should always be shown. 
+void cegui_cmbbx_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the horizontal scroll bar should always be shown. 
+void cegui_cmbbx_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the select state of an attached ListboxItem
+void cegui_cmbbx_setItemSelectState(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int state_c);
+
+// Set the select state of an attached ListboxItem
+void cegui_cmbbx_setItemSelectState2(struct hg3dclass_struct * thisclass_c, int item_index_c, int state_c);
+
+// Causes the list box to update it's internal state after changes have been made to one or more attached ListboxItem
+void cegui_cmbbx_handleUpdatedListItemData(struct hg3dclass_struct * thisclass_c);
+
+// Constructor for Combobox
+void cegui_cmbbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Combobox
+void cegui_cmbbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassDefaultLogger.h view
@@ -0,0 +1,45 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassDefaultLogger.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassDefaultLogger
+#define _DEFINED_HG3D_ClassDefaultLogger
+
+#include "ClassPtr.h"
+#include "EnumLoggingLevel.h"
+
+
+
+// Constructor for DefaultLogger
+void cegui_dfltlgr_construct(struct hg3dclass_struct * result_c);
+
+// Destructor for DefaultLogger
+void cegui_dfltlgr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Add an event to the log. 
+void cegui_dfltlgr_logEvent(struct hg3dclass_struct * thisclass_c, char * message_c, enum EnumLoggingLevel level_c);
+
+// Set the name of the log file where all subsequent log entries should be written. 
+void cegui_dfltlgr_setLogFilename(struct hg3dclass_struct * thisclass_c, char * filename_c, int append_c);
+
+#endif 
+ include/ClassDefaultResourceProvider.h view
@@ -0,0 +1,47 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassDefaultResourceProvider.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassDefaultResourceProvider
+#define _DEFINED_HG3D_ClassDefaultResourceProvider
+
+#include "ClassPtr.h"
+
+
+
+// 
+void cegui_drpr_construct(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_drpr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Set the directory associated with a given resource group identifier. 
+void cegui_drpr_setResourceGroupDirectory(struct hg3dclass_struct * thisclass_c, char * resourceGroup_c, char * directory_c);
+
+// Return the directory associated with the specified resource group identifier. 
+void cegui_drpr_getResourceGroupDirectory(struct hg3dclass_struct * thisclass_c, char * resourceGroup_c, char * result_c);
+
+// clears any currently set directory for the specified resource group identifier. 
+void cegui_drpr_clearResourceGroupDirectory(struct hg3dclass_struct * thisclass_c, char * resourceGroup_c);
+
+#endif 
+ include/ClassDragContainer.h view
@@ -0,0 +1,81 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassDragContainer.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassDragContainer
+#define _DEFINED_HG3D_ClassDragContainer
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// Constructor for DragContainer
+void cegui_drgcnt_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for DragContainer
+void cegui_drgcnt_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return whether dragging is currently enabled for this DragContainer
+void cegui_drgcnt_isDraggingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether dragging is currently enabled for this DragContainer
+void cegui_drgcnt_setDraggingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Return whether the DragContainer
+void cegui_drgcnt_isBeingDragged(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the current drag threshold in pixels. 
+void cegui_drgcnt_getPixelDragThreshold(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the current drag threshold in pixels. 
+void cegui_drgcnt_setPixelDragThreshold(struct hg3dclass_struct * thisclass_c, float pixels_c);
+
+// Return the alpha value that will be set on the DragContainer
+void cegui_drgcnt_getDragAlpha(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the alpha value to be set on the DragContainer
+void cegui_drgcnt_setDragAlpha(struct hg3dclass_struct * thisclass_c, float alpha_c);
+
+// Set the Image to be used for the mouse cursor when a drag operation is in progress. 
+void cegui_drgcnt_setDragCursorImage3(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Return the WindowDragContainer
+void cegui_drgcnt_getCurrentDropTarget(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return whether sticky mode is enable or disabled. 
+void cegui_drgcnt_isStickyModeEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Enable or disable sticky mode. 
+void cegui_drgcnt_setStickyModeEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Immediately pick up the DragContainer
+void cegui_drgcnt_pickUp(struct hg3dclass_struct * thisclass_c, const int force_sticky_c, int * result_c);
+
+// Set whether the fixed dragging offset - as set with the setFixedDragOffset - function will be used, or whether the built-in positioning will be used. 
+void cegui_drgcnt_setUsingFixedDragOffset(struct hg3dclass_struct * thisclass_c, const int enable_c);
+
+// Return whether the fixed dragging offset - as set with the setFixedDragOffset function - will be used, or whether the built-in positioning will be used. 
+void cegui_drgcnt_isUsingFixedDragOffset(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+#endif 
+ include/ClassEditbox.h view
@@ -0,0 +1,92 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassEditbox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassEditbox
+#define _DEFINED_HG3D_ClassEditbox
+
+#include "ClassPtr.h"
+
+
+
+// return true if the Editbox
+void cegui_edtbx_hasInputFocus(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the Editbox
+void cegui_edtbx_isReadOnly(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the text for the Editbox
+void cegui_edtbx_isTextMasked(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the Editbox
+void cegui_edtbx_isTextValid(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the currently set validation string 
+void cegui_edtbx_getValidationString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return the current position of the carat. 
+void cegui_edtbx_getCaratIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection start point. 
+void cegui_edtbx_getSelectionStartIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection end point. 
+void cegui_edtbx_getSelectionEndIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the length of the current selection (in code points / characters). 
+void cegui_edtbx_getSelectionLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the utf32 code point used when rendering masked text. 
+void cegui_edtbx_getMaskCodePoint(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the maximum text length set for this Editbox
+void cegui_edtbx_getMaxTextLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Specify whether the Editbox
+void cegui_edtbx_setReadOnly(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Specify whether the text for the Editbox
+void cegui_edtbx_setTextMasked(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the text validation string. 
+void cegui_edtbx_setValidationString(struct hg3dclass_struct * thisclass_c, char * validation_string_c);
+
+// Set the current position of the carat. 
+void cegui_edtbx_setCaratIndex(struct hg3dclass_struct * thisclass_c, int carat_pos_c);
+
+// Define the current selection for the Editbox
+void cegui_edtbx_setSelection(struct hg3dclass_struct * thisclass_c, int start_pos_c, int end_pos_c);
+
+// set the utf32 code point used when rendering masked text. 
+void cegui_edtbx_setMaskCodePoint(struct hg3dclass_struct * thisclass_c, int code_point_c);
+
+// set the maximum text length for this Editbox
+void cegui_edtbx_setMaxTextLength(struct hg3dclass_struct * thisclass_c, int max_len_c);
+
+// Constructor for Editbox
+void cegui_edtbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Editbox
+void cegui_edtbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassEventArgs.h view
@@ -0,0 +1,38 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassEventArgs.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassEventArgs
+#define _DEFINED_HG3D_ClassEventArgs
+
+#include "ClassPtr.h"
+
+
+
+// 
+void cegui_evntargs_construct(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_evntargs_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassEventSet.h view
@@ -0,0 +1,60 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassEventSet.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassEventSet
+#define _DEFINED_HG3D_ClassEventSet
+
+#include "ClassPtr.h"
+#include "ClassEventArgs.h"
+
+
+
+// Constructor for EventSet
+void cegui_evtst_construct(struct hg3dclass_struct * result_c);
+
+// Destructor for EventSet
+void cegui_evtst_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Add a new EventEventSet
+void cegui_evtst_addEvent(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Removes the Event
+void cegui_evtst_removeEvent(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Remove all EventEventSet
+void cegui_evtst_removeAllEvents(struct hg3dclass_struct * thisclass_c);
+
+// Checks to see if an EventEventSet
+void cegui_evtst_isEventPresent(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// Fires the named event passing the given EventArgs
+void cegui_evtst_fireEvent(struct hg3dclass_struct * thisclass_c, char * name_c, struct hg3dclass_struct * args_c, char * eventNamespace_c);
+
+// Return whether the EventSet
+void cegui_evtst_isMuted(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set the mute state for this EventSet
+void cegui_evtst_setMutedState(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+#endif 
+ include/ClassFont.h view
@@ -0,0 +1,74 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassFont.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassFont
+#define _DEFINED_HG3D_ClassFont
+
+#include "ClassPtr.h"
+
+
+
+// Destructor. 
+void cegui_fnt_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return the string holding the font name. 
+void cegui_fnt_getName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return the type of the font. 
+void cegui_fnt_getTypeName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return whether this Font
+void cegui_fnt_isCodepointAvailable(struct hg3dclass_struct * thisclass_c, int cp_c, int * result_c);
+
+// Enable or disable auto-scaling for this Font
+void cegui_fnt_setAutoScaled(struct hg3dclass_struct * thisclass_c, const int auto_scaled_c);
+
+// Return whether this Font
+void cegui_fnt_isAutoScaled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the pixel line spacing value for. 
+void cegui_fnt_getLineSpacing(struct hg3dclass_struct * thisclass_c, float y_scale_c, float * result_c);
+
+// return the exact pixel height of the font. 
+void cegui_fnt_getFontHeight(struct hg3dclass_struct * thisclass_c, float y_scale_c, float * result_c);
+
+// Return the number of pixels from the top of the highest glyph to the baseline. 
+void cegui_fnt_getBaseline(struct hg3dclass_struct * thisclass_c, float y_scale_c, float * result_c);
+
+// Return the pixel width of the specified text if rendered with this Font
+void cegui_fnt_getTextExtent(struct hg3dclass_struct * thisclass_c, char * text_c, float x_scale_c, float * result_c);
+
+// Return the index of the closest text character in String textpixel
+void cegui_fnt_getCharAtPixel(struct hg3dclass_struct * thisclass_c, char * text_c, float pixel_c, float x_scale_c, int * result_c);
+
+// Return the index of the closest text character in String textstart_charpixel
+void cegui_fnt_getCharAtPixel2(struct hg3dclass_struct * thisclass_c, char * text_c, int start_char_c, float pixel_c, float x_scale_c, int * result_c);
+
+// Sets the default resource group to be used when loading font data. 
+void cegui_fnt_setDefaultResourceGroup(char * resourceGroup_c);
+
+// Returns the default resource group currently set for Fonts. 
+void cegui_fnt_getDefaultResourceGroup(char * result_c);
+
+#endif 
+ include/ClassFontManager.h view
@@ -0,0 +1,38 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassFontManager.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassFontManager
+#define _DEFINED_HG3D_ClassFontManager
+
+#include "ClassPtr.h"
+
+
+
+// Constructor. 
+void cegui_fntmgr_construct(struct hg3dclass_struct * result_c);
+
+// Destructor. 
+void cegui_fntmgr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassFrameWindow.h view
@@ -0,0 +1,105 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassFrameWindow.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassFrameWindow
+#define _DEFINED_HG3D_ClassFrameWindow
+
+#include "ClassPtr.h"
+#include "ClassPushButton.h"
+
+
+
+// Initialises the Window
+void cegui_frmwndw_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Return whether this window is sizable. Note that this requires that the window have an enabled frame and that sizing itself is enabled. 
+void cegui_frmwndw_isSizingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the frame for this window is enabled. 
+void cegui_frmwndw_isFrameEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the title bar for this window is enabled. 
+void cegui_frmwndw_isTitleBarEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this close button for this window is enabled. 
+void cegui_frmwndw_isCloseButtonEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether roll up (a.k.a shading) is enabled for this window. 
+void cegui_frmwndw_isRollupEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the window is currently rolled up (a.k.a shaded). 
+void cegui_frmwndw_isRolledup(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the thickness of the sizing border. 
+void cegui_frmwndw_getSizingBorderThickness(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Enables or disables sizing for this window. 
+void cegui_frmwndw_setSizingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Enables or disables the frame for this window. 
+void cegui_frmwndw_setFrameEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Enables or disables the title bar for the frame window. 
+void cegui_frmwndw_setTitleBarEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Enables or disables the close button for the frame window. 
+void cegui_frmwndw_setCloseButtonEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Enables or disables roll-up (shading) for this window. 
+void cegui_frmwndw_setRollupEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Toggles the state of the window between rolled-up (shaded) and normal sizes. This requires roll-up to be enabled. 
+void cegui_frmwndw_toggleRollup(struct hg3dclass_struct * thisclass_c);
+
+// Set the size of the sizing border for this window. 
+void cegui_frmwndw_setSizingBorderThickness(struct hg3dclass_struct * thisclass_c, float pixels_c);
+
+// Return whether this FrameWindow
+void cegui_frmwndw_isDragMovingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether this FrameWindow
+void cegui_frmwndw_setDragMovingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the image to be used for the north-south sizing mouse cursor. 
+void cegui_frmwndw_setNSSizingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Set the image to be used for the east-west sizing mouse cursor. 
+void cegui_frmwndw_setEWSizingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Set the image to be used for the northwest-southeast sizing mouse cursor. 
+void cegui_frmwndw_setNWSESizingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Set the image to be used for the northeast-southwest sizing mouse cursor. 
+void cegui_frmwndw_setNESWSizingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Return a pointer to the close button component widget for this FrameWindow
+void cegui_frmwndw_getCloseButton(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Constructor for FrameWindow
+void cegui_frmwndw_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for FramwWindow objects. 
+void cegui_frmwndw_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassHG3DEventController.h view
@@ -0,0 +1,48 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassHG3DEventController.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassHG3DEventController
+#define _DEFINED_HG3D_ClassHG3DEventController
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// 
+void construct(struct hg3dclass_struct * result_c);
+
+// 
+void destruct(struct hg3dclass_struct * thisclass_c);
+
+// 
+void pushEvent(struct hg3dclass_struct * thisclass_c, char * name_c, char * sender_c, struct hg3dclass_struct * window_c);
+
+// 
+void eventsAvailable(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// 
+void popEvent(struct hg3dclass_struct * thisclass_c, char * name_c, char * sender_c, struct hg3dclass_struct * window_c);
+
+#endif 
+ include/ClassHG3DEventStaticFunctions.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassHG3DEventStaticFunctions.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassHG3DEventStaticFunctions
+#define _DEFINED_HG3D_ClassHG3DEventStaticFunctions
+
+#include "ClassPtr.h"
+#include "ClassEventSet.h"
+
+
+
+// 
+void cegui_hg3devtsf_subscribeScriptedEvent(struct hg3dclass_struct * window_c, char * name_c, char * subscriber_name_c);
+
+#endif 
+ include/ClassHG3DListboxStaticFunctions.h view
@@ -0,0 +1,40 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassHG3DListboxStaticFunctions.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassHG3DListboxStaticFunctions
+#define _DEFINED_HG3D_ClassHG3DListboxStaticFunctions
+
+#include "ClassPtr.h"
+#include "ClassListbox.h"
+#include "ClassCombobox.h"
+
+
+
+// 
+void cegui_hg3dlstbxsf_listboxAddItem(struct hg3dclass_struct * listbox_c, char * itemString_c);
+
+// 
+void cegui_hg3dlstbxsf_comboboxAddItem(struct hg3dclass_struct * combobox_c, char * itemString_c);
+
+#endif 
+ include/ClassHG3DWindowStaticFunctions.h view
@@ -0,0 +1,81 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassHG3DWindowStaticFunctions.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassHG3DWindowStaticFunctions
+#define _DEFINED_HG3D_ClassHG3DWindowStaticFunctions
+
+#include "ClassPtr.h"
+#include "ClassPushButton.h"
+#include "ClassWindow.h"
+#include "ClassListbox.h"
+#include "ClassCombobox.h"
+#include "ClassCheckbox.h"
+#include "ClassRadioButton.h"
+#include "ClassEditbox.h"
+#include "ClassMultiLineEditbox.h"
+#include "ClassFrameWindow.h"
+#include "ClassProgressBar.h"
+#include "ClassSlider.h"
+#include "ClassSpinner.h"
+#include "ClassMultiColumnList.h"
+
+
+
+// 
+void cegui_hg3dwsfs_castWindowToPushButton(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToListbox(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToCombobox(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToCheckbox(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToRadioButton(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToEditbox(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToMultiLineEditbox(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToFrameWindow(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToProgressBar(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToSlider(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToSpinner(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_hg3dwsfs_castWindowToMultiColumnList(struct hg3dclass_struct * window_c, struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassImageCodec.h view
@@ -0,0 +1,41 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassImageCodec.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassImageCodec
+#define _DEFINED_HG3D_ClassImageCodec
+
+#include "ClassPtr.h"
+
+
+
+// Destructor. 
+void cegui_imgcdc_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return the name of the image codec object. 
+void cegui_imgcdc_getIdentifierString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return the list of image file format supported. 
+void cegui_imgcdc_getSupportedFormat(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+#endif 
+ include/ClassImageset.h view
@@ -0,0 +1,77 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassImageset.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassImageset
+#define _DEFINED_HG3D_ClassImageset
+
+#include "ClassPtr.h"
+
+
+
+// Construct a new Imageset
+void cegui_imgst_construct(char * name_c, char * filename_c, char * resourceGroup_c, struct hg3dclass_struct * result_c);
+
+// Destroys Imageset
+void cegui_imgst_destruct(struct hg3dclass_struct * thisclass_c);
+
+// return String object holding the name of the Imageset
+void cegui_imgst_getName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return number of images defined for this Imageset
+void cegui_imgst_getImageCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// return true if an Image with the specified name exists. 
+void cegui_imgst_isImageDefined(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// remove the definition for the Image with the specified name. If no such Image exists, nothing happens. 
+void cegui_imgst_undefineImage(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Removes the definitions for all Image objects currently defined in the Imageset
+void cegui_imgst_undefineAllImages(struct hg3dclass_struct * thisclass_c);
+
+// return the width of the named image. 
+void cegui_imgst_getImageWidth(struct hg3dclass_struct * thisclass_c, char * name_c, float * result_c);
+
+// return the height of the named image. 
+void cegui_imgst_getImageHeight(struct hg3dclass_struct * thisclass_c, char * name_c, float * result_c);
+
+// return the x rendering offset for the named image. 
+void cegui_imgst_getImageOffsetX(struct hg3dclass_struct * thisclass_c, char * name_c, float * result_c);
+
+// return the y rendering offset for the named image. 
+void cegui_imgst_getImageOffsetY(struct hg3dclass_struct * thisclass_c, char * name_c, float * result_c);
+
+// Return whether this Imageset
+void cegui_imgst_isAutoScaled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Enable or disable auto-scaling for this Imageset
+void cegui_imgst_setAutoScalingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Sets the default resource group to be used when loading imageset data. 
+void cegui_imgst_setDefaultResourceGroup(char * resourceGroup_c);
+
+// Returns the default resource group currently set for Imagesets. 
+void cegui_imgst_getDefaultResourceGroup(char * result_c);
+
+#endif 
+ include/ClassItemEntry.h view
@@ -0,0 +1,59 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassItemEntry.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassItemEntry
+#define _DEFINED_HG3D_ClassItemEntry
+
+#include "ClassPtr.h"
+
+
+
+// Returns whether this item is selected or not. 
+void cegui_itmentr_isSelected(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether this item is selectable or not. 
+void cegui_itmentr_isSelectable(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Sets the selection state of this item (on/off). If this item is not selectable this function does nothing. 
+void cegui_itmentr_setSelected(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Selects the item. 
+void cegui_itmentr_select(struct hg3dclass_struct * thisclass_c);
+
+// Deselects the item. 
+void cegui_itmentr_deselect(struct hg3dclass_struct * thisclass_c);
+
+// Set the selection state for this ListItem. Internal version. Should NOT be used by client code. 
+void cegui_itmentr_setSelected_impl(struct hg3dclass_struct * thisclass_c, int state_c, int notify_c);
+
+// Sets whether this item will be selectable. 
+void cegui_itmentr_setSelectable(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Constructor for ItemEntry
+void cegui_itmentr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for ItemEntry
+void cegui_itmentr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassItemListbox.h view
@@ -0,0 +1,87 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassItemListbox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassItemListbox
+#define _DEFINED_HG3D_ClassItemListbox
+
+#include "ClassPtr.h"
+#include "ClassItemEntry.h"
+
+
+
+// Returns the number of selected items in this ItemListbox
+void cegui_itmlstbx_getSelectedCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns a pointer to the last selected item. 
+void cegui_itmlstbx_getLastSelectedItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Returns a pointer to the first selected item. 
+void cegui_itmlstbx_getFirstSelectedItem(struct hg3dclass_struct * thisclass_c, int start_index_c, struct hg3dclass_struct * result_c);
+
+// Returns a pointer to the next seleced item relative to a previous call to getFirstSelectedItem or getNextSelectedItem. 
+void cegui_itmlstbx_getNextSelectedItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Returns a pointer to the next selected item after the item 'start_item' given. 
+void cegui_itmlstbx_getNextSelectedItemAfter(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Returns 'true' if multiple selections are allowed. 'false' if not. 
+void cegui_itmlstbx_isMultiSelectEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns 'true' if the item at the given index is selectable and currently selected. 
+void cegui_itmlstbx_isItemSelected(struct hg3dclass_struct * thisclass_c, int index_c, int * result_c);
+
+// 
+void cegui_itmlstbx_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Set whether or not multiple selections should be allowed. 
+void cegui_itmlstbx_setMultiSelectEnabled(struct hg3dclass_struct * thisclass_c, int state_c);
+
+// Clears all selections. 
+void cegui_itmlstbx_clearAllSelections(struct hg3dclass_struct * thisclass_c);
+
+// Select a range of items. 
+void cegui_itmlstbx_selectRange(struct hg3dclass_struct * thisclass_c, int a_c, int z_c);
+
+// Select all items. Does nothing if multiselect is disabled. 
+void cegui_itmlstbx_selectAllItems(struct hg3dclass_struct * thisclass_c);
+
+// Constructor for the ItemListbox
+void cegui_itmlstbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the ItemListbox
+void cegui_itmlstbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Setup size and position for the item widgets attached to this ItemListbox
+void cegui_itmlstbx_layoutItemWidgets(struct hg3dclass_struct * thisclass_c);
+
+// Return whether this window was inherited from the given class name at some point in the inheritance hierarchy. 
+void cegui_itmlstbx_testClassName_impl(struct hg3dclass_struct * thisclass_c, char * class_name_c, int * result_c);
+
+// Notify this ItemListbox
+void cegui_itmlstbx_notifyItemClicked(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * li_c);
+
+// Notify this ItemListbox
+void cegui_itmlstbx_notifyItemSelectState(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * li_c, int state_c);
+
+#endif 
+ include/ClassListHeader.h view
@@ -0,0 +1,130 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassListHeader.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassListHeader
+#define _DEFINED_HG3D_ClassListHeader
+
+#include "ClassPtr.h"
+#include "ClassListHeaderSegment.h"
+#include "EnumSortDirection.h"
+
+
+
+// Return the number of columns or segments attached to the header. 
+void cegui_lsthdr_getColumnCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the ListHeaderSegment
+void cegui_lsthdr_getSegmentFromColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, struct hg3dclass_struct * result_c);
+
+// Return the ListHeaderSegment
+void cegui_lsthdr_getSegmentFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c, struct hg3dclass_struct * result_c);
+
+// Return the ListHeaderSegment
+void cegui_lsthdr_getSortSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the zero based column index of the specified segment. 
+void cegui_lsthdr_getColumnFromSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, unsigned int * result_c);
+
+// Return the zero based column index of the segment with the specified ID. 
+void cegui_lsthdr_getColumnFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c, unsigned int * result_c);
+
+// Return the zero based index of the current sort column. There must be at least one segment/column to successfully call this method. 
+void cegui_lsthdr_getSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the zero based column index of the segment with the specified text. 
+void cegui_lsthdr_getColumnWithText(struct hg3dclass_struct * thisclass_c, char * text_c, unsigned int * result_c);
+
+// Return the pixel offset to the given ListHeaderSegment
+void cegui_lsthdr_getPixelOffsetToSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, float * result_c);
+
+// Return the pixel offset to the ListHeaderSegment
+void cegui_lsthdr_getPixelOffsetToColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, float * result_c);
+
+// Return the total pixel width of all attached segments. 
+void cegui_lsthdr_getTotalSegmentsPixelExtent(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the currently set sort direction. 
+void cegui_lsthdr_getSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection * result_c);
+
+// Return whether user manipulation of the sort column & direction are enabled. 
+void cegui_lsthdr_isSortingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the user may size column segments. 
+void cegui_lsthdr_isColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the user may modify the order of the segments. 
+void cegui_lsthdr_isColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the current segment offset value. This value is used to implement scrolling of the header segments within the ListHeader
+void cegui_lsthdr_getSegmentOffset(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set whether user manipulation of the sort column and direction is enabled. 
+void cegui_lsthdr_setSortingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current sort direction. 
+void cegui_lsthdr_setSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection direction_c);
+
+// Set the column segment to be used as the sort column. 
+void cegui_lsthdr_setSortSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c);
+
+// Set the column to be used as the sort column. 
+void cegui_lsthdr_setSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c);
+
+// Set the column to to be used for sorting via its ID code. 
+void cegui_lsthdr_setSortColumnFromID(struct hg3dclass_struct * thisclass_c, unsigned int id_c);
+
+// Set whether columns may be sized by the user. 
+void cegui_lsthdr_setColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether columns may be reordered by the user via drag and drop. 
+void cegui_lsthdr_setColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Removes a column segment from the ListHeader
+void cegui_lsthdr_removeColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c);
+
+// Remove the specified segment from the ListHeader
+void cegui_lsthdr_removeSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c);
+
+// Moves a column segment into a new position. 
+void cegui_lsthdr_moveColumn(struct hg3dclass_struct * thisclass_c, unsigned int column_c, unsigned int position_c);
+
+// Move a column segment to a new position. 
+void cegui_lsthdr_moveColumn2(struct hg3dclass_struct * thisclass_c, unsigned int column_c, struct hg3dclass_struct * position_c);
+
+// Moves a segment into a new position. 
+void cegui_lsthdr_moveSegment(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, unsigned int position_c);
+
+// Move a segment to a new position. 
+void cegui_lsthdr_moveSegment2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * segment_c, struct hg3dclass_struct * position_c);
+
+// Set the current base segment offset. (This implements scrolling of the header segments within the header area). 
+void cegui_lsthdr_setSegmentOffset(struct hg3dclass_struct * thisclass_c, float offset_c);
+
+// Constructor for the list header base class. 
+void cegui_lsthdr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the list header base class. 
+void cegui_lsthdr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassListHeaderSegment.h view
@@ -0,0 +1,84 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassListHeaderSegment.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassListHeaderSegment
+#define _DEFINED_HG3D_ClassListHeaderSegment
+
+#include "ClassPtr.h"
+#include "EnumSortDirection.h"
+
+
+
+// Return whether this segment can be sized. 
+void cegui_lsthdrsgm_isSizingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the current sort direction set for this segment. 
+void cegui_lsthdrsgm_getSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection * result_c);
+
+// Return whether drag moving is enabled for this segment. 
+void cegui_lsthdrsgm_isDragMovingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the segment is clickable. 
+void cegui_lsthdrsgm_isClickable(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the segment is currently in its hovering state. 
+void cegui_lsthdrsgm_isSegmentHovering(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the segment is currently in its pushed state. 
+void cegui_lsthdrsgm_isSegmentPushed(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the splitter is currently in its hovering state. 
+void cegui_lsthdrsgm_isSplitterHovering(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the segment is currently being drag-moved. 
+void cegui_lsthdrsgm_isBeingDragMoved(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the segment is currently being drag-moved. 
+void cegui_lsthdrsgm_isBeingDragSized(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether this segment can be sized. 
+void cegui_lsthdrsgm_setSizingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current sort direction set for this segment. 
+void cegui_lsthdrsgm_setSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection sort_dir_c);
+
+// Set whether drag moving is allowed for this segment. 
+void cegui_lsthdrsgm_setDragMovingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the segment is clickable. 
+void cegui_lsthdrsgm_setClickable(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// 
+void cegui_lsthdrsgm_setSizingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// 
+void cegui_lsthdrsgm_setMovingCursorImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+// Constructor for list header segment base class. 
+void cegui_lsthdrsgm_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for list header segment base class. 
+void cegui_lsthdrsgm_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassListbox.h view
@@ -0,0 +1,142 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassListbox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassListbox
+#define _DEFINED_HG3D_ClassListbox
+
+#include "ClassPtr.h"
+#include "ClassListboxItem.h"
+#include "ClassScrollbar.h"
+
+
+
+// Return number of items attached to the list box. 
+void cegui_lstbx_getItemCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the number of selected items in the list box. 
+void cegui_lstbx_getSelectedCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the first selected item. 
+void cegui_lstbx_getFirstSelectedItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the next selected item after item start_item
+void cegui_lstbx_getNextSelected(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return the item at index position index
+void cegui_lstbx_getListboxItemFromIndex(struct hg3dclass_struct * thisclass_c, int index_c, struct hg3dclass_struct * result_c);
+
+// Return the index of ListboxItemitem
+void cegui_lstbx_getItemIndex(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int * result_c);
+
+// return whether list sorting is enabled 
+void cegui_lstbx_isSortEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether multi-select is enabled 
+void cegui_lstbx_isMultiselectEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// 
+void cegui_lstbx_isItemTooltipsEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether the string at index position index
+void cegui_lstbx_isItemSelected(struct hg3dclass_struct * thisclass_c, int index_c, int * result_c);
+
+// Search the list for an item with the specified text. 
+void cegui_lstbx_findItemWithText(struct hg3dclass_struct * thisclass_c, char * text_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return whether the specified ListboxItem
+void cegui_lstbx_isListboxItemInList(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_lstbx_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the horizontal scroll bar is always shown. 
+void cegui_lstbx_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Initialise the Window
+void cegui_lstbx_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Remove all items from the list. 
+void cegui_lstbx_resetList(struct hg3dclass_struct * thisclass_c);
+
+// Add the given ListboxItem
+void cegui_lstbx_addItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Insert an item into the list box before a specified item already in the list. 
+void cegui_lstbx_insertItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, struct hg3dclass_struct * position_c);
+
+// Removes the given item from the list box. If the item is has the auto delete state set, the item will be deleted. 
+void cegui_lstbx_removeItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Clear the selected state for all items. 
+void cegui_lstbx_clearAllSelections(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the list should be sorted. 
+void cegui_lstbx_setSortingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the list should allow multiple selections or just a single selection. 
+void cegui_lstbx_setMultiselectEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the vertical scroll bar should always be shown. 
+void cegui_lstbx_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the horizontal scroll bar should always be shown. 
+void cegui_lstbx_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// 
+void cegui_lstbx_setItemTooltipsEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the select state of an attached ListboxItem
+void cegui_lstbx_setItemSelectState(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int state_c);
+
+// Set the select state of an attached ListboxItem
+void cegui_lstbx_setItemSelectState2(struct hg3dclass_struct * thisclass_c, int item_index_c, int state_c);
+
+// Causes the list box to update it's internal state after changes have been made to one or more attached ListboxItem
+void cegui_lstbx_handleUpdatedItemData(struct hg3dclass_struct * thisclass_c);
+
+// Ensure the item at the specified index is visible within the list box. 
+void cegui_lstbx_ensureItemIsVisible(struct hg3dclass_struct * thisclass_c, int item_index_c);
+
+// Ensure the item at the specified index is visible within the list box. 
+void cegui_lstbx_ensureItemIsVisible2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Return a pointer to the vertical scrollbar component widget for this Listbox
+void cegui_lstbx_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the horizontal scrollbar component widget for this Listbox
+void cegui_lstbx_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the sum of all item heights. 
+void cegui_lstbx_getTotalItemsHeight(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the width of the widest item. 
+void cegui_lstbx_getWidestItemWidth(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Constructor for Listbox
+void cegui_lstbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Listbox
+void cegui_lstbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassListboxItem.h view
@@ -0,0 +1,84 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassListboxItem.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassListboxItem
+#define _DEFINED_HG3D_ClassListboxItem
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// base class destructor 
+void cegui_lstbxitm_destruct(struct hg3dclass_struct * thisclass_c);
+
+// return the text string set for this list box item. 
+void cegui_lstbxitm_getTooltipText(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// 
+void cegui_lstbxitm_getText(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return text string with visual
+void cegui_lstbxitm_getTextVisual(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return the current ID assigned to this list box item. 
+void cegui_lstbxitm_getID(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// return whether this item is selected. 
+void cegui_lstbxitm_isSelected(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether this item is disabled. 
+void cegui_lstbxitm_isDisabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box. 
+void cegui_lstbxitm_isAutoDeleted(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Get the owner window for this ListboxItem
+void cegui_lstbxitm_getOwnerWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// set the text string for this list box item. 
+void cegui_lstbxitm_setText(struct hg3dclass_struct * thisclass_c, char * text_c);
+
+// 
+void cegui_lstbxitm_setTooltipText(struct hg3dclass_struct * thisclass_c, char * text_c);
+
+// Set the ID assigned to this list box item. 
+void cegui_lstbxitm_setID(struct hg3dclass_struct * thisclass_c, unsigned int item_id_c);
+
+// set whether this item is selected. 
+void cegui_lstbxitm_setSelected(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// set whether this item is disabled. 
+void cegui_lstbxitm_setDisabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box. 
+void cegui_lstbxitm_setAutoDeleted(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the owner window for this ListboxItem
+void cegui_lstbxitm_setOwnerWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * owner_c);
+
+// Set the selection highlighting brush image. 
+void cegui_lstbxitm_setSelectionBrushImage2(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_c);
+
+#endif 
+ include/ClassListboxTextItem.h view
@@ -0,0 +1,54 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassListboxTextItem.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassListboxTextItem
+#define _DEFINED_HG3D_ClassListboxTextItem
+
+#include "ClassPtr.h"
+#include "ClassFont.h"
+
+
+
+// base class destructor 
+void cegui_lstbxti_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return a pointer to the font being used by this ListboxTextItem
+void cegui_lstbxti_getFont(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the font to be used by this ListboxTextItem
+void cegui_lstbxti_setFont(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * font_c);
+
+// Set the font to be used by this ListboxTextItem
+void cegui_lstbxti_setFont2(struct hg3dclass_struct * thisclass_c, char * font_name_c);
+
+// Set whether the the ListboxTextItem
+void cegui_lstbxti_setTextParsingEnabled(struct hg3dclass_struct * thisclass_c, const int enable_c);
+
+// return whether text parsing is enabled for this ListboxTextItem
+void cegui_lstbxti_isTextParsingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// set the text string for this list box item. 
+void cegui_lstbxti_setText(struct hg3dclass_struct * thisclass_c, char * text_c);
+
+#endif 
+ include/ClassLogger.h view
@@ -0,0 +1,48 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassLogger.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassLogger
+#define _DEFINED_HG3D_ClassLogger
+
+#include "ClassPtr.h"
+#include "EnumLoggingLevel.h"
+
+
+
+// Destructor for Logger
+void cegui_lggr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Set the level of logging information that will get out to the log file. 
+void cegui_lggr_setLoggingLevel(struct hg3dclass_struct * thisclass_c, enum EnumLoggingLevel level_c);
+
+// return the current logging level setting 
+void cegui_lggr_getLoggingLevel(struct hg3dclass_struct * thisclass_c, enum EnumLoggingLevel * result_c);
+
+// Add an event to the log. 
+void cegui_lggr_logEvent(struct hg3dclass_struct * thisclass_c, char * message_c, enum EnumLoggingLevel level_c);
+
+// Set the name of the log file where all subsequent log entries should be written. The interpretation of file name may differ depending on the concrete logger implementation. 
+void cegui_lggr_setLogFilename(struct hg3dclass_struct * thisclass_c, char * filename_c, int append_c);
+
+#endif 
+ include/ClassMenuBase.h view
@@ -0,0 +1,60 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassMenuBase.h
+
+// abstrakte Klasse!
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassMenuBase
+#define _DEFINED_HG3D_ClassMenuBase
+
+#include "ClassPtr.h"
+#include "ClassMenuItem.h"
+
+
+
+// Get the item spacing for this menu. 
+void cegui_mnbs_getItemSpacing(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return whether this menu allows multiple popup menus to open at the same time. 
+void cegui_mnbs_isMultiplePopupsAllowed(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this menu should close all its open child popups, when it gets hidden. 
+void cegui_mnbs_getAutoCloseNestedPopups(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Get currently opened MenuItem
+void cegui_mnbs_getPopupMenuItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the item spacing for this menu. 
+void cegui_mnbs_setItemSpacing(struct hg3dclass_struct * thisclass_c, float spacing_c);
+
+// Change the currently open MenuItem
+void cegui_mnbs_changePopupMenuItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Set whether this menu allows multiple popup menus to be opened simultaneously. 
+void cegui_mnbs_setAllowMultiplePopups(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the menu should close all its open child popups, when it gets hidden. 
+void cegui_mnbs_setAutoCloseNestedPopups(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// tells the current popup that it should start its closing timer. 
+void cegui_mnbs_setPopupMenuItemClosing(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassMenuItem.h view
@@ -0,0 +1,74 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassMenuItem.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassMenuItem
+#define _DEFINED_HG3D_ClassMenuItem
+
+#include "ClassPtr.h"
+
+
+
+// return true if user is hovering over this widget (or it's pushed and user is not over it for highlight) 
+void cegui_mnitm_isHovering(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return true if the button widget is in the pushed state. 
+void cegui_mnitm_isPushed(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns true if the popup menu attached to the menu item is open. 
+void cegui_mnitm_isOpened(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns true if the menu item popup is closing or not. 
+void cegui_mnitm_isPopupClosing(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns true if the menu item popup is closed or opened automatically if hovering with the mouse. 
+void cegui_mnitm_hasAutoPopup(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns the time, which has to elapse before the popup window is opened/closed if the hovering state changes. 
+void cegui_mnitm_getAutoPopupTimeout(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the time, which has to elapse before the popup window is opened/closed if the hovering state changes. 
+void cegui_mnitm_setAutoPopupTimeout(struct hg3dclass_struct * thisclass_c, float time_c);
+
+// Opens the PopupMenu. 
+void cegui_mnitm_openPopupMenu(struct hg3dclass_struct * thisclass_c, int notify_c);
+
+// Closes the PopupMenu. 
+void cegui_mnitm_closePopupMenu(struct hg3dclass_struct * thisclass_c, int notify_c);
+
+// Toggles the PopupMenu. 
+void cegui_mnitm_togglePopupMenu(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// starts the closing timer for the popup, which will close it if the timer is enabled. 
+void cegui_mnitm_startPopupClosing(struct hg3dclass_struct * thisclass_c);
+
+// starts the opening timer for the popup, which will open it if the timer is enabled. 
+void cegui_mnitm_startPopupOpening(struct hg3dclass_struct * thisclass_c);
+
+// Constructor for MenuItem
+void cegui_mnitm_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for MenuItem
+void cegui_mnitm_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassMultiColumnList.h view
@@ -0,0 +1,239 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassMultiColumnList.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassMultiColumnList
+#define _DEFINED_HG3D_ClassMultiColumnList
+
+#include "ClassPtr.h"
+#include "EnumSortDirection.h"
+#include "ClassListHeaderSegment.h"
+#include "ClassListboxItem.h"
+#include "EnumSelectionMode.h"
+#include "ClassScrollbar.h"
+#include "ClassListHeader.h"
+
+
+
+// Return whether user manipulation of the sort column and direction are enabled. 
+void cegui_mltclmlst_isUserSortControlEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the user may size column segments. 
+void cegui_mltclmlst_isUserColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the user may modify the order of the columns. 
+void cegui_mltclmlst_isUserColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the number of columns in the multi-column list. 
+void cegui_mltclmlst_getColumnCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the number of rows in the multi-column list. 
+void cegui_mltclmlst_getRowCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the zero based index of the current sort column. There must be at least one column to successfully call this method. 
+void cegui_mltclmlst_getSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the zero based column index of the column with the specified ID. 
+void cegui_mltclmlst_getColumnWithID(struct hg3dclass_struct * thisclass_c, unsigned int col_id_c, unsigned int * result_c);
+
+// Return the zero based index of the column whos header text matches the specified text. 
+void cegui_mltclmlst_getColumnWithHeaderText(struct hg3dclass_struct * thisclass_c, char * text_c, unsigned int * result_c);
+
+// Return the currently set sort direction. 
+void cegui_mltclmlst_getSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection * result_c);
+
+// Return the ListHeaderSegment
+void cegui_mltclmlst_getHeaderSegmentForColumn(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c, struct hg3dclass_struct * result_c);
+
+// Return the zero based index of the Row that contains item
+void cegui_mltclmlst_getItemRowIndex(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int * result_c);
+
+// Return the current zero based index of the column that contains item
+void cegui_mltclmlst_getItemColumnIndex(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int * result_c);
+
+// return whether ListboxItemitemcol_idx
+void cegui_mltclmlst_isListboxItemInColumn(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int col_idx_c, int * result_c);
+
+// return whether ListboxItemitemrow_idx
+void cegui_mltclmlst_isListboxItemInRow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int row_idx_c, int * result_c);
+
+// return whether ListboxItemitem
+void cegui_mltclmlst_isListboxItemInList(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int * result_c);
+
+// Return the ListboxItemcol_idxtext
+void cegui_mltclmlst_findColumnItemWithText(struct hg3dclass_struct * thisclass_c, char * text_c, unsigned int col_idx_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return the ListboxItemrow_idxtext
+void cegui_mltclmlst_findRowItemWithText(struct hg3dclass_struct * thisclass_c, char * text_c, unsigned int row_idx_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return the ListboxItemtext
+void cegui_mltclmlst_findListItemWithText(struct hg3dclass_struct * thisclass_c, char * text_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the first selected ListboxItem
+void cegui_mltclmlst_getFirstSelectedItem(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the next selected ListboxItemstart_item
+void cegui_mltclmlst_getNextSelected(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * start_item_c, struct hg3dclass_struct * result_c);
+
+// Return the number of selected ListboxItems attached to this list box. 
+void cegui_mltclmlst_getSelectedCount(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the ID of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. There must be at least one column to successfully call this method. 
+void cegui_mltclmlst_getNominatedSelectionColumnID(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the index of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. 
+void cegui_mltclmlst_getNominatedSelectionColumn(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the index of the currently set nominated selection row to be used when in one of the NominatedRow* selection modes. 
+void cegui_mltclmlst_getNominatedSelectionRow(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return the currently set selection mode. 
+void cegui_mltclmlst_getSelectionMode(struct hg3dclass_struct * thisclass_c, enum EnumSelectionMode * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_mltclmlst_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the horizontal scroll bar is always shown. 
+void cegui_mltclmlst_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the ID code assigned to the requested column. 
+void cegui_mltclmlst_getColumnID(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c, unsigned int * result_c);
+
+// Return the ID code assigned to the requested row. 
+void cegui_mltclmlst_getRowID(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c, unsigned int * result_c);
+
+// Return the zero based row index of the row with the specified ID. 
+void cegui_mltclmlst_getRowWithID(struct hg3dclass_struct * thisclass_c, unsigned int row_id_c, unsigned int * result_c);
+
+// Return a pointer to the vertical scrollbar component widget for this MultiColumnList
+void cegui_mltclmlst_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the horizontal scrollbar component widget for this MultiColumnList
+void cegui_mltclmlst_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the list header component widget for this MultiColumnList
+void cegui_mltclmlst_getListHeader(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the sum of all row heights in pixels. 
+void cegui_mltclmlst_getTotalRowsHeight(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the pixel width of the widest item in the given column. 
+void cegui_mltclmlst_getWidestColumnItemWidth(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c, float * result_c);
+
+// Return, in pixels, the height of the highest item in the given row. 
+void cegui_mltclmlst_getHighestRowItemHeight(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c, float * result_c);
+
+// Initialise the Window
+void cegui_mltclmlst_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Remove all items from the list. 
+void cegui_mltclmlst_resetList(struct hg3dclass_struct * thisclass_c);
+
+// Removes a column from the list box. This will cause any ListboxItem
+void cegui_mltclmlst_removeColumn(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c);
+
+// Removes a column from the list box. This will cause any ListboxItem
+void cegui_mltclmlst_removeColumnWithID(struct hg3dclass_struct * thisclass_c, unsigned int col_id_c);
+
+// Move the column at index col_idxposition
+void cegui_mltclmlst_moveColumn(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c, unsigned int position_c);
+
+// Move the column with ID col_idposition
+void cegui_mltclmlst_moveColumnWithID(struct hg3dclass_struct * thisclass_c, unsigned int col_id_c, unsigned int position_c);
+
+// Add an empty row to the list box. 
+void cegui_mltclmlst_addRow(struct hg3dclass_struct * thisclass_c, unsigned int row_id_c, unsigned int * result_c);
+
+// Add a row to the list box, and set the item in the column with ID col_iditem
+void cegui_mltclmlst_addRow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int col_id_c, unsigned int row_id_c, unsigned int * result_c);
+
+// Insert an empty row into the list box. 
+void cegui_mltclmlst_insertRow(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c, unsigned int row_id_c, unsigned int * result_c);
+
+// Insert a row into the list box, and set the item in the column with ID col_iditem
+void cegui_mltclmlst_insertRow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int col_id_c, unsigned int row_idx_c, unsigned int row_id_c, unsigned int * result_c);
+
+// Remove the list box row with index row_idxListboxItemrow_idx
+void cegui_mltclmlst_removeRow(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c);
+
+// Set the ListboxItemcol_idrow_idx
+void cegui_mltclmlst_setItem2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, unsigned int col_id_c, unsigned int row_idx_c);
+
+// Set the selection mode for the list box. 
+void cegui_mltclmlst_setSelectionMode(struct hg3dclass_struct * thisclass_c, enum EnumSelectionMode sel_mode_c);
+
+// Set the column to be used for the NominatedColumn* selection modes. 
+void cegui_mltclmlst_setNominatedSelectionColumnID(struct hg3dclass_struct * thisclass_c, unsigned int col_id_c);
+
+// Set the column to be used for the NominatedColumn* selection modes. 
+void cegui_mltclmlst_setNominatedSelectionColumn(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c);
+
+// Set the row to be used for the NominatedRow* selection modes. 
+void cegui_mltclmlst_setNominatedSelectionRow(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c);
+
+// Set the sort direction to be used. 
+void cegui_mltclmlst_setSortDirection(struct hg3dclass_struct * thisclass_c, enum EnumSortDirection direction_c);
+
+// Set the column to be used as the sort key. 
+void cegui_mltclmlst_setSortColumn(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c);
+
+// Set the column to be used as the sort key. 
+void cegui_mltclmlst_setSortColumnByID(struct hg3dclass_struct * thisclass_c, unsigned int col_id_c);
+
+// Set whether the vertical scroll bar should always be shown, or just when needed. 
+void cegui_mltclmlst_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the horizontal scroll bar should always be shown, or just when needed. 
+void cegui_mltclmlst_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Removed the selected state from any currently selected ListboxItem
+void cegui_mltclmlst_clearAllSelections(struct hg3dclass_struct * thisclass_c);
+
+// Sets or clears the selected state of the given ListboxItem
+void cegui_mltclmlst_setItemSelectState(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c, int state_c);
+
+// Inform the list box that one or more attached ListboxItems have been externally modified, and the list should re-sync its internal state and refresh the display as needed. 
+void cegui_mltclmlst_handleUpdatedItemData(struct hg3dclass_struct * thisclass_c);
+
+// Set whether user manipulation of the sort column and direction are enabled. 
+void cegui_mltclmlst_setUserSortControlEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the user may size column segments. 
+void cegui_mltclmlst_setUserColumnSizingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the user may modify the order of the columns. 
+void cegui_mltclmlst_setUserColumnDraggingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Automatically determines the "best fit" size for the specified column and sets the column width to the same. 
+void cegui_mltclmlst_autoSizeColumnHeader(struct hg3dclass_struct * thisclass_c, unsigned int col_idx_c);
+
+// Set the ID code assigned to a given row. 
+void cegui_mltclmlst_setRowID(struct hg3dclass_struct * thisclass_c, unsigned int row_idx_c, unsigned int row_id_c);
+
+// Constructor for the Multi-column list base class. 
+void cegui_mltclmlst_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the multi-column list base class. 
+void cegui_mltclmlst_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassMultiLineEditbox.h view
@@ -0,0 +1,99 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassMultiLineEditbox.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassMultiLineEditbox
+#define _DEFINED_HG3D_ClassMultiLineEditbox
+
+#include "ClassPtr.h"
+#include "ClassScrollbar.h"
+
+
+
+// return true if the edit box has input focus. 
+void cegui_mltlnedtbx_hasInputFocus(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if the edit box is read-only. 
+void cegui_mltlnedtbx_isReadOnly(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current position of the carat. 
+void cegui_mltlnedtbx_getCaratIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection start point. 
+void cegui_mltlnedtbx_getSelectionStartIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current selection end point. 
+void cegui_mltlnedtbx_getSelectionEndIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the length of the current selection (in code points / characters). 
+void cegui_mltlnedtbx_getSelectionLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the maximum text length set for this edit box. 
+void cegui_mltlnedtbx_getMaxTextLength(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the text in the edit box will be word-wrapped. 
+void cegui_mltlnedtbx_isWordWrapped(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the vertical scrollbar component widget for this MultiLineEditbox
+void cegui_mltlnedtbx_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_mltlnedtbx_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the horizontal scrollbar component widget for this MultiLineEditbox
+void cegui_mltlnedtbx_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the line number a given index falls on with the current formatting. Will return last line if index is out of range. 
+void cegui_mltlnedtbx_getLineNumberFromIndex(struct hg3dclass_struct * thisclass_c, int index_c, int * result_c);
+
+// Initialise the Window
+void cegui_mltlnedtbx_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Specify whether the edit box is read-only. 
+void cegui_mltlnedtbx_setReadOnly(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current position of the carat. 
+void cegui_mltlnedtbx_setCaratIndex(struct hg3dclass_struct * thisclass_c, int carat_pos_c);
+
+// Define the current selection for the edit box. 
+void cegui_mltlnedtbx_setSelection(struct hg3dclass_struct * thisclass_c, int start_pos_c, int end_pos_c);
+
+// set the maximum text length for this edit box. 
+void cegui_mltlnedtbx_setMaxTextLength(struct hg3dclass_struct * thisclass_c, int max_len_c);
+
+// Scroll the view so that the current carat position is visible. 
+void cegui_mltlnedtbx_ensureCaratIsVisible(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the text will be word wrapped or not. 
+void cegui_mltlnedtbx_setWordWrapping(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the vertical scroll bar should always be shown. 
+void cegui_mltlnedtbx_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Constructor for the MultiLineEditbox
+void cegui_mltlnedtbx_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the MultiLineEditbox
+void cegui_mltlnedtbx_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassOgreRenderer.h view
@@ -0,0 +1,91 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassOgreRenderer.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassOgreRenderer
+#define _DEFINED_HG3D_ClassOgreRenderer
+
+#include "ClassPtr.h"
+#include "ClassOgreResourceProvider.h"
+#include "EnumBlendMode.h"
+
+
+
+// Convenience function that creates all the OgreCEGUI
+void cegui_ogrrndr_bootstrapSystem(struct hg3dclass_struct * result_c);
+
+// Convenience function to cleanup the CEGUI
+void cegui_ogrrndr_destroySystem();
+
+// Create an OgreRendererOgre
+void cegui_ogrrndr_create(struct hg3dclass_struct * result_c);
+
+// destory an OgreRenderer
+void cegui_ogrrndr_destroy(struct hg3dclass_struct * renderer_c);
+
+// function to create a CEGUI::OgreResourceProvider
+void cegui_ogrrndr_createOgreResourceProvider(struct hg3dclass_struct * result_c);
+
+// function to destroy a CEGUI::OgreResourceProvider
+void cegui_ogrrndr_destroyOgreResourceProvider(struct hg3dclass_struct * rp_c);
+
+// set whether CEGUI
+void cegui_ogrrndr_setRenderingEnabled(struct hg3dclass_struct * thisclass_c, const int enabled_c);
+
+// return whether CEGUI
+void cegui_ogrrndr_isRenderingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// set the render states for the specified BlendMode. 
+void cegui_ogrrndr_setupRenderingBlendMode(struct hg3dclass_struct * thisclass_c, const enum EnumBlendMode mode_c, const int force_c);
+
+// Controls whether rendering done by CEGUI
+void cegui_ogrrndr_setFrameControlExecutionEnabled(struct hg3dclass_struct * thisclass_c, const int enabled_c);
+
+// Returns whether rendering done by CEGUI
+void cegui_ogrrndr_isFrameControlExecutionEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Sets all the required render states needed for CEGUI
+void cegui_ogrrndr_initialiseRenderStateSettings(struct hg3dclass_struct * thisclass_c);
+
+// Destroy all GeometryBuffer objects created by this Renderer
+void cegui_ogrrndr_destroyAllGeometryBuffers(struct hg3dclass_struct * thisclass_c);
+
+// Destory all TextureTarget objects created by this Renderer
+void cegui_ogrrndr_destroyAllTextureTargets(struct hg3dclass_struct * thisclass_c);
+
+// Destroy all Texture objects created by this Renderer
+void cegui_ogrrndr_destroyAllTextures(struct hg3dclass_struct * thisclass_c);
+
+// Perform any operations required to put the system into a state ready for rendering operations to begin. 
+void cegui_ogrrndr_beginRendering(struct hg3dclass_struct * thisclass_c);
+
+// Perform any operations required to finalise rendering. 
+void cegui_ogrrndr_endRendering(struct hg3dclass_struct * thisclass_c);
+
+// Return the pixel size of the maximum supported texture. 
+void cegui_ogrrndr_getMaxTextureSize(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return identification string for the renderer module. 
+void cegui_ogrrndr_getIdentifierString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+#endif 
+ include/ClassOgreResourceProvider.h view
@@ -0,0 +1,32 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassOgreResourceProvider.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassOgreResourceProvider
+#define _DEFINED_HG3D_ClassOgreResourceProvider
+
+#include "ClassPtr.h"
+
+
+
+#endif 
+ include/ClassProgressBar.h view
@@ -0,0 +1,56 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassProgressBar.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassProgressBar
+#define _DEFINED_HG3D_ClassProgressBar
+
+#include "ClassPtr.h"
+
+
+
+// return the current progress value 
+void cegui_prgbr_getProgress(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// return the current step size 
+void cegui_prgbr_getStep(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// set the current progress. 
+void cegui_prgbr_setProgress(struct hg3dclass_struct * thisclass_c, float progress_c);
+
+// set the size of the 'step' in percentage points (default is 0.01f or 1%). 
+void cegui_prgbr_setStepSize(struct hg3dclass_struct * thisclass_c, float step_val_c);
+
+// cause the progress to step 
+void cegui_prgbr_step(struct hg3dclass_struct * thisclass_c);
+
+// Modify the progress level by a specified delta. 
+void cegui_prgbr_adjustProgress(struct hg3dclass_struct * thisclass_c, float delta_c);
+
+// Constructor for ProgressBar
+void cegui_prgbr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for ProgressBar
+void cegui_prgbr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassPropertySet.h view
@@ -0,0 +1,62 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassPropertySet.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassPropertySet
+#define _DEFINED_HG3D_ClassPropertySet
+
+#include "ClassPtr.h"
+
+
+
+// Constructs a new PropertySet
+void cegui_prpst_construct(struct hg3dclass_struct * result_c);
+
+// Destructor for PropertySet
+void cegui_prpst_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Removes a Property from the PropertySet
+void cegui_prpst_removeProperty(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Removes all Property objects from the PropertySet
+void cegui_prpst_clearProperties(struct hg3dclass_struct * thisclass_c);
+
+// Checks to see if a Property with the given name is in the PropertySet
+void cegui_prpst_isPropertyPresent(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// Return the help text for the specified Property. 
+void cegui_prpst_getPropertyHelp(struct hg3dclass_struct * thisclass_c, char * name_c, char * result_c);
+
+// Gets the current value of the specified Property. 
+void cegui_prpst_getProperty(struct hg3dclass_struct * thisclass_c, char * name_c, char * result_c);
+
+// Sets the current value of a Property. 
+void cegui_prpst_setProperty(struct hg3dclass_struct * thisclass_c, char * name_c, char * value_c);
+
+// Returns whether a Property is at it's default value. 
+void cegui_prpst_isPropertyDefault(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// Returns the default value of a Property as a String. 
+void cegui_prpst_getPropertyDefault(struct hg3dclass_struct * thisclass_c, char * name_c, char * result_c);
+
+#endif 
+ include/ClassPtr.h view
@@ -0,0 +1,217 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassPtr.h
+
+// Here are the methods defined, which do the class pointer
+// marshalling and the casting of subclasses to higher classes
+
+#include "wchar.h"
+
+
+
+#ifndef CLASSPTR_INCLUDE_H
+#define CLASSPTR_INCLUDE_H
+
+typedef struct hg3dclass_struct {
+	void *ptr;
+	void *fptr;
+} hg3dclass_struct;
+
+void *getHG3DClassPtr(hg3dclass_struct inSt, const char* className);
+
+
+typedef void ClassCheckbox; 
+hg3dclass_struct getHG3DClass_Checkbox(void *ptrIn);
+
+typedef void ClassCombobox; 
+hg3dclass_struct getHG3DClass_Combobox(void *ptrIn);
+
+typedef void ClassComboDropList; 
+hg3dclass_struct getHG3DClass_ComboDropList(void *ptrIn);
+
+typedef void ClassDefaultLogger; 
+hg3dclass_struct getHG3DClass_DefaultLogger(void *ptrIn);
+
+typedef void ClassDefaultResourceProvider; 
+hg3dclass_struct getHG3DClass_DefaultResourceProvider(void *ptrIn);
+
+typedef void ClassDragContainer; 
+hg3dclass_struct getHG3DClass_DragContainer(void *ptrIn);
+
+typedef void ClassEditbox; 
+hg3dclass_struct getHG3DClass_Editbox(void *ptrIn);
+
+typedef void ClassEventArgs; 
+hg3dclass_struct getHG3DClass_EventArgs(void *ptrIn);
+
+typedef void ClassEventSet; 
+hg3dclass_struct getHG3DClass_EventSet(void *ptrIn);
+
+typedef void ClassFont; 
+hg3dclass_struct getHG3DClass_Font(void *ptrIn);
+
+typedef void ClassFontManager; 
+hg3dclass_struct getHG3DClass_FontManager(void *ptrIn);
+
+typedef void ClassFrameWindow; 
+hg3dclass_struct getHG3DClass_FrameWindow(void *ptrIn);
+
+typedef void ClassImageCodec; 
+hg3dclass_struct getHG3DClass_ImageCodec(void *ptrIn);
+
+typedef void ClassImageset; 
+hg3dclass_struct getHG3DClass_Imageset(void *ptrIn);
+
+typedef void ClassItemEntry; 
+hg3dclass_struct getHG3DClass_ItemEntry(void *ptrIn);
+
+typedef void ClassItemListbox; 
+hg3dclass_struct getHG3DClass_ItemListbox(void *ptrIn);
+
+typedef void ClassListbox; 
+hg3dclass_struct getHG3DClass_Listbox(void *ptrIn);
+
+typedef void ClassListboxItem; 
+hg3dclass_struct getHG3DClass_ListboxItem(void *ptrIn);
+
+typedef void ClassListboxTextItem; 
+hg3dclass_struct getHG3DClass_ListboxTextItem(void *ptrIn);
+
+typedef void ClassListHeader; 
+hg3dclass_struct getHG3DClass_ListHeader(void *ptrIn);
+
+typedef void ClassListHeaderSegment; 
+hg3dclass_struct getHG3DClass_ListHeaderSegment(void *ptrIn);
+
+typedef void ClassLogger; 
+hg3dclass_struct getHG3DClass_Logger(void *ptrIn);
+
+typedef void ClassMenuBase; 
+hg3dclass_struct getHG3DClass_MenuBase(void *ptrIn);
+
+typedef void ClassMenuItem; 
+hg3dclass_struct getHG3DClass_MenuItem(void *ptrIn);
+
+typedef void ClassMultiColumnList; 
+hg3dclass_struct getHG3DClass_MultiColumnList(void *ptrIn);
+
+typedef void ClassMultiLineEditbox; 
+hg3dclass_struct getHG3DClass_MultiLineEditbox(void *ptrIn);
+
+typedef void ClassOgreRenderer; 
+hg3dclass_struct getHG3DClass_OgreRenderer(void *ptrIn);
+
+typedef void ClassOgreResourceProvider; 
+hg3dclass_struct getHG3DClass_OgreResourceProvider(void *ptrIn);
+
+typedef void ClassProgressBar; 
+hg3dclass_struct getHG3DClass_ProgressBar(void *ptrIn);
+
+typedef void ClassPropertySet; 
+hg3dclass_struct getHG3DClass_PropertySet(void *ptrIn);
+
+typedef void ClassPushButton; 
+hg3dclass_struct getHG3DClass_PushButton(void *ptrIn);
+
+typedef void ClassRadioButton; 
+hg3dclass_struct getHG3DClass_RadioButton(void *ptrIn);
+
+typedef void ClassRenderer; 
+hg3dclass_struct getHG3DClass_Renderer(void *ptrIn);
+
+typedef void ClassResourceProvider; 
+hg3dclass_struct getHG3DClass_ResourceProvider(void *ptrIn);
+
+typedef void ClassScheme; 
+hg3dclass_struct getHG3DClass_Scheme(void *ptrIn);
+
+typedef void ClassSchemeManager; 
+hg3dclass_struct getHG3DClass_SchemeManager(void *ptrIn);
+
+typedef void ClassScriptFunctor; 
+hg3dclass_struct getHG3DClass_ScriptFunctor(void *ptrIn);
+
+typedef void ClassScriptModule; 
+hg3dclass_struct getHG3DClass_ScriptModule(void *ptrIn);
+
+typedef void ClassScrollablePane; 
+hg3dclass_struct getHG3DClass_ScrollablePane(void *ptrIn);
+
+typedef void ClassScrollbar; 
+hg3dclass_struct getHG3DClass_Scrollbar(void *ptrIn);
+
+typedef void ClassScrolledContainer; 
+hg3dclass_struct getHG3DClass_ScrolledContainer(void *ptrIn);
+
+typedef void ClassScrolledItemListBase; 
+hg3dclass_struct getHG3DClass_ScrolledItemListBase(void *ptrIn);
+
+typedef void ClassSlider; 
+hg3dclass_struct getHG3DClass_Slider(void *ptrIn);
+
+typedef void ClassSpinner; 
+hg3dclass_struct getHG3DClass_Spinner(void *ptrIn);
+
+typedef void ClassSystem; 
+hg3dclass_struct getHG3DClass_System(void *ptrIn);
+
+typedef void ClassTabButton; 
+hg3dclass_struct getHG3DClass_TabButton(void *ptrIn);
+
+typedef void ClassThumb; 
+hg3dclass_struct getHG3DClass_Thumb(void *ptrIn);
+
+typedef void ClassTooltip; 
+hg3dclass_struct getHG3DClass_Tooltip(void *ptrIn);
+
+typedef void ClassTree; 
+hg3dclass_struct getHG3DClass_Tree(void *ptrIn);
+
+typedef void ClassWidgetLookManager; 
+hg3dclass_struct getHG3DClass_WidgetLookManager(void *ptrIn);
+
+typedef void ClassWindow; 
+hg3dclass_struct getHG3DClass_Window(void *ptrIn);
+
+typedef void ClassWindowManager; 
+hg3dclass_struct getHG3DClass_WindowManager(void *ptrIn);
+
+typedef void ClassXMLParser; 
+hg3dclass_struct getHG3DClass_XMLParser(void *ptrIn);
+
+typedef void ClassHG3DEventController; 
+hg3dclass_struct getHG3DClass_HG3DEventController(void *ptrIn);
+
+typedef void ClassHG3DEventStaticFunctions; 
+hg3dclass_struct getHG3DClass_HG3DEventStaticFunctions(void *ptrIn);
+
+typedef void ClassHG3DListboxStaticFunctions; 
+hg3dclass_struct getHG3DClass_HG3DListboxStaticFunctions(void *ptrIn);
+
+typedef void ClassHG3DWindowStaticFunctions; 
+hg3dclass_struct getHG3DClass_HG3DWindowStaticFunctions(void *ptrIn);
+
+typedef void ClassSystemHG3D; 
+hg3dclass_struct getHG3DClass_SystemHG3D(void *ptrIn);
+
+typedef void ClassWindowManagerHG3D; 
+hg3dclass_struct getHG3DClass_WindowManagerHG3D(void *ptrIn);
+
+#endif
+ include/ClassPushButton.h view
@@ -0,0 +1,38 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassPushButton.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassPushButton
+#define _DEFINED_HG3D_ClassPushButton
+
+#include "ClassPtr.h"
+
+
+
+// Constructor for base PushButton
+void cegui_pshbttn_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for PushButton
+void cegui_pshbttn_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassRadioButton.h view
@@ -0,0 +1,47 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassRadioButton.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassRadioButton
+#define _DEFINED_HG3D_ClassRadioButton
+
+#include "ClassPtr.h"
+
+
+
+// return true if the radio button is selected (has the checkmark) 
+void cegui_rdbttn_isSelected(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the RadioButtonRadioButton
+void cegui_rdbttn_getSelectedButtonInGroup(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// set whether the radio button is selected or not 
+void cegui_rdbttn_setSelected(struct hg3dclass_struct * thisclass_c, int select_c);
+
+// 
+void cegui_rdbttn_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_rdbttn_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassRenderer.h view
@@ -0,0 +1,56 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassRenderer.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassRenderer
+#define _DEFINED_HG3D_ClassRenderer
+
+#include "ClassPtr.h"
+
+
+
+// Destroy all GeometryBuffer objects created by this Renderer
+void cegui_rndr_destroyAllGeometryBuffers(struct hg3dclass_struct * thisclass_c);
+
+// Destory all TextureTarget objects created by this Renderer
+void cegui_rndr_destroyAllTextureTargets(struct hg3dclass_struct * thisclass_c);
+
+// Destroy all Texture objects created by this Renderer
+void cegui_rndr_destroyAllTextures(struct hg3dclass_struct * thisclass_c);
+
+// Perform any operations required to put the system into a state ready for rendering operations to begin. 
+void cegui_rndr_beginRendering(struct hg3dclass_struct * thisclass_c);
+
+// Perform any operations required to finalise rendering. 
+void cegui_rndr_endRendering(struct hg3dclass_struct * thisclass_c);
+
+// Return the pixel size of the maximum supported texture. 
+void cegui_rndr_getMaxTextureSize(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Return identification string for the renderer module. 
+void cegui_rndr_getIdentifierString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Destructor. 
+void cegui_rndr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassResourceProvider.h view
@@ -0,0 +1,41 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassResourceProvider.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassResourceProvider
+#define _DEFINED_HG3D_ClassResourceProvider
+
+#include "ClassPtr.h"
+
+
+
+// Destructor for the ResourceProvider
+void cegui_rsrcpr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return the current default resource group identifier. 
+void cegui_rsrcpr_getDefaultResourceGroup(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Set the default resource group identifier. 
+void cegui_rsrcpr_setDefaultResourceGroup(struct hg3dclass_struct * thisclass_c, char * resourceGroup_c);
+
+#endif 
+ include/ClassScheme.h view
@@ -0,0 +1,53 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScheme.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScheme
+#define _DEFINED_HG3D_ClassScheme
+
+#include "ClassPtr.h"
+
+
+
+// Loads all resources for this scheme. 
+void cegui_schm_loadResources(struct hg3dclass_struct * thisclass_c);
+
+// Unloads all resources for this scheme. This should be used very carefully. 
+void cegui_schm_unloadResources(struct hg3dclass_struct * thisclass_c);
+
+// Return whether the resources for this Scheme
+void cegui_schm_resourcesLoaded(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the name of this Scheme
+void cegui_schm_getName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Destroys a Scheme
+void cegui_schm_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Returns the default resource group currently set for Schemes. 
+void cegui_schm_getDefaultResourceGroup(char * result_c);
+
+// Sets the default resource group to be used when loading scheme xml data. 
+void cegui_schm_setDefaultResourceGroup(char * resourceGroup_c);
+
+#endif 
+ include/ClassSchemeManager.h view
@@ -0,0 +1,38 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassSchemeManager.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassSchemeManager
+#define _DEFINED_HG3D_ClassSchemeManager
+
+#include "ClassPtr.h"
+
+
+
+// Constructor. 
+void cegui_schmmgr_construct(struct hg3dclass_struct * result_c);
+
+// Destructor. 
+void cegui_schmmgr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassScriptFunctor.h view
@@ -0,0 +1,35 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScriptFunctor.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScriptFunctor
+#define _DEFINED_HG3D_ClassScriptFunctor
+
+#include "ClassPtr.h"
+
+
+
+// 
+void cegui_scrfnct_construct(char * functionName_c, struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassScriptModule.h view
@@ -0,0 +1,63 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScriptModule.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScriptModule
+#define _DEFINED_HG3D_ClassScriptModule
+
+#include "ClassPtr.h"
+#include "ClassEventArgs.h"
+
+
+
+// Destructor for ScriptModule
+void cegui_scrmd_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Execute a script file. 
+void cegui_scrmd_executeScriptFile(struct hg3dclass_struct * thisclass_c, char * filename_c, char * resourceGroup_c);
+
+// Execute a scripted global function. The function should not take any parameters and should return an integer. 
+void cegui_scrmd_executeScriptGlobal(struct hg3dclass_struct * thisclass_c, char * function_name_c, int * result_c);
+
+// Execute a scripted global 'event handler' function. The function should take some kind of EventArgsEventArgs
+void cegui_scrmd_executeScriptedEventHandler(struct hg3dclass_struct * thisclass_c, char * handler_name_c, struct hg3dclass_struct * e_c, int * result_c);
+
+// Execute script code contained in the given CEGUI::String object. 
+void cegui_scrmd_executeString(struct hg3dclass_struct * thisclass_c, char * str_c);
+
+// Method called during system initialisation, prior to running any scripts via the ScriptModuleScriptModule
+void cegui_scrmd_createBindings(struct hg3dclass_struct * thisclass_c);
+
+// Method called during system destruction, after all scripts have been run via the ScriptModuleScriptModule
+void cegui_scrmd_destroyBindings(struct hg3dclass_struct * thisclass_c);
+
+// Return identification string for the ScriptModuleScriptModule
+void cegui_scrmd_getIdentifierString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Sets the default resource group to be used when loading script files. 
+void cegui_scrmd_setDefaultResourceGroup(char * resourceGroup_c);
+
+// Returns the default resource group used when loading script files. 
+void cegui_scrmd_getDefaultResourceGroup(char * result_c);
+
+#endif 
+ include/ClassScrollablePane.h view
@@ -0,0 +1,109 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScrollablePane.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScrollablePane
+#define _DEFINED_HG3D_ClassScrollablePane
+
+#include "ClassPtr.h"
+#include "ClassScrolledContainer.h"
+#include "ClassScrollbar.h"
+
+
+
+// Constructor for the ScrollablePane
+void cegui_scrlpn_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the ScrollablePane
+void cegui_scrlpn_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Returns a pointer to the window holding the pane contents. 
+void cegui_scrlpn_getContentPane(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_scrlpn_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether the vertical scroll bar should always be shown. 
+void cegui_scrlpn_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Return whether the horizontal scroll bar is always shown. 
+void cegui_scrlpn_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether the horizontal scroll bar should always be shown. 
+void cegui_scrlpn_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Return whether the content pane is auto sized. 
+void cegui_scrlpn_isContentPaneAutoSized(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether the content pane should be auto-sized. 
+void cegui_scrlpn_setContentPaneAutoSized(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Returns the horizontal scrollbar step size as a fraction of one complete view page. 
+void cegui_scrlpn_getHorizontalStepSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the horizontal scrollbar step size as a fraction of one complete view page. 
+void cegui_scrlpn_setHorizontalStepSize(struct hg3dclass_struct * thisclass_c, float step_c);
+
+// Returns the horizontal scrollbar overlap size as a fraction of one complete view page. 
+void cegui_scrlpn_getHorizontalOverlapSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the horizontal scrollbar overlap size as a fraction of one complete view page. 
+void cegui_scrlpn_setHorizontalOverlapSize(struct hg3dclass_struct * thisclass_c, float overlap_c);
+
+// Returns the horizontal scroll position as a fraction of the complete scrollable width. 
+void cegui_scrlpn_getHorizontalScrollPosition(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the horizontal scroll position as a fraction of the complete scrollable width. 
+void cegui_scrlpn_setHorizontalScrollPosition(struct hg3dclass_struct * thisclass_c, float position_c);
+
+// Returns the vertical scrollbar step size as a fraction of one complete view page. 
+void cegui_scrlpn_getVerticalStepSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the vertical scrollbar step size as a fraction of one complete view page. 
+void cegui_scrlpn_setVerticalStepSize(struct hg3dclass_struct * thisclass_c, float step_c);
+
+// Returns the vertical scrollbar overlap size as a fraction of one complete view page. 
+void cegui_scrlpn_getVerticalOverlapSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the vertical scrollbar overlap size as a fraction of one complete view page. 
+void cegui_scrlpn_setVerticalOverlapSize(struct hg3dclass_struct * thisclass_c, float overlap_c);
+
+// Returns the vertical scroll position as a fraction of the complete scrollable height. 
+void cegui_scrlpn_getVerticalScrollPosition(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Sets the vertical scroll position as a fraction of the complete scrollable height. 
+void cegui_scrlpn_setVerticalScrollPosition(struct hg3dclass_struct * thisclass_c, float position_c);
+
+// Return a pointer to the vertical scrollbar component widget for this ScrollablePane
+void cegui_scrlpn_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the horizontal scrollbar component widget for this ScrollablePane
+void cegui_scrlpn_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Initialises the Window
+void cegui_scrlpn_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Internal destroy method which actually just adds the window and any parent destructed child windows to the dead pool. 
+void cegui_scrlpn_destroy(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassScrollbar.h view
@@ -0,0 +1,88 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScrollbar.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScrollbar
+#define _DEFINED_HG3D_ClassScrollbar
+
+#include "ClassPtr.h"
+#include "ClassPushButton.h"
+#include "ClassThumb.h"
+
+
+
+// Return the size of the document or data. 
+void cegui_scrlbr_getDocumentSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the page size for this scroll bar. 
+void cegui_scrlbr_getPageSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the step size for this scroll bar. 
+void cegui_scrlbr_getStepSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the overlap size for this scroll bar. 
+void cegui_scrlbr_getOverlapSize(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the current position of scroll bar within the document. 
+void cegui_scrlbr_getScrollPosition(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return a pointer to the 'increase' PushButtoncomponent widget for this Scrollbar
+void cegui_scrlbr_getIncreaseButton(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the 'decrease' PushButtonScrollbar
+void cegui_scrlbr_getDecreaseButton(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the ThumbScrollbar
+void cegui_scrlbr_getThumb(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Initialises the Scrollbar
+void cegui_scrlbr_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Set the size of the document or data. 
+void cegui_scrlbr_setDocumentSize(struct hg3dclass_struct * thisclass_c, float document_size_c);
+
+// Set the page size for this scroll bar. 
+void cegui_scrlbr_setPageSize(struct hg3dclass_struct * thisclass_c, float page_size_c);
+
+// Set the step size for this scroll bar. 
+void cegui_scrlbr_setStepSize(struct hg3dclass_struct * thisclass_c, float step_size_c);
+
+// Set the overlap size for this scroll bar. 
+void cegui_scrlbr_setOverlapSize(struct hg3dclass_struct * thisclass_c, float overlap_size_c);
+
+// Set the current position of scroll bar within the document. 
+void cegui_scrlbr_setScrollPosition(struct hg3dclass_struct * thisclass_c, float position_c);
+
+// Enable or disable the 'end lock' mode for the scrollbar. 
+void cegui_scrlbr_setEndLockEnabled(struct hg3dclass_struct * thisclass_c, const int enabled_c);
+
+// Returns whether the 'end lock'mode for the scrollbar is enabled. 
+void cegui_scrlbr_isEndLockEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Constructor for Scrollbar
+void cegui_scrlbr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Scrollbar
+void cegui_scrlbr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassScrolledContainer.h view
@@ -0,0 +1,44 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScrolledContainer.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScrolledContainer
+#define _DEFINED_HG3D_ClassScrolledContainer
+
+#include "ClassPtr.h"
+
+
+
+// Constructor for ScrolledContainer
+void cegui_scrlcnt_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for ScrolledContainer
+void cegui_scrlcnt_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Return whether the content pane is auto sized. 
+void cegui_scrlcnt_isContentPaneAutoSized(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether the content pane should be auto-sized. 
+void cegui_scrlcnt_setContentPaneAutoSized(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+#endif 
+ include/ClassScrolledItemListBase.h view
@@ -0,0 +1,61 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassScrolledItemListBase.h
+
+// abstrakte Klasse!
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassScrolledItemListBase
+#define _DEFINED_HG3D_ClassScrolledItemListBase
+
+#include "ClassPtr.h"
+#include "ClassScrollbar.h"
+#include "ClassItemEntry.h"
+
+
+
+// Returns whether the vertical scrollbar is being forced visible. Despite content size. 
+void cegui_scrlitmlstbs_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether the horizontal scrollbar is being forced visible. Despite content size. 
+void cegui_scrlitmlstbs_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Get the vertical scrollbar component attached to this window. 
+void cegui_scrlitmlstbs_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Get the horizontal scrollbar component attached to this window. 
+void cegui_scrlitmlstbs_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Sets whether the vertical scrollbar should be forced visible. Despite content size. 
+void cegui_scrlitmlstbs_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int mode_c);
+
+// Sets whether the horizontal scrollbar should be forced visible. Despite content size. 
+void cegui_scrlitmlstbs_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int mode_c);
+
+// Scroll the vertical list position if needed to ensure that the ItemEntryitemScrolledItemListBase
+void cegui_scrlitmlstbs_ensureItemIsVisibleVert(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Scroll the horizontal list position if needed to ensure that the ItemEntryitemScrolledItemListBase
+void cegui_scrlitmlstbs_ensureItemIsVisibleHorz(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// 
+void cegui_scrlitmlstbs_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassSlider.h view
@@ -0,0 +1,63 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassSlider.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassSlider
+#define _DEFINED_HG3D_ClassSlider
+
+#include "ClassPtr.h"
+#include "ClassThumb.h"
+
+
+
+// return the current slider value. 
+void cegui_sldr_getCurrentValue(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// return the maximum value set for this widget 
+void cegui_sldr_getMaxValue(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// return the current click step setting for the slider. 
+void cegui_sldr_getClickStep(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return a pointer to the ThumbSlider
+void cegui_sldr_getThumb(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Initialises the Window
+void cegui_sldr_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// set the maximum value for the slider. Note that the minimum value is fixed at 0. 
+void cegui_sldr_setMaxValue(struct hg3dclass_struct * thisclass_c, float maxVal_c);
+
+// set the current slider value. 
+void cegui_sldr_setCurrentValue(struct hg3dclass_struct * thisclass_c, float value_c);
+
+// set the current click step setting for the slider. 
+void cegui_sldr_setClickStep(struct hg3dclass_struct * thisclass_c, float step_c);
+
+// Slider
+void cegui_sldr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Slider
+void cegui_sldr_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassSpinner.h view
@@ -0,0 +1,72 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassSpinner.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassSpinner
+#define _DEFINED_HG3D_ClassSpinner
+
+#include "ClassPtr.h"
+#include "EnumTextInputMode.h"
+
+
+
+// Constructor for Spinner
+void cegui_spnnr_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Spinner
+void cegui_spnnr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Initialises the Window
+void cegui_spnnr_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Return the current spinner value. 
+void cegui_spnnr_getCurrentValue(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Return the current step value. 
+void cegui_spnnr_getStepSize(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Return the current maximum limit value for the Spinner
+void cegui_spnnr_getMaximumValue(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Return the current minimum limit value for the Spinner
+void cegui_spnnr_getMinimumValue(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Return the current text input / display mode setting. 
+void cegui_spnnr_getTextInputMode(struct hg3dclass_struct * thisclass_c, enum EnumTextInputMode * result_c);
+
+// Set the current spinner value. 
+void cegui_spnnr_setCurrentValue(struct hg3dclass_struct * thisclass_c, double value_c);
+
+// Set the current step value. 
+void cegui_spnnr_setStepSize(struct hg3dclass_struct * thisclass_c, double step_c);
+
+// Set the spinner maximum value. 
+void cegui_spnnr_setMaximumValue(struct hg3dclass_struct * thisclass_c, double maxValue_c);
+
+// Set the spinner minimum value. 
+void cegui_spnnr_setMinimumValue(struct hg3dclass_struct * thisclass_c, double minVaue_c);
+
+// Set the spinner input / display mode. 
+void cegui_spnnr_setTextInputMode(struct hg3dclass_struct * thisclass_c, enum EnumTextInputMode mode_c);
+
+#endif 
+ include/ClassSystem.h view
@@ -0,0 +1,224 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassSystem.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassSystem
+#define _DEFINED_HG3D_ClassSystem
+
+#include "ClassPtr.h"
+#include "ClassRenderer.h"
+#include "ClassResourceProvider.h"
+#include "ClassXMLParser.h"
+#include "ClassImageCodec.h"
+#include "ClassScriptModule.h"
+#include "ClassFont.h"
+#include "ClassWindow.h"
+#include "ClassTooltip.h"
+#include "EnumMouseButton.h"
+
+
+
+// Create the System
+void cegui_sstm_create(struct hg3dclass_struct * renderer_c, struct hg3dclass_struct * resourceProvider_c, struct hg3dclass_struct * xmlParser_c, struct hg3dclass_struct * imageCodec_c, struct hg3dclass_struct * scriptModule_c, char * configFile_c, char * logFile_c, struct hg3dclass_struct * result_c);
+
+// Destroy the System
+void cegui_sstm_destroy();
+
+// Return singleton System
+void cegui_sstm_getSingleton(struct hg3dclass_struct * result_c);
+
+// Return pointer to singleton System
+void cegui_sstm_getSingletonPtr(struct hg3dclass_struct * result_c);
+
+// Static member to set the name of the default XML parser module that should be used. 
+void cegui_sstm_setDefaultXMLParserName(char * parserName_c);
+
+// Return the name of the currently set default xml parser module. 
+void cegui_sstm_getDefaultXMLParserName(char * result_c);
+
+// Set the name of the default image codec to be used. 
+void cegui_sstm_setDefaultImageCodecName(char * codecName_c);
+
+// Get the name of the default image codec. 
+void cegui_sstm_getDefaultImageCodecName(char * result_c);
+
+// Return a pointer to the Renderer
+void cegui_sstm_getRenderer(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the default font to be used by the system. 
+void cegui_sstm_setDefaultFont(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Set the default font to be used by the system. 
+void cegui_sstm_setDefaultFont2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * font_c);
+
+// Return a pointer to the default Font
+void cegui_sstm_getDefaultFont(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Causes a full re-draw next time renderGUI()
+void cegui_sstm_signalRedraw(struct hg3dclass_struct * thisclass_c);
+
+// Return a boolean value to indicate whether a full re-draw is requested next time renderGUI()
+void cegui_sstm_isRedrawRequested(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Render the GUI. 
+void cegui_sstm_renderGUI(struct hg3dclass_struct * thisclass_c);
+
+// Set the active GUI sheet (root) window. 
+void cegui_sstm_setGUISheet(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * sheet_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the active GUI sheet (root) window. 
+void cegui_sstm_getGUISheet(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the current timeout for generation of single-click events. 
+void cegui_sstm_getSingleClickTimeout(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Return the current timeout for generation of multi-click events. 
+void cegui_sstm_getMultiClickTimeout(struct hg3dclass_struct * thisclass_c, double * result_c);
+
+// Set the timeout used for generation of single-click events. 
+void cegui_sstm_setSingleClickTimeout(struct hg3dclass_struct * thisclass_c, double timeout_c);
+
+// Set the timeout to be used for the generation of multi-click events. 
+void cegui_sstm_setMultiClickTimeout(struct hg3dclass_struct * thisclass_c, double timeout_c);
+
+// Return whether automatic mouse button click and multi-click (i.e. double-click and treble-click) event generation is enabled. 
+void cegui_sstm_isMouseClickEventGenerationEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set whether automatic mouse button click and multi-click (i.e. double-click and treble-click) event generation will occur. 
+void cegui_sstm_setMouseClickEventGenerationEnabled(struct hg3dclass_struct * thisclass_c, const int enable_c);
+
+// Set the image to be used as the default mouse cursor. 
+void cegui_sstm_setDefaultMouseCursor3(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_name_c);
+
+// Return the Window
+void cegui_sstm_getWindowContainingMouse(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return a pointer to the ScriptModule
+void cegui_sstm_getScriptingModule(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the ScriptModule
+void cegui_sstm_setScriptingModule(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * scriptModule_c);
+
+// Return a pointer to the ResourceProvider
+void cegui_sstm_getResourceProvider(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Execute a script file if possible. 
+void cegui_sstm_executeScriptFile(struct hg3dclass_struct * thisclass_c, char * filename_c, char * resourceGroup_c);
+
+// Execute a scripted global function if possible. The function should not take any parameters and should return an integer. 
+void cegui_sstm_executeScriptGlobal(struct hg3dclass_struct * thisclass_c, char * function_name_c, int * result_c);
+
+// If possible, execute script code contained in the given CEGUI::String object. 
+void cegui_sstm_executeScriptString(struct hg3dclass_struct * thisclass_c, char * str_c);
+
+// return the current mouse movement scaling factor. 
+void cegui_sstm_getMouseMoveScaling(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the current mouse movement scaling factor. 
+void cegui_sstm_setMouseMoveScaling(struct hg3dclass_struct * thisclass_c, float scaling_c);
+
+// Internal method used to inform the SystemSystem
+void cegui_sstm_notifyWindowDestroyed(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c);
+
+// Return the current system keys value. 
+void cegui_sstm_getSystemKeys(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// Set a new XML parser module to be used. 
+void cegui_sstm_setXMLParser(struct hg3dclass_struct * thisclass_c, char * parserName_c);
+
+// Sets the XMLParser
+void cegui_sstm_setXMLParser2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * parser_c);
+
+// Return the XMLParser
+void cegui_sstm_getXMLParser(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the system default TooltipTooltip
+void cegui_sstm_setDefaultTooltip(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * tooltip_c);
+
+// Set the system default TooltipWindow
+void cegui_sstm_setDefaultTooltip2(struct hg3dclass_struct * thisclass_c, char * tooltipType_c);
+
+// return a poiter to the system default tooltip. May return 0. 
+void cegui_sstm_getDefaultTooltip(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Internal method to directly set the current modal target. 
+void cegui_sstm_setModalTarget(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * target_c);
+
+// Return a pointer to the Window
+void cegui_sstm_getModalTarget(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Perform updates with regards to the window that contains the mouse cursor, firing any required MouseEnters / MouseLeaves events. 
+void cegui_sstm_updateWindowContainingMouse(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Retrieve the image codec to be used by the system. 
+void cegui_sstm_getImageCodec(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Set the image codec to be used by the system. 
+void cegui_sstm_setImageCodec(struct hg3dclass_struct * thisclass_c, char * codecName_c);
+
+// Set the image codec to use from an existing image codec. 
+void cegui_sstm_setImageCodec2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * codec_c);
+
+// Invalidate all imagery and geometry caches for CEGUI
+void cegui_sstm_invalidateAllCachedRendering(struct hg3dclass_struct * thisclass_c);
+
+// Method that injects a mouse movement event into the system. 
+void cegui_sstm_injectMouseMove(struct hg3dclass_struct * thisclass_c, float delta_x_c, float delta_y_c, int * result_c);
+
+// Method that injects that the mouse has left the application window. 
+void cegui_sstm_injectMouseLeaves(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Method that injects a mouse button down event into the system. 
+void cegui_sstm_injectMouseButtonDown(struct hg3dclass_struct * thisclass_c, enum EnumMouseButton button_c, int * result_c);
+
+// Method that injects a mouse button up event into the system. 
+void cegui_sstm_injectMouseButtonUp(struct hg3dclass_struct * thisclass_c, enum EnumMouseButton button_c, int * result_c);
+
+// Method that injects a key down event into the system. 
+void cegui_sstm_injectKeyDown(struct hg3dclass_struct * thisclass_c, unsigned int key_code_c, int * result_c);
+
+// Method that injects a key up event into the system. 
+void cegui_sstm_injectKeyUp(struct hg3dclass_struct * thisclass_c, unsigned int key_code_c, int * result_c);
+
+// Method that injects a typed character event into the system. 
+void cegui_sstm_injectChar(struct hg3dclass_struct * thisclass_c, int code_point_c, int * result_c);
+
+// Method that injects a mouse-wheel / scroll-wheel event into the system. 
+void cegui_sstm_injectMouseWheelChange(struct hg3dclass_struct * thisclass_c, float delta_c, int * result_c);
+
+// Method that injects a new position for the mouse cursor. 
+void cegui_sstm_injectMousePosition(struct hg3dclass_struct * thisclass_c, float x_pos_c, float y_pos_c, int * result_c);
+
+// Method to inject time pulses into the system. 
+void cegui_sstm_injectTimePulse(struct hg3dclass_struct * thisclass_c, float timeElapsed_c, int * result_c);
+
+// Function to directly inject a mouse button click event. 
+void cegui_sstm_injectMouseButtonClick(struct hg3dclass_struct * thisclass_c, const enum EnumMouseButton button_c, int * result_c);
+
+// Function to directly inject a mouse button double-click event. 
+void cegui_sstm_injectMouseButtonDoubleClick(struct hg3dclass_struct * thisclass_c, const enum EnumMouseButton button_c, int * result_c);
+
+// Function to directly inject a mouse button triple-click event. 
+void cegui_sstm_injectMouseButtonTripleClick(struct hg3dclass_struct * thisclass_c, const enum EnumMouseButton button_c, int * result_c);
+
+#endif 
+ include/ClassSystemHG3D.h view
@@ -0,0 +1,58 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassSystemHG3D.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassSystemHG3D
+#define _DEFINED_HG3D_ClassSystemHG3D
+
+#include "ClassPtr.h"
+#include "ClassLogger.h"
+#include "ClassDefaultResourceProvider.h"
+#include "ClassSystem.h"
+#include "ClassSchemeManager.h"
+#include "ClassFontManager.h"
+
+
+
+// 
+void cegui_sstm_hg3d_createNoLogger(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_sstm_hg3d_getDefaultResourceProvider(struct hg3dclass_struct * system_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_sstm_hg3d_getSchemeManagerSingleton(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_sstm_hg3d_schemeManagerCreate(struct hg3dclass_struct * smgr_c, char * scheme_c);
+
+// 
+void cegui_sstm_hg3d_fontManagerCreate(struct hg3dclass_struct * fmgr_c, char * font_c);
+
+// 
+void cegui_sstm_hg3d_getFontManagerSingleton(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_sstm_hg3d_getLoggerSingleton(struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassTabButton.h view
@@ -0,0 +1,51 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassTabButton.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassTabButton
+#define _DEFINED_HG3D_ClassTabButton
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// Constructor for base TabButton
+void cegui_tbbtn_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for TabButton
+void cegui_tbbtn_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Set whether this tab button is selected or not. 
+void cegui_tbbtn_setSelected(struct hg3dclass_struct * thisclass_c, int selected_c);
+
+// Return whether this tab button is selected or not. 
+void cegui_tbbtn_isSelected(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Set the target window which is the content pane which this button is covering. 
+void cegui_tbbtn_setTargetWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * wnd_c);
+
+// Get the target window which is the content pane which this button is covering. 
+void cegui_tbbtn_getTargetWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassThumb.h view
@@ -0,0 +1,62 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassThumb.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassThumb
+#define _DEFINED_HG3D_ClassThumb
+
+#include "ClassPtr.h"
+
+
+
+// return whether hot-tracking is enabled or not. 
+void cegui_thmb_isHotTracked(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether the thumb is movable on the vertical axis. 
+void cegui_thmb_isVertFree(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether the thumb is movable on the horizontal axis. 
+void cegui_thmb_isHorzFree(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// set whether the thumb uses hot-tracking. 
+void cegui_thmb_setHotTracked(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// set whether thumb is movable on the vertical axis. 
+void cegui_thmb_setVertFree(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// set whether thumb is movable on the horizontal axis. 
+void cegui_thmb_setHorzFree(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// set the movement range of the thumb for the vertical axis. 
+void cegui_thmb_setVertRange(struct hg3dclass_struct * thisclass_c, float min_c, float max_c);
+
+// set the movement range of the thumb for the horizontal axis. 
+void cegui_thmb_setHorzRange(struct hg3dclass_struct * thisclass_c, float min_c, float max_c);
+
+// Constructor for Thumb
+void cegui_thmb_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Thumb
+void cegui_thmb_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassTooltip.h view
@@ -0,0 +1,72 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassTooltip.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassTooltip
+#define _DEFINED_HG3D_ClassTooltip
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// Constructor for the Tooltip
+void cegui_tltp_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for the Tooltip
+void cegui_tltp_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Sets the target window for the tooltip. This used internally to manage tooltips, you should not have to call this yourself. 
+void cegui_tltp_setTargetWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * wnd_c);
+
+// return the current target window for this Tooltip
+void cegui_tltp_getTargetWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Resets the timer on the tooltip when in the Active / Inactive states. This is used internally to control the tooltip, it is not normally necessary to call this method yourself. 
+void cegui_tltp_resetTimer(struct hg3dclass_struct * thisclass_c);
+
+// Return the number of seconds the mouse should hover stationary over the target window before the tooltip gets activated. 
+void cegui_tltp_getHoverTime(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the number of seconds the tooltip should be displayed for before it automatically de-activates itself. 0 indicates that the tooltip should never timesout and auto-deactivate. 
+void cegui_tltp_setDisplayTime(struct hg3dclass_struct * thisclass_c, float seconds_c);
+
+// Return the number of seconds that should be taken to fade the tooltip into and out of visibility. 
+void cegui_tltp_getFadeTime(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the number of seconds the mouse should hover stationary over the target window before the tooltip gets activated. 
+void cegui_tltp_setHoverTime(struct hg3dclass_struct * thisclass_c, float seconds_c);
+
+// Return the number of seconds the tooltip should be displayed for before it automatically de-activates itself. 0 indicates that the tooltip never timesout and auto-deactivates. 
+void cegui_tltp_getDisplayTime(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Set the number of seconds that should be taken to fade the tooltip into and out of visibility. 
+void cegui_tltp_setFadeTime(struct hg3dclass_struct * thisclass_c, float seconds_c);
+
+// Causes the tooltip to position itself appropriately. 
+void cegui_tltp_positionSelf(struct hg3dclass_struct * thisclass_c);
+
+// Causes the tooltip to resize itself appropriately. 
+void cegui_tltp_sizeSelf(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassTree.h view
@@ -0,0 +1,105 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassTree.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassTree
+#define _DEFINED_HG3D_ClassTree
+
+#include "ClassPtr.h"
+#include "ClassScrollbar.h"
+
+
+
+// 
+void cegui_tree_doTreeRender(struct hg3dclass_struct * thisclass_c);
+
+// 
+void cegui_tree_doScrollbars(struct hg3dclass_struct * thisclass_c);
+
+// Return number of items attached to the tree. 
+void cegui_tree_getItemCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the number of selected items in the tree. 
+void cegui_tree_getSelectedCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether tree sorting is enabled 
+void cegui_tree_isSortEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// 
+void cegui_tree_getVertScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_tree_getHorzScrollbar(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// return whether multi-select is enabled 
+void cegui_tree_isMultiselectEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// 
+void cegui_tree_isItemTooltipsEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the vertical scroll bar is always shown. 
+void cegui_tree_isVertScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether the horizontal scroll bar is always shown. 
+void cegui_tree_isHorzScrollbarAlwaysShown(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Initialise the Window
+void cegui_tree_initialise(struct hg3dclass_struct * thisclass_c);
+
+// Remove all items from the tree. 
+void cegui_tree_resetList(struct hg3dclass_struct * thisclass_c);
+
+// Clear the selected state for all items. 
+void cegui_tree_clearAllSelections(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the tree should be sorted. 
+void cegui_tree_setSortingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the tree should allow multiple selections or just a single selection. 
+void cegui_tree_setMultiselectEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the vertical scroll bar should always be shown. 
+void cegui_tree_setShowVertScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the horizontal scroll bar should always be shown. 
+void cegui_tree_setShowHorzScrollbar(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// 
+void cegui_tree_setItemTooltipsEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the select state of an attached TreeItem. 
+void cegui_tree_setItemSelectState2(struct hg3dclass_struct * thisclass_c, int item_index_c, int state_c);
+
+// Set the LookNFeel that shoule be used for this window. 
+void cegui_tree_setLookNFeel(struct hg3dclass_struct * thisclass_c, char * look_c);
+
+// Causes the tree to update it's internal state after changes have been made to one or more attached TreeItem objects. 
+void cegui_tree_handleUpdatedItemData(struct hg3dclass_struct * thisclass_c);
+
+// Constructor for Tree
+void cegui_tree_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Tree
+void cegui_tree_destruct(struct hg3dclass_struct * thisclass_c);
+
+#endif 
+ include/ClassWidgetLookManager.h view
@@ -0,0 +1,59 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassWidgetLookManager.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassWidgetLookManager
+#define _DEFINED_HG3D_ClassWidgetLookManager
+
+#include "ClassPtr.h"
+
+
+
+// Constructor. 
+void cegui_wdgtlmgr_construct(struct hg3dclass_struct * result_c);
+
+// Destructor. 
+void cegui_wdgtlmgr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Parses a file containing window look & feel specifications (in the form of XML). 
+void cegui_wdgtlmgr_parseLookNFeelSpecification(struct hg3dclass_struct * thisclass_c, char * filename_c, char * resourceGroup_c);
+
+// Return whether a WidgetLookFeel has been created with the specified name. 
+void cegui_wdgtlmgr_isWidgetLookAvailable(struct hg3dclass_struct * thisclass_c, char * widget_c, int * result_c);
+
+// Erase the WidgetLookFeel that has the specified name. 
+void cegui_wdgtlmgr_eraseWidgetLook(struct hg3dclass_struct * thisclass_c, char * widget_c);
+
+// Return singleton WidgetLookManager
+void cegui_wdgtlmgr_getSingleton(struct hg3dclass_struct * result_c);
+
+// Return pointer to singleton WidgetLookManager
+void cegui_wdgtlmgr_getSingletonPtr(struct hg3dclass_struct * result_c);
+
+// Returns the default resource group currently set for LookNFeels. 
+void cegui_wdgtlmgr_getDefaultResourceGroup(char * result_c);
+
+// Sets the default resource group to be used when loading LookNFeel data. 
+void cegui_wdgtlmgr_setDefaultResourceGroup(char * resourceGroup_c);
+
+#endif 
+ include/ClassWindow.h view
@@ -0,0 +1,491 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassWindow.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassWindow
+#define _DEFINED_HG3D_ClassWindow
+
+#include "ClassPtr.h"
+#include "ClassFont.h"
+#include "ClassTooltip.h"
+#include "EnumVerticalAlignment.h"
+#include "EnumHorizontalAlignment.h"
+#include "ClassDragContainer.h"
+#include "EnumWindowUpdateMode.h"
+
+
+
+// Constructor for Window
+void cegui_wnd_construct(char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destructor for Window
+void cegui_wnd_destruct(struct hg3dclass_struct * thisclass_c);
+
+// return a String object holding the type name for this Window
+void cegui_wnd_getType(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return a String object holding the name of this Window
+void cegui_wnd_getName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// returns whether or not this Window
+void cegui_wnd_isDestroyedByParent(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// returns whether or not this WindowWindow
+void cegui_wnd_isAlwaysOnTop(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return whether the Window
+void cegui_wnd_isDisabled(struct hg3dclass_struct * thisclass_c, int localOnly_c, int * result_c);
+
+// return true if the Window
+void cegui_wnd_isVisible(struct hg3dclass_struct * thisclass_c, int localOnly_c, int * result_c);
+
+// return true if this is the active Window
+void cegui_wnd_isActive(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if this WindowWindow
+void cegui_wnd_isClippedByParent(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the ID code currently assigned to this Window
+void cegui_wnd_getID(struct hg3dclass_struct * thisclass_c, unsigned int * result_c);
+
+// return the number of child WindowWindow
+void cegui_wnd_getChildCount(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// returns whether a WindowWindow
+void cegui_wnd_isChild(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// returns whether at least one window with the given ID code is attached to this Window
+void cegui_wnd_isChild2(struct hg3dclass_struct * thisclass_c, unsigned int ID_c, int * result_c);
+
+// returns whether at least one window with the given ID code is attached to this Window
+void cegui_wnd_isChildRecursive(struct hg3dclass_struct * thisclass_c, unsigned int ID_c, int * result_c);
+
+// return true if the given Window
+void cegui_wnd_isChild3(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c, int * result_c);
+
+// return a pointer to the child window with the specified name. 
+void cegui_wnd_getChild(struct hg3dclass_struct * thisclass_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// return a pointer to the first attached child window with the specified ID value. 
+void cegui_wnd_getChild2(struct hg3dclass_struct * thisclass_c, unsigned int ID_c, struct hg3dclass_struct * result_c);
+
+// return a pointer to the first attached child window with the specified name. Children are traversed recursively. 
+void cegui_wnd_getChildRecursive(struct hg3dclass_struct * thisclass_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// return a pointer to the first attached child window with the specified ID value. Children are traversed recursively. 
+void cegui_wnd_getChildRecursive2(struct hg3dclass_struct * thisclass_c, unsigned int ID_c, struct hg3dclass_struct * result_c);
+
+// return a pointer to the child window that is attached to 'this' at the given index. 
+void cegui_wnd_getChildAtIdx(struct hg3dclass_struct * thisclass_c, int idx_c, struct hg3dclass_struct * result_c);
+
+// return a pointer to the WindowWindow
+void cegui_wnd_getActiveChild(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_wnd_getActiveChild2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// return true if the specified WindowWindow
+void cegui_wnd_isAncestor(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// return true if any WindowWindow
+void cegui_wnd_isAncestor2(struct hg3dclass_struct * thisclass_c, unsigned int ID_c, int * result_c);
+
+// return true if the specified WindowWindow
+void cegui_wnd_isAncestor3(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c, int * result_c);
+
+// return the active FontWindow
+void cegui_wnd_getFont(struct hg3dclass_struct * thisclass_c, int useDefault_c, struct hg3dclass_struct * result_c);
+
+// return the current text for the Window
+void cegui_wnd_getText(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return text string with visual
+void cegui_wnd_getTextVisual(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// return true if the Window
+void cegui_wnd_inheritsAlpha(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the current alpha value set for this Window
+void cegui_wnd_getAlpha(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// return the effective alpha value that will be used when rendering this window, taking into account inheritance of parent window(s) alpha. 
+void cegui_wnd_getEffectiveAlpha(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// return true if this Window
+void cegui_wnd_isCapturedByThis(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if an ancestor window has captured inputs. 
+void cegui_wnd_isCapturedByAncestor(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return true if a child window has captured inputs. 
+void cegui_wnd_isCapturedByChild(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// return the parent of this Window
+void cegui_wnd_getParent(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return whether this window is set to restore old input capture when it loses input capture. 
+void cegui_wnd_restoresOldCapture(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether z-order changes are enabled or disabled for this Window
+void cegui_wnd_isZOrderingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this window will receive multi-click events or multiple 'down' events instead. 
+void cegui_wnd_wantsMultiClickEvents(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether mouse button down event autorepeat is enabled for this window. 
+void cegui_wnd_isMouseAutoRepeatEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return the current auto-repeat delay setting for this window. 
+void cegui_wnd_getAutoRepeatDelay(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the current auto-repeat rate setting for this window. 
+void cegui_wnd_getAutoRepeatRate(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return whether the window wants inputs passed to its attached child windows when the window has inputs captured. 
+void cegui_wnd_distributesCapturedInputs(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this WindowTooltipTooltip
+void cegui_wnd_isUsingDefaultTooltip(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return a pointer to the TooltipWindowTooltipWindowTooltip
+void cegui_wnd_getTooltip(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the custom tooltip type. 
+void cegui_wnd_getTooltipType(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return the current tooltip text set for this Window
+void cegui_wnd_getTooltipText(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Return whether this window inherits Tooltip
+void cegui_wnd_inheritsTooltipText(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this window will rise to the top of the z-order when clicked with the left mouse button. 
+void cegui_wnd_isRiseOnClickEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether this window was inherited from the given class name at some point in the inheritance hierarchy. 
+void cegui_wnd_testClassName(struct hg3dclass_struct * thisclass_c, char * class_name_c, int * result_c);
+
+// Get the vertical alignment. 
+void cegui_wnd_getVerticalAlignment(struct hg3dclass_struct * thisclass_c, enum EnumVerticalAlignment * result_c);
+
+// Get the horizontal alignment. 
+void cegui_wnd_getHorizontalAlignment(struct hg3dclass_struct * thisclass_c, enum EnumHorizontalAlignment * result_c);
+
+// Get the name of the LookNFeel assigned to this window. 
+void cegui_wnd_getLookNFeel(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Get whether or not this Window
+void cegui_wnd_getModalState(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns a named user string. 
+void cegui_wnd_getUserString(struct hg3dclass_struct * thisclass_c, char * name_c, char * result_c);
+
+// Return whether a user string with the specified name exists. 
+void cegui_wnd_isUserStringDefined(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// Returns the active sibling window. 
+void cegui_wnd_getActiveSibling(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return the pixel Width of the parent element. This always returns a valid number. 
+void cegui_wnd_getParentPixelWidth(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Return the pixel Height of the parent element. This always returns a valid number. 
+void cegui_wnd_getParentPixelHeight(struct hg3dclass_struct * thisclass_c, float * result_c);
+
+// Returns whether this window should ignore mouse event and pass them through to and other windows behind it. In effect making the window transparent to the mouse. 
+void cegui_wnd_isMousePassThroughEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether this window is an auto-child window. All auto-child windows have "__auto_" in their name, but this is faster. 
+void cegui_wnd_isAutoWindow(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether this window is allowed to write XML. 
+void cegui_wnd_isWritingXMLAllowed(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether this Window
+void cegui_wnd_isDragDropTarget(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns whether automatic
+void cegui_wnd_isUsingAutoRenderingSurface(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns the window at the root of the hierarchy starting at this Window
+void cegui_wnd_getRootWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_wnd_getRootWindow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * result_c);
+
+// Return whether the Window
+void cegui_wnd_isNonClientWindow(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Renames the window. 
+void cegui_wnd_rename(struct hg3dclass_struct * thisclass_c, char * new_name_c);
+
+// Initialises the Window
+void cegui_wnd_initialiseComponents(struct hg3dclass_struct * thisclass_c);
+
+// Set whether or not this WindowWindow
+void cegui_wnd_setDestroyedByParent(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether this window is always on top, or not. 
+void cegui_wnd_setAlwaysOnTop(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether this window is enabled or disabled. A disabled window normally can not be interacted with, and may have different rendering. 
+void cegui_wnd_setEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// enable the Window
+void cegui_wnd_enable(struct hg3dclass_struct * thisclass_c);
+
+// disable the Window
+void cegui_wnd_disable(struct hg3dclass_struct * thisclass_c);
+
+// Set whether the Window
+void cegui_wnd_setVisible(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// show the Window
+void cegui_wnd_show(struct hg3dclass_struct * thisclass_c);
+
+// hide the Window
+void cegui_wnd_hide(struct hg3dclass_struct * thisclass_c);
+
+// Activate the WindowWindow
+void cegui_wnd_activate(struct hg3dclass_struct * thisclass_c);
+
+// Deactivate the window. No further inputs will be received by the window until it is re-activated either programmatically or by the user interacting with the gui. 
+void cegui_wnd_deactivate(struct hg3dclass_struct * thisclass_c);
+
+// Set whether this Window
+void cegui_wnd_setClippedByParent(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current ID for the Window
+void cegui_wnd_setID(struct hg3dclass_struct * thisclass_c, unsigned int ID_c);
+
+// Set the current text string for the Window
+void cegui_wnd_setText(struct hg3dclass_struct * thisclass_c, char * text_c);
+
+// Append the string textWindow
+void cegui_wnd_appendText(struct hg3dclass_struct * thisclass_c, char * text_c);
+
+// Set the font used by this Window
+void cegui_wnd_setFont(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * font_c);
+
+// Set the font used by this Window
+void cegui_wnd_setFont2(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Add the named WindowWindowWindownameWindowWindow
+void cegui_wnd_addChildWindow(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Add the specified WindowWindowWindowwindowWindowWindow
+void cegui_wnd_addChildWindow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c);
+
+// Remove the named Window
+void cegui_wnd_removeChildWindow(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Remove the specified Window
+void cegui_wnd_removeChildWindow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c);
+
+// Remove the first child WindowWindow
+void cegui_wnd_removeChildWindow3(struct hg3dclass_struct * thisclass_c, unsigned int ID_c);
+
+// Move the Window
+void cegui_wnd_moveToFront(struct hg3dclass_struct * thisclass_c);
+
+// Move the Window
+void cegui_wnd_moveToBack(struct hg3dclass_struct * thisclass_c);
+
+// Captures input to this window. 
+void cegui_wnd_captureInput(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Releases input capture from this WindowWindow
+void cegui_wnd_releaseInput(struct hg3dclass_struct * thisclass_c);
+
+// Set whether this window will remember and restore the previous window that had inputs captured. 
+void cegui_wnd_setRestoreCapture(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current alpha value for this window. 
+void cegui_wnd_setAlpha(struct hg3dclass_struct * thisclass_c, float alpha_c);
+
+// Sets whether this Window
+void cegui_wnd_setInheritsAlpha(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Invalidate this window causing at least this window to be redrawn during the next rendering pass. 
+void cegui_wnd_invalidate(struct hg3dclass_struct * thisclass_c);
+
+// Invalidate this window and - dependant upon recursive
+void cegui_wnd_invalidate2(struct hg3dclass_struct * thisclass_c, const int recursive_c);
+
+// Set the mouse cursor image to be used when the mouse enters this window. 
+void cegui_wnd_setMouseCursor3(struct hg3dclass_struct * thisclass_c, char * imageset_c, char * image_name_c);
+
+// Set whether z-order changes are enabled or disabled for this Window
+void cegui_wnd_setZOrderingEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether this window will receive multi-click events or multiple 'down' events instead. 
+void cegui_wnd_setWantsMultiClickEvents(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether mouse button down event autorepeat is enabled for this window. 
+void cegui_wnd_setMouseAutoRepeatEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the current auto-repeat delay setting for this window. 
+void cegui_wnd_setAutoRepeatDelay(struct hg3dclass_struct * thisclass_c, float delay_c);
+
+// Set the current auto-repeat rate setting for this window. 
+void cegui_wnd_setAutoRepeatRate(struct hg3dclass_struct * thisclass_c, float rate_c);
+
+// Set whether the window wants inputs passed to its attached child windows when the window has inputs captured. 
+void cegui_wnd_setDistributesCapturedInputs(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+void cegui_wnd_notifyDragDropItemEnters(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+void cegui_wnd_notifyDragDropItemLeaves(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer
+void cegui_wnd_notifyDragDropItemDropped(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * item_c);
+
+// Internal destroy method which actually just adds the window and any parent destructed child windows to the dead pool. 
+void cegui_wnd_destroy(struct hg3dclass_struct * thisclass_c);
+
+// Set the custom TooltipWindowWindowTooltip
+void cegui_wnd_setTooltip(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * tooltip_c);
+
+// Set the custom TooltipWindowWindow
+void cegui_wnd_setTooltipType(struct hg3dclass_struct * thisclass_c, char * tooltipType_c);
+
+// Set the tooltip text for this window. 
+void cegui_wnd_setTooltipText(struct hg3dclass_struct * thisclass_c, char * tip_c);
+
+// Set whether this window inherits Tooltip
+void cegui_wnd_setInheritsTooltipText(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether this window will rise to the top of the z-order when clicked with the left mouse button. 
+void cegui_wnd_setRiseOnClickEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set the vertical alignment. 
+void cegui_wnd_setVerticalAlignment(struct hg3dclass_struct * thisclass_c, const enum EnumVerticalAlignment alignment_c);
+
+// Set the horizontal alignment. 
+void cegui_wnd_setHorizontalAlignment(struct hg3dclass_struct * thisclass_c, const enum EnumHorizontalAlignment alignment_c);
+
+// Set the LookNFeel that shoule be used for this window. 
+void cegui_wnd_setLookNFeel(struct hg3dclass_struct * thisclass_c, char * look_c);
+
+// Set the modal state for this Window
+void cegui_wnd_setModalState(struct hg3dclass_struct * thisclass_c, int state_c);
+
+// method called to perform extended laying out of attached child windows. 
+void cegui_wnd_performChildWindowLayout(struct hg3dclass_struct * thisclass_c);
+
+// Sets the value a named user string, creating it as required. 
+void cegui_wnd_setUserString(struct hg3dclass_struct * thisclass_c, char * name_c, char * value_c);
+
+// Causes the Window
+void cegui_wnd_render(struct hg3dclass_struct * thisclass_c);
+
+// Cause window to update itself and any attached children. Client code does not need to call this method; to ensure full, and proper updates, call the injectTimePulse methodname method provided by the System
+void cegui_wnd_update(struct hg3dclass_struct * thisclass_c, float elapsed_c);
+
+// Sets the internal 'initialising' flag to true. This can be use to optimize initialisation of some widgets, and is called automatically by the layout XML handler when it has created a window. That is just after the window has been created, but before any children or properties are read. 
+void cegui_wnd_beginInitialisation(struct hg3dclass_struct * thisclass_c);
+
+// Sets the internal 'initialising' flag to false. This is called automatically by the layout XML handler when it is done creating a window. That is after all properties and children have been loaded and just before the next sibling gets created. 
+void cegui_wnd_endInitialisation(struct hg3dclass_struct * thisclass_c);
+
+// Sets whether this window should ignore mouse events and pass them through to any windows behind it. In effect making the window transparent to the mouse. 
+void cegui_wnd_setMousePassThroughEnabled(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Assign the WindowRenderer to specify the Look'N'Feel specification to be used. 
+void cegui_wnd_setWindowRenderer(struct hg3dclass_struct * thisclass_c, char * name_c);
+
+// Get the factory name of the currently assigned WindowRenderer. (Look'N'Feel specification). 
+void cegui_wnd_getWindowRendererName(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+// Sets whether this window is allowed to write XML. 
+void cegui_wnd_setWritingXMLAllowed(struct hg3dclass_struct * thisclass_c, int allow_c);
+
+// Inform the window, and optionally all children, that screen area rectangles have changed. 
+void cegui_wnd_notifyScreenAreaChanged(struct hg3dclass_struct * thisclass_c, int recursive_c);
+
+// Changes the widget's falagard type, thus changing its look'n'feel and optionally its renderer in the process. 
+void cegui_wnd_setFalagardType(struct hg3dclass_struct * thisclass_c, char * type_c, char * rendererType_c);
+
+// Specifies whether this Window
+void cegui_wnd_setDragDropTarget(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Invalidate the chain of rendering surfaces from this window backwards to ensure they get properly redrawn - but doing the minimum amount of work possibe - next render. 
+void cegui_wnd_invalidateRenderingSurface(struct hg3dclass_struct * thisclass_c);
+
+// Sets whether automatic
+void cegui_wnd_setUsingAutoRenderingSurface(struct hg3dclass_struct * thisclass_c, int setting_c);
+
+// Set whether the Window
+void cegui_wnd_setNonClientWindow(struct hg3dclass_struct * thisclass_c, const int setting_c);
+
+// return whether text parsing is enabled for this window. 
+void cegui_wnd_isTextParsingEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// set whether text parsing is enabled for this window. 
+void cegui_wnd_setTextParsingEnabled(struct hg3dclass_struct * thisclass_c, const int setting_c);
+
+// Add the named property to the XML ban list for this window. 
+void cegui_wnd_banPropertyFromXML(struct hg3dclass_struct * thisclass_c, char * property_name_c);
+
+// Remove the named property from the XML ban list for this window. 
+void cegui_wnd_unbanPropertyFromXML(struct hg3dclass_struct * thisclass_c, char * property_name_c);
+
+// Return whether the named property is banned from XML. 
+void cegui_wnd_isPropertyBannedFromXML(struct hg3dclass_struct * thisclass_c, char * property_name_c, int * result_c);
+
+// Set the window update mode. This mode controls the behaviour of the Window::update
+void cegui_wnd_setUpdateMode(struct hg3dclass_struct * thisclass_c, const enum EnumWindowUpdateMode mode_c);
+
+// Return the current window update mode that is set for this WindowWindow::update
+void cegui_wnd_getUpdateMode(struct hg3dclass_struct * thisclass_c, enum EnumWindowUpdateMode * result_c);
+
+// Set whether mouse input that is not directly handled by this WindowWindow
+void cegui_wnd_setMouseInputPropagationEnabled(struct hg3dclass_struct * thisclass_c, const int enabled_c);
+
+// Return whether mouse input that is not directly handled by this WindowWindow
+void cegui_wnd_isMouseInputPropagationEnabled(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Clones this Window
+void cegui_wnd_clone(struct hg3dclass_struct * thisclass_c, char * newName_c, const int deepCopy_c, struct hg3dclass_struct * result_c);
+
+// copies this widget's properties to given target widget 
+void cegui_wnd_clonePropertiesTo(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * target_c);
+
+// copies this widget's child widgets to given target widget 
+void cegui_wnd_cloneChildWidgetsTo(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * target_c);
+
+// Return the (visual) z index of the window on it's parent. 
+void cegui_wnd_getZIndex(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Return whether /a this Window
+void cegui_wnd_isInFront(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * wnd_c, int * result_c);
+
+// Return whether /a this Window
+void cegui_wnd_isBehind(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * wnd_c, int * result_c);
+
+// return the Window
+void cegui_wnd_getCaptureWindow(struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassWindowManager.h view
@@ -0,0 +1,90 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassWindowManager.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassWindowManager
+#define _DEFINED_HG3D_ClassWindowManager
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+
+
+
+// Constructs a new WindowManager
+void cegui_wmgr_construct(struct hg3dclass_struct * result_c);
+
+// Destructor for WindowManager
+void cegui_wmgr_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Creates a new Window
+void cegui_wmgr_createWindow(struct hg3dclass_struct * thisclass_c, char * type_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Destroy the specified Window
+void cegui_wmgr_destroyWindow(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c);
+
+// Destroy the specified Window
+void cegui_wmgr_destroyWindow2(struct hg3dclass_struct * thisclass_c, char * window_c);
+
+// Return a pointer to the specified Window
+void cegui_wmgr_getWindow(struct hg3dclass_struct * thisclass_c, char * name_c, struct hg3dclass_struct * result_c);
+
+// Examines the list of Window
+void cegui_wmgr_isWindowPresent(struct hg3dclass_struct * thisclass_c, char * name_c, int * result_c);
+
+// Destroys all Window
+void cegui_wmgr_destroyAllWindows(struct hg3dclass_struct * thisclass_c);
+
+// Return whether the window dead pool is empty. 
+void cegui_wmgr_isDeadPoolEmpty(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Permanently destroys any windows placed in the dead pool. 
+void cegui_wmgr_cleanDeadPool(struct hg3dclass_struct * thisclass_c);
+
+// Save a full XML window layout, starting at the given Window
+void cegui_wmgr_saveWindowLayout(struct hg3dclass_struct * thisclass_c, char * window_c, char * filename_c, const int writeParent_c);
+
+// Save a full XML window layout, starting at the given Window
+void cegui_wmgr_saveWindowLayout2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c, char * filename_c, const int writeParent_c);
+
+// Rename a window. 
+void cegui_wmgr_renameWindow(struct hg3dclass_struct * thisclass_c, char * window_c, char * new_name_c);
+
+// Rename a window. 
+void cegui_wmgr_renameWindow2(struct hg3dclass_struct * thisclass_c, struct hg3dclass_struct * window_c, char * new_name_c);
+
+// Put WindowManager
+void cegui_wmgr_lock(struct hg3dclass_struct * thisclass_c);
+
+// Put WindowManager
+void cegui_wmgr_unlock(struct hg3dclass_struct * thisclass_c);
+
+// Returns whether WindowManager
+void cegui_wmgr_isLocked(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Returns the default resource group currently set for layouts. 
+void cegui_wmgr_getDefaultResourceGroup(char * result_c);
+
+// Sets the default resource group to be used when loading layouts. 
+void cegui_wmgr_setDefaultResourceGroup(char * resourceGroup_c);
+
+#endif 
+ include/ClassWindowManagerHG3D.h view
@@ -0,0 +1,46 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassWindowManagerHG3D.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassWindowManagerHG3D
+#define _DEFINED_HG3D_ClassWindowManagerHG3D
+
+#include "ClassPtr.h"
+#include "ClassWindow.h"
+#include "ClassWindowManager.h"
+
+
+
+// 
+void cegui_wmgr_hg3d_construct(struct hg3dclass_struct * result_c);
+
+// 
+void cegui_wmgr_hg3d_destruct(struct hg3dclass_struct * thisclass_c);
+
+// 
+void cegui_wmgr_hg3d_loadWindowLayoutHG3D(struct hg3dclass_struct * thisclass_c, char * filename_c, char * name_prefix_c, struct hg3dclass_struct * result_c);
+
+// 
+void cegui_wmgr_hg3d_getSingleton(struct hg3dclass_struct * result_c);
+
+#endif 
+ include/ClassXMLParser.h view
@@ -0,0 +1,44 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// ClassXMLParser.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_ClassXMLParser
+#define _DEFINED_HG3D_ClassXMLParser
+
+#include "ClassPtr.h"
+
+
+
+// XMLParser
+void cegui_xmlprs_destruct(struct hg3dclass_struct * thisclass_c);
+
+// Initialises the XMLParser
+void cegui_xmlprs_initialise(struct hg3dclass_struct * thisclass_c, int * result_c);
+
+// Cleans up the XMLParser
+void cegui_xmlprs_cleanup(struct hg3dclass_struct * thisclass_c);
+
+// Return identification string for the XML parser module. If the internal id string has not been set by the XML parser module creator, a generic string of "Unknown XML parser" will be returned. 
+void cegui_xmlprs_getIdentifierString(struct hg3dclass_struct * thisclass_c, char * result_c);
+
+#endif 
+ include/EnumBlendMode.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumBlendMode.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumBlendMode
+#define _DEFINED_HG3D_EnumBlendMode
+
+
+
+enum EnumBlendMode
+{
+  BM_INVALID, // Invalid mode indicator. 
+  BM_NORMAL, // Use normal blending mode. 
+  BM_RTT_PREMULTIPLIED // Use blending mode suitable for textures with premultiplied colours. 
+};
+#endif 
+ include/EnumFWSizingLocation.h view
@@ -0,0 +1,42 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumFWSizingLocation.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumFWSizingLocation
+#define _DEFINED_HG3D_EnumFWSizingLocation
+
+
+
+enum EnumFWSizingLocation
+{
+  SizingNone, // Position is not a sizing location. 
+  SizingTopLeft, // Position will size from the top-left. 
+  SizingTopRight, // Position will size from the top-right. 
+  SizingBottomLeft, // Position will size from the bottom left. 
+  SizingBottomRight, // Position will size from the bottom right. 
+  SizingTop, // Position will size from the top. 
+  SizingLeft, // Position will size from the left. 
+  SizingBottom, // Position will size from the bottom. 
+  SizingRight // Position will size from the right. 
+};
+#endif 
+ include/EnumHorizontalAlignment.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumHorizontalAlignment.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumHorizontalAlignment
+#define _DEFINED_HG3D_EnumHorizontalAlignment
+
+
+
+enum EnumHorizontalAlignment
+{
+  HA_LEFT, // 
+  HA_CENTRE, // 
+  HA_RIGHT // 
+};
+#endif 
+ include/EnumKeyScan.h view
@@ -0,0 +1,177 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumKeyScan.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumKeyScan
+#define _DEFINED_HG3D_EnumKeyScan
+
+
+
+enum EnumKeyScan
+{
+  KeyEscape =0x01, // 
+  KeyOne =0x02, // 
+  KeyTwo =0x03, // 
+  KeyThree =0x04, // 
+  KeyFour =0x05, // 
+  KeyFive =0x06, // 
+  KeySix =0x07, // 
+  KeySeven =0x08, // 
+  KeyEight =0x09, // 
+  KeyNine =0x0A, // 
+  KeyZero =0x0B, // 
+  KeyMinus =0x0C, // 
+  KeyEquals =0x0D, // 
+  KeyBackspace =0x0E, // 
+  KeyTab =0x0F, // 
+  KeyQ =0x10, // 
+  KeyW =0x11, // 
+  KeyE =0x12, // 
+  KeyR =0x13, // 
+  KeyT =0x14, // 
+  KeyY =0x15, // 
+  KeyU =0x16, // 
+  KeyI =0x17, // 
+  KeyO =0x18, // 
+  KeyP =0x19, // 
+  KeyLeftBracket =0x1A, // 
+  KeyRightBracket =0x1B, // 
+  KeyReturn =0x1C, // 
+  KeyLeftControl =0x1D, // 
+  KeyA =0x1E, // 
+  KeyS =0x1F, // 
+  KeyD =0x20, // 
+  KeyF =0x21, // 
+  KeyG =0x22, // 
+  KeyH =0x23, // 
+  KeyJ =0x24, // 
+  KeyK =0x25, // 
+  KeyL =0x26, // 
+  KeySemicolon =0x27, // 
+  KeyApostrophe =0x28, // 
+  KeyGrave =0x29, // 
+  KeyLeftShift =0x2A, // 
+  KeyBackslash =0x2B, // 
+  KeyZ =0x2C, // 
+  KeyX =0x2D, // 
+  KeyC =0x2E, // 
+  KeyV =0x2F, // 
+  KeyB =0x30, // 
+  KeyN =0x31, // 
+  KeyM =0x32, // 
+  KeyComma =0x33, // 
+  KeyPeriod =0x34, // 
+  KeySlash =0x35, // 
+  KeyRightShift =0x36, // 
+  KeyMultiply =0x37, // 
+  KeyLeftAlt =0x38, // 
+  KeySpace =0x39, // 
+  KeyCapital =0x3A, // 
+  KeyF1 =0x3B, // 
+  KeyF2 =0x3C, // 
+  KeyF3 =0x3D, // 
+  KeyF4 =0x3E, // 
+  KeyF5 =0x3F, // 
+  KeyF6 =0x40, // 
+  KeyF7 =0x41, // 
+  KeyF8 =0x42, // 
+  KeyF9 =0x43, // 
+  KeyF10 =0x44, // 
+  KeyNumLock =0x45, // 
+  KeyScrollLock =0x46, // 
+  KeyNumpad7 =0x47, // 
+  KeyNumpad8 =0x48, // 
+  KeyNumpad9 =0x49, // 
+  KeySubtract =0x4A, // 
+  KeyNumpad4 =0x4B, // 
+  KeyNumpad5 =0x4C, // 
+  KeyNumpad6 =0x4D, // 
+  KeyAdd =0x4E, // 
+  KeyNumpad1 =0x4F, // 
+  KeyNumpad2 =0x50, // 
+  KeyNumpad3 =0x51, // 
+  KeyNumpad0 =0x52, // 
+  KeyDecimal =0x53, // 
+  KeyOEM_102 =0x56, // 
+  KeyF11 =0x57, // 
+  KeyF12 =0x58, // 
+  KeyF13 =0x64, // 
+  KeyF14 =0x65, // 
+  KeyF15 =0x66, // 
+  KeyKana =0x70, // 
+  KeyABNT_C1 =0x73, // 
+  KeyConvert =0x79, // 
+  KeyNoConvert =0x7B, // 
+  KeyYen =0x7D, // 
+  KeyABNT_C2 =0x7E, // 
+  KeyNumpadEquals =0x8D, // 
+  KeyPrevTrack =0x90, // 
+  KeyAt =0x91, // 
+  KeyColon =0x92, // 
+  KeyUnderline =0x93, // 
+  KeyKanji =0x94, // 
+  KeyStop =0x95, // 
+  KeyAX =0x96, // 
+  KeyUnlabeled =0x97, // 
+  KeyNextTrack =0x99, // 
+  KeyNumpadEnter =0x9C, // 
+  KeyRightControl =0x9D, // 
+  KeyMute =0xA0, // 
+  KeyCalculator =0xA1, // 
+  KeyPlayPause =0xA2, // 
+  KeyMediaStop =0xA4, // 
+  KeyVolumeDown =0xAE, // 
+  KeyVolumeUp =0xB0, // 
+  KeyWebHome =0xB2, // 
+  KeyNumpadComma =0xB3, // 
+  KeyDivide =0xB5, // 
+  KeySysRq =0xB7, // 
+  KeyRightAlt =0xB8, // 
+  KeyPause =0xC5, // 
+  KeyHome =0xC7, // 
+  KeyArrowUp =0xC8, // 
+  KeyPageUp =0xC9, // 
+  KeyArrowLeft =0xCB, // 
+  KeyArrowRight =0xCD, // 
+  KeyEnd =0xCF, // 
+  KeyArrowDown =0xD0, // 
+  KeyPageDown =0xD1, // 
+  KeyInsert =0xD2, // 
+  KeyDelete =0xD3, // 
+  KeyLeftWindows =0xDB, // 
+  KeyRightWindows =0xDC, // 
+  KeyAppMenu =0xDD, // 
+  KeyPower =0xDE, // 
+  KeySleep =0xDF, // 
+  KeyWake =0xE3, // 
+  KeyWebSearch =0xE5, // 
+  KeyWebFavorites =0xE6, // 
+  KeyWebRefresh =0xE7, // 
+  KeyWebStop =0xE8, // 
+  KeyWebForward =0xE9, // 
+  KeyWebBack =0xEA, // 
+  KeyMyComputer =0xEB, // 
+  KeyMail =0xEC, // 
+  KeyMediaSelect =0xED // 
+};
+#endif 
+ include/EnumLoggingLevel.h view
@@ -0,0 +1,38 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumLoggingLevel.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumLoggingLevel
+#define _DEFINED_HG3D_EnumLoggingLevel
+
+
+
+enum EnumLoggingLevel
+{
+  LoggingLevelErrors, // Only actual error conditions will be logged. 
+  LoggingLevelWarnings, // Warnings will be logged as well. 
+  LoggingLevelStandard, // Basic events will be logged (default level). 
+  LoggingLevelInformative, // Useful tracing (object creations etc) information will be logged. 
+  LoggingLevelInsane // Mostly everything gets logged (use for heavy tracing only, log WILL be big). 
+};
+#endif 
+ include/EnumMouseButton.h view
@@ -0,0 +1,40 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumMouseButton.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumMouseButton
+#define _DEFINED_HG3D_EnumMouseButton
+
+
+
+enum EnumMouseButton
+{
+  MouseLeftButton, // The left mouse button. 
+  MouseRightButton, // The right mouse button. 
+  MouseMiddleButton, // The middle mouse button. 
+  MouseX1Button, // The first 'extra' mouse button. 
+  MouseX2Button, // The second 'extra' mouse button. 
+  MouseMouseButtonCount, // Value that equals the number of mouse buttons supported by CEGUI
+  MouseNoButton // Value set for no mouse button. NB: This is not 0, do not assume! 
+};
+#endif 
+ include/EnumQuadSplitMode.h view
@@ -0,0 +1,35 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumQuadSplitMode.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumQuadSplitMode
+#define _DEFINED_HG3D_EnumQuadSplitMode
+
+
+
+enum EnumQuadSplitMode
+{
+  TopLeftToBottomRight, // Diagonal split goes from top-left to bottom-right. 
+  BottomLeftToTopRight // Diagonal split goes from bottom-left to top-right. 
+};
+#endif 
+ include/EnumSelectionMode.h view
@@ -0,0 +1,43 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumSelectionMode.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumSelectionMode
+#define _DEFINED_HG3D_EnumSelectionMode
+
+
+
+enum EnumSelectionMode
+{
+  SelectionModeRowSingle, // 
+  SelectionModeRowMultiple, // 
+  SelectionModeCellSingle, // 
+  SelectionModeCellMultiple, // 
+  SelectionModeNominatedColumnSingle, // 
+  SelectionModeNominatedColumnMultiple, // 
+  SelectionModeColumnSingle, // 
+  SelectionModeColumnMultiple, // 
+  SelectionModeNominatedRowSingle, // 
+  SelectionModeNominatedRowMultiple // 
+};
+#endif 
+ include/EnumSortDirection.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumSortDirection.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumSortDirection
+#define _DEFINED_HG3D_EnumSortDirection
+
+
+
+enum EnumSortDirection
+{
+  SortDirectionNone, // Items under this segment should not be sorted. 
+  SortDirectionAscending, // Items under this segment should be sorted in ascending order. 
+  SortDirectionDescending // Items under this segment should be sorted in descending order. 
+};
+#endif 
+ include/EnumSystemKey.h view
@@ -0,0 +1,41 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumSystemKey.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumSystemKey
+#define _DEFINED_HG3D_EnumSystemKey
+
+
+
+enum EnumSystemKey
+{
+  SystemKeyLeftMouse = 0x0001, // The left mouse button. 
+  SystemKeyRightMouse = 0x0002, // The right mouse button. 
+  SystemKeyShift = 0x0004, // Either shift key. 
+  SystemKeyControl = 0x0008, // Either control key. 
+  SystemKeyMiddleMouse = 0x0010, // The middle mouse button. 
+  SystemKeyX1Mouse = 0x0020, // The first 'extra' mouse button. 
+  SystemKeyX2Mouse = 0x0040, // The second 'extra' mouse button. 
+  SystemKeyAlt = 0x0080 // Either alt key. 
+};
+#endif 
+ include/EnumTabPanePosition.h view
@@ -0,0 +1,35 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumTabPanePosition.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumTabPanePosition
+#define _DEFINED_HG3D_EnumTabPanePosition
+
+
+
+enum EnumTabPanePosition
+{
+  TabPanePositionTop, // 
+  TabPanePositionBottom // 
+};
+#endif 
+ include/EnumTextInputMode.h view
@@ -0,0 +1,37 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumTextInputMode.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumTextInputMode
+#define _DEFINED_HG3D_EnumTextInputMode
+
+
+
+enum EnumTextInputMode
+{
+  TextInputModeFloatingPoint, // Floating point decimal. 
+  TextInputModeInteger, // Integer decimal. 
+  TextInputModeHexadecimal, // Hexadecimal. 
+  TextInputModeOctal // Octal. 
+};
+#endif 
+ include/EnumTipState.h view
@@ -0,0 +1,37 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumTipState.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumTipState
+#define _DEFINED_HG3D_EnumTipState
+
+
+
+enum EnumTipState
+{
+  TipStateInactive, // Tooltip
+  TipStateActive, // Tooltip
+  TipStateFadeIn, // Tooltip
+  TipStateFadeOut // Tooltip
+};
+#endif 
+ include/EnumVerticalAlignment.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumVerticalAlignment.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumVerticalAlignment
+#define _DEFINED_HG3D_EnumVerticalAlignment
+
+
+
+enum EnumVerticalAlignment
+{
+  VA_TOP, // 
+  VA_CENTRE, // 
+  VA_BOTTOM // 
+};
+#endif 
+ include/EnumWindowUpdateMode.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// EnumWindowUpdateMode.h
+
+// 
+
+#include "wchar.h"
+#ifndef _DEFINED_HG3D_EnumWindowUpdateMode
+#define _DEFINED_HG3D_EnumWindowUpdateMode
+
+
+
+enum EnumWindowUpdateMode
+{
+  WUM_ALWAYS, // Always call the Window::update
+  WUM_NEVER, // Never call the Window::update
+  WUM_VISIBLE // Only call the Window::update
+};
+#endif 
+ include/StructHG3DClass.h view
@@ -0,0 +1,36 @@+// This source file is part of HGamer3D
+// (A project to enable 3D game development in Haskell)
+// For the latest info, see http://www.althainz.de/HGamer3D.html
+// 
+// (c) 2011, 2012 Peter Althainz
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//     http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// 
+
+// StructHG3DClass.h
+
+// 
+
+#include "wchar.h"
+
+
+
+#ifndef _INC_STRUCT_HG3DCLASS
+#define _INC_STRUCT_HG3DCLASS
+
+typedef struct hg3dclass_struct {
+	void *ptr;
+	void *fptr;
+} hg3dclass_struct;
+
+#endif