{-# LINE 2 "./Graphics/UI/Gtk/Types.chs" #-}
{-# OPTIONS_HADDOCK hide #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- -*-haskell-*-
-- -------------------- automatically generated file - do not edit ----------
-- Object hierarchy for the GIMP Toolkit (GTK) Binding for Haskell
--
-- Author : Axel Simon
--
-- Copyright (C) 2001-2005 Axel Simon
--
-- This library is free software; you can redistribute it and/or
-- modify it under the terms of the GNU Lesser General Public
-- License as published by the Free Software Foundation; either
-- version 2.1 of the License, or (at your option) any later version.
--
-- This library is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-- Lesser General Public License for more details.
--
-- #hide

-- |
-- Maintainer : gtk2hs-users@lists.sourceforge.net
-- Stability : provisional
-- Portability : portable (depends on GHC)
--
-- This file reflects the Gtk+ object hierarchy in terms of Haskell classes.
--
-- Note: the mk... functions were originally meant to simply be an alias
-- for the constructor. However, in order to communicate the destructor
-- of an object to objectNew, the mk... functions are now a tuple containing
-- Haskell constructor and the destructor function pointer. This hack avoids
-- changing all modules that simply pass mk... to objectNew.
--
module Graphics.UI.Gtk.Types (

  module System.Glib.GObject,
  module Graphics.UI.Gtk.General.Threading,
  AtkObject(AtkObject), AtkObjectClass,
  toAtkObject,
  mkAtkObject, unAtkObject,
  castToAtkObject, gTypeAtkObject,
  Accessible(Accessible), AccessibleClass,
  toAccessible,
  mkAccessible, unAccessible,
  castToAccessible, gTypeAccessible,
  Keymap(Keymap), KeymapClass,
  toKeymap,
  mkKeymap, unKeymap,
  castToKeymap, gTypeKeymap,
  DisplayManager(DisplayManager), DisplayManagerClass,
  toDisplayManager,
  mkDisplayManager, unDisplayManager,
  castToDisplayManager, gTypeDisplayManager,
  AppLaunchContext(AppLaunchContext), AppLaunchContextClass,
  toAppLaunchContext,
  mkAppLaunchContext, unAppLaunchContext,
  castToAppLaunchContext, gTypeAppLaunchContext,
  PrintSettings(PrintSettings), PrintSettingsClass,
  toPrintSettings,
  mkPrintSettings, unPrintSettings,
  castToPrintSettings, gTypePrintSettings,
  PrintOperation(PrintOperation), PrintOperationClass,
  toPrintOperation,
  mkPrintOperation, unPrintOperation,
  castToPrintOperation, gTypePrintOperation,
  PrintOperationPreview(PrintOperationPreview), PrintOperationPreviewClass,
  toPrintOperationPreview,
  mkPrintOperationPreview, unPrintOperationPreview,
  castToPrintOperationPreview, gTypePrintOperationPreview,
  PageSetup(PageSetup), PageSetupClass,
  toPageSetup,
  mkPageSetup, unPageSetup,
  castToPageSetup, gTypePageSetup,
  PrintContext(PrintContext), PrintContextClass,
  toPrintContext,
  mkPrintContext, unPrintContext,
  castToPrintContext, gTypePrintContext,
  RecentChooser(RecentChooser), RecentChooserClass,
  toRecentChooser,
  mkRecentChooser, unRecentChooser,
  castToRecentChooser, gTypeRecentChooser,
  RecentManager(RecentManager), RecentManagerClass,
  toRecentManager,
  mkRecentManager, unRecentManager,
  castToRecentManager, gTypeRecentManager,
  DrawWindow(DrawWindow), DrawWindowClass,
  toDrawWindow,
  mkDrawWindow, unDrawWindow,
  castToDrawWindow, gTypeDrawWindow,
  Screen(Screen), ScreenClass,
  toScreen,
  mkScreen, unScreen,
  castToScreen, gTypeScreen,
  Display(Display), DisplayClass,
  toDisplay,
  mkDisplay, unDisplay,
  castToDisplay, gTypeDisplay,
  Visual(Visual), VisualClass,
  toVisual,
  mkVisual, unVisual,
  castToVisual, gTypeVisual,
  Device(Device), DeviceClass,
  toDevice,
  mkDevice, unDevice,
  castToDevice, gTypeDevice,
  FrameClock(FrameClock), FrameClockClass,
  toFrameClock,
  mkFrameClock, unFrameClock,
  castToFrameClock, gTypeFrameClock,
  Settings(Settings), SettingsClass,
  toSettings,
  mkSettings, unSettings,
  castToSettings, gTypeSettings,
  TextBuffer(TextBuffer), TextBufferClass,
  toTextBuffer,
  mkTextBuffer, unTextBuffer,
  castToTextBuffer, gTypeTextBuffer,
  TextTag(TextTag), TextTagClass,
  toTextTag,
  mkTextTag, unTextTag,
  castToTextTag, gTypeTextTag,
  TextTagTable(TextTagTable), TextTagTableClass,
  toTextTagTable,
  mkTextTagTable, unTextTagTable,
  castToTextTagTable, gTypeTextTagTable,
  Style(Style), StyleClass,
  toStyle,
  mkStyle, unStyle,
  castToStyle, gTypeStyle,
  RcStyle(RcStyle), RcStyleClass,
  toRcStyle,
  mkRcStyle, unRcStyle,
  castToRcStyle, gTypeRcStyle,
  DragContext(DragContext), DragContextClass,
  toDragContext,
  mkDragContext, unDragContext,
  castToDragContext, gTypeDragContext,
  Pixbuf(Pixbuf), PixbufClass,
  toPixbuf,
  mkPixbuf, unPixbuf,
  castToPixbuf, gTypePixbuf,
  PixbufAnimation(PixbufAnimation), PixbufAnimationClass,
  toPixbufAnimation,
  mkPixbufAnimation, unPixbufAnimation,
  castToPixbufAnimation, gTypePixbufAnimation,
  PixbufSimpleAnim(PixbufSimpleAnim), PixbufSimpleAnimClass,
  toPixbufSimpleAnim,
  mkPixbufSimpleAnim, unPixbufSimpleAnim,
  castToPixbufSimpleAnim, gTypePixbufSimpleAnim,
  PixbufAnimationIter(PixbufAnimationIter), PixbufAnimationIterClass,
  toPixbufAnimationIter,
  mkPixbufAnimationIter, unPixbufAnimationIter,
  castToPixbufAnimationIter, gTypePixbufAnimationIter,
  TextChildAnchor(TextChildAnchor), TextChildAnchorClass,
  toTextChildAnchor,
  mkTextChildAnchor, unTextChildAnchor,
  castToTextChildAnchor, gTypeTextChildAnchor,
  TextMark(TextMark), TextMarkClass,
  toTextMark,
  mkTextMark, unTextMark,
  castToTextMark, gTypeTextMark,
  RecentFilter(RecentFilter), RecentFilterClass,
  toRecentFilter,
  mkRecentFilter, unRecentFilter,
  castToRecentFilter, gTypeRecentFilter,
  Widget(Widget), WidgetClass,
  toWidget,
  mkWidget, unWidget,
  castToWidget, gTypeWidget,
  HSV(HSV), HSVClass,
  toHSV,
  mkHSV, unHSV,
  castToHSV, gTypeHSV,
  Misc(Misc), MiscClass,
  toMisc,
  mkMisc, unMisc,
  castToMisc, gTypeMisc,
  Label(Label), LabelClass,
  toLabel,
  mkLabel, unLabel,
  castToLabel, gTypeLabel,
  AccelLabel(AccelLabel), AccelLabelClass,
  toAccelLabel,
  mkAccelLabel, unAccelLabel,
  castToAccelLabel, gTypeAccelLabel,
  Arrow(Arrow), ArrowClass,
  toArrow,
  mkArrow, unArrow,
  castToArrow, gTypeArrow,
  Image(Image), ImageClass,
  toImage,
  mkImage, unImage,
  castToImage, gTypeImage,
  Container(Container), ContainerClass,
  toContainer,
  mkContainer, unContainer,
  castToContainer, gTypeContainer,
  ToolPalette(ToolPalette), ToolPaletteClass,
  toToolPalette,
  mkToolPalette, unToolPalette,
  castToToolPalette, gTypeToolPalette,
  ToolItemGroup(ToolItemGroup), ToolItemGroupClass,
  toToolItemGroup,
  mkToolItemGroup, unToolItemGroup,
  castToToolItemGroup, gTypeToolItemGroup,
  Stack(Stack), StackClass,
  toStack,
  mkStack, unStack,
  castToStack, gTypeStack,
  Bin(Bin), BinClass,
  toBin,
  mkBin, unBin,
  castToBin, gTypeBin,
  Alignment(Alignment), AlignmentClass,
  toAlignment,
  mkAlignment, unAlignment,
  castToAlignment, gTypeAlignment,
  Frame(Frame), FrameClass,
  toFrame,
  mkFrame, unFrame,
  castToFrame, gTypeFrame,
  AspectFrame(AspectFrame), AspectFrameClass,
  toAspectFrame,
  mkAspectFrame, unAspectFrame,
  castToAspectFrame, gTypeAspectFrame,
  Button(Button), ButtonClass,
  toButton,
  mkButton, unButton,
  castToButton, gTypeButton,
  ScaleButton(ScaleButton), ScaleButtonClass,
  toScaleButton,
  mkScaleButton, unScaleButton,
  castToScaleButton, gTypeScaleButton,
  VolumeButton(VolumeButton), VolumeButtonClass,
  toVolumeButton,
  mkVolumeButton, unVolumeButton,
  castToVolumeButton, gTypeVolumeButton,
  LinkButton(LinkButton), LinkButtonClass,
  toLinkButton,
  mkLinkButton, unLinkButton,
  castToLinkButton, gTypeLinkButton,
  ToggleButton(ToggleButton), ToggleButtonClass,
  toToggleButton,
  mkToggleButton, unToggleButton,
  castToToggleButton, gTypeToggleButton,
  CheckButton(CheckButton), CheckButtonClass,
  toCheckButton,
  mkCheckButton, unCheckButton,
  castToCheckButton, gTypeCheckButton,
  RadioButton(RadioButton), RadioButtonClass,
  toRadioButton,
  mkRadioButton, unRadioButton,
  castToRadioButton, gTypeRadioButton,
  ColorButton(ColorButton), ColorButtonClass,
  toColorButton,
  mkColorButton, unColorButton,
  castToColorButton, gTypeColorButton,
  FontButton(FontButton), FontButtonClass,
  toFontButton,
  mkFontButton, unFontButton,
  castToFontButton, gTypeFontButton,
  MenuItem(MenuItem), MenuItemClass,
  toMenuItem,
  mkMenuItem, unMenuItem,
  castToMenuItem, gTypeMenuItem,
  CheckMenuItem(CheckMenuItem), CheckMenuItemClass,
  toCheckMenuItem,
  mkCheckMenuItem, unCheckMenuItem,
  castToCheckMenuItem, gTypeCheckMenuItem,
  RadioMenuItem(RadioMenuItem), RadioMenuItemClass,
  toRadioMenuItem,
  mkRadioMenuItem, unRadioMenuItem,
  castToRadioMenuItem, gTypeRadioMenuItem,
  TearoffMenuItem(TearoffMenuItem), TearoffMenuItemClass,
  toTearoffMenuItem,
  mkTearoffMenuItem, unTearoffMenuItem,
  castToTearoffMenuItem, gTypeTearoffMenuItem,
  ImageMenuItem(ImageMenuItem), ImageMenuItemClass,
  toImageMenuItem,
  mkImageMenuItem, unImageMenuItem,
  castToImageMenuItem, gTypeImageMenuItem,
  SeparatorMenuItem(SeparatorMenuItem), SeparatorMenuItemClass,
  toSeparatorMenuItem,
  mkSeparatorMenuItem, unSeparatorMenuItem,
  castToSeparatorMenuItem, gTypeSeparatorMenuItem,
  Overlay(Overlay), OverlayClass,
  toOverlay,
  mkOverlay, unOverlay,
  castToOverlay, gTypeOverlay,
  Window(Window), WindowClass,
  toWindow,
  mkWindow, unWindow,
  castToWindow, gTypeWindow,
  Assistant(Assistant), AssistantClass,
  toAssistant,
  mkAssistant, unAssistant,
  castToAssistant, gTypeAssistant,
  OffscreenWindow(OffscreenWindow), OffscreenWindowClass,
  toOffscreenWindow,
  mkOffscreenWindow, unOffscreenWindow,
  castToOffscreenWindow, gTypeOffscreenWindow,
  Dialog(Dialog), DialogClass,
  toDialog,
  mkDialog, unDialog,
  castToDialog, gTypeDialog,
  AboutDialog(AboutDialog), AboutDialogClass,
  toAboutDialog,
  mkAboutDialog, unAboutDialog,
  castToAboutDialog, gTypeAboutDialog,
  ColorSelectionDialog(ColorSelectionDialog), ColorSelectionDialogClass,
  toColorSelectionDialog,
  mkColorSelectionDialog, unColorSelectionDialog,
  castToColorSelectionDialog, gTypeColorSelectionDialog,
  FileChooserDialog(FileChooserDialog), FileChooserDialogClass,
  toFileChooserDialog,
  mkFileChooserDialog, unFileChooserDialog,
  castToFileChooserDialog, gTypeFileChooserDialog,
  FontSelectionDialog(FontSelectionDialog), FontSelectionDialogClass,
  toFontSelectionDialog,
  mkFontSelectionDialog, unFontSelectionDialog,
  castToFontSelectionDialog, gTypeFontSelectionDialog,
  MessageDialog(MessageDialog), MessageDialogClass,
  toMessageDialog,
  mkMessageDialog, unMessageDialog,
  castToMessageDialog, gTypeMessageDialog,
  EventBox(EventBox), EventBoxClass,
  toEventBox,
  mkEventBox, unEventBox,
  castToEventBox, gTypeEventBox,
  HandleBox(HandleBox), HandleBoxClass,
  toHandleBox,
  mkHandleBox, unHandleBox,
  castToHandleBox, gTypeHandleBox,
  ScrolledWindow(ScrolledWindow), ScrolledWindowClass,
  toScrolledWindow,
  mkScrolledWindow, unScrolledWindow,
  castToScrolledWindow, gTypeScrolledWindow,
  Viewport(Viewport), ViewportClass,
  toViewport,
  mkViewport, unViewport,
  castToViewport, gTypeViewport,
  Expander(Expander), ExpanderClass,
  toExpander,
  mkExpander, unExpander,
  castToExpander, gTypeExpander,
  ComboBox(ComboBox), ComboBoxClass,
  toComboBox,
  mkComboBox, unComboBox,
  castToComboBox, gTypeComboBox,
  ToolItem(ToolItem), ToolItemClass,
  toToolItem,
  mkToolItem, unToolItem,
  castToToolItem, gTypeToolItem,
  ToolButton(ToolButton), ToolButtonClass,
  toToolButton,
  mkToolButton, unToolButton,
  castToToolButton, gTypeToolButton,
  MenuToolButton(MenuToolButton), MenuToolButtonClass,
  toMenuToolButton,
  mkMenuToolButton, unMenuToolButton,
  castToMenuToolButton, gTypeMenuToolButton,
  ToggleToolButton(ToggleToolButton), ToggleToolButtonClass,
  toToggleToolButton,
  mkToggleToolButton, unToggleToolButton,
  castToToggleToolButton, gTypeToggleToolButton,
  RadioToolButton(RadioToolButton), RadioToolButtonClass,
  toRadioToolButton,
  mkRadioToolButton, unRadioToolButton,
  castToRadioToolButton, gTypeRadioToolButton,
  SeparatorToolItem(SeparatorToolItem), SeparatorToolItemClass,
  toSeparatorToolItem,
  mkSeparatorToolItem, unSeparatorToolItem,
  castToSeparatorToolItem, gTypeSeparatorToolItem,
  StackSwitcher(StackSwitcher), StackSwitcherClass,
  toStackSwitcher,
  mkStackSwitcher, unStackSwitcher,
  castToStackSwitcher, gTypeStackSwitcher,
  Box(Box), BoxClass,
  toBox,
  mkBox, unBox,
  castToBox, gTypeBox,
  ButtonBox(ButtonBox), ButtonBoxClass,
  toButtonBox,
  mkButtonBox, unButtonBox,
  castToButtonBox, gTypeButtonBox,
  HButtonBox(HButtonBox), HButtonBoxClass,
  toHButtonBox,
  mkHButtonBox, unHButtonBox,
  castToHButtonBox, gTypeHButtonBox,
  VButtonBox(VButtonBox), VButtonBoxClass,
  toVButtonBox,
  mkVButtonBox, unVButtonBox,
  castToVButtonBox, gTypeVButtonBox,
  VBox(VBox), VBoxClass,
  toVBox,
  mkVBox, unVBox,
  castToVBox, gTypeVBox,
  RecentChooserWidget(RecentChooserWidget), RecentChooserWidgetClass,
  toRecentChooserWidget,
  mkRecentChooserWidget, unRecentChooserWidget,
  castToRecentChooserWidget, gTypeRecentChooserWidget,
  ColorSelection(ColorSelection), ColorSelectionClass,
  toColorSelection,
  mkColorSelection, unColorSelection,
  castToColorSelection, gTypeColorSelection,
  FontSelection(FontSelection), FontSelectionClass,
  toFontSelection,
  mkFontSelection, unFontSelection,
  castToFontSelection, gTypeFontSelection,
  FileChooserWidget(FileChooserWidget), FileChooserWidgetClass,
  toFileChooserWidget,
  mkFileChooserWidget, unFileChooserWidget,
  castToFileChooserWidget, gTypeFileChooserWidget,
  HBox(HBox), HBoxClass,
  toHBox,
  mkHBox, unHBox,
  castToHBox, gTypeHBox,
  InfoBar(InfoBar), InfoBarClass,
  toInfoBar,
  mkInfoBar, unInfoBar,
  castToInfoBar, gTypeInfoBar,
  FileChooserButton(FileChooserButton), FileChooserButtonClass,
  toFileChooserButton,
  mkFileChooserButton, unFileChooserButton,
  castToFileChooserButton, gTypeFileChooserButton,
  Statusbar(Statusbar), StatusbarClass,
  toStatusbar,
  mkStatusbar, unStatusbar,
  castToStatusbar, gTypeStatusbar,
  Grid(Grid), GridClass,
  toGrid,
  mkGrid, unGrid,
  castToGrid, gTypeGrid,
  Fixed(Fixed), FixedClass,
  toFixed,
  mkFixed, unFixed,
  castToFixed, gTypeFixed,
  Paned(Paned), PanedClass,
  toPaned,
  mkPaned, unPaned,
  castToPaned, gTypePaned,
  HPaned(HPaned), HPanedClass,
  toHPaned,
  mkHPaned, unHPaned,
  castToHPaned, gTypeHPaned,
  VPaned(VPaned), VPanedClass,
  toVPaned,
  mkVPaned, unVPaned,
  castToVPaned, gTypeVPaned,
  IconView(IconView), IconViewClass,
  toIconView,
  mkIconView, unIconView,
  castToIconView, gTypeIconView,
  Layout(Layout), LayoutClass,
  toLayout,
  mkLayout, unLayout,
  castToLayout, gTypeLayout,
  MenuShell(MenuShell), MenuShellClass,
  toMenuShell,
  mkMenuShell, unMenuShell,
  castToMenuShell, gTypeMenuShell,
  Menu(Menu), MenuClass,
  toMenu,
  mkMenu, unMenu,
  castToMenu, gTypeMenu,
  RecentChooserMenu(RecentChooserMenu), RecentChooserMenuClass,
  toRecentChooserMenu,
  mkRecentChooserMenu, unRecentChooserMenu,
  castToRecentChooserMenu, gTypeRecentChooserMenu,
  MenuBar(MenuBar), MenuBarClass,
  toMenuBar,
  mkMenuBar, unMenuBar,
  castToMenuBar, gTypeMenuBar,
  Notebook(Notebook), NotebookClass,
  toNotebook,
  mkNotebook, unNotebook,
  castToNotebook, gTypeNotebook,
  Table(Table), TableClass,
  toTable,
  mkTable, unTable,
  castToTable, gTypeTable,
  TextView(TextView), TextViewClass,
  toTextView,
  mkTextView, unTextView,
  castToTextView, gTypeTextView,
  Toolbar(Toolbar), ToolbarClass,
  toToolbar,
  mkToolbar, unToolbar,
  castToToolbar, gTypeToolbar,
  TreeView(TreeView), TreeViewClass,
  toTreeView,
  mkTreeView, unTreeView,
  castToTreeView, gTypeTreeView,
  Calendar(Calendar), CalendarClass,
  toCalendar,
  mkCalendar, unCalendar,
  castToCalendar, gTypeCalendar,
  CellView(CellView), CellViewClass,
  toCellView,
  mkCellView, unCellView,
  castToCellView, gTypeCellView,
  DrawingArea(DrawingArea), DrawingAreaClass,
  toDrawingArea,
  mkDrawingArea, unDrawingArea,
  castToDrawingArea, gTypeDrawingArea,
  Spinner(Spinner), SpinnerClass,
  toSpinner,
  mkSpinner, unSpinner,
  castToSpinner, gTypeSpinner,
  Entry(Entry), EntryClass,
  toEntry,
  mkEntry, unEntry,
  castToEntry, gTypeEntry,
  SpinButton(SpinButton), SpinButtonClass,
  toSpinButton,
  mkSpinButton, unSpinButton,
  castToSpinButton, gTypeSpinButton,
  Range(Range), RangeClass,
  toRange,
  mkRange, unRange,
  castToRange, gTypeRange,
  Scale(Scale), ScaleClass,
  toScale,
  mkScale, unScale,
  castToScale, gTypeScale,
  HScale(HScale), HScaleClass,
  toHScale,
  mkHScale, unHScale,
  castToHScale, gTypeHScale,
  VScale(VScale), VScaleClass,
  toVScale,
  mkVScale, unVScale,
  castToVScale, gTypeVScale,
  Scrollbar(Scrollbar), ScrollbarClass,
  toScrollbar,
  mkScrollbar, unScrollbar,
  castToScrollbar, gTypeScrollbar,
  HScrollbar(HScrollbar), HScrollbarClass,
  toHScrollbar,
  mkHScrollbar, unHScrollbar,
  castToHScrollbar, gTypeHScrollbar,
  VScrollbar(VScrollbar), VScrollbarClass,
  toVScrollbar,
  mkVScrollbar, unVScrollbar,
  castToVScrollbar, gTypeVScrollbar,
  Separator(Separator), SeparatorClass,
  toSeparator,
  mkSeparator, unSeparator,
  castToSeparator, gTypeSeparator,
  HSeparator(HSeparator), HSeparatorClass,
  toHSeparator,
  mkHSeparator, unHSeparator,
  castToHSeparator, gTypeHSeparator,
  VSeparator(VSeparator), VSeparatorClass,
  toVSeparator,
  mkVSeparator, unVSeparator,
  castToVSeparator, gTypeVSeparator,
  Invisible(Invisible), InvisibleClass,
  toInvisible,
  mkInvisible, unInvisible,
  castToInvisible, gTypeInvisible,
  ProgressBar(ProgressBar), ProgressBarClass,
  toProgressBar,
  mkProgressBar, unProgressBar,
  castToProgressBar, gTypeProgressBar,
  LevelBar(LevelBar), LevelBarClass,
  toLevelBar,
  mkLevelBar, unLevelBar,
  castToLevelBar, gTypeLevelBar,
  Adjustment(Adjustment), AdjustmentClass,
  toAdjustment,
  mkAdjustment, unAdjustment,
  castToAdjustment, gTypeAdjustment,
  IMContext(IMContext), IMContextClass,
  toIMContext,
  mkIMContext, unIMContext,
  castToIMContext, gTypeIMContext,
  IMMulticontext(IMMulticontext), IMMulticontextClass,
  toIMMulticontext,
  mkIMMulticontext, unIMMulticontext,
  castToIMMulticontext, gTypeIMMulticontext,
  IMContextSimple(IMContextSimple), IMContextSimpleClass,
  toIMContextSimple,
  mkIMContextSimple, unIMContextSimple,
  castToIMContextSimple, gTypeIMContextSimple,
  TreeViewColumn(TreeViewColumn), TreeViewColumnClass,
  toTreeViewColumn,
  mkTreeViewColumn, unTreeViewColumn,
  castToTreeViewColumn, gTypeTreeViewColumn,
  CellRenderer(CellRenderer), CellRendererClass,
  toCellRenderer,
  mkCellRenderer, unCellRenderer,
  castToCellRenderer, gTypeCellRenderer,
  CellRendererSpinner(CellRendererSpinner), CellRendererSpinnerClass,
  toCellRendererSpinner,
  mkCellRendererSpinner, unCellRendererSpinner,
  castToCellRendererSpinner, gTypeCellRendererSpinner,
  CellRendererPixbuf(CellRendererPixbuf), CellRendererPixbufClass,
  toCellRendererPixbuf,
  mkCellRendererPixbuf, unCellRendererPixbuf,
  castToCellRendererPixbuf, gTypeCellRendererPixbuf,
  CellRendererText(CellRendererText), CellRendererTextClass,
  toCellRendererText,
  mkCellRendererText, unCellRendererText,
  castToCellRendererText, gTypeCellRendererText,
  CellRendererAccel(CellRendererAccel), CellRendererAccelClass,
  toCellRendererAccel,
  mkCellRendererAccel, unCellRendererAccel,
  castToCellRendererAccel, gTypeCellRendererAccel,
  CellRendererSpin(CellRendererSpin), CellRendererSpinClass,
  toCellRendererSpin,
  mkCellRendererSpin, unCellRendererSpin,
  castToCellRendererSpin, gTypeCellRendererSpin,
  CellRendererCombo(CellRendererCombo), CellRendererComboClass,
  toCellRendererCombo,
  mkCellRendererCombo, unCellRendererCombo,
  castToCellRendererCombo, gTypeCellRendererCombo,
  CellRendererToggle(CellRendererToggle), CellRendererToggleClass,
  toCellRendererToggle,
  mkCellRendererToggle, unCellRendererToggle,
  castToCellRendererToggle, gTypeCellRendererToggle,
  CellRendererProgress(CellRendererProgress), CellRendererProgressClass,
  toCellRendererProgress,
  mkCellRendererProgress, unCellRendererProgress,
  castToCellRendererProgress, gTypeCellRendererProgress,
  FileFilter(FileFilter), FileFilterClass,
  toFileFilter,
  mkFileFilter, unFileFilter,
  castToFileFilter, gTypeFileFilter,
  Builder(Builder), BuilderClass,
  toBuilder,
  mkBuilder, unBuilder,
  castToBuilder, gTypeBuilder,
  StyleContext(StyleContext), StyleContextClass,
  toStyleContext,
  mkStyleContext, unStyleContext,
  castToStyleContext, gTypeStyleContext,
  StyleProvider(StyleProvider), StyleProviderClass,
  toStyleProvider,
  mkStyleProvider, unStyleProvider,
  castToStyleProvider, gTypeStyleProvider,
  CssProvider(CssProvider), CssProviderClass,
  toCssProvider,
  mkCssProvider, unCssProvider,
  castToCssProvider, gTypeCssProvider,
  CellLayout(CellLayout), CellLayoutClass,
  toCellLayout,
  mkCellLayout, unCellLayout,
  castToCellLayout, gTypeCellLayout,
  TreeSortable(TreeSortable), TreeSortableClass,
  toTreeSortable,
  mkTreeSortable, unTreeSortable,
  castToTreeSortable, gTypeTreeSortable,
  Tooltip(Tooltip), TooltipClass,
  toTooltip,
  mkTooltip, unTooltip,
  castToTooltip, gTypeTooltip,
  StatusIcon(StatusIcon), StatusIconClass,
  toStatusIcon,
  mkStatusIcon, unStatusIcon,
  castToStatusIcon, gTypeStatusIcon,
  TreeSelection(TreeSelection), TreeSelectionClass,
  toTreeSelection,
  mkTreeSelection, unTreeSelection,
  castToTreeSelection, gTypeTreeSelection,
  TreeModel(TreeModel), TreeModelClass,
  toTreeModel,
  mkTreeModel, unTreeModel,
  castToTreeModel, gTypeTreeModel,
  TreeStore(TreeStore), TreeStoreClass,
  toTreeStore,
  mkTreeStore, unTreeStore,
  castToTreeStore, gTypeTreeStore,
  ListStore(ListStore), ListStoreClass,
  toListStore,
  mkListStore, unListStore,
  castToListStore, gTypeListStore,
  TreeModelSort(TreeModelSort), TreeModelSortClass,
  toTreeModelSort,
  mkTreeModelSort, unTreeModelSort,
  castToTreeModelSort, gTypeTreeModelSort,
  TreeModelFilter(TreeModelFilter), TreeModelFilterClass,
  toTreeModelFilter,
  mkTreeModelFilter, unTreeModelFilter,
  castToTreeModelFilter, gTypeTreeModelFilter,
  IconFactory(IconFactory), IconFactoryClass,
  toIconFactory,
  mkIconFactory, unIconFactory,
  castToIconFactory, gTypeIconFactory,
  IconTheme(IconTheme), IconThemeClass,
  toIconTheme,
  mkIconTheme, unIconTheme,
  castToIconTheme, gTypeIconTheme,
  SizeGroup(SizeGroup), SizeGroupClass,
  toSizeGroup,
  mkSizeGroup, unSizeGroup,
  castToSizeGroup, gTypeSizeGroup,
  Clipboard(Clipboard), ClipboardClass,
  toClipboard,
  mkClipboard, unClipboard,
  castToClipboard, gTypeClipboard,
  AccelGroup(AccelGroup), AccelGroupClass,
  toAccelGroup,
  mkAccelGroup, unAccelGroup,
  castToAccelGroup, gTypeAccelGroup,
  AccelMap(AccelMap), AccelMapClass,
  toAccelMap,
  mkAccelMap, unAccelMap,
  castToAccelMap, gTypeAccelMap,
  EntryCompletion(EntryCompletion), EntryCompletionClass,
  toEntryCompletion,
  mkEntryCompletion, unEntryCompletion,
  castToEntryCompletion, gTypeEntryCompletion,
  EntryBuffer(EntryBuffer), EntryBufferClass,
  toEntryBuffer,
  mkEntryBuffer, unEntryBuffer,
  castToEntryBuffer, gTypeEntryBuffer,
  Action(Action), ActionClass,
  toAction,
  mkAction, unAction,
  castToAction, gTypeAction,
  RecentAction(RecentAction), RecentActionClass,
  toRecentAction,
  mkRecentAction, unRecentAction,
  castToRecentAction, gTypeRecentAction,
  ToggleAction(ToggleAction), ToggleActionClass,
  toToggleAction,
  mkToggleAction, unToggleAction,
  castToToggleAction, gTypeToggleAction,
  RadioAction(RadioAction), RadioActionClass,
  toRadioAction,
  mkRadioAction, unRadioAction,
  castToRadioAction, gTypeRadioAction,
  ActionGroup(ActionGroup), ActionGroupClass,
  toActionGroup,
  mkActionGroup, unActionGroup,
  castToActionGroup, gTypeActionGroup,
  UIManager(UIManager), UIManagerClass,
  toUIManager,
  mkUIManager, unUIManager,
  castToUIManager, gTypeUIManager,
  WindowGroup(WindowGroup), WindowGroupClass,
  toWindowGroup,
  mkWindowGroup, unWindowGroup,
  castToWindowGroup, gTypeWindowGroup,
  CellEditable(CellEditable), CellEditableClass,
  toCellEditable,
  mkCellEditable, unCellEditable,
  castToCellEditable, gTypeCellEditable,
  Editable(Editable), EditableClass,
  toEditable,
  mkEditable, unEditable,
  castToEditable, gTypeEditable,
  FileChooser(FileChooser), FileChooserClass,
  toFileChooser,
  mkFileChooser, unFileChooser,
  castToFileChooser, gTypeFileChooser
  ) where

import Foreign.ForeignPtr (ForeignPtr, castForeignPtr)

import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)



import Foreign.C.Types (CULong(..), CUInt(..), CULLong(..))
import System.Glib.GType (GType, typeInstanceIsA)
import System.Glib.GObject
{-# LINE 772 "./Graphics/UI/Gtk/Types.chs" #-}
import Graphics.UI.Gtk.General.Threading


{-# LINE 775 "./Graphics/UI/Gtk/Types.chs" #-}

-- The usage of foreignPtrToPtr should be safe as the evaluation will only be
-- forced if the object is used afterwards
--
castTo :: (GObjectClass obj, GObjectClass obj') => GType -> String
                                                -> (obj -> obj')
castTo gtype objTypeName obj =
  case toGObject obj of
    gobj@(GObject objFPtr)
      | typeInstanceIsA ((unsafeForeignPtrToPtr.castForeignPtr) objFPtr) gtype
                  -> unsafeCastGObject gobj
      | otherwise -> error $ "Cannot cast object to " ++ objTypeName


-- ****************************************************************** AtkObject

newtype AtkObject = AtkObject (ForeignPtr (AtkObject)) deriving (Eq,Ord)

mkAtkObject = (AtkObject, objectUnrefFromMainloop)
unAtkObject (AtkObject o) = o

class GObjectClass o => AtkObjectClass o
toAtkObject :: AtkObjectClass o => o -> AtkObject
toAtkObject = unsafeCastGObject . toGObject

instance AtkObjectClass AtkObject
instance GObjectClass AtkObject where
  toGObject = GObject . castForeignPtr . unAtkObject
  unsafeCastGObject = AtkObject . castForeignPtr . unGObject

castToAtkObject :: GObjectClass obj => obj -> AtkObject
castToAtkObject = castTo gTypeAtkObject "AtkObject"

gTypeAtkObject :: GType
gTypeAtkObject =
  atk_object_get_type
{-# LINE 811 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** Accessible

newtype Accessible = Accessible (ForeignPtr (Accessible)) deriving (Eq,Ord)

mkAccessible = (Accessible, objectUnrefFromMainloop)
unAccessible (Accessible o) = o

class AtkObjectClass o => AccessibleClass o
toAccessible :: AccessibleClass o => o -> Accessible
toAccessible = unsafeCastGObject . toGObject

instance AccessibleClass Accessible
instance AtkObjectClass Accessible
instance GObjectClass Accessible where
  toGObject = GObject . castForeignPtr . unAccessible
  unsafeCastGObject = Accessible . castForeignPtr . unGObject

castToAccessible :: GObjectClass obj => obj -> Accessible
castToAccessible = castTo gTypeAccessible "Accessible"

gTypeAccessible :: GType
gTypeAccessible =
  gtk_accessible_get_type
{-# LINE 835 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Keymap

newtype Keymap = Keymap (ForeignPtr (Keymap)) deriving (Eq,Ord)

mkKeymap = (Keymap, objectUnrefFromMainloop)
unKeymap (Keymap o) = o

class GObjectClass o => KeymapClass o
toKeymap :: KeymapClass o => o -> Keymap
toKeymap = unsafeCastGObject . toGObject

instance KeymapClass Keymap
instance GObjectClass Keymap where
  toGObject = GObject . castForeignPtr . unKeymap
  unsafeCastGObject = Keymap . castForeignPtr . unGObject

castToKeymap :: GObjectClass obj => obj -> Keymap
castToKeymap = castTo gTypeKeymap "Keymap"

gTypeKeymap :: GType
gTypeKeymap =
  gdk_keymap_get_type
{-# LINE 858 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* DisplayManager

newtype DisplayManager = DisplayManager (ForeignPtr (DisplayManager)) deriving (Eq,Ord)

mkDisplayManager = (DisplayManager, objectUnrefFromMainloop)
unDisplayManager (DisplayManager o) = o

class GObjectClass o => DisplayManagerClass o
toDisplayManager :: DisplayManagerClass o => o -> DisplayManager
toDisplayManager = unsafeCastGObject . toGObject

instance DisplayManagerClass DisplayManager
instance GObjectClass DisplayManager where
  toGObject = GObject . castForeignPtr . unDisplayManager
  unsafeCastGObject = DisplayManager . castForeignPtr . unGObject

castToDisplayManager :: GObjectClass obj => obj -> DisplayManager
castToDisplayManager = castTo gTypeDisplayManager "DisplayManager"

gTypeDisplayManager :: GType
gTypeDisplayManager =
  gdk_display_manager_get_type
{-# LINE 881 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************** AppLaunchContext

newtype AppLaunchContext = AppLaunchContext (ForeignPtr (AppLaunchContext)) deriving (Eq,Ord)

mkAppLaunchContext = (AppLaunchContext, objectUnrefFromMainloop)
unAppLaunchContext (AppLaunchContext o) = o

class GObjectClass o => AppLaunchContextClass o
toAppLaunchContext :: AppLaunchContextClass o => o -> AppLaunchContext
toAppLaunchContext = unsafeCastGObject . toGObject

instance AppLaunchContextClass AppLaunchContext
instance GObjectClass AppLaunchContext where
  toGObject = GObject . castForeignPtr . unAppLaunchContext
  unsafeCastGObject = AppLaunchContext . castForeignPtr . unGObject

castToAppLaunchContext :: GObjectClass obj => obj -> AppLaunchContext
castToAppLaunchContext = castTo gTypeAppLaunchContext "AppLaunchContext"

gTypeAppLaunchContext :: GType
gTypeAppLaunchContext =
  gdk_app_launch_context_get_type
{-# LINE 904 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** PrintSettings

newtype PrintSettings = PrintSettings (ForeignPtr (PrintSettings)) deriving (Eq,Ord)

mkPrintSettings = (PrintSettings, objectUnrefFromMainloop)
unPrintSettings (PrintSettings o) = o

class GObjectClass o => PrintSettingsClass o
toPrintSettings :: PrintSettingsClass o => o -> PrintSettings
toPrintSettings = unsafeCastGObject . toGObject

instance PrintSettingsClass PrintSettings
instance GObjectClass PrintSettings where
  toGObject = GObject . castForeignPtr . unPrintSettings
  unsafeCastGObject = PrintSettings . castForeignPtr . unGObject

castToPrintSettings :: GObjectClass obj => obj -> PrintSettings
castToPrintSettings = castTo gTypePrintSettings "PrintSettings"

gTypePrintSettings :: GType
gTypePrintSettings =
  gtk_print_settings_get_type
{-# LINE 927 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* PrintOperation

newtype PrintOperation = PrintOperation (ForeignPtr (PrintOperation)) deriving (Eq,Ord)

mkPrintOperation = (PrintOperation, objectUnrefFromMainloop)
unPrintOperation (PrintOperation o) = o

class GObjectClass o => PrintOperationClass o
toPrintOperation :: PrintOperationClass o => o -> PrintOperation
toPrintOperation = unsafeCastGObject . toGObject

instance PrintOperationClass PrintOperation
instance GObjectClass PrintOperation where
  toGObject = GObject . castForeignPtr . unPrintOperation
  unsafeCastGObject = PrintOperation . castForeignPtr . unGObject

castToPrintOperation :: GObjectClass obj => obj -> PrintOperation
castToPrintOperation = castTo gTypePrintOperation "PrintOperation"

gTypePrintOperation :: GType
gTypePrintOperation =
  gtk_print_operation_get_type
{-# LINE 950 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************** PrintOperationPreview

newtype PrintOperationPreview = PrintOperationPreview (ForeignPtr (PrintOperationPreview)) deriving (Eq,Ord)

mkPrintOperationPreview = (PrintOperationPreview, objectUnrefFromMainloop)
unPrintOperationPreview (PrintOperationPreview o) = o

class GObjectClass o => PrintOperationPreviewClass o
toPrintOperationPreview :: PrintOperationPreviewClass o => o -> PrintOperationPreview
toPrintOperationPreview = unsafeCastGObject . toGObject

instance PrintOperationPreviewClass PrintOperationPreview
instance GObjectClass PrintOperationPreview where
  toGObject = GObject . castForeignPtr . unPrintOperationPreview
  unsafeCastGObject = PrintOperationPreview . castForeignPtr . unGObject

castToPrintOperationPreview :: GObjectClass obj => obj -> PrintOperationPreview
castToPrintOperationPreview = castTo gTypePrintOperationPreview "PrintOperationPreview"

gTypePrintOperationPreview :: GType
gTypePrintOperationPreview =
  gtk_print_operation_preview_get_type
{-# LINE 973 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** PageSetup

newtype PageSetup = PageSetup (ForeignPtr (PageSetup)) deriving (Eq,Ord)

mkPageSetup = (PageSetup, objectUnrefFromMainloop)
unPageSetup (PageSetup o) = o

class GObjectClass o => PageSetupClass o
toPageSetup :: PageSetupClass o => o -> PageSetup
toPageSetup = unsafeCastGObject . toGObject

instance PageSetupClass PageSetup
instance GObjectClass PageSetup where
  toGObject = GObject . castForeignPtr . unPageSetup
  unsafeCastGObject = PageSetup . castForeignPtr . unGObject

castToPageSetup :: GObjectClass obj => obj -> PageSetup
castToPageSetup = castTo gTypePageSetup "PageSetup"

gTypePageSetup :: GType
gTypePageSetup =
  gtk_page_setup_get_type
{-# LINE 996 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** PrintContext

newtype PrintContext = PrintContext (ForeignPtr (PrintContext)) deriving (Eq,Ord)

mkPrintContext = (PrintContext, objectUnrefFromMainloop)
unPrintContext (PrintContext o) = o

class GObjectClass o => PrintContextClass o
toPrintContext :: PrintContextClass o => o -> PrintContext
toPrintContext = unsafeCastGObject . toGObject

instance PrintContextClass PrintContext
instance GObjectClass PrintContext where
  toGObject = GObject . castForeignPtr . unPrintContext
  unsafeCastGObject = PrintContext . castForeignPtr . unGObject

castToPrintContext :: GObjectClass obj => obj -> PrintContext
castToPrintContext = castTo gTypePrintContext "PrintContext"

gTypePrintContext :: GType
gTypePrintContext =
  gtk_print_context_get_type
{-# LINE 1019 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** RecentChooser

newtype RecentChooser = RecentChooser (ForeignPtr (RecentChooser)) deriving (Eq,Ord)

mkRecentChooser = (RecentChooser, objectUnrefFromMainloop)
unRecentChooser (RecentChooser o) = o

class GObjectClass o => RecentChooserClass o
toRecentChooser :: RecentChooserClass o => o -> RecentChooser
toRecentChooser = unsafeCastGObject . toGObject

instance RecentChooserClass RecentChooser
instance GObjectClass RecentChooser where
  toGObject = GObject . castForeignPtr . unRecentChooser
  unsafeCastGObject = RecentChooser . castForeignPtr . unGObject

castToRecentChooser :: GObjectClass obj => obj -> RecentChooser
castToRecentChooser = castTo gTypeRecentChooser "RecentChooser"

gTypeRecentChooser :: GType
gTypeRecentChooser =
  gtk_recent_chooser_get_type
{-# LINE 1042 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** RecentManager

newtype RecentManager = RecentManager (ForeignPtr (RecentManager)) deriving (Eq,Ord)

mkRecentManager = (RecentManager, objectUnrefFromMainloop)
unRecentManager (RecentManager o) = o

class GObjectClass o => RecentManagerClass o
toRecentManager :: RecentManagerClass o => o -> RecentManager
toRecentManager = unsafeCastGObject . toGObject

instance RecentManagerClass RecentManager
instance GObjectClass RecentManager where
  toGObject = GObject . castForeignPtr . unRecentManager
  unsafeCastGObject = RecentManager . castForeignPtr . unGObject

castToRecentManager :: GObjectClass obj => obj -> RecentManager
castToRecentManager = castTo gTypeRecentManager "RecentManager"

gTypeRecentManager :: GType
gTypeRecentManager =
  gtk_recent_manager_get_type
{-# LINE 1065 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** DrawWindow

newtype DrawWindow = DrawWindow (ForeignPtr (DrawWindow)) deriving (Eq,Ord)

mkDrawWindow = (DrawWindow, objectUnrefFromMainloop)
unDrawWindow (DrawWindow o) = o

class GObjectClass o => DrawWindowClass o
toDrawWindow :: DrawWindowClass o => o -> DrawWindow
toDrawWindow = unsafeCastGObject . toGObject

instance DrawWindowClass DrawWindow
instance GObjectClass DrawWindow where
  toGObject = GObject . castForeignPtr . unDrawWindow
  unsafeCastGObject = DrawWindow . castForeignPtr . unGObject

castToDrawWindow :: GObjectClass obj => obj -> DrawWindow
castToDrawWindow = castTo gTypeDrawWindow "DrawWindow"

gTypeDrawWindow :: GType
gTypeDrawWindow =
  gdk_window_get_type
{-# LINE 1088 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Screen

newtype Screen = Screen (ForeignPtr (Screen)) deriving (Eq,Ord)

mkScreen = (Screen, objectUnrefFromMainloop)
unScreen (Screen o) = o

class GObjectClass o => ScreenClass o
toScreen :: ScreenClass o => o -> Screen
toScreen = unsafeCastGObject . toGObject

instance ScreenClass Screen
instance GObjectClass Screen where
  toGObject = GObject . castForeignPtr . unScreen
  unsafeCastGObject = Screen . castForeignPtr . unGObject

castToScreen :: GObjectClass obj => obj -> Screen
castToScreen = castTo gTypeScreen "Screen"

gTypeScreen :: GType
gTypeScreen =
  gdk_screen_get_type
{-# LINE 1111 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Display

newtype Display = Display (ForeignPtr (Display)) deriving (Eq,Ord)

mkDisplay = (Display, objectUnrefFromMainloop)
unDisplay (Display o) = o

class GObjectClass o => DisplayClass o
toDisplay :: DisplayClass o => o -> Display
toDisplay = unsafeCastGObject . toGObject

instance DisplayClass Display
instance GObjectClass Display where
  toGObject = GObject . castForeignPtr . unDisplay
  unsafeCastGObject = Display . castForeignPtr . unGObject

castToDisplay :: GObjectClass obj => obj -> Display
castToDisplay = castTo gTypeDisplay "Display"

gTypeDisplay :: GType
gTypeDisplay =
  gdk_display_get_type
{-# LINE 1134 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Visual

newtype Visual = Visual (ForeignPtr (Visual)) deriving (Eq,Ord)

mkVisual = (Visual, objectUnrefFromMainloop)
unVisual (Visual o) = o

class GObjectClass o => VisualClass o
toVisual :: VisualClass o => o -> Visual
toVisual = unsafeCastGObject . toGObject

instance VisualClass Visual
instance GObjectClass Visual where
  toGObject = GObject . castForeignPtr . unVisual
  unsafeCastGObject = Visual . castForeignPtr . unGObject

castToVisual :: GObjectClass obj => obj -> Visual
castToVisual = castTo gTypeVisual "Visual"

gTypeVisual :: GType
gTypeVisual =
  gdk_visual_get_type
{-# LINE 1157 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Device

newtype Device = Device (ForeignPtr (Device)) deriving (Eq,Ord)

mkDevice = (Device, objectUnrefFromMainloop)
unDevice (Device o) = o

class GObjectClass o => DeviceClass o
toDevice :: DeviceClass o => o -> Device
toDevice = unsafeCastGObject . toGObject

instance DeviceClass Device
instance GObjectClass Device where
  toGObject = GObject . castForeignPtr . unDevice
  unsafeCastGObject = Device . castForeignPtr . unGObject

castToDevice :: GObjectClass obj => obj -> Device
castToDevice = castTo gTypeDevice "Device"

gTypeDevice :: GType
gTypeDevice =
  gdk_device_get_type
{-# LINE 1180 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** FrameClock

newtype FrameClock = FrameClock (ForeignPtr (FrameClock)) deriving (Eq,Ord)

mkFrameClock = (FrameClock, objectUnrefFromMainloop)
unFrameClock (FrameClock o) = o

class GObjectClass o => FrameClockClass o
toFrameClock :: FrameClockClass o => o -> FrameClock
toFrameClock = unsafeCastGObject . toGObject

instance FrameClockClass FrameClock
instance GObjectClass FrameClock where
  toGObject = GObject . castForeignPtr . unFrameClock
  unsafeCastGObject = FrameClock . castForeignPtr . unGObject

castToFrameClock :: GObjectClass obj => obj -> FrameClock
castToFrameClock = castTo gTypeFrameClock "FrameClock"

gTypeFrameClock :: GType
gTypeFrameClock =
  gdk_frame_clock_get_type
{-# LINE 1203 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Settings

newtype Settings = Settings (ForeignPtr (Settings)) deriving (Eq,Ord)

mkSettings = (Settings, objectUnrefFromMainloop)
unSettings (Settings o) = o

class GObjectClass o => SettingsClass o
toSettings :: SettingsClass o => o -> Settings
toSettings = unsafeCastGObject . toGObject

instance SettingsClass Settings
instance GObjectClass Settings where
  toGObject = GObject . castForeignPtr . unSettings
  unsafeCastGObject = Settings . castForeignPtr . unGObject

castToSettings :: GObjectClass obj => obj -> Settings
castToSettings = castTo gTypeSettings "Settings"

gTypeSettings :: GType
gTypeSettings =
  gtk_settings_get_type
{-# LINE 1226 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** TextBuffer

newtype TextBuffer = TextBuffer (ForeignPtr (TextBuffer)) deriving (Eq,Ord)

mkTextBuffer = (TextBuffer, objectUnrefFromMainloop)
unTextBuffer (TextBuffer o) = o

class GObjectClass o => TextBufferClass o
toTextBuffer :: TextBufferClass o => o -> TextBuffer
toTextBuffer = unsafeCastGObject . toGObject

instance TextBufferClass TextBuffer
instance GObjectClass TextBuffer where
  toGObject = GObject . castForeignPtr . unTextBuffer
  unsafeCastGObject = TextBuffer . castForeignPtr . unGObject

castToTextBuffer :: GObjectClass obj => obj -> TextBuffer
castToTextBuffer = castTo gTypeTextBuffer "TextBuffer"

gTypeTextBuffer :: GType
gTypeTextBuffer =
  gtk_text_buffer_get_type
{-# LINE 1249 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** TextTag

newtype TextTag = TextTag (ForeignPtr (TextTag)) deriving (Eq,Ord)

mkTextTag = (TextTag, objectUnrefFromMainloop)
unTextTag (TextTag o) = o

class GObjectClass o => TextTagClass o
toTextTag :: TextTagClass o => o -> TextTag
toTextTag = unsafeCastGObject . toGObject

instance TextTagClass TextTag
instance GObjectClass TextTag where
  toGObject = GObject . castForeignPtr . unTextTag
  unsafeCastGObject = TextTag . castForeignPtr . unGObject

castToTextTag :: GObjectClass obj => obj -> TextTag
castToTextTag = castTo gTypeTextTag "TextTag"

gTypeTextTag :: GType
gTypeTextTag =
  gtk_text_tag_get_type
{-# LINE 1272 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** TextTagTable

newtype TextTagTable = TextTagTable (ForeignPtr (TextTagTable)) deriving (Eq,Ord)

mkTextTagTable = (TextTagTable, objectUnrefFromMainloop)
unTextTagTable (TextTagTable o) = o

class GObjectClass o => TextTagTableClass o
toTextTagTable :: TextTagTableClass o => o -> TextTagTable
toTextTagTable = unsafeCastGObject . toGObject

instance TextTagTableClass TextTagTable
instance GObjectClass TextTagTable where
  toGObject = GObject . castForeignPtr . unTextTagTable
  unsafeCastGObject = TextTagTable . castForeignPtr . unGObject

castToTextTagTable :: GObjectClass obj => obj -> TextTagTable
castToTextTagTable = castTo gTypeTextTagTable "TextTagTable"

gTypeTextTagTable :: GType
gTypeTextTagTable =
  gtk_text_tag_table_get_type
{-# LINE 1295 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Style

newtype Style = Style (ForeignPtr (Style)) deriving (Eq,Ord)

mkStyle = (Style, objectUnrefFromMainloop)
unStyle (Style o) = o

class GObjectClass o => StyleClass o
toStyle :: StyleClass o => o -> Style
toStyle = unsafeCastGObject . toGObject

instance StyleClass Style
instance GObjectClass Style where
  toGObject = GObject . castForeignPtr . unStyle
  unsafeCastGObject = Style . castForeignPtr . unGObject

castToStyle :: GObjectClass obj => obj -> Style
castToStyle = castTo gTypeStyle "Style"

gTypeStyle :: GType
gTypeStyle =
  gtk_style_get_type
{-# LINE 1318 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** RcStyle

newtype RcStyle = RcStyle (ForeignPtr (RcStyle)) deriving (Eq,Ord)

mkRcStyle = (RcStyle, objectUnrefFromMainloop)
unRcStyle (RcStyle o) = o

class GObjectClass o => RcStyleClass o
toRcStyle :: RcStyleClass o => o -> RcStyle
toRcStyle = unsafeCastGObject . toGObject

instance RcStyleClass RcStyle
instance GObjectClass RcStyle where
  toGObject = GObject . castForeignPtr . unRcStyle
  unsafeCastGObject = RcStyle . castForeignPtr . unGObject

castToRcStyle :: GObjectClass obj => obj -> RcStyle
castToRcStyle = castTo gTypeRcStyle "RcStyle"

gTypeRcStyle :: GType
gTypeRcStyle =
  gtk_rc_style_get_type
{-# LINE 1341 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** DragContext

newtype DragContext = DragContext (ForeignPtr (DragContext)) deriving (Eq,Ord)

mkDragContext = (DragContext, objectUnrefFromMainloop)
unDragContext (DragContext o) = o

class GObjectClass o => DragContextClass o
toDragContext :: DragContextClass o => o -> DragContext
toDragContext = unsafeCastGObject . toGObject

instance DragContextClass DragContext
instance GObjectClass DragContext where
  toGObject = GObject . castForeignPtr . unDragContext
  unsafeCastGObject = DragContext . castForeignPtr . unGObject

castToDragContext :: GObjectClass obj => obj -> DragContext
castToDragContext = castTo gTypeDragContext "DragContext"

gTypeDragContext :: GType
gTypeDragContext =
  gdk_drag_context_get_type
{-# LINE 1364 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Pixbuf

newtype Pixbuf = Pixbuf (ForeignPtr (Pixbuf)) deriving (Eq,Ord)

mkPixbuf = (Pixbuf, objectUnref)
unPixbuf (Pixbuf o) = o

class GObjectClass o => PixbufClass o
toPixbuf :: PixbufClass o => o -> Pixbuf
toPixbuf = unsafeCastGObject . toGObject

instance PixbufClass Pixbuf
instance GObjectClass Pixbuf where
  toGObject = GObject . castForeignPtr . unPixbuf
  unsafeCastGObject = Pixbuf . castForeignPtr . unGObject

castToPixbuf :: GObjectClass obj => obj -> Pixbuf
castToPixbuf = castTo gTypePixbuf "Pixbuf"

gTypePixbuf :: GType
gTypePixbuf =
  gdk_pixbuf_get_type
{-# LINE 1387 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ PixbufAnimation

newtype PixbufAnimation = PixbufAnimation (ForeignPtr (PixbufAnimation)) deriving (Eq,Ord)

mkPixbufAnimation = (PixbufAnimation, objectUnref)
unPixbufAnimation (PixbufAnimation o) = o

class GObjectClass o => PixbufAnimationClass o
toPixbufAnimation :: PixbufAnimationClass o => o -> PixbufAnimation
toPixbufAnimation = unsafeCastGObject . toGObject

instance PixbufAnimationClass PixbufAnimation
instance GObjectClass PixbufAnimation where
  toGObject = GObject . castForeignPtr . unPixbufAnimation
  unsafeCastGObject = PixbufAnimation . castForeignPtr . unGObject

castToPixbufAnimation :: GObjectClass obj => obj -> PixbufAnimation
castToPixbufAnimation = castTo gTypePixbufAnimation "PixbufAnimation"

gTypePixbufAnimation :: GType
gTypePixbufAnimation =
  gdk_pixbuf_animation_get_type
{-# LINE 1410 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************** PixbufSimpleAnim

newtype PixbufSimpleAnim = PixbufSimpleAnim (ForeignPtr (PixbufSimpleAnim)) deriving (Eq,Ord)

mkPixbufSimpleAnim = (PixbufSimpleAnim, objectUnref)
unPixbufSimpleAnim (PixbufSimpleAnim o) = o

class PixbufAnimationClass o => PixbufSimpleAnimClass o
toPixbufSimpleAnim :: PixbufSimpleAnimClass o => o -> PixbufSimpleAnim
toPixbufSimpleAnim = unsafeCastGObject . toGObject

instance PixbufSimpleAnimClass PixbufSimpleAnim
instance PixbufAnimationClass PixbufSimpleAnim
instance GObjectClass PixbufSimpleAnim where
  toGObject = GObject . castForeignPtr . unPixbufSimpleAnim
  unsafeCastGObject = PixbufSimpleAnim . castForeignPtr . unGObject

castToPixbufSimpleAnim :: GObjectClass obj => obj -> PixbufSimpleAnim
castToPixbufSimpleAnim = castTo gTypePixbufSimpleAnim "PixbufSimpleAnim"

gTypePixbufSimpleAnim :: GType
gTypePixbufSimpleAnim =
  gdk_pixbuf_simple_anim_get_type
{-# LINE 1434 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************** PixbufAnimationIter

newtype PixbufAnimationIter = PixbufAnimationIter (ForeignPtr (PixbufAnimationIter)) deriving (Eq,Ord)

mkPixbufAnimationIter = (PixbufAnimationIter, objectUnref)
unPixbufAnimationIter (PixbufAnimationIter o) = o

class GObjectClass o => PixbufAnimationIterClass o
toPixbufAnimationIter :: PixbufAnimationIterClass o => o -> PixbufAnimationIter
toPixbufAnimationIter = unsafeCastGObject . toGObject

instance PixbufAnimationIterClass PixbufAnimationIter
instance GObjectClass PixbufAnimationIter where
  toGObject = GObject . castForeignPtr . unPixbufAnimationIter
  unsafeCastGObject = PixbufAnimationIter . castForeignPtr . unGObject

castToPixbufAnimationIter :: GObjectClass obj => obj -> PixbufAnimationIter
castToPixbufAnimationIter = castTo gTypePixbufAnimationIter "PixbufAnimationIter"

gTypePixbufAnimationIter :: GType
gTypePixbufAnimationIter =
  gdk_pixbuf_animation_iter_get_type
{-# LINE 1457 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ TextChildAnchor

newtype TextChildAnchor = TextChildAnchor (ForeignPtr (TextChildAnchor)) deriving (Eq,Ord)

mkTextChildAnchor = (TextChildAnchor, objectUnrefFromMainloop)
unTextChildAnchor (TextChildAnchor o) = o

class GObjectClass o => TextChildAnchorClass o
toTextChildAnchor :: TextChildAnchorClass o => o -> TextChildAnchor
toTextChildAnchor = unsafeCastGObject . toGObject

instance TextChildAnchorClass TextChildAnchor
instance GObjectClass TextChildAnchor where
  toGObject = GObject . castForeignPtr . unTextChildAnchor
  unsafeCastGObject = TextChildAnchor . castForeignPtr . unGObject

castToTextChildAnchor :: GObjectClass obj => obj -> TextChildAnchor
castToTextChildAnchor = castTo gTypeTextChildAnchor "TextChildAnchor"

gTypeTextChildAnchor :: GType
gTypeTextChildAnchor =
  gtk_text_child_anchor_get_type
{-# LINE 1480 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* TextMark

newtype TextMark = TextMark (ForeignPtr (TextMark)) deriving (Eq,Ord)

mkTextMark = (TextMark, objectUnrefFromMainloop)
unTextMark (TextMark o) = o

class GObjectClass o => TextMarkClass o
toTextMark :: TextMarkClass o => o -> TextMark
toTextMark = unsafeCastGObject . toGObject

instance TextMarkClass TextMark
instance GObjectClass TextMark where
  toGObject = GObject . castForeignPtr . unTextMark
  unsafeCastGObject = TextMark . castForeignPtr . unGObject

castToTextMark :: GObjectClass obj => obj -> TextMark
castToTextMark = castTo gTypeTextMark "TextMark"

gTypeTextMark :: GType
gTypeTextMark =
  gtk_text_mark_get_type
{-# LINE 1503 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** RecentFilter

newtype RecentFilter = RecentFilter (ForeignPtr (RecentFilter)) deriving (Eq,Ord)

mkRecentFilter = (RecentFilter, objectUnrefFromMainloop)
unRecentFilter (RecentFilter o) = o

class GObjectClass o => RecentFilterClass o
toRecentFilter :: RecentFilterClass o => o -> RecentFilter
toRecentFilter = unsafeCastGObject . toGObject

instance RecentFilterClass RecentFilter
instance GObjectClass RecentFilter where
  toGObject = GObject . castForeignPtr . unRecentFilter
  unsafeCastGObject = RecentFilter . castForeignPtr . unGObject

castToRecentFilter :: GObjectClass obj => obj -> RecentFilter
castToRecentFilter = castTo gTypeRecentFilter "RecentFilter"

gTypeRecentFilter :: GType
gTypeRecentFilter =
  gtk_recent_filter_get_type
{-# LINE 1526 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Widget

newtype Widget = Widget (ForeignPtr (Widget)) deriving (Eq,Ord)

mkWidget = (Widget, objectUnrefFromMainloop)
unWidget (Widget o) = o

class GObjectClass o => WidgetClass o
toWidget :: WidgetClass o => o -> Widget
toWidget = unsafeCastGObject . toGObject

instance WidgetClass Widget
instance GObjectClass Widget where
  toGObject = GObject . castForeignPtr . unWidget
  unsafeCastGObject = Widget . castForeignPtr . unGObject

castToWidget :: GObjectClass obj => obj -> Widget
castToWidget = castTo gTypeWidget "Widget"

gTypeWidget :: GType
gTypeWidget =
  gtk_widget_get_type
{-# LINE 1549 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************************ HSV

newtype HSV = HSV (ForeignPtr (HSV)) deriving (Eq,Ord)

mkHSV = (HSV, objectUnrefFromMainloop)
unHSV (HSV o) = o

class WidgetClass o => HSVClass o
toHSV :: HSVClass o => o -> HSV
toHSV = unsafeCastGObject . toGObject

instance HSVClass HSV
instance WidgetClass HSV
instance GObjectClass HSV where
  toGObject = GObject . castForeignPtr . unHSV
  unsafeCastGObject = HSV . castForeignPtr . unGObject

castToHSV :: GObjectClass obj => obj -> HSV
castToHSV = castTo gTypeHSV "HSV"

gTypeHSV :: GType
gTypeHSV =
  gtk_hsv_get_type
{-# LINE 1573 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************************** Misc

newtype Misc = Misc (ForeignPtr (Misc)) deriving (Eq,Ord)

mkMisc = (Misc, objectUnrefFromMainloop)
unMisc (Misc o) = o

class WidgetClass o => MiscClass o
toMisc :: MiscClass o => o -> Misc
toMisc = unsafeCastGObject . toGObject

instance MiscClass Misc
instance WidgetClass Misc
instance GObjectClass Misc where
  toGObject = GObject . castForeignPtr . unMisc
  unsafeCastGObject = Misc . castForeignPtr . unGObject

castToMisc :: GObjectClass obj => obj -> Misc
castToMisc = castTo gTypeMisc "Misc"

gTypeMisc :: GType
gTypeMisc =
  gtk_misc_get_type
{-# LINE 1597 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Label

newtype Label = Label (ForeignPtr (Label)) deriving (Eq,Ord)

mkLabel = (Label, objectUnrefFromMainloop)
unLabel (Label o) = o

class MiscClass o => LabelClass o
toLabel :: LabelClass o => o -> Label
toLabel = unsafeCastGObject . toGObject

instance LabelClass Label
instance MiscClass Label
instance WidgetClass Label
instance GObjectClass Label where
  toGObject = GObject . castForeignPtr . unLabel
  unsafeCastGObject = Label . castForeignPtr . unGObject

castToLabel :: GObjectClass obj => obj -> Label
castToLabel = castTo gTypeLabel "Label"

gTypeLabel :: GType
gTypeLabel =
  gtk_label_get_type
{-# LINE 1622 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** AccelLabel

newtype AccelLabel = AccelLabel (ForeignPtr (AccelLabel)) deriving (Eq,Ord)

mkAccelLabel = (AccelLabel, objectUnrefFromMainloop)
unAccelLabel (AccelLabel o) = o

class LabelClass o => AccelLabelClass o
toAccelLabel :: AccelLabelClass o => o -> AccelLabel
toAccelLabel = unsafeCastGObject . toGObject

instance AccelLabelClass AccelLabel
instance LabelClass AccelLabel
instance MiscClass AccelLabel
instance WidgetClass AccelLabel
instance GObjectClass AccelLabel where
  toGObject = GObject . castForeignPtr . unAccelLabel
  unsafeCastGObject = AccelLabel . castForeignPtr . unGObject

castToAccelLabel :: GObjectClass obj => obj -> AccelLabel
castToAccelLabel = castTo gTypeAccelLabel "AccelLabel"

gTypeAccelLabel :: GType
gTypeAccelLabel =
  gtk_accel_label_get_type
{-# LINE 1648 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Arrow

newtype Arrow = Arrow (ForeignPtr (Arrow)) deriving (Eq,Ord)

mkArrow = (Arrow, objectUnrefFromMainloop)
unArrow (Arrow o) = o

class MiscClass o => ArrowClass o
toArrow :: ArrowClass o => o -> Arrow
toArrow = unsafeCastGObject . toGObject

instance ArrowClass Arrow
instance MiscClass Arrow
instance WidgetClass Arrow
instance GObjectClass Arrow where
  toGObject = GObject . castForeignPtr . unArrow
  unsafeCastGObject = Arrow . castForeignPtr . unGObject

castToArrow :: GObjectClass obj => obj -> Arrow
castToArrow = castTo gTypeArrow "Arrow"

gTypeArrow :: GType
gTypeArrow =
  gtk_arrow_get_type
{-# LINE 1673 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Image

newtype Image = Image (ForeignPtr (Image)) deriving (Eq,Ord)

mkImage = (Image, objectUnrefFromMainloop)
unImage (Image o) = o

class MiscClass o => ImageClass o
toImage :: ImageClass o => o -> Image
toImage = unsafeCastGObject . toGObject

instance ImageClass Image
instance MiscClass Image
instance WidgetClass Image
instance GObjectClass Image where
  toGObject = GObject . castForeignPtr . unImage
  unsafeCastGObject = Image . castForeignPtr . unGObject

castToImage :: GObjectClass obj => obj -> Image
castToImage = castTo gTypeImage "Image"

gTypeImage :: GType
gTypeImage =
  gtk_image_get_type
{-# LINE 1698 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Container

newtype Container = Container (ForeignPtr (Container)) deriving (Eq,Ord)

mkContainer = (Container, objectUnrefFromMainloop)
unContainer (Container o) = o

class WidgetClass o => ContainerClass o
toContainer :: ContainerClass o => o -> Container
toContainer = unsafeCastGObject . toGObject

instance ContainerClass Container
instance WidgetClass Container
instance GObjectClass Container where
  toGObject = GObject . castForeignPtr . unContainer
  unsafeCastGObject = Container . castForeignPtr . unGObject

castToContainer :: GObjectClass obj => obj -> Container
castToContainer = castTo gTypeContainer "Container"

gTypeContainer :: GType
gTypeContainer =
  gtk_container_get_type
{-# LINE 1722 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** ToolPalette

newtype ToolPalette = ToolPalette (ForeignPtr (ToolPalette)) deriving (Eq,Ord)

mkToolPalette = (ToolPalette, objectUnrefFromMainloop)
unToolPalette (ToolPalette o) = o

class ContainerClass o => ToolPaletteClass o
toToolPalette :: ToolPaletteClass o => o -> ToolPalette
toToolPalette = unsafeCastGObject . toGObject

instance ToolPaletteClass ToolPalette
instance ContainerClass ToolPalette
instance WidgetClass ToolPalette
instance GObjectClass ToolPalette where
  toGObject = GObject . castForeignPtr . unToolPalette
  unsafeCastGObject = ToolPalette . castForeignPtr . unGObject

castToToolPalette :: GObjectClass obj => obj -> ToolPalette
castToToolPalette = castTo gTypeToolPalette "ToolPalette"

gTypeToolPalette :: GType
gTypeToolPalette =
  gtk_tool_palette_get_type
{-# LINE 1747 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** ToolItemGroup

newtype ToolItemGroup = ToolItemGroup (ForeignPtr (ToolItemGroup)) deriving (Eq,Ord)

mkToolItemGroup = (ToolItemGroup, objectUnrefFromMainloop)
unToolItemGroup (ToolItemGroup o) = o

class ContainerClass o => ToolItemGroupClass o
toToolItemGroup :: ToolItemGroupClass o => o -> ToolItemGroup
toToolItemGroup = unsafeCastGObject . toGObject

instance ToolItemGroupClass ToolItemGroup
instance ContainerClass ToolItemGroup
instance WidgetClass ToolItemGroup
instance GObjectClass ToolItemGroup where
  toGObject = GObject . castForeignPtr . unToolItemGroup
  unsafeCastGObject = ToolItemGroup . castForeignPtr . unGObject

castToToolItemGroup :: GObjectClass obj => obj -> ToolItemGroup
castToToolItemGroup = castTo gTypeToolItemGroup "ToolItemGroup"

gTypeToolItemGroup :: GType
gTypeToolItemGroup =
  gtk_tool_item_group_get_type
{-# LINE 1772 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Stack

newtype Stack = Stack (ForeignPtr (Stack)) deriving (Eq,Ord)

mkStack = (Stack, objectUnrefFromMainloop)
unStack (Stack o) = o

class ContainerClass o => StackClass o
toStack :: StackClass o => o -> Stack
toStack = unsafeCastGObject . toGObject

instance StackClass Stack
instance ContainerClass Stack
instance WidgetClass Stack
instance GObjectClass Stack where
  toGObject = GObject . castForeignPtr . unStack
  unsafeCastGObject = Stack . castForeignPtr . unGObject

castToStack :: GObjectClass obj => obj -> Stack
castToStack = castTo gTypeStack "Stack"

gTypeStack :: GType
gTypeStack =
  gtk_stack_get_type
{-# LINE 1797 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************************ Bin

newtype Bin = Bin (ForeignPtr (Bin)) deriving (Eq,Ord)

mkBin = (Bin, objectUnrefFromMainloop)
unBin (Bin o) = o

class ContainerClass o => BinClass o
toBin :: BinClass o => o -> Bin
toBin = unsafeCastGObject . toGObject

instance BinClass Bin
instance ContainerClass Bin
instance WidgetClass Bin
instance GObjectClass Bin where
  toGObject = GObject . castForeignPtr . unBin
  unsafeCastGObject = Bin . castForeignPtr . unGObject

castToBin :: GObjectClass obj => obj -> Bin
castToBin = castTo gTypeBin "Bin"

gTypeBin :: GType
gTypeBin =
  gtk_bin_get_type
{-# LINE 1822 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Alignment

newtype Alignment = Alignment (ForeignPtr (Alignment)) deriving (Eq,Ord)

mkAlignment = (Alignment, objectUnrefFromMainloop)
unAlignment (Alignment o) = o

class BinClass o => AlignmentClass o
toAlignment :: AlignmentClass o => o -> Alignment
toAlignment = unsafeCastGObject . toGObject

instance AlignmentClass Alignment
instance BinClass Alignment
instance ContainerClass Alignment
instance WidgetClass Alignment
instance GObjectClass Alignment where
  toGObject = GObject . castForeignPtr . unAlignment
  unsafeCastGObject = Alignment . castForeignPtr . unGObject

castToAlignment :: GObjectClass obj => obj -> Alignment
castToAlignment = castTo gTypeAlignment "Alignment"

gTypeAlignment :: GType
gTypeAlignment =
  gtk_alignment_get_type
{-# LINE 1848 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Frame

newtype Frame = Frame (ForeignPtr (Frame)) deriving (Eq,Ord)

mkFrame = (Frame, objectUnrefFromMainloop)
unFrame (Frame o) = o

class BinClass o => FrameClass o
toFrame :: FrameClass o => o -> Frame
toFrame = unsafeCastGObject . toGObject

instance FrameClass Frame
instance BinClass Frame
instance ContainerClass Frame
instance WidgetClass Frame
instance GObjectClass Frame where
  toGObject = GObject . castForeignPtr . unFrame
  unsafeCastGObject = Frame . castForeignPtr . unGObject

castToFrame :: GObjectClass obj => obj -> Frame
castToFrame = castTo gTypeFrame "Frame"

gTypeFrame :: GType
gTypeFrame =
  gtk_frame_get_type
{-# LINE 1874 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** AspectFrame

newtype AspectFrame = AspectFrame (ForeignPtr (AspectFrame)) deriving (Eq,Ord)

mkAspectFrame = (AspectFrame, objectUnrefFromMainloop)
unAspectFrame (AspectFrame o) = o

class FrameClass o => AspectFrameClass o
toAspectFrame :: AspectFrameClass o => o -> AspectFrame
toAspectFrame = unsafeCastGObject . toGObject

instance AspectFrameClass AspectFrame
instance FrameClass AspectFrame
instance BinClass AspectFrame
instance ContainerClass AspectFrame
instance WidgetClass AspectFrame
instance GObjectClass AspectFrame where
  toGObject = GObject . castForeignPtr . unAspectFrame
  unsafeCastGObject = AspectFrame . castForeignPtr . unGObject

castToAspectFrame :: GObjectClass obj => obj -> AspectFrame
castToAspectFrame = castTo gTypeAspectFrame "AspectFrame"

gTypeAspectFrame :: GType
gTypeAspectFrame =
  gtk_aspect_frame_get_type
{-# LINE 1901 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Button

newtype Button = Button (ForeignPtr (Button)) deriving (Eq,Ord)

mkButton = (Button, objectUnrefFromMainloop)
unButton (Button o) = o

class BinClass o => ButtonClass o
toButton :: ButtonClass o => o -> Button
toButton = unsafeCastGObject . toGObject

instance ButtonClass Button
instance BinClass Button
instance ContainerClass Button
instance WidgetClass Button
instance GObjectClass Button where
  toGObject = GObject . castForeignPtr . unButton
  unsafeCastGObject = Button . castForeignPtr . unGObject

castToButton :: GObjectClass obj => obj -> Button
castToButton = castTo gTypeButton "Button"

gTypeButton :: GType
gTypeButton =
  gtk_button_get_type
{-# LINE 1927 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** ScaleButton

newtype ScaleButton = ScaleButton (ForeignPtr (ScaleButton)) deriving (Eq,Ord)

mkScaleButton = (ScaleButton, objectUnrefFromMainloop)
unScaleButton (ScaleButton o) = o

class ButtonClass o => ScaleButtonClass o
toScaleButton :: ScaleButtonClass o => o -> ScaleButton
toScaleButton = unsafeCastGObject . toGObject

instance ScaleButtonClass ScaleButton
instance ButtonClass ScaleButton
instance BinClass ScaleButton
instance ContainerClass ScaleButton
instance WidgetClass ScaleButton
instance GObjectClass ScaleButton where
  toGObject = GObject . castForeignPtr . unScaleButton
  unsafeCastGObject = ScaleButton . castForeignPtr . unGObject

castToScaleButton :: GObjectClass obj => obj -> ScaleButton
castToScaleButton = castTo gTypeScaleButton "ScaleButton"

gTypeScaleButton :: GType
gTypeScaleButton =
  gtk_scale_button_get_type
{-# LINE 1954 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** VolumeButton

newtype VolumeButton = VolumeButton (ForeignPtr (VolumeButton)) deriving (Eq,Ord)

mkVolumeButton = (VolumeButton, objectUnrefFromMainloop)
unVolumeButton (VolumeButton o) = o

class ScaleButtonClass o => VolumeButtonClass o
toVolumeButton :: VolumeButtonClass o => o -> VolumeButton
toVolumeButton = unsafeCastGObject . toGObject

instance VolumeButtonClass VolumeButton
instance ScaleButtonClass VolumeButton
instance ButtonClass VolumeButton
instance BinClass VolumeButton
instance ContainerClass VolumeButton
instance WidgetClass VolumeButton
instance GObjectClass VolumeButton where
  toGObject = GObject . castForeignPtr . unVolumeButton
  unsafeCastGObject = VolumeButton . castForeignPtr . unGObject

castToVolumeButton :: GObjectClass obj => obj -> VolumeButton
castToVolumeButton = castTo gTypeVolumeButton "VolumeButton"

gTypeVolumeButton :: GType
gTypeVolumeButton =
  gtk_volume_button_get_type
{-# LINE 1982 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** LinkButton

newtype LinkButton = LinkButton (ForeignPtr (LinkButton)) deriving (Eq,Ord)

mkLinkButton = (LinkButton, objectUnrefFromMainloop)
unLinkButton (LinkButton o) = o

class ButtonClass o => LinkButtonClass o
toLinkButton :: LinkButtonClass o => o -> LinkButton
toLinkButton = unsafeCastGObject . toGObject

instance LinkButtonClass LinkButton
instance ButtonClass LinkButton
instance BinClass LinkButton
instance ContainerClass LinkButton
instance WidgetClass LinkButton
instance GObjectClass LinkButton where
  toGObject = GObject . castForeignPtr . unLinkButton
  unsafeCastGObject = LinkButton . castForeignPtr . unGObject

castToLinkButton :: GObjectClass obj => obj -> LinkButton
castToLinkButton = castTo gTypeLinkButton "LinkButton"

gTypeLinkButton :: GType
gTypeLinkButton =
  gtk_link_button_get_type
{-# LINE 2009 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** ToggleButton

newtype ToggleButton = ToggleButton (ForeignPtr (ToggleButton)) deriving (Eq,Ord)

mkToggleButton = (ToggleButton, objectUnrefFromMainloop)
unToggleButton (ToggleButton o) = o

class ButtonClass o => ToggleButtonClass o
toToggleButton :: ToggleButtonClass o => o -> ToggleButton
toToggleButton = unsafeCastGObject . toGObject

instance ToggleButtonClass ToggleButton
instance ButtonClass ToggleButton
instance BinClass ToggleButton
instance ContainerClass ToggleButton
instance WidgetClass ToggleButton
instance GObjectClass ToggleButton where
  toGObject = GObject . castForeignPtr . unToggleButton
  unsafeCastGObject = ToggleButton . castForeignPtr . unGObject

castToToggleButton :: GObjectClass obj => obj -> ToggleButton
castToToggleButton = castTo gTypeToggleButton "ToggleButton"

gTypeToggleButton :: GType
gTypeToggleButton =
  gtk_toggle_button_get_type
{-# LINE 2036 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** CheckButton

newtype CheckButton = CheckButton (ForeignPtr (CheckButton)) deriving (Eq,Ord)

mkCheckButton = (CheckButton, objectUnrefFromMainloop)
unCheckButton (CheckButton o) = o

class ToggleButtonClass o => CheckButtonClass o
toCheckButton :: CheckButtonClass o => o -> CheckButton
toCheckButton = unsafeCastGObject . toGObject

instance CheckButtonClass CheckButton
instance ToggleButtonClass CheckButton
instance ButtonClass CheckButton
instance BinClass CheckButton
instance ContainerClass CheckButton
instance WidgetClass CheckButton
instance GObjectClass CheckButton where
  toGObject = GObject . castForeignPtr . unCheckButton
  unsafeCastGObject = CheckButton . castForeignPtr . unGObject

castToCheckButton :: GObjectClass obj => obj -> CheckButton
castToCheckButton = castTo gTypeCheckButton "CheckButton"

gTypeCheckButton :: GType
gTypeCheckButton =
  gtk_check_button_get_type
{-# LINE 2064 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** RadioButton

newtype RadioButton = RadioButton (ForeignPtr (RadioButton)) deriving (Eq,Ord)

mkRadioButton = (RadioButton, objectUnrefFromMainloop)
unRadioButton (RadioButton o) = o

class CheckButtonClass o => RadioButtonClass o
toRadioButton :: RadioButtonClass o => o -> RadioButton
toRadioButton = unsafeCastGObject . toGObject

instance RadioButtonClass RadioButton
instance CheckButtonClass RadioButton
instance ToggleButtonClass RadioButton
instance ButtonClass RadioButton
instance BinClass RadioButton
instance ContainerClass RadioButton
instance WidgetClass RadioButton
instance GObjectClass RadioButton where
  toGObject = GObject . castForeignPtr . unRadioButton
  unsafeCastGObject = RadioButton . castForeignPtr . unGObject

castToRadioButton :: GObjectClass obj => obj -> RadioButton
castToRadioButton = castTo gTypeRadioButton "RadioButton"

gTypeRadioButton :: GType
gTypeRadioButton =
  gtk_radio_button_get_type
{-# LINE 2093 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** ColorButton

newtype ColorButton = ColorButton (ForeignPtr (ColorButton)) deriving (Eq,Ord)

mkColorButton = (ColorButton, objectUnrefFromMainloop)
unColorButton (ColorButton o) = o

class ButtonClass o => ColorButtonClass o
toColorButton :: ColorButtonClass o => o -> ColorButton
toColorButton = unsafeCastGObject . toGObject

instance ColorButtonClass ColorButton
instance ButtonClass ColorButton
instance BinClass ColorButton
instance ContainerClass ColorButton
instance WidgetClass ColorButton
instance GObjectClass ColorButton where
  toGObject = GObject . castForeignPtr . unColorButton
  unsafeCastGObject = ColorButton . castForeignPtr . unGObject

castToColorButton :: GObjectClass obj => obj -> ColorButton
castToColorButton = castTo gTypeColorButton "ColorButton"

gTypeColorButton :: GType
gTypeColorButton =
  gtk_color_button_get_type
{-# LINE 2120 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** FontButton

newtype FontButton = FontButton (ForeignPtr (FontButton)) deriving (Eq,Ord)

mkFontButton = (FontButton, objectUnrefFromMainloop)
unFontButton (FontButton o) = o

class ButtonClass o => FontButtonClass o
toFontButton :: FontButtonClass o => o -> FontButton
toFontButton = unsafeCastGObject . toGObject

instance FontButtonClass FontButton
instance ButtonClass FontButton
instance BinClass FontButton
instance ContainerClass FontButton
instance WidgetClass FontButton
instance GObjectClass FontButton where
  toGObject = GObject . castForeignPtr . unFontButton
  unsafeCastGObject = FontButton . castForeignPtr . unGObject

castToFontButton :: GObjectClass obj => obj -> FontButton
castToFontButton = castTo gTypeFontButton "FontButton"

gTypeFontButton :: GType
gTypeFontButton =
  gtk_font_button_get_type
{-# LINE 2147 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* MenuItem

newtype MenuItem = MenuItem (ForeignPtr (MenuItem)) deriving (Eq,Ord)

mkMenuItem = (MenuItem, objectUnrefFromMainloop)
unMenuItem (MenuItem o) = o

class BinClass o => MenuItemClass o
toMenuItem :: MenuItemClass o => o -> MenuItem
toMenuItem = unsafeCastGObject . toGObject

instance MenuItemClass MenuItem
instance BinClass MenuItem
instance ContainerClass MenuItem
instance WidgetClass MenuItem
instance GObjectClass MenuItem where
  toGObject = GObject . castForeignPtr . unMenuItem
  unsafeCastGObject = MenuItem . castForeignPtr . unGObject

castToMenuItem :: GObjectClass obj => obj -> MenuItem
castToMenuItem = castTo gTypeMenuItem "MenuItem"

gTypeMenuItem :: GType
gTypeMenuItem =
  gtk_menu_item_get_type
{-# LINE 2173 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** CheckMenuItem

newtype CheckMenuItem = CheckMenuItem (ForeignPtr (CheckMenuItem)) deriving (Eq,Ord)

mkCheckMenuItem = (CheckMenuItem, objectUnrefFromMainloop)
unCheckMenuItem (CheckMenuItem o) = o

class MenuItemClass o => CheckMenuItemClass o
toCheckMenuItem :: CheckMenuItemClass o => o -> CheckMenuItem
toCheckMenuItem = unsafeCastGObject . toGObject

instance CheckMenuItemClass CheckMenuItem
instance MenuItemClass CheckMenuItem
instance BinClass CheckMenuItem
instance ContainerClass CheckMenuItem
instance WidgetClass CheckMenuItem
instance GObjectClass CheckMenuItem where
  toGObject = GObject . castForeignPtr . unCheckMenuItem
  unsafeCastGObject = CheckMenuItem . castForeignPtr . unGObject

castToCheckMenuItem :: GObjectClass obj => obj -> CheckMenuItem
castToCheckMenuItem = castTo gTypeCheckMenuItem "CheckMenuItem"

gTypeCheckMenuItem :: GType
gTypeCheckMenuItem =
  gtk_check_menu_item_get_type
{-# LINE 2200 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** RadioMenuItem

newtype RadioMenuItem = RadioMenuItem (ForeignPtr (RadioMenuItem)) deriving (Eq,Ord)

mkRadioMenuItem = (RadioMenuItem, objectUnrefFromMainloop)
unRadioMenuItem (RadioMenuItem o) = o

class CheckMenuItemClass o => RadioMenuItemClass o
toRadioMenuItem :: RadioMenuItemClass o => o -> RadioMenuItem
toRadioMenuItem = unsafeCastGObject . toGObject

instance RadioMenuItemClass RadioMenuItem
instance CheckMenuItemClass RadioMenuItem
instance MenuItemClass RadioMenuItem
instance BinClass RadioMenuItem
instance ContainerClass RadioMenuItem
instance WidgetClass RadioMenuItem
instance GObjectClass RadioMenuItem where
  toGObject = GObject . castForeignPtr . unRadioMenuItem
  unsafeCastGObject = RadioMenuItem . castForeignPtr . unGObject

castToRadioMenuItem :: GObjectClass obj => obj -> RadioMenuItem
castToRadioMenuItem = castTo gTypeRadioMenuItem "RadioMenuItem"

gTypeRadioMenuItem :: GType
gTypeRadioMenuItem =
  gtk_radio_menu_item_get_type
{-# LINE 2228 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ TearoffMenuItem

newtype TearoffMenuItem = TearoffMenuItem (ForeignPtr (TearoffMenuItem)) deriving (Eq,Ord)

mkTearoffMenuItem = (TearoffMenuItem, objectUnrefFromMainloop)
unTearoffMenuItem (TearoffMenuItem o) = o

class MenuItemClass o => TearoffMenuItemClass o
toTearoffMenuItem :: TearoffMenuItemClass o => o -> TearoffMenuItem
toTearoffMenuItem = unsafeCastGObject . toGObject

instance TearoffMenuItemClass TearoffMenuItem
instance MenuItemClass TearoffMenuItem
instance BinClass TearoffMenuItem
instance ContainerClass TearoffMenuItem
instance WidgetClass TearoffMenuItem
instance GObjectClass TearoffMenuItem where
  toGObject = GObject . castForeignPtr . unTearoffMenuItem
  unsafeCastGObject = TearoffMenuItem . castForeignPtr . unGObject

castToTearoffMenuItem :: GObjectClass obj => obj -> TearoffMenuItem
castToTearoffMenuItem = castTo gTypeTearoffMenuItem "TearoffMenuItem"

gTypeTearoffMenuItem :: GType
gTypeTearoffMenuItem =
  gtk_tearoff_menu_item_get_type
{-# LINE 2255 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** ImageMenuItem

newtype ImageMenuItem = ImageMenuItem (ForeignPtr (ImageMenuItem)) deriving (Eq,Ord)

mkImageMenuItem = (ImageMenuItem, objectUnrefFromMainloop)
unImageMenuItem (ImageMenuItem o) = o

class MenuItemClass o => ImageMenuItemClass o
toImageMenuItem :: ImageMenuItemClass o => o -> ImageMenuItem
toImageMenuItem = unsafeCastGObject . toGObject

instance ImageMenuItemClass ImageMenuItem
instance MenuItemClass ImageMenuItem
instance BinClass ImageMenuItem
instance ContainerClass ImageMenuItem
instance WidgetClass ImageMenuItem
instance GObjectClass ImageMenuItem where
  toGObject = GObject . castForeignPtr . unImageMenuItem
  unsafeCastGObject = ImageMenuItem . castForeignPtr . unGObject

castToImageMenuItem :: GObjectClass obj => obj -> ImageMenuItem
castToImageMenuItem = castTo gTypeImageMenuItem "ImageMenuItem"

gTypeImageMenuItem :: GType
gTypeImageMenuItem =
  gtk_image_menu_item_get_type
{-# LINE 2282 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** SeparatorMenuItem

newtype SeparatorMenuItem = SeparatorMenuItem (ForeignPtr (SeparatorMenuItem)) deriving (Eq,Ord)

mkSeparatorMenuItem = (SeparatorMenuItem, objectUnrefFromMainloop)
unSeparatorMenuItem (SeparatorMenuItem o) = o

class MenuItemClass o => SeparatorMenuItemClass o
toSeparatorMenuItem :: SeparatorMenuItemClass o => o -> SeparatorMenuItem
toSeparatorMenuItem = unsafeCastGObject . toGObject

instance SeparatorMenuItemClass SeparatorMenuItem
instance MenuItemClass SeparatorMenuItem
instance BinClass SeparatorMenuItem
instance ContainerClass SeparatorMenuItem
instance WidgetClass SeparatorMenuItem
instance GObjectClass SeparatorMenuItem where
  toGObject = GObject . castForeignPtr . unSeparatorMenuItem
  unsafeCastGObject = SeparatorMenuItem . castForeignPtr . unGObject

castToSeparatorMenuItem :: GObjectClass obj => obj -> SeparatorMenuItem
castToSeparatorMenuItem = castTo gTypeSeparatorMenuItem "SeparatorMenuItem"

gTypeSeparatorMenuItem :: GType
gTypeSeparatorMenuItem =
  gtk_separator_menu_item_get_type
{-# LINE 2309 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Overlay

newtype Overlay = Overlay (ForeignPtr (Overlay)) deriving (Eq,Ord)

mkOverlay = (Overlay, objectUnrefFromMainloop)
unOverlay (Overlay o) = o

class BinClass o => OverlayClass o
toOverlay :: OverlayClass o => o -> Overlay
toOverlay = unsafeCastGObject . toGObject

instance OverlayClass Overlay
instance BinClass Overlay
instance ContainerClass Overlay
instance WidgetClass Overlay
instance GObjectClass Overlay where
  toGObject = GObject . castForeignPtr . unOverlay
  unsafeCastGObject = Overlay . castForeignPtr . unGObject

castToOverlay :: GObjectClass obj => obj -> Overlay
castToOverlay = castTo gTypeOverlay "Overlay"

gTypeOverlay :: GType
gTypeOverlay =
  gtk_overlay_get_type
{-# LINE 2335 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Window

newtype Window = Window (ForeignPtr (Window)) deriving (Eq,Ord)

mkWindow = (Window, objectUnrefFromMainloop)
unWindow (Window o) = o

class BinClass o => WindowClass o
toWindow :: WindowClass o => o -> Window
toWindow = unsafeCastGObject . toGObject

instance WindowClass Window
instance BinClass Window
instance ContainerClass Window
instance WidgetClass Window
instance GObjectClass Window where
  toGObject = GObject . castForeignPtr . unWindow
  unsafeCastGObject = Window . castForeignPtr . unGObject

castToWindow :: GObjectClass obj => obj -> Window
castToWindow = castTo gTypeWindow "Window"

gTypeWindow :: GType
gTypeWindow =
  gtk_window_get_type
{-# LINE 2361 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Assistant

newtype Assistant = Assistant (ForeignPtr (Assistant)) deriving (Eq,Ord)

mkAssistant = (Assistant, objectUnrefFromMainloop)
unAssistant (Assistant o) = o

class WindowClass o => AssistantClass o
toAssistant :: AssistantClass o => o -> Assistant
toAssistant = unsafeCastGObject . toGObject

instance AssistantClass Assistant
instance WindowClass Assistant
instance BinClass Assistant
instance ContainerClass Assistant
instance WidgetClass Assistant
instance GObjectClass Assistant where
  toGObject = GObject . castForeignPtr . unAssistant
  unsafeCastGObject = Assistant . castForeignPtr . unGObject

castToAssistant :: GObjectClass obj => obj -> Assistant
castToAssistant = castTo gTypeAssistant "Assistant"

gTypeAssistant :: GType
gTypeAssistant =
  gtk_assistant_get_type
{-# LINE 2388 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ OffscreenWindow

newtype OffscreenWindow = OffscreenWindow (ForeignPtr (OffscreenWindow)) deriving (Eq,Ord)

mkOffscreenWindow = (OffscreenWindow, objectUnrefFromMainloop)
unOffscreenWindow (OffscreenWindow o) = o

class WindowClass o => OffscreenWindowClass o
toOffscreenWindow :: OffscreenWindowClass o => o -> OffscreenWindow
toOffscreenWindow = unsafeCastGObject . toGObject

instance OffscreenWindowClass OffscreenWindow
instance WindowClass OffscreenWindow
instance BinClass OffscreenWindow
instance ContainerClass OffscreenWindow
instance WidgetClass OffscreenWindow
instance GObjectClass OffscreenWindow where
  toGObject = GObject . castForeignPtr . unOffscreenWindow
  unsafeCastGObject = OffscreenWindow . castForeignPtr . unGObject

castToOffscreenWindow :: GObjectClass obj => obj -> OffscreenWindow
castToOffscreenWindow = castTo gTypeOffscreenWindow "OffscreenWindow"

gTypeOffscreenWindow :: GType
gTypeOffscreenWindow =
  gtk_offscreen_window_get_type
{-# LINE 2415 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Dialog

newtype Dialog = Dialog (ForeignPtr (Dialog)) deriving (Eq,Ord)

mkDialog = (Dialog, objectUnrefFromMainloop)
unDialog (Dialog o) = o

class WindowClass o => DialogClass o
toDialog :: DialogClass o => o -> Dialog
toDialog = unsafeCastGObject . toGObject

instance DialogClass Dialog
instance WindowClass Dialog
instance BinClass Dialog
instance ContainerClass Dialog
instance WidgetClass Dialog
instance GObjectClass Dialog where
  toGObject = GObject . castForeignPtr . unDialog
  unsafeCastGObject = Dialog . castForeignPtr . unGObject

castToDialog :: GObjectClass obj => obj -> Dialog
castToDialog = castTo gTypeDialog "Dialog"

gTypeDialog :: GType
gTypeDialog =
  gtk_dialog_get_type
{-# LINE 2442 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** AboutDialog

newtype AboutDialog = AboutDialog (ForeignPtr (AboutDialog)) deriving (Eq,Ord)

mkAboutDialog = (AboutDialog, objectUnrefFromMainloop)
unAboutDialog (AboutDialog o) = o

class DialogClass o => AboutDialogClass o
toAboutDialog :: AboutDialogClass o => o -> AboutDialog
toAboutDialog = unsafeCastGObject . toGObject

instance AboutDialogClass AboutDialog
instance DialogClass AboutDialog
instance WindowClass AboutDialog
instance BinClass AboutDialog
instance ContainerClass AboutDialog
instance WidgetClass AboutDialog
instance GObjectClass AboutDialog where
  toGObject = GObject . castForeignPtr . unAboutDialog
  unsafeCastGObject = AboutDialog . castForeignPtr . unGObject

castToAboutDialog :: GObjectClass obj => obj -> AboutDialog
castToAboutDialog = castTo gTypeAboutDialog "AboutDialog"

gTypeAboutDialog :: GType
gTypeAboutDialog =
  gtk_about_dialog_get_type
{-# LINE 2470 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************* ColorSelectionDialog

newtype ColorSelectionDialog = ColorSelectionDialog (ForeignPtr (ColorSelectionDialog)) deriving (Eq,Ord)

mkColorSelectionDialog = (ColorSelectionDialog, objectUnrefFromMainloop)
unColorSelectionDialog (ColorSelectionDialog o) = o

class DialogClass o => ColorSelectionDialogClass o
toColorSelectionDialog :: ColorSelectionDialogClass o => o -> ColorSelectionDialog
toColorSelectionDialog = unsafeCastGObject . toGObject

instance ColorSelectionDialogClass ColorSelectionDialog
instance DialogClass ColorSelectionDialog
instance WindowClass ColorSelectionDialog
instance BinClass ColorSelectionDialog
instance ContainerClass ColorSelectionDialog
instance WidgetClass ColorSelectionDialog
instance GObjectClass ColorSelectionDialog where
  toGObject = GObject . castForeignPtr . unColorSelectionDialog
  unsafeCastGObject = ColorSelectionDialog . castForeignPtr . unGObject

castToColorSelectionDialog :: GObjectClass obj => obj -> ColorSelectionDialog
castToColorSelectionDialog = castTo gTypeColorSelectionDialog "ColorSelectionDialog"

gTypeColorSelectionDialog :: GType
gTypeColorSelectionDialog =
  gtk_color_selection_dialog_get_type
{-# LINE 2498 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** FileChooserDialog

newtype FileChooserDialog = FileChooserDialog (ForeignPtr (FileChooserDialog)) deriving (Eq,Ord)

mkFileChooserDialog = (FileChooserDialog, objectUnrefFromMainloop)
unFileChooserDialog (FileChooserDialog o) = o

class DialogClass o => FileChooserDialogClass o
toFileChooserDialog :: FileChooserDialogClass o => o -> FileChooserDialog
toFileChooserDialog = unsafeCastGObject . toGObject

instance FileChooserDialogClass FileChooserDialog
instance DialogClass FileChooserDialog
instance WindowClass FileChooserDialog
instance BinClass FileChooserDialog
instance ContainerClass FileChooserDialog
instance WidgetClass FileChooserDialog
instance GObjectClass FileChooserDialog where
  toGObject = GObject . castForeignPtr . unFileChooserDialog
  unsafeCastGObject = FileChooserDialog . castForeignPtr . unGObject

castToFileChooserDialog :: GObjectClass obj => obj -> FileChooserDialog
castToFileChooserDialog = castTo gTypeFileChooserDialog "FileChooserDialog"

gTypeFileChooserDialog :: GType
gTypeFileChooserDialog =
  gtk_file_chooser_dialog_get_type
{-# LINE 2526 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************** FontSelectionDialog

newtype FontSelectionDialog = FontSelectionDialog (ForeignPtr (FontSelectionDialog)) deriving (Eq,Ord)

mkFontSelectionDialog = (FontSelectionDialog, objectUnrefFromMainloop)
unFontSelectionDialog (FontSelectionDialog o) = o

class DialogClass o => FontSelectionDialogClass o
toFontSelectionDialog :: FontSelectionDialogClass o => o -> FontSelectionDialog
toFontSelectionDialog = unsafeCastGObject . toGObject

instance FontSelectionDialogClass FontSelectionDialog
instance DialogClass FontSelectionDialog
instance WindowClass FontSelectionDialog
instance BinClass FontSelectionDialog
instance ContainerClass FontSelectionDialog
instance WidgetClass FontSelectionDialog
instance GObjectClass FontSelectionDialog where
  toGObject = GObject . castForeignPtr . unFontSelectionDialog
  unsafeCastGObject = FontSelectionDialog . castForeignPtr . unGObject

castToFontSelectionDialog :: GObjectClass obj => obj -> FontSelectionDialog
castToFontSelectionDialog = castTo gTypeFontSelectionDialog "FontSelectionDialog"

gTypeFontSelectionDialog :: GType
gTypeFontSelectionDialog =
  gtk_font_selection_dialog_get_type
{-# LINE 2554 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** MessageDialog

newtype MessageDialog = MessageDialog (ForeignPtr (MessageDialog)) deriving (Eq,Ord)

mkMessageDialog = (MessageDialog, objectUnrefFromMainloop)
unMessageDialog (MessageDialog o) = o

class DialogClass o => MessageDialogClass o
toMessageDialog :: MessageDialogClass o => o -> MessageDialog
toMessageDialog = unsafeCastGObject . toGObject

instance MessageDialogClass MessageDialog
instance DialogClass MessageDialog
instance WindowClass MessageDialog
instance BinClass MessageDialog
instance ContainerClass MessageDialog
instance WidgetClass MessageDialog
instance GObjectClass MessageDialog where
  toGObject = GObject . castForeignPtr . unMessageDialog
  unsafeCastGObject = MessageDialog . castForeignPtr . unGObject

castToMessageDialog :: GObjectClass obj => obj -> MessageDialog
castToMessageDialog = castTo gTypeMessageDialog "MessageDialog"

gTypeMessageDialog :: GType
gTypeMessageDialog =
  gtk_message_dialog_get_type
{-# LINE 2582 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* EventBox

newtype EventBox = EventBox (ForeignPtr (EventBox)) deriving (Eq,Ord)

mkEventBox = (EventBox, objectUnrefFromMainloop)
unEventBox (EventBox o) = o

class BinClass o => EventBoxClass o
toEventBox :: EventBoxClass o => o -> EventBox
toEventBox = unsafeCastGObject . toGObject

instance EventBoxClass EventBox
instance BinClass EventBox
instance ContainerClass EventBox
instance WidgetClass EventBox
instance GObjectClass EventBox where
  toGObject = GObject . castForeignPtr . unEventBox
  unsafeCastGObject = EventBox . castForeignPtr . unGObject

castToEventBox :: GObjectClass obj => obj -> EventBox
castToEventBox = castTo gTypeEventBox "EventBox"

gTypeEventBox :: GType
gTypeEventBox =
  gtk_event_box_get_type
{-# LINE 2608 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** HandleBox

newtype HandleBox = HandleBox (ForeignPtr (HandleBox)) deriving (Eq,Ord)

mkHandleBox = (HandleBox, objectUnrefFromMainloop)
unHandleBox (HandleBox o) = o

class BinClass o => HandleBoxClass o
toHandleBox :: HandleBoxClass o => o -> HandleBox
toHandleBox = unsafeCastGObject . toGObject

instance HandleBoxClass HandleBox
instance BinClass HandleBox
instance ContainerClass HandleBox
instance WidgetClass HandleBox
instance GObjectClass HandleBox where
  toGObject = GObject . castForeignPtr . unHandleBox
  unsafeCastGObject = HandleBox . castForeignPtr . unGObject

castToHandleBox :: GObjectClass obj => obj -> HandleBox
castToHandleBox = castTo gTypeHandleBox "HandleBox"

gTypeHandleBox :: GType
gTypeHandleBox =
  gtk_handle_box_get_type
{-# LINE 2634 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* ScrolledWindow

newtype ScrolledWindow = ScrolledWindow (ForeignPtr (ScrolledWindow)) deriving (Eq,Ord)

mkScrolledWindow = (ScrolledWindow, objectUnrefFromMainloop)
unScrolledWindow (ScrolledWindow o) = o

class BinClass o => ScrolledWindowClass o
toScrolledWindow :: ScrolledWindowClass o => o -> ScrolledWindow
toScrolledWindow = unsafeCastGObject . toGObject

instance ScrolledWindowClass ScrolledWindow
instance BinClass ScrolledWindow
instance ContainerClass ScrolledWindow
instance WidgetClass ScrolledWindow
instance GObjectClass ScrolledWindow where
  toGObject = GObject . castForeignPtr . unScrolledWindow
  unsafeCastGObject = ScrolledWindow . castForeignPtr . unGObject

castToScrolledWindow :: GObjectClass obj => obj -> ScrolledWindow
castToScrolledWindow = castTo gTypeScrolledWindow "ScrolledWindow"

gTypeScrolledWindow :: GType
gTypeScrolledWindow =
  gtk_scrolled_window_get_type
{-# LINE 2660 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Viewport

newtype Viewport = Viewport (ForeignPtr (Viewport)) deriving (Eq,Ord)

mkViewport = (Viewport, objectUnrefFromMainloop)
unViewport (Viewport o) = o

class BinClass o => ViewportClass o
toViewport :: ViewportClass o => o -> Viewport
toViewport = unsafeCastGObject . toGObject

instance ViewportClass Viewport
instance BinClass Viewport
instance ContainerClass Viewport
instance WidgetClass Viewport
instance GObjectClass Viewport where
  toGObject = GObject . castForeignPtr . unViewport
  unsafeCastGObject = Viewport . castForeignPtr . unGObject

castToViewport :: GObjectClass obj => obj -> Viewport
castToViewport = castTo gTypeViewport "Viewport"

gTypeViewport :: GType
gTypeViewport =
  gtk_viewport_get_type
{-# LINE 2686 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Expander

newtype Expander = Expander (ForeignPtr (Expander)) deriving (Eq,Ord)

mkExpander = (Expander, objectUnrefFromMainloop)
unExpander (Expander o) = o

class BinClass o => ExpanderClass o
toExpander :: ExpanderClass o => o -> Expander
toExpander = unsafeCastGObject . toGObject

instance ExpanderClass Expander
instance BinClass Expander
instance ContainerClass Expander
instance WidgetClass Expander
instance GObjectClass Expander where
  toGObject = GObject . castForeignPtr . unExpander
  unsafeCastGObject = Expander . castForeignPtr . unGObject

castToExpander :: GObjectClass obj => obj -> Expander
castToExpander = castTo gTypeExpander "Expander"

gTypeExpander :: GType
gTypeExpander =
  gtk_expander_get_type
{-# LINE 2712 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* ComboBox

newtype ComboBox = ComboBox (ForeignPtr (ComboBox)) deriving (Eq,Ord)

mkComboBox = (ComboBox, objectUnrefFromMainloop)
unComboBox (ComboBox o) = o

class BinClass o => ComboBoxClass o
toComboBox :: ComboBoxClass o => o -> ComboBox
toComboBox = unsafeCastGObject . toGObject

instance ComboBoxClass ComboBox
instance BinClass ComboBox
instance ContainerClass ComboBox
instance WidgetClass ComboBox
instance GObjectClass ComboBox where
  toGObject = GObject . castForeignPtr . unComboBox
  unsafeCastGObject = ComboBox . castForeignPtr . unGObject

castToComboBox :: GObjectClass obj => obj -> ComboBox
castToComboBox = castTo gTypeComboBox "ComboBox"

gTypeComboBox :: GType
gTypeComboBox =
  gtk_combo_box_get_type
{-# LINE 2738 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* ToolItem

newtype ToolItem = ToolItem (ForeignPtr (ToolItem)) deriving (Eq,Ord)

mkToolItem = (ToolItem, objectUnrefFromMainloop)
unToolItem (ToolItem o) = o

class BinClass o => ToolItemClass o
toToolItem :: ToolItemClass o => o -> ToolItem
toToolItem = unsafeCastGObject . toGObject

instance ToolItemClass ToolItem
instance BinClass ToolItem
instance ContainerClass ToolItem
instance WidgetClass ToolItem
instance GObjectClass ToolItem where
  toGObject = GObject . castForeignPtr . unToolItem
  unsafeCastGObject = ToolItem . castForeignPtr . unGObject

castToToolItem :: GObjectClass obj => obj -> ToolItem
castToToolItem = castTo gTypeToolItem "ToolItem"

gTypeToolItem :: GType
gTypeToolItem =
  gtk_tool_item_get_type
{-# LINE 2764 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** ToolButton

newtype ToolButton = ToolButton (ForeignPtr (ToolButton)) deriving (Eq,Ord)

mkToolButton = (ToolButton, objectUnrefFromMainloop)
unToolButton (ToolButton o) = o

class ToolItemClass o => ToolButtonClass o
toToolButton :: ToolButtonClass o => o -> ToolButton
toToolButton = unsafeCastGObject . toGObject

instance ToolButtonClass ToolButton
instance ToolItemClass ToolButton
instance BinClass ToolButton
instance ContainerClass ToolButton
instance WidgetClass ToolButton
instance GObjectClass ToolButton where
  toGObject = GObject . castForeignPtr . unToolButton
  unsafeCastGObject = ToolButton . castForeignPtr . unGObject

castToToolButton :: GObjectClass obj => obj -> ToolButton
castToToolButton = castTo gTypeToolButton "ToolButton"

gTypeToolButton :: GType
gTypeToolButton =
  gtk_tool_button_get_type
{-# LINE 2791 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* MenuToolButton

newtype MenuToolButton = MenuToolButton (ForeignPtr (MenuToolButton)) deriving (Eq,Ord)

mkMenuToolButton = (MenuToolButton, objectUnrefFromMainloop)
unMenuToolButton (MenuToolButton o) = o

class ToolButtonClass o => MenuToolButtonClass o
toMenuToolButton :: MenuToolButtonClass o => o -> MenuToolButton
toMenuToolButton = unsafeCastGObject . toGObject

instance MenuToolButtonClass MenuToolButton
instance ToolButtonClass MenuToolButton
instance ToolItemClass MenuToolButton
instance BinClass MenuToolButton
instance ContainerClass MenuToolButton
instance WidgetClass MenuToolButton
instance GObjectClass MenuToolButton where
  toGObject = GObject . castForeignPtr . unMenuToolButton
  unsafeCastGObject = MenuToolButton . castForeignPtr . unGObject

castToMenuToolButton :: GObjectClass obj => obj -> MenuToolButton
castToMenuToolButton = castTo gTypeMenuToolButton "MenuToolButton"

gTypeMenuToolButton :: GType
gTypeMenuToolButton =
  gtk_menu_tool_button_get_type
{-# LINE 2819 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************** ToggleToolButton

newtype ToggleToolButton = ToggleToolButton (ForeignPtr (ToggleToolButton)) deriving (Eq,Ord)

mkToggleToolButton = (ToggleToolButton, objectUnrefFromMainloop)
unToggleToolButton (ToggleToolButton o) = o

class ToolButtonClass o => ToggleToolButtonClass o
toToggleToolButton :: ToggleToolButtonClass o => o -> ToggleToolButton
toToggleToolButton = unsafeCastGObject . toGObject

instance ToggleToolButtonClass ToggleToolButton
instance ToolButtonClass ToggleToolButton
instance ToolItemClass ToggleToolButton
instance BinClass ToggleToolButton
instance ContainerClass ToggleToolButton
instance WidgetClass ToggleToolButton
instance GObjectClass ToggleToolButton where
  toGObject = GObject . castForeignPtr . unToggleToolButton
  unsafeCastGObject = ToggleToolButton . castForeignPtr . unGObject

castToToggleToolButton :: GObjectClass obj => obj -> ToggleToolButton
castToToggleToolButton = castTo gTypeToggleToolButton "ToggleToolButton"

gTypeToggleToolButton :: GType
gTypeToggleToolButton =
  gtk_toggle_tool_button_get_type
{-# LINE 2847 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ RadioToolButton

newtype RadioToolButton = RadioToolButton (ForeignPtr (RadioToolButton)) deriving (Eq,Ord)

mkRadioToolButton = (RadioToolButton, objectUnrefFromMainloop)
unRadioToolButton (RadioToolButton o) = o

class ToggleToolButtonClass o => RadioToolButtonClass o
toRadioToolButton :: RadioToolButtonClass o => o -> RadioToolButton
toRadioToolButton = unsafeCastGObject . toGObject

instance RadioToolButtonClass RadioToolButton
instance ToggleToolButtonClass RadioToolButton
instance ToolButtonClass RadioToolButton
instance ToolItemClass RadioToolButton
instance BinClass RadioToolButton
instance ContainerClass RadioToolButton
instance WidgetClass RadioToolButton
instance GObjectClass RadioToolButton where
  toGObject = GObject . castForeignPtr . unRadioToolButton
  unsafeCastGObject = RadioToolButton . castForeignPtr . unGObject

castToRadioToolButton :: GObjectClass obj => obj -> RadioToolButton
castToRadioToolButton = castTo gTypeRadioToolButton "RadioToolButton"

gTypeRadioToolButton :: GType
gTypeRadioToolButton =
  gtk_radio_tool_button_get_type
{-# LINE 2876 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** SeparatorToolItem

newtype SeparatorToolItem = SeparatorToolItem (ForeignPtr (SeparatorToolItem)) deriving (Eq,Ord)

mkSeparatorToolItem = (SeparatorToolItem, objectUnrefFromMainloop)
unSeparatorToolItem (SeparatorToolItem o) = o

class ToolItemClass o => SeparatorToolItemClass o
toSeparatorToolItem :: SeparatorToolItemClass o => o -> SeparatorToolItem
toSeparatorToolItem = unsafeCastGObject . toGObject

instance SeparatorToolItemClass SeparatorToolItem
instance ToolItemClass SeparatorToolItem
instance BinClass SeparatorToolItem
instance ContainerClass SeparatorToolItem
instance WidgetClass SeparatorToolItem
instance GObjectClass SeparatorToolItem where
  toGObject = GObject . castForeignPtr . unSeparatorToolItem
  unsafeCastGObject = SeparatorToolItem . castForeignPtr . unGObject

castToSeparatorToolItem :: GObjectClass obj => obj -> SeparatorToolItem
castToSeparatorToolItem = castTo gTypeSeparatorToolItem "SeparatorToolItem"

gTypeSeparatorToolItem :: GType
gTypeSeparatorToolItem =
  gtk_separator_tool_item_get_type
{-# LINE 2903 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** StackSwitcher

newtype StackSwitcher = StackSwitcher (ForeignPtr (StackSwitcher)) deriving (Eq,Ord)

mkStackSwitcher = (StackSwitcher, objectUnrefFromMainloop)
unStackSwitcher (StackSwitcher o) = o

class BinClass o => StackSwitcherClass o
toStackSwitcher :: StackSwitcherClass o => o -> StackSwitcher
toStackSwitcher = unsafeCastGObject . toGObject

instance StackSwitcherClass StackSwitcher
instance BinClass StackSwitcher
instance ContainerClass StackSwitcher
instance WidgetClass StackSwitcher
instance GObjectClass StackSwitcher where
  toGObject = GObject . castForeignPtr . unStackSwitcher
  unsafeCastGObject = StackSwitcher . castForeignPtr . unGObject

castToStackSwitcher :: GObjectClass obj => obj -> StackSwitcher
castToStackSwitcher = castTo gTypeStackSwitcher "StackSwitcher"

gTypeStackSwitcher :: GType
gTypeStackSwitcher =
  gtk_stack_switcher_get_type
{-# LINE 2929 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************************ Box

newtype Box = Box (ForeignPtr (Box)) deriving (Eq,Ord)

mkBox = (Box, objectUnrefFromMainloop)
unBox (Box o) = o

class ContainerClass o => BoxClass o
toBox :: BoxClass o => o -> Box
toBox = unsafeCastGObject . toGObject

instance BoxClass Box
instance ContainerClass Box
instance WidgetClass Box
instance GObjectClass Box where
  toGObject = GObject . castForeignPtr . unBox
  unsafeCastGObject = Box . castForeignPtr . unGObject

castToBox :: GObjectClass obj => obj -> Box
castToBox = castTo gTypeBox "Box"

gTypeBox :: GType
gTypeBox =
  gtk_box_get_type
{-# LINE 2954 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** ButtonBox

newtype ButtonBox = ButtonBox (ForeignPtr (ButtonBox)) deriving (Eq,Ord)

mkButtonBox = (ButtonBox, objectUnrefFromMainloop)
unButtonBox (ButtonBox o) = o

class BoxClass o => ButtonBoxClass o
toButtonBox :: ButtonBoxClass o => o -> ButtonBox
toButtonBox = unsafeCastGObject . toGObject

instance ButtonBoxClass ButtonBox
instance BoxClass ButtonBox
instance ContainerClass ButtonBox
instance WidgetClass ButtonBox
instance GObjectClass ButtonBox where
  toGObject = GObject . castForeignPtr . unButtonBox
  unsafeCastGObject = ButtonBox . castForeignPtr . unGObject

castToButtonBox :: GObjectClass obj => obj -> ButtonBox
castToButtonBox = castTo gTypeButtonBox "ButtonBox"

gTypeButtonBox :: GType
gTypeButtonBox =
  gtk_button_box_get_type
{-# LINE 2980 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** HButtonBox

newtype HButtonBox = HButtonBox (ForeignPtr (HButtonBox)) deriving (Eq,Ord)

mkHButtonBox = (HButtonBox, objectUnrefFromMainloop)
unHButtonBox (HButtonBox o) = o

class ButtonBoxClass o => HButtonBoxClass o
toHButtonBox :: HButtonBoxClass o => o -> HButtonBox
toHButtonBox = unsafeCastGObject . toGObject

instance HButtonBoxClass HButtonBox
instance ButtonBoxClass HButtonBox
instance BoxClass HButtonBox
instance ContainerClass HButtonBox
instance WidgetClass HButtonBox
instance GObjectClass HButtonBox where
  toGObject = GObject . castForeignPtr . unHButtonBox
  unsafeCastGObject = HButtonBox . castForeignPtr . unGObject

castToHButtonBox :: GObjectClass obj => obj -> HButtonBox
castToHButtonBox = castTo gTypeHButtonBox "HButtonBox"

gTypeHButtonBox :: GType
gTypeHButtonBox =
  gtk_hbutton_box_get_type
{-# LINE 3007 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** VButtonBox

newtype VButtonBox = VButtonBox (ForeignPtr (VButtonBox)) deriving (Eq,Ord)

mkVButtonBox = (VButtonBox, objectUnrefFromMainloop)
unVButtonBox (VButtonBox o) = o

class ButtonBoxClass o => VButtonBoxClass o
toVButtonBox :: VButtonBoxClass o => o -> VButtonBox
toVButtonBox = unsafeCastGObject . toGObject

instance VButtonBoxClass VButtonBox
instance ButtonBoxClass VButtonBox
instance BoxClass VButtonBox
instance ContainerClass VButtonBox
instance WidgetClass VButtonBox
instance GObjectClass VButtonBox where
  toGObject = GObject . castForeignPtr . unVButtonBox
  unsafeCastGObject = VButtonBox . castForeignPtr . unGObject

castToVButtonBox :: GObjectClass obj => obj -> VButtonBox
castToVButtonBox = castTo gTypeVButtonBox "VButtonBox"

gTypeVButtonBox :: GType
gTypeVButtonBox =
  gtk_vbutton_box_get_type
{-# LINE 3034 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************************** VBox

newtype VBox = VBox (ForeignPtr (VBox)) deriving (Eq,Ord)

mkVBox = (VBox, objectUnrefFromMainloop)
unVBox (VBox o) = o

class BoxClass o => VBoxClass o
toVBox :: VBoxClass o => o -> VBox
toVBox = unsafeCastGObject . toGObject

instance VBoxClass VBox
instance BoxClass VBox
instance ContainerClass VBox
instance WidgetClass VBox
instance GObjectClass VBox where
  toGObject = GObject . castForeignPtr . unVBox
  unsafeCastGObject = VBox . castForeignPtr . unGObject

castToVBox :: GObjectClass obj => obj -> VBox
castToVBox = castTo gTypeVBox "VBox"

gTypeVBox :: GType
gTypeVBox =
  gtk_vbox_get_type
{-# LINE 3060 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************** RecentChooserWidget

newtype RecentChooserWidget = RecentChooserWidget (ForeignPtr (RecentChooserWidget)) deriving (Eq,Ord)

mkRecentChooserWidget = (RecentChooserWidget, objectUnrefFromMainloop)
unRecentChooserWidget (RecentChooserWidget o) = o

class VBoxClass o => RecentChooserWidgetClass o
toRecentChooserWidget :: RecentChooserWidgetClass o => o -> RecentChooserWidget
toRecentChooserWidget = unsafeCastGObject . toGObject

instance RecentChooserWidgetClass RecentChooserWidget
instance VBoxClass RecentChooserWidget
instance BoxClass RecentChooserWidget
instance ContainerClass RecentChooserWidget
instance WidgetClass RecentChooserWidget
instance GObjectClass RecentChooserWidget where
  toGObject = GObject . castForeignPtr . unRecentChooserWidget
  unsafeCastGObject = RecentChooserWidget . castForeignPtr . unGObject

castToRecentChooserWidget :: GObjectClass obj => obj -> RecentChooserWidget
castToRecentChooserWidget = castTo gTypeRecentChooserWidget "RecentChooserWidget"

gTypeRecentChooserWidget :: GType
gTypeRecentChooserWidget =
  gtk_recent_chooser_widget_get_type
{-# LINE 3087 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* ColorSelection

newtype ColorSelection = ColorSelection (ForeignPtr (ColorSelection)) deriving (Eq,Ord)

mkColorSelection = (ColorSelection, objectUnrefFromMainloop)
unColorSelection (ColorSelection o) = o

class VBoxClass o => ColorSelectionClass o
toColorSelection :: ColorSelectionClass o => o -> ColorSelection
toColorSelection = unsafeCastGObject . toGObject

instance ColorSelectionClass ColorSelection
instance VBoxClass ColorSelection
instance BoxClass ColorSelection
instance ContainerClass ColorSelection
instance WidgetClass ColorSelection
instance GObjectClass ColorSelection where
  toGObject = GObject . castForeignPtr . unColorSelection
  unsafeCastGObject = ColorSelection . castForeignPtr . unGObject

castToColorSelection :: GObjectClass obj => obj -> ColorSelection
castToColorSelection = castTo gTypeColorSelection "ColorSelection"

gTypeColorSelection :: GType
gTypeColorSelection =
  gtk_color_selection_get_type
{-# LINE 3114 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** FontSelection

newtype FontSelection = FontSelection (ForeignPtr (FontSelection)) deriving (Eq,Ord)

mkFontSelection = (FontSelection, objectUnrefFromMainloop)
unFontSelection (FontSelection o) = o

class VBoxClass o => FontSelectionClass o
toFontSelection :: FontSelectionClass o => o -> FontSelection
toFontSelection = unsafeCastGObject . toGObject

instance FontSelectionClass FontSelection
instance VBoxClass FontSelection
instance BoxClass FontSelection
instance ContainerClass FontSelection
instance WidgetClass FontSelection
instance GObjectClass FontSelection where
  toGObject = GObject . castForeignPtr . unFontSelection
  unsafeCastGObject = FontSelection . castForeignPtr . unGObject

castToFontSelection :: GObjectClass obj => obj -> FontSelection
castToFontSelection = castTo gTypeFontSelection "FontSelection"

gTypeFontSelection :: GType
gTypeFontSelection =
  gtk_font_selection_get_type
{-# LINE 3141 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** FileChooserWidget

newtype FileChooserWidget = FileChooserWidget (ForeignPtr (FileChooserWidget)) deriving (Eq,Ord)

mkFileChooserWidget = (FileChooserWidget, objectUnrefFromMainloop)
unFileChooserWidget (FileChooserWidget o) = o

class VBoxClass o => FileChooserWidgetClass o
toFileChooserWidget :: FileChooserWidgetClass o => o -> FileChooserWidget
toFileChooserWidget = unsafeCastGObject . toGObject

instance FileChooserWidgetClass FileChooserWidget
instance VBoxClass FileChooserWidget
instance BoxClass FileChooserWidget
instance ContainerClass FileChooserWidget
instance WidgetClass FileChooserWidget
instance GObjectClass FileChooserWidget where
  toGObject = GObject . castForeignPtr . unFileChooserWidget
  unsafeCastGObject = FileChooserWidget . castForeignPtr . unGObject

castToFileChooserWidget :: GObjectClass obj => obj -> FileChooserWidget
castToFileChooserWidget = castTo gTypeFileChooserWidget "FileChooserWidget"

gTypeFileChooserWidget :: GType
gTypeFileChooserWidget =
  gtk_file_chooser_widget_get_type
{-# LINE 3168 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************************** HBox

newtype HBox = HBox (ForeignPtr (HBox)) deriving (Eq,Ord)

mkHBox = (HBox, objectUnrefFromMainloop)
unHBox (HBox o) = o

class BoxClass o => HBoxClass o
toHBox :: HBoxClass o => o -> HBox
toHBox = unsafeCastGObject . toGObject

instance HBoxClass HBox
instance BoxClass HBox
instance ContainerClass HBox
instance WidgetClass HBox
instance GObjectClass HBox where
  toGObject = GObject . castForeignPtr . unHBox
  unsafeCastGObject = HBox . castForeignPtr . unGObject

castToHBox :: GObjectClass obj => obj -> HBox
castToHBox = castTo gTypeHBox "HBox"

gTypeHBox :: GType
gTypeHBox =
  gtk_hbox_get_type
{-# LINE 3194 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** InfoBar

newtype InfoBar = InfoBar (ForeignPtr (InfoBar)) deriving (Eq,Ord)

mkInfoBar = (InfoBar, objectUnrefFromMainloop)
unInfoBar (InfoBar o) = o

class HBoxClass o => InfoBarClass o
toInfoBar :: InfoBarClass o => o -> InfoBar
toInfoBar = unsafeCastGObject . toGObject

instance InfoBarClass InfoBar
instance HBoxClass InfoBar
instance BoxClass InfoBar
instance ContainerClass InfoBar
instance WidgetClass InfoBar
instance GObjectClass InfoBar where
  toGObject = GObject . castForeignPtr . unInfoBar
  unsafeCastGObject = InfoBar . castForeignPtr . unGObject

castToInfoBar :: GObjectClass obj => obj -> InfoBar
castToInfoBar = castTo gTypeInfoBar "InfoBar"

gTypeInfoBar :: GType
gTypeInfoBar =
  gtk_info_bar_get_type
{-# LINE 3221 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** FileChooserButton

newtype FileChooserButton = FileChooserButton (ForeignPtr (FileChooserButton)) deriving (Eq,Ord)

mkFileChooserButton = (FileChooserButton, objectUnrefFromMainloop)
unFileChooserButton (FileChooserButton o) = o

class HBoxClass o => FileChooserButtonClass o
toFileChooserButton :: FileChooserButtonClass o => o -> FileChooserButton
toFileChooserButton = unsafeCastGObject . toGObject

instance FileChooserButtonClass FileChooserButton
instance HBoxClass FileChooserButton
instance BoxClass FileChooserButton
instance ContainerClass FileChooserButton
instance WidgetClass FileChooserButton
instance GObjectClass FileChooserButton where
  toGObject = GObject . castForeignPtr . unFileChooserButton
  unsafeCastGObject = FileChooserButton . castForeignPtr . unGObject

castToFileChooserButton :: GObjectClass obj => obj -> FileChooserButton
castToFileChooserButton = castTo gTypeFileChooserButton "FileChooserButton"

gTypeFileChooserButton :: GType
gTypeFileChooserButton =
  gtk_file_chooser_button_get_type
{-# LINE 3248 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Statusbar

newtype Statusbar = Statusbar (ForeignPtr (Statusbar)) deriving (Eq,Ord)

mkStatusbar = (Statusbar, objectUnrefFromMainloop)
unStatusbar (Statusbar o) = o

class HBoxClass o => StatusbarClass o
toStatusbar :: StatusbarClass o => o -> Statusbar
toStatusbar = unsafeCastGObject . toGObject

instance StatusbarClass Statusbar
instance HBoxClass Statusbar
instance BoxClass Statusbar
instance ContainerClass Statusbar
instance WidgetClass Statusbar
instance GObjectClass Statusbar where
  toGObject = GObject . castForeignPtr . unStatusbar
  unsafeCastGObject = Statusbar . castForeignPtr . unGObject

castToStatusbar :: GObjectClass obj => obj -> Statusbar
castToStatusbar = castTo gTypeStatusbar "Statusbar"

gTypeStatusbar :: GType
gTypeStatusbar =
  gtk_statusbar_get_type
{-# LINE 3275 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************************** Grid

newtype Grid = Grid (ForeignPtr (Grid)) deriving (Eq,Ord)

mkGrid = (Grid, objectUnrefFromMainloop)
unGrid (Grid o) = o

class ContainerClass o => GridClass o
toGrid :: GridClass o => o -> Grid
toGrid = unsafeCastGObject . toGObject

instance GridClass Grid
instance ContainerClass Grid
instance WidgetClass Grid
instance GObjectClass Grid where
  toGObject = GObject . castForeignPtr . unGrid
  unsafeCastGObject = Grid . castForeignPtr . unGObject

castToGrid :: GObjectClass obj => obj -> Grid
castToGrid = castTo gTypeGrid "Grid"

gTypeGrid :: GType
gTypeGrid =
  gtk_grid_get_type
{-# LINE 3300 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Fixed

newtype Fixed = Fixed (ForeignPtr (Fixed)) deriving (Eq,Ord)

mkFixed = (Fixed, objectUnrefFromMainloop)
unFixed (Fixed o) = o

class ContainerClass o => FixedClass o
toFixed :: FixedClass o => o -> Fixed
toFixed = unsafeCastGObject . toGObject

instance FixedClass Fixed
instance ContainerClass Fixed
instance WidgetClass Fixed
instance GObjectClass Fixed where
  toGObject = GObject . castForeignPtr . unFixed
  unsafeCastGObject = Fixed . castForeignPtr . unGObject

castToFixed :: GObjectClass obj => obj -> Fixed
castToFixed = castTo gTypeFixed "Fixed"

gTypeFixed :: GType
gTypeFixed =
  gtk_fixed_get_type
{-# LINE 3325 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Paned

newtype Paned = Paned (ForeignPtr (Paned)) deriving (Eq,Ord)

mkPaned = (Paned, objectUnrefFromMainloop)
unPaned (Paned o) = o

class ContainerClass o => PanedClass o
toPaned :: PanedClass o => o -> Paned
toPaned = unsafeCastGObject . toGObject

instance PanedClass Paned
instance ContainerClass Paned
instance WidgetClass Paned
instance GObjectClass Paned where
  toGObject = GObject . castForeignPtr . unPaned
  unsafeCastGObject = Paned . castForeignPtr . unGObject

castToPaned :: GObjectClass obj => obj -> Paned
castToPaned = castTo gTypePaned "Paned"

gTypePaned :: GType
gTypePaned =
  gtk_paned_get_type
{-# LINE 3350 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* HPaned

newtype HPaned = HPaned (ForeignPtr (HPaned)) deriving (Eq,Ord)

mkHPaned = (HPaned, objectUnrefFromMainloop)
unHPaned (HPaned o) = o

class PanedClass o => HPanedClass o
toHPaned :: HPanedClass o => o -> HPaned
toHPaned = unsafeCastGObject . toGObject

instance HPanedClass HPaned
instance PanedClass HPaned
instance ContainerClass HPaned
instance WidgetClass HPaned
instance GObjectClass HPaned where
  toGObject = GObject . castForeignPtr . unHPaned
  unsafeCastGObject = HPaned . castForeignPtr . unGObject

castToHPaned :: GObjectClass obj => obj -> HPaned
castToHPaned = castTo gTypeHPaned "HPaned"

gTypeHPaned :: GType
gTypeHPaned =
  gtk_hpaned_get_type
{-# LINE 3376 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* VPaned

newtype VPaned = VPaned (ForeignPtr (VPaned)) deriving (Eq,Ord)

mkVPaned = (VPaned, objectUnrefFromMainloop)
unVPaned (VPaned o) = o

class PanedClass o => VPanedClass o
toVPaned :: VPanedClass o => o -> VPaned
toVPaned = unsafeCastGObject . toGObject

instance VPanedClass VPaned
instance PanedClass VPaned
instance ContainerClass VPaned
instance WidgetClass VPaned
instance GObjectClass VPaned where
  toGObject = GObject . castForeignPtr . unVPaned
  unsafeCastGObject = VPaned . castForeignPtr . unGObject

castToVPaned :: GObjectClass obj => obj -> VPaned
castToVPaned = castTo gTypeVPaned "VPaned"

gTypeVPaned :: GType
gTypeVPaned =
  gtk_vpaned_get_type
{-# LINE 3402 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* IconView

newtype IconView = IconView (ForeignPtr (IconView)) deriving (Eq,Ord)

mkIconView = (IconView, objectUnrefFromMainloop)
unIconView (IconView o) = o

class ContainerClass o => IconViewClass o
toIconView :: IconViewClass o => o -> IconView
toIconView = unsafeCastGObject . toGObject

instance IconViewClass IconView
instance ContainerClass IconView
instance WidgetClass IconView
instance GObjectClass IconView where
  toGObject = GObject . castForeignPtr . unIconView
  unsafeCastGObject = IconView . castForeignPtr . unGObject

castToIconView :: GObjectClass obj => obj -> IconView
castToIconView = castTo gTypeIconView "IconView"

gTypeIconView :: GType
gTypeIconView =
  gtk_icon_view_get_type
{-# LINE 3427 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Layout

newtype Layout = Layout (ForeignPtr (Layout)) deriving (Eq,Ord)

mkLayout = (Layout, objectUnrefFromMainloop)
unLayout (Layout o) = o

class ContainerClass o => LayoutClass o
toLayout :: LayoutClass o => o -> Layout
toLayout = unsafeCastGObject . toGObject

instance LayoutClass Layout
instance ContainerClass Layout
instance WidgetClass Layout
instance GObjectClass Layout where
  toGObject = GObject . castForeignPtr . unLayout
  unsafeCastGObject = Layout . castForeignPtr . unGObject

castToLayout :: GObjectClass obj => obj -> Layout
castToLayout = castTo gTypeLayout "Layout"

gTypeLayout :: GType
gTypeLayout =
  gtk_layout_get_type
{-# LINE 3452 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** MenuShell

newtype MenuShell = MenuShell (ForeignPtr (MenuShell)) deriving (Eq,Ord)

mkMenuShell = (MenuShell, objectUnrefFromMainloop)
unMenuShell (MenuShell o) = o

class ContainerClass o => MenuShellClass o
toMenuShell :: MenuShellClass o => o -> MenuShell
toMenuShell = unsafeCastGObject . toGObject

instance MenuShellClass MenuShell
instance ContainerClass MenuShell
instance WidgetClass MenuShell
instance GObjectClass MenuShell where
  toGObject = GObject . castForeignPtr . unMenuShell
  unsafeCastGObject = MenuShell . castForeignPtr . unGObject

castToMenuShell :: GObjectClass obj => obj -> MenuShell
castToMenuShell = castTo gTypeMenuShell "MenuShell"

gTypeMenuShell :: GType
gTypeMenuShell =
  gtk_menu_shell_get_type
{-# LINE 3477 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************************** Menu

newtype Menu = Menu (ForeignPtr (Menu)) deriving (Eq,Ord)

mkMenu = (Menu, objectUnrefFromMainloop)
unMenu (Menu o) = o

class MenuShellClass o => MenuClass o
toMenu :: MenuClass o => o -> Menu
toMenu = unsafeCastGObject . toGObject

instance MenuClass Menu
instance MenuShellClass Menu
instance ContainerClass Menu
instance WidgetClass Menu
instance GObjectClass Menu where
  toGObject = GObject . castForeignPtr . unMenu
  unsafeCastGObject = Menu . castForeignPtr . unGObject

castToMenu :: GObjectClass obj => obj -> Menu
castToMenu = castTo gTypeMenu "Menu"

gTypeMenu :: GType
gTypeMenu =
  gtk_menu_get_type
{-# LINE 3503 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** RecentChooserMenu

newtype RecentChooserMenu = RecentChooserMenu (ForeignPtr (RecentChooserMenu)) deriving (Eq,Ord)

mkRecentChooserMenu = (RecentChooserMenu, objectUnrefFromMainloop)
unRecentChooserMenu (RecentChooserMenu o) = o

class MenuClass o => RecentChooserMenuClass o
toRecentChooserMenu :: RecentChooserMenuClass o => o -> RecentChooserMenu
toRecentChooserMenu = unsafeCastGObject . toGObject

instance RecentChooserMenuClass RecentChooserMenu
instance MenuClass RecentChooserMenu
instance MenuShellClass RecentChooserMenu
instance ContainerClass RecentChooserMenu
instance WidgetClass RecentChooserMenu
instance GObjectClass RecentChooserMenu where
  toGObject = GObject . castForeignPtr . unRecentChooserMenu
  unsafeCastGObject = RecentChooserMenu . castForeignPtr . unGObject

castToRecentChooserMenu :: GObjectClass obj => obj -> RecentChooserMenu
castToRecentChooserMenu = castTo gTypeRecentChooserMenu "RecentChooserMenu"

gTypeRecentChooserMenu :: GType
gTypeRecentChooserMenu =
  gtk_recent_chooser_menu_get_type
{-# LINE 3530 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** MenuBar

newtype MenuBar = MenuBar (ForeignPtr (MenuBar)) deriving (Eq,Ord)

mkMenuBar = (MenuBar, objectUnrefFromMainloop)
unMenuBar (MenuBar o) = o

class MenuShellClass o => MenuBarClass o
toMenuBar :: MenuBarClass o => o -> MenuBar
toMenuBar = unsafeCastGObject . toGObject

instance MenuBarClass MenuBar
instance MenuShellClass MenuBar
instance ContainerClass MenuBar
instance WidgetClass MenuBar
instance GObjectClass MenuBar where
  toGObject = GObject . castForeignPtr . unMenuBar
  unsafeCastGObject = MenuBar . castForeignPtr . unGObject

castToMenuBar :: GObjectClass obj => obj -> MenuBar
castToMenuBar = castTo gTypeMenuBar "MenuBar"

gTypeMenuBar :: GType
gTypeMenuBar =
  gtk_menu_bar_get_type
{-# LINE 3556 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Notebook

newtype Notebook = Notebook (ForeignPtr (Notebook)) deriving (Eq,Ord)

mkNotebook = (Notebook, objectUnrefFromMainloop)
unNotebook (Notebook o) = o

class ContainerClass o => NotebookClass o
toNotebook :: NotebookClass o => o -> Notebook
toNotebook = unsafeCastGObject . toGObject

instance NotebookClass Notebook
instance ContainerClass Notebook
instance WidgetClass Notebook
instance GObjectClass Notebook where
  toGObject = GObject . castForeignPtr . unNotebook
  unsafeCastGObject = Notebook . castForeignPtr . unGObject

castToNotebook :: GObjectClass obj => obj -> Notebook
castToNotebook = castTo gTypeNotebook "Notebook"

gTypeNotebook :: GType
gTypeNotebook =
  gtk_notebook_get_type
{-# LINE 3581 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Table

newtype Table = Table (ForeignPtr (Table)) deriving (Eq,Ord)

mkTable = (Table, objectUnrefFromMainloop)
unTable (Table o) = o

class ContainerClass o => TableClass o
toTable :: TableClass o => o -> Table
toTable = unsafeCastGObject . toGObject

instance TableClass Table
instance ContainerClass Table
instance WidgetClass Table
instance GObjectClass Table where
  toGObject = GObject . castForeignPtr . unTable
  unsafeCastGObject = Table . castForeignPtr . unGObject

castToTable :: GObjectClass obj => obj -> Table
castToTable = castTo gTypeTable "Table"

gTypeTable :: GType
gTypeTable =
  gtk_table_get_type
{-# LINE 3606 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* TextView

newtype TextView = TextView (ForeignPtr (TextView)) deriving (Eq,Ord)

mkTextView = (TextView, objectUnrefFromMainloop)
unTextView (TextView o) = o

class ContainerClass o => TextViewClass o
toTextView :: TextViewClass o => o -> TextView
toTextView = unsafeCastGObject . toGObject

instance TextViewClass TextView
instance ContainerClass TextView
instance WidgetClass TextView
instance GObjectClass TextView where
  toGObject = GObject . castForeignPtr . unTextView
  unsafeCastGObject = TextView . castForeignPtr . unGObject

castToTextView :: GObjectClass obj => obj -> TextView
castToTextView = castTo gTypeTextView "TextView"

gTypeTextView :: GType
gTypeTextView =
  gtk_text_view_get_type
{-# LINE 3631 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Toolbar

newtype Toolbar = Toolbar (ForeignPtr (Toolbar)) deriving (Eq,Ord)

mkToolbar = (Toolbar, objectUnrefFromMainloop)
unToolbar (Toolbar o) = o

class ContainerClass o => ToolbarClass o
toToolbar :: ToolbarClass o => o -> Toolbar
toToolbar = unsafeCastGObject . toGObject

instance ToolbarClass Toolbar
instance ContainerClass Toolbar
instance WidgetClass Toolbar
instance GObjectClass Toolbar where
  toGObject = GObject . castForeignPtr . unToolbar
  unsafeCastGObject = Toolbar . castForeignPtr . unGObject

castToToolbar :: GObjectClass obj => obj -> Toolbar
castToToolbar = castTo gTypeToolbar "Toolbar"

gTypeToolbar :: GType
gTypeToolbar =
  gtk_toolbar_get_type
{-# LINE 3656 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* TreeView

newtype TreeView = TreeView (ForeignPtr (TreeView)) deriving (Eq,Ord)

mkTreeView = (TreeView, objectUnrefFromMainloop)
unTreeView (TreeView o) = o

class ContainerClass o => TreeViewClass o
toTreeView :: TreeViewClass o => o -> TreeView
toTreeView = unsafeCastGObject . toGObject

instance TreeViewClass TreeView
instance ContainerClass TreeView
instance WidgetClass TreeView
instance GObjectClass TreeView where
  toGObject = GObject . castForeignPtr . unTreeView
  unsafeCastGObject = TreeView . castForeignPtr . unGObject

castToTreeView :: GObjectClass obj => obj -> TreeView
castToTreeView = castTo gTypeTreeView "TreeView"

gTypeTreeView :: GType
gTypeTreeView =
  gtk_tree_view_get_type
{-# LINE 3681 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Calendar

newtype Calendar = Calendar (ForeignPtr (Calendar)) deriving (Eq,Ord)

mkCalendar = (Calendar, objectUnrefFromMainloop)
unCalendar (Calendar o) = o

class WidgetClass o => CalendarClass o
toCalendar :: CalendarClass o => o -> Calendar
toCalendar = unsafeCastGObject . toGObject

instance CalendarClass Calendar
instance WidgetClass Calendar
instance GObjectClass Calendar where
  toGObject = GObject . castForeignPtr . unCalendar
  unsafeCastGObject = Calendar . castForeignPtr . unGObject

castToCalendar :: GObjectClass obj => obj -> Calendar
castToCalendar = castTo gTypeCalendar "Calendar"

gTypeCalendar :: GType
gTypeCalendar =
  gtk_calendar_get_type
{-# LINE 3705 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* CellView

newtype CellView = CellView (ForeignPtr (CellView)) deriving (Eq,Ord)

mkCellView = (CellView, objectUnrefFromMainloop)
unCellView (CellView o) = o

class WidgetClass o => CellViewClass o
toCellView :: CellViewClass o => o -> CellView
toCellView = unsafeCastGObject . toGObject

instance CellViewClass CellView
instance WidgetClass CellView
instance GObjectClass CellView where
  toGObject = GObject . castForeignPtr . unCellView
  unsafeCastGObject = CellView . castForeignPtr . unGObject

castToCellView :: GObjectClass obj => obj -> CellView
castToCellView = castTo gTypeCellView "CellView"

gTypeCellView :: GType
gTypeCellView =
  gtk_cell_view_get_type
{-# LINE 3729 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** DrawingArea

newtype DrawingArea = DrawingArea (ForeignPtr (DrawingArea)) deriving (Eq,Ord)

mkDrawingArea = (DrawingArea, objectUnrefFromMainloop)
unDrawingArea (DrawingArea o) = o

class WidgetClass o => DrawingAreaClass o
toDrawingArea :: DrawingAreaClass o => o -> DrawingArea
toDrawingArea = unsafeCastGObject . toGObject

instance DrawingAreaClass DrawingArea
instance WidgetClass DrawingArea
instance GObjectClass DrawingArea where
  toGObject = GObject . castForeignPtr . unDrawingArea
  unsafeCastGObject = DrawingArea . castForeignPtr . unGObject

castToDrawingArea :: GObjectClass obj => obj -> DrawingArea
castToDrawingArea = castTo gTypeDrawingArea "DrawingArea"

gTypeDrawingArea :: GType
gTypeDrawingArea =
  gtk_drawing_area_get_type
{-# LINE 3753 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Spinner

newtype Spinner = Spinner (ForeignPtr (Spinner)) deriving (Eq,Ord)

mkSpinner = (Spinner, objectUnrefFromMainloop)
unSpinner (Spinner o) = o

class DrawingAreaClass o => SpinnerClass o
toSpinner :: SpinnerClass o => o -> Spinner
toSpinner = unsafeCastGObject . toGObject

instance SpinnerClass Spinner
instance DrawingAreaClass Spinner
instance WidgetClass Spinner
instance GObjectClass Spinner where
  toGObject = GObject . castForeignPtr . unSpinner
  unsafeCastGObject = Spinner . castForeignPtr . unGObject

castToSpinner :: GObjectClass obj => obj -> Spinner
castToSpinner = castTo gTypeSpinner "Spinner"

gTypeSpinner :: GType
gTypeSpinner =
  gtk_spinner_get_type
{-# LINE 3778 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Entry

newtype Entry = Entry (ForeignPtr (Entry)) deriving (Eq,Ord)

mkEntry = (Entry, objectUnrefFromMainloop)
unEntry (Entry o) = o

class WidgetClass o => EntryClass o
toEntry :: EntryClass o => o -> Entry
toEntry = unsafeCastGObject . toGObject

instance EntryClass Entry
instance WidgetClass Entry
instance GObjectClass Entry where
  toGObject = GObject . castForeignPtr . unEntry
  unsafeCastGObject = Entry . castForeignPtr . unGObject

castToEntry :: GObjectClass obj => obj -> Entry
castToEntry = castTo gTypeEntry "Entry"

gTypeEntry :: GType
gTypeEntry =
  gtk_entry_get_type
{-# LINE 3802 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** SpinButton

newtype SpinButton = SpinButton (ForeignPtr (SpinButton)) deriving (Eq,Ord)

mkSpinButton = (SpinButton, objectUnrefFromMainloop)
unSpinButton (SpinButton o) = o

class EntryClass o => SpinButtonClass o
toSpinButton :: SpinButtonClass o => o -> SpinButton
toSpinButton = unsafeCastGObject . toGObject

instance SpinButtonClass SpinButton
instance EntryClass SpinButton
instance WidgetClass SpinButton
instance GObjectClass SpinButton where
  toGObject = GObject . castForeignPtr . unSpinButton
  unsafeCastGObject = SpinButton . castForeignPtr . unGObject

castToSpinButton :: GObjectClass obj => obj -> SpinButton
castToSpinButton = castTo gTypeSpinButton "SpinButton"

gTypeSpinButton :: GType
gTypeSpinButton =
  gtk_spin_button_get_type
{-# LINE 3827 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Range

newtype Range = Range (ForeignPtr (Range)) deriving (Eq,Ord)

mkRange = (Range, objectUnrefFromMainloop)
unRange (Range o) = o

class WidgetClass o => RangeClass o
toRange :: RangeClass o => o -> Range
toRange = unsafeCastGObject . toGObject

instance RangeClass Range
instance WidgetClass Range
instance GObjectClass Range where
  toGObject = GObject . castForeignPtr . unRange
  unsafeCastGObject = Range . castForeignPtr . unGObject

castToRange :: GObjectClass obj => obj -> Range
castToRange = castTo gTypeRange "Range"

gTypeRange :: GType
gTypeRange =
  gtk_range_get_type
{-# LINE 3851 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************** Scale

newtype Scale = Scale (ForeignPtr (Scale)) deriving (Eq,Ord)

mkScale = (Scale, objectUnrefFromMainloop)
unScale (Scale o) = o

class RangeClass o => ScaleClass o
toScale :: ScaleClass o => o -> Scale
toScale = unsafeCastGObject . toGObject

instance ScaleClass Scale
instance RangeClass Scale
instance WidgetClass Scale
instance GObjectClass Scale where
  toGObject = GObject . castForeignPtr . unScale
  unsafeCastGObject = Scale . castForeignPtr . unGObject

castToScale :: GObjectClass obj => obj -> Scale
castToScale = castTo gTypeScale "Scale"

gTypeScale :: GType
gTypeScale =
  gtk_scale_get_type
{-# LINE 3876 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* HScale

newtype HScale = HScale (ForeignPtr (HScale)) deriving (Eq,Ord)

mkHScale = (HScale, objectUnrefFromMainloop)
unHScale (HScale o) = o

class ScaleClass o => HScaleClass o
toHScale :: HScaleClass o => o -> HScale
toHScale = unsafeCastGObject . toGObject

instance HScaleClass HScale
instance ScaleClass HScale
instance RangeClass HScale
instance WidgetClass HScale
instance GObjectClass HScale where
  toGObject = GObject . castForeignPtr . unHScale
  unsafeCastGObject = HScale . castForeignPtr . unGObject

castToHScale :: GObjectClass obj => obj -> HScale
castToHScale = castTo gTypeHScale "HScale"

gTypeHScale :: GType
gTypeHScale =
  gtk_hscale_get_type
{-# LINE 3902 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* VScale

newtype VScale = VScale (ForeignPtr (VScale)) deriving (Eq,Ord)

mkVScale = (VScale, objectUnrefFromMainloop)
unVScale (VScale o) = o

class ScaleClass o => VScaleClass o
toVScale :: VScaleClass o => o -> VScale
toVScale = unsafeCastGObject . toGObject

instance VScaleClass VScale
instance ScaleClass VScale
instance RangeClass VScale
instance WidgetClass VScale
instance GObjectClass VScale where
  toGObject = GObject . castForeignPtr . unVScale
  unsafeCastGObject = VScale . castForeignPtr . unGObject

castToVScale :: GObjectClass obj => obj -> VScale
castToVScale = castTo gTypeVScale "VScale"

gTypeVScale :: GType
gTypeVScale =
  gtk_vscale_get_type
{-# LINE 3928 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Scrollbar

newtype Scrollbar = Scrollbar (ForeignPtr (Scrollbar)) deriving (Eq,Ord)

mkScrollbar = (Scrollbar, objectUnrefFromMainloop)
unScrollbar (Scrollbar o) = o

class RangeClass o => ScrollbarClass o
toScrollbar :: ScrollbarClass o => o -> Scrollbar
toScrollbar = unsafeCastGObject . toGObject

instance ScrollbarClass Scrollbar
instance RangeClass Scrollbar
instance WidgetClass Scrollbar
instance GObjectClass Scrollbar where
  toGObject = GObject . castForeignPtr . unScrollbar
  unsafeCastGObject = Scrollbar . castForeignPtr . unGObject

castToScrollbar :: GObjectClass obj => obj -> Scrollbar
castToScrollbar = castTo gTypeScrollbar "Scrollbar"

gTypeScrollbar :: GType
gTypeScrollbar =
  gtk_scrollbar_get_type
{-# LINE 3953 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** HScrollbar

newtype HScrollbar = HScrollbar (ForeignPtr (HScrollbar)) deriving (Eq,Ord)

mkHScrollbar = (HScrollbar, objectUnrefFromMainloop)
unHScrollbar (HScrollbar o) = o

class ScrollbarClass o => HScrollbarClass o
toHScrollbar :: HScrollbarClass o => o -> HScrollbar
toHScrollbar = unsafeCastGObject . toGObject

instance HScrollbarClass HScrollbar
instance ScrollbarClass HScrollbar
instance RangeClass HScrollbar
instance WidgetClass HScrollbar
instance GObjectClass HScrollbar where
  toGObject = GObject . castForeignPtr . unHScrollbar
  unsafeCastGObject = HScrollbar . castForeignPtr . unGObject

castToHScrollbar :: GObjectClass obj => obj -> HScrollbar
castToHScrollbar = castTo gTypeHScrollbar "HScrollbar"

gTypeHScrollbar :: GType
gTypeHScrollbar =
  gtk_hscrollbar_get_type
{-# LINE 3979 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** VScrollbar

newtype VScrollbar = VScrollbar (ForeignPtr (VScrollbar)) deriving (Eq,Ord)

mkVScrollbar = (VScrollbar, objectUnrefFromMainloop)
unVScrollbar (VScrollbar o) = o

class ScrollbarClass o => VScrollbarClass o
toVScrollbar :: VScrollbarClass o => o -> VScrollbar
toVScrollbar = unsafeCastGObject . toGObject

instance VScrollbarClass VScrollbar
instance ScrollbarClass VScrollbar
instance RangeClass VScrollbar
instance WidgetClass VScrollbar
instance GObjectClass VScrollbar where
  toGObject = GObject . castForeignPtr . unVScrollbar
  unsafeCastGObject = VScrollbar . castForeignPtr . unGObject

castToVScrollbar :: GObjectClass obj => obj -> VScrollbar
castToVScrollbar = castTo gTypeVScrollbar "VScrollbar"

gTypeVScrollbar :: GType
gTypeVScrollbar =
  gtk_vscrollbar_get_type
{-# LINE 4005 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Separator

newtype Separator = Separator (ForeignPtr (Separator)) deriving (Eq,Ord)

mkSeparator = (Separator, objectUnrefFromMainloop)
unSeparator (Separator o) = o

class WidgetClass o => SeparatorClass o
toSeparator :: SeparatorClass o => o -> Separator
toSeparator = unsafeCastGObject . toGObject

instance SeparatorClass Separator
instance WidgetClass Separator
instance GObjectClass Separator where
  toGObject = GObject . castForeignPtr . unSeparator
  unsafeCastGObject = Separator . castForeignPtr . unGObject

castToSeparator :: GObjectClass obj => obj -> Separator
castToSeparator = castTo gTypeSeparator "Separator"

gTypeSeparator :: GType
gTypeSeparator =
  gtk_separator_get_type
{-# LINE 4029 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** HSeparator

newtype HSeparator = HSeparator (ForeignPtr (HSeparator)) deriving (Eq,Ord)

mkHSeparator = (HSeparator, objectUnrefFromMainloop)
unHSeparator (HSeparator o) = o

class SeparatorClass o => HSeparatorClass o
toHSeparator :: HSeparatorClass o => o -> HSeparator
toHSeparator = unsafeCastGObject . toGObject

instance HSeparatorClass HSeparator
instance SeparatorClass HSeparator
instance WidgetClass HSeparator
instance GObjectClass HSeparator where
  toGObject = GObject . castForeignPtr . unHSeparator
  unsafeCastGObject = HSeparator . castForeignPtr . unGObject

castToHSeparator :: GObjectClass obj => obj -> HSeparator
castToHSeparator = castTo gTypeHSeparator "HSeparator"

gTypeHSeparator :: GType
gTypeHSeparator =
  gtk_hseparator_get_type
{-# LINE 4054 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** VSeparator

newtype VSeparator = VSeparator (ForeignPtr (VSeparator)) deriving (Eq,Ord)

mkVSeparator = (VSeparator, objectUnrefFromMainloop)
unVSeparator (VSeparator o) = o

class SeparatorClass o => VSeparatorClass o
toVSeparator :: VSeparatorClass o => o -> VSeparator
toVSeparator = unsafeCastGObject . toGObject

instance VSeparatorClass VSeparator
instance SeparatorClass VSeparator
instance WidgetClass VSeparator
instance GObjectClass VSeparator where
  toGObject = GObject . castForeignPtr . unVSeparator
  unsafeCastGObject = VSeparator . castForeignPtr . unGObject

castToVSeparator :: GObjectClass obj => obj -> VSeparator
castToVSeparator = castTo gTypeVSeparator "VSeparator"

gTypeVSeparator :: GType
gTypeVSeparator =
  gtk_vseparator_get_type
{-# LINE 4079 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Invisible

newtype Invisible = Invisible (ForeignPtr (Invisible)) deriving (Eq,Ord)

mkInvisible = (Invisible, objectUnrefFromMainloop)
unInvisible (Invisible o) = o

class WidgetClass o => InvisibleClass o
toInvisible :: InvisibleClass o => o -> Invisible
toInvisible = unsafeCastGObject . toGObject

instance InvisibleClass Invisible
instance WidgetClass Invisible
instance GObjectClass Invisible where
  toGObject = GObject . castForeignPtr . unInvisible
  unsafeCastGObject = Invisible . castForeignPtr . unGObject

castToInvisible :: GObjectClass obj => obj -> Invisible
castToInvisible = castTo gTypeInvisible "Invisible"

gTypeInvisible :: GType
gTypeInvisible =
  gtk_invisible_get_type
{-# LINE 4103 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** ProgressBar

newtype ProgressBar = ProgressBar (ForeignPtr (ProgressBar)) deriving (Eq,Ord)

mkProgressBar = (ProgressBar, objectUnrefFromMainloop)
unProgressBar (ProgressBar o) = o

class WidgetClass o => ProgressBarClass o
toProgressBar :: ProgressBarClass o => o -> ProgressBar
toProgressBar = unsafeCastGObject . toGObject

instance ProgressBarClass ProgressBar
instance WidgetClass ProgressBar
instance GObjectClass ProgressBar where
  toGObject = GObject . castForeignPtr . unProgressBar
  unsafeCastGObject = ProgressBar . castForeignPtr . unGObject

castToProgressBar :: GObjectClass obj => obj -> ProgressBar
castToProgressBar = castTo gTypeProgressBar "ProgressBar"

gTypeProgressBar :: GType
gTypeProgressBar =
  gtk_progress_bar_get_type
{-# LINE 4127 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* LevelBar

newtype LevelBar = LevelBar (ForeignPtr (LevelBar)) deriving (Eq,Ord)

mkLevelBar = (LevelBar, objectUnrefFromMainloop)
unLevelBar (LevelBar o) = o

class WidgetClass o => LevelBarClass o
toLevelBar :: LevelBarClass o => o -> LevelBar
toLevelBar = unsafeCastGObject . toGObject

instance LevelBarClass LevelBar
instance WidgetClass LevelBar
instance GObjectClass LevelBar where
  toGObject = GObject . castForeignPtr . unLevelBar
  unsafeCastGObject = LevelBar . castForeignPtr . unGObject

castToLevelBar :: GObjectClass obj => obj -> LevelBar
castToLevelBar = castTo gTypeLevelBar "LevelBar"

gTypeLevelBar :: GType
gTypeLevelBar =
  gtk_level_bar_get_type
{-# LINE 4151 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** Adjustment

newtype Adjustment = Adjustment (ForeignPtr (Adjustment)) deriving (Eq,Ord)

mkAdjustment = (Adjustment, objectUnrefFromMainloop)
unAdjustment (Adjustment o) = o

class GObjectClass o => AdjustmentClass o
toAdjustment :: AdjustmentClass o => o -> Adjustment
toAdjustment = unsafeCastGObject . toGObject

instance AdjustmentClass Adjustment
instance GObjectClass Adjustment where
  toGObject = GObject . castForeignPtr . unAdjustment
  unsafeCastGObject = Adjustment . castForeignPtr . unGObject

castToAdjustment :: GObjectClass obj => obj -> Adjustment
castToAdjustment = castTo gTypeAdjustment "Adjustment"

gTypeAdjustment :: GType
gTypeAdjustment =
  gtk_adjustment_get_type
{-# LINE 4174 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** IMContext

newtype IMContext = IMContext (ForeignPtr (IMContext)) deriving (Eq,Ord)

mkIMContext = (IMContext, objectUnrefFromMainloop)
unIMContext (IMContext o) = o

class GObjectClass o => IMContextClass o
toIMContext :: IMContextClass o => o -> IMContext
toIMContext = unsafeCastGObject . toGObject

instance IMContextClass IMContext
instance GObjectClass IMContext where
  toGObject = GObject . castForeignPtr . unIMContext
  unsafeCastGObject = IMContext . castForeignPtr . unGObject

castToIMContext :: GObjectClass obj => obj -> IMContext
castToIMContext = castTo gTypeIMContext "IMContext"

gTypeIMContext :: GType
gTypeIMContext =
  gtk_im_context_get_type
{-# LINE 4197 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* IMMulticontext

newtype IMMulticontext = IMMulticontext (ForeignPtr (IMMulticontext)) deriving (Eq,Ord)

mkIMMulticontext = (IMMulticontext, objectUnrefFromMainloop)
unIMMulticontext (IMMulticontext o) = o

class IMContextClass o => IMMulticontextClass o
toIMMulticontext :: IMMulticontextClass o => o -> IMMulticontext
toIMMulticontext = unsafeCastGObject . toGObject

instance IMMulticontextClass IMMulticontext
instance IMContextClass IMMulticontext
instance GObjectClass IMMulticontext where
  toGObject = GObject . castForeignPtr . unIMMulticontext
  unsafeCastGObject = IMMulticontext . castForeignPtr . unGObject

castToIMMulticontext :: GObjectClass obj => obj -> IMMulticontext
castToIMMulticontext = castTo gTypeIMMulticontext "IMMulticontext"

gTypeIMMulticontext :: GType
gTypeIMMulticontext =
  gtk_im_multicontext_get_type
{-# LINE 4221 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ IMContextSimple

newtype IMContextSimple = IMContextSimple (ForeignPtr (IMContextSimple)) deriving (Eq,Ord)

mkIMContextSimple = (IMContextSimple, objectUnrefFromMainloop)
unIMContextSimple (IMContextSimple o) = o

class IMContextClass o => IMContextSimpleClass o
toIMContextSimple :: IMContextSimpleClass o => o -> IMContextSimple
toIMContextSimple = unsafeCastGObject . toGObject

instance IMContextSimpleClass IMContextSimple
instance IMContextClass IMContextSimple
instance GObjectClass IMContextSimple where
  toGObject = GObject . castForeignPtr . unIMContextSimple
  unsafeCastGObject = IMContextSimple . castForeignPtr . unGObject

castToIMContextSimple :: GObjectClass obj => obj -> IMContextSimple
castToIMContextSimple = castTo gTypeIMContextSimple "IMContextSimple"

gTypeIMContextSimple :: GType
gTypeIMContextSimple =
  gtk_im_context_simple_get_type
{-# LINE 4245 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************* TreeViewColumn

newtype TreeViewColumn = TreeViewColumn (ForeignPtr (TreeViewColumn)) deriving (Eq,Ord)

mkTreeViewColumn = (TreeViewColumn, objectUnrefFromMainloop)
unTreeViewColumn (TreeViewColumn o) = o

class GObjectClass o => TreeViewColumnClass o
toTreeViewColumn :: TreeViewColumnClass o => o -> TreeViewColumn
toTreeViewColumn = unsafeCastGObject . toGObject

instance TreeViewColumnClass TreeViewColumn
instance GObjectClass TreeViewColumn where
  toGObject = GObject . castForeignPtr . unTreeViewColumn
  unsafeCastGObject = TreeViewColumn . castForeignPtr . unGObject

castToTreeViewColumn :: GObjectClass obj => obj -> TreeViewColumn
castToTreeViewColumn = castTo gTypeTreeViewColumn "TreeViewColumn"

gTypeTreeViewColumn :: GType
gTypeTreeViewColumn =
  gtk_tree_view_column_get_type
{-# LINE 4268 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** CellRenderer

newtype CellRenderer = CellRenderer (ForeignPtr (CellRenderer)) deriving (Eq,Ord)

mkCellRenderer = (CellRenderer, objectUnrefFromMainloop)
unCellRenderer (CellRenderer o) = o

class GObjectClass o => CellRendererClass o
toCellRenderer :: CellRendererClass o => o -> CellRenderer
toCellRenderer = unsafeCastGObject . toGObject

instance CellRendererClass CellRenderer
instance GObjectClass CellRenderer where
  toGObject = GObject . castForeignPtr . unCellRenderer
  unsafeCastGObject = CellRenderer . castForeignPtr . unGObject

castToCellRenderer :: GObjectClass obj => obj -> CellRenderer
castToCellRenderer = castTo gTypeCellRenderer "CellRenderer"

gTypeCellRenderer :: GType
gTypeCellRenderer =
  gtk_cell_renderer_get_type
{-# LINE 4291 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************** CellRendererSpinner

newtype CellRendererSpinner = CellRendererSpinner (ForeignPtr (CellRendererSpinner)) deriving (Eq,Ord)

mkCellRendererSpinner = (CellRendererSpinner, objectUnrefFromMainloop)
unCellRendererSpinner (CellRendererSpinner o) = o

class CellRendererClass o => CellRendererSpinnerClass o
toCellRendererSpinner :: CellRendererSpinnerClass o => o -> CellRendererSpinner
toCellRendererSpinner = unsafeCastGObject . toGObject

instance CellRendererSpinnerClass CellRendererSpinner
instance CellRendererClass CellRendererSpinner
instance GObjectClass CellRendererSpinner where
  toGObject = GObject . castForeignPtr . unCellRendererSpinner
  unsafeCastGObject = CellRendererSpinner . castForeignPtr . unGObject

castToCellRendererSpinner :: GObjectClass obj => obj -> CellRendererSpinner
castToCellRendererSpinner = castTo gTypeCellRendererSpinner "CellRendererSpinner"

gTypeCellRendererSpinner :: GType
gTypeCellRendererSpinner =
  gtk_cell_renderer_spinner_get_type
{-# LINE 4315 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************* CellRendererPixbuf

newtype CellRendererPixbuf = CellRendererPixbuf (ForeignPtr (CellRendererPixbuf)) deriving (Eq,Ord)

mkCellRendererPixbuf = (CellRendererPixbuf, objectUnrefFromMainloop)
unCellRendererPixbuf (CellRendererPixbuf o) = o

class CellRendererClass o => CellRendererPixbufClass o
toCellRendererPixbuf :: CellRendererPixbufClass o => o -> CellRendererPixbuf
toCellRendererPixbuf = unsafeCastGObject . toGObject

instance CellRendererPixbufClass CellRendererPixbuf
instance CellRendererClass CellRendererPixbuf
instance GObjectClass CellRendererPixbuf where
  toGObject = GObject . castForeignPtr . unCellRendererPixbuf
  unsafeCastGObject = CellRendererPixbuf . castForeignPtr . unGObject

castToCellRendererPixbuf :: GObjectClass obj => obj -> CellRendererPixbuf
castToCellRendererPixbuf = castTo gTypeCellRendererPixbuf "CellRendererPixbuf"

gTypeCellRendererPixbuf :: GType
gTypeCellRendererPixbuf =
  gtk_cell_renderer_pixbuf_get_type
{-# LINE 4339 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************** CellRendererText

newtype CellRendererText = CellRendererText (ForeignPtr (CellRendererText)) deriving (Eq,Ord)

mkCellRendererText = (CellRendererText, objectUnrefFromMainloop)
unCellRendererText (CellRendererText o) = o

class CellRendererClass o => CellRendererTextClass o
toCellRendererText :: CellRendererTextClass o => o -> CellRendererText
toCellRendererText = unsafeCastGObject . toGObject

instance CellRendererTextClass CellRendererText
instance CellRendererClass CellRendererText
instance GObjectClass CellRendererText where
  toGObject = GObject . castForeignPtr . unCellRendererText
  unsafeCastGObject = CellRendererText . castForeignPtr . unGObject

castToCellRendererText :: GObjectClass obj => obj -> CellRendererText
castToCellRendererText = castTo gTypeCellRendererText "CellRendererText"

gTypeCellRendererText :: GType
gTypeCellRendererText =
  gtk_cell_renderer_text_get_type
{-# LINE 4363 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** CellRendererAccel

newtype CellRendererAccel = CellRendererAccel (ForeignPtr (CellRendererAccel)) deriving (Eq,Ord)

mkCellRendererAccel = (CellRendererAccel, objectUnrefFromMainloop)
unCellRendererAccel (CellRendererAccel o) = o

class CellRendererTextClass o => CellRendererAccelClass o
toCellRendererAccel :: CellRendererAccelClass o => o -> CellRendererAccel
toCellRendererAccel = unsafeCastGObject . toGObject

instance CellRendererAccelClass CellRendererAccel
instance CellRendererTextClass CellRendererAccel
instance CellRendererClass CellRendererAccel
instance GObjectClass CellRendererAccel where
  toGObject = GObject . castForeignPtr . unCellRendererAccel
  unsafeCastGObject = CellRendererAccel . castForeignPtr . unGObject

castToCellRendererAccel :: GObjectClass obj => obj -> CellRendererAccel
castToCellRendererAccel = castTo gTypeCellRendererAccel "CellRendererAccel"

gTypeCellRendererAccel :: GType
gTypeCellRendererAccel =
  gtk_cell_renderer_accel_get_type
{-# LINE 4388 "./Graphics/UI/Gtk/Types.chs" #-}

-- *********************************************************** CellRendererSpin

newtype CellRendererSpin = CellRendererSpin (ForeignPtr (CellRendererSpin)) deriving (Eq,Ord)

mkCellRendererSpin = (CellRendererSpin, objectUnrefFromMainloop)
unCellRendererSpin (CellRendererSpin o) = o

class CellRendererTextClass o => CellRendererSpinClass o
toCellRendererSpin :: CellRendererSpinClass o => o -> CellRendererSpin
toCellRendererSpin = unsafeCastGObject . toGObject

instance CellRendererSpinClass CellRendererSpin
instance CellRendererTextClass CellRendererSpin
instance CellRendererClass CellRendererSpin
instance GObjectClass CellRendererSpin where
  toGObject = GObject . castForeignPtr . unCellRendererSpin
  unsafeCastGObject = CellRendererSpin . castForeignPtr . unGObject

castToCellRendererSpin :: GObjectClass obj => obj -> CellRendererSpin
castToCellRendererSpin = castTo gTypeCellRendererSpin "CellRendererSpin"

gTypeCellRendererSpin :: GType
gTypeCellRendererSpin =
  gtk_cell_renderer_spin_get_type
{-# LINE 4413 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************** CellRendererCombo

newtype CellRendererCombo = CellRendererCombo (ForeignPtr (CellRendererCombo)) deriving (Eq,Ord)

mkCellRendererCombo = (CellRendererCombo, objectUnrefFromMainloop)
unCellRendererCombo (CellRendererCombo o) = o

class CellRendererTextClass o => CellRendererComboClass o
toCellRendererCombo :: CellRendererComboClass o => o -> CellRendererCombo
toCellRendererCombo = unsafeCastGObject . toGObject

instance CellRendererComboClass CellRendererCombo
instance CellRendererTextClass CellRendererCombo
instance CellRendererClass CellRendererCombo
instance GObjectClass CellRendererCombo where
  toGObject = GObject . castForeignPtr . unCellRendererCombo
  unsafeCastGObject = CellRendererCombo . castForeignPtr . unGObject

castToCellRendererCombo :: GObjectClass obj => obj -> CellRendererCombo
castToCellRendererCombo = castTo gTypeCellRendererCombo "CellRendererCombo"

gTypeCellRendererCombo :: GType
gTypeCellRendererCombo =
  gtk_cell_renderer_combo_get_type
{-# LINE 4438 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************* CellRendererToggle

newtype CellRendererToggle = CellRendererToggle (ForeignPtr (CellRendererToggle)) deriving (Eq,Ord)

mkCellRendererToggle = (CellRendererToggle, objectUnrefFromMainloop)
unCellRendererToggle (CellRendererToggle o) = o

class CellRendererClass o => CellRendererToggleClass o
toCellRendererToggle :: CellRendererToggleClass o => o -> CellRendererToggle
toCellRendererToggle = unsafeCastGObject . toGObject

instance CellRendererToggleClass CellRendererToggle
instance CellRendererClass CellRendererToggle
instance GObjectClass CellRendererToggle where
  toGObject = GObject . castForeignPtr . unCellRendererToggle
  unsafeCastGObject = CellRendererToggle . castForeignPtr . unGObject

castToCellRendererToggle :: GObjectClass obj => obj -> CellRendererToggle
castToCellRendererToggle = castTo gTypeCellRendererToggle "CellRendererToggle"

gTypeCellRendererToggle :: GType
gTypeCellRendererToggle =
  gtk_cell_renderer_toggle_get_type
{-# LINE 4462 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************* CellRendererProgress

newtype CellRendererProgress = CellRendererProgress (ForeignPtr (CellRendererProgress)) deriving (Eq,Ord)

mkCellRendererProgress = (CellRendererProgress, objectUnrefFromMainloop)
unCellRendererProgress (CellRendererProgress o) = o

class CellRendererClass o => CellRendererProgressClass o
toCellRendererProgress :: CellRendererProgressClass o => o -> CellRendererProgress
toCellRendererProgress = unsafeCastGObject . toGObject

instance CellRendererProgressClass CellRendererProgress
instance CellRendererClass CellRendererProgress
instance GObjectClass CellRendererProgress where
  toGObject = GObject . castForeignPtr . unCellRendererProgress
  unsafeCastGObject = CellRendererProgress . castForeignPtr . unGObject

castToCellRendererProgress :: GObjectClass obj => obj -> CellRendererProgress
castToCellRendererProgress = castTo gTypeCellRendererProgress "CellRendererProgress"

gTypeCellRendererProgress :: GType
gTypeCellRendererProgress =
  gtk_cell_renderer_progress_get_type
{-# LINE 4486 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** FileFilter

newtype FileFilter = FileFilter (ForeignPtr (FileFilter)) deriving (Eq,Ord)

mkFileFilter = (FileFilter, objectUnrefFromMainloop)
unFileFilter (FileFilter o) = o

class GObjectClass o => FileFilterClass o
toFileFilter :: FileFilterClass o => o -> FileFilter
toFileFilter = unsafeCastGObject . toGObject

instance FileFilterClass FileFilter
instance GObjectClass FileFilter where
  toGObject = GObject . castForeignPtr . unFileFilter
  unsafeCastGObject = FileFilter . castForeignPtr . unGObject

castToFileFilter :: GObjectClass obj => obj -> FileFilter
castToFileFilter = castTo gTypeFileFilter "FileFilter"

gTypeFileFilter :: GType
gTypeFileFilter =
  gtk_file_filter_get_type
{-# LINE 4509 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Builder

newtype Builder = Builder (ForeignPtr (Builder)) deriving (Eq,Ord)

mkBuilder = (Builder, objectUnrefFromMainloop)
unBuilder (Builder o) = o

class GObjectClass o => BuilderClass o
toBuilder :: BuilderClass o => o -> Builder
toBuilder = unsafeCastGObject . toGObject

instance BuilderClass Builder
instance GObjectClass Builder where
  toGObject = GObject . castForeignPtr . unBuilder
  unsafeCastGObject = Builder . castForeignPtr . unGObject

castToBuilder :: GObjectClass obj => obj -> Builder
castToBuilder = castTo gTypeBuilder "Builder"

gTypeBuilder :: GType
gTypeBuilder =
  gtk_builder_get_type
{-# LINE 4532 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** StyleContext

newtype StyleContext = StyleContext (ForeignPtr (StyleContext)) deriving (Eq,Ord)

mkStyleContext = (StyleContext, objectUnrefFromMainloop)
unStyleContext (StyleContext o) = o

class GObjectClass o => StyleContextClass o
toStyleContext :: StyleContextClass o => o -> StyleContext
toStyleContext = unsafeCastGObject . toGObject

instance StyleContextClass StyleContext
instance GObjectClass StyleContext where
  toGObject = GObject . castForeignPtr . unStyleContext
  unsafeCastGObject = StyleContext . castForeignPtr . unGObject

castToStyleContext :: GObjectClass obj => obj -> StyleContext
castToStyleContext = castTo gTypeStyleContext "StyleContext"

gTypeStyleContext :: GType
gTypeStyleContext =
  gtk_style_context_get_type
{-# LINE 4555 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** StyleProvider

newtype StyleProvider = StyleProvider (ForeignPtr (StyleProvider)) deriving (Eq,Ord)

mkStyleProvider = (StyleProvider, objectUnrefFromMainloop)
unStyleProvider (StyleProvider o) = o

class GObjectClass o => StyleProviderClass o
toStyleProvider :: StyleProviderClass o => o -> StyleProvider
toStyleProvider = unsafeCastGObject . toGObject

instance StyleProviderClass StyleProvider
instance GObjectClass StyleProvider where
  toGObject = GObject . castForeignPtr . unStyleProvider
  unsafeCastGObject = StyleProvider . castForeignPtr . unGObject

castToStyleProvider :: GObjectClass obj => obj -> StyleProvider
castToStyleProvider = castTo gTypeStyleProvider "StyleProvider"

gTypeStyleProvider :: GType
gTypeStyleProvider =
  gtk_style_provider_get_type
{-# LINE 4578 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** CssProvider

newtype CssProvider = CssProvider (ForeignPtr (CssProvider)) deriving (Eq,Ord)

mkCssProvider = (CssProvider, objectUnrefFromMainloop)
unCssProvider (CssProvider o) = o

class GObjectClass o => CssProviderClass o
toCssProvider :: CssProviderClass o => o -> CssProvider
toCssProvider = unsafeCastGObject . toGObject

instance CssProviderClass CssProvider
instance GObjectClass CssProvider where
  toGObject = GObject . castForeignPtr . unCssProvider
  unsafeCastGObject = CssProvider . castForeignPtr . unGObject

castToCssProvider :: GObjectClass obj => obj -> CssProvider
castToCssProvider = castTo gTypeCssProvider "CssProvider"

gTypeCssProvider :: GType
gTypeCssProvider =
  gtk_css_provider_get_type
{-# LINE 4601 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** CellLayout

newtype CellLayout = CellLayout (ForeignPtr (CellLayout)) deriving (Eq,Ord)

mkCellLayout = (CellLayout, objectUnrefFromMainloop)
unCellLayout (CellLayout o) = o

class GObjectClass o => CellLayoutClass o
toCellLayout :: CellLayoutClass o => o -> CellLayout
toCellLayout = unsafeCastGObject . toGObject

instance CellLayoutClass CellLayout
instance GObjectClass CellLayout where
  toGObject = GObject . castForeignPtr . unCellLayout
  unsafeCastGObject = CellLayout . castForeignPtr . unGObject

castToCellLayout :: GObjectClass obj => obj -> CellLayout
castToCellLayout = castTo gTypeCellLayout "CellLayout"

gTypeCellLayout :: GType
gTypeCellLayout =
  gtk_cell_layout_get_type
{-# LINE 4624 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** TreeSortable

newtype TreeSortable = TreeSortable (ForeignPtr (TreeSortable)) deriving (Eq,Ord)

mkTreeSortable = (TreeSortable, objectUnrefFromMainloop)
unTreeSortable (TreeSortable o) = o

class GObjectClass o => TreeSortableClass o
toTreeSortable :: TreeSortableClass o => o -> TreeSortable
toTreeSortable = unsafeCastGObject . toGObject

instance TreeSortableClass TreeSortable
instance GObjectClass TreeSortable where
  toGObject = GObject . castForeignPtr . unTreeSortable
  unsafeCastGObject = TreeSortable . castForeignPtr . unGObject

castToTreeSortable :: GObjectClass obj => obj -> TreeSortable
castToTreeSortable = castTo gTypeTreeSortable "TreeSortable"

gTypeTreeSortable :: GType
gTypeTreeSortable =
  gtk_tree_sortable_get_type
{-# LINE 4647 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************** Tooltip

newtype Tooltip = Tooltip (ForeignPtr (Tooltip)) deriving (Eq,Ord)

mkTooltip = (Tooltip, objectUnrefFromMainloop)
unTooltip (Tooltip o) = o

class GObjectClass o => TooltipClass o
toTooltip :: TooltipClass o => o -> Tooltip
toTooltip = unsafeCastGObject . toGObject

instance TooltipClass Tooltip
instance GObjectClass Tooltip where
  toGObject = GObject . castForeignPtr . unTooltip
  unsafeCastGObject = Tooltip . castForeignPtr . unGObject

castToTooltip :: GObjectClass obj => obj -> Tooltip
castToTooltip = castTo gTypeTooltip "Tooltip"

gTypeTooltip :: GType
gTypeTooltip =
  gtk_tooltip_get_type
{-# LINE 4670 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** StatusIcon

newtype StatusIcon = StatusIcon (ForeignPtr (StatusIcon)) deriving (Eq,Ord)

mkStatusIcon = (StatusIcon, objectUnrefFromMainloop)
unStatusIcon (StatusIcon o) = o

class TooltipClass o => StatusIconClass o
toStatusIcon :: StatusIconClass o => o -> StatusIcon
toStatusIcon = unsafeCastGObject . toGObject

instance StatusIconClass StatusIcon
instance TooltipClass StatusIcon
instance GObjectClass StatusIcon where
  toGObject = GObject . castForeignPtr . unStatusIcon
  unsafeCastGObject = StatusIcon . castForeignPtr . unGObject

castToStatusIcon :: GObjectClass obj => obj -> StatusIcon
castToStatusIcon = castTo gTypeStatusIcon "StatusIcon"

gTypeStatusIcon :: GType
gTypeStatusIcon =
  gtk_status_icon_get_type
{-# LINE 4694 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** TreeSelection

newtype TreeSelection = TreeSelection (ForeignPtr (TreeSelection)) deriving (Eq,Ord)

mkTreeSelection = (TreeSelection, objectUnrefFromMainloop)
unTreeSelection (TreeSelection o) = o

class GObjectClass o => TreeSelectionClass o
toTreeSelection :: TreeSelectionClass o => o -> TreeSelection
toTreeSelection = unsafeCastGObject . toGObject

instance TreeSelectionClass TreeSelection
instance GObjectClass TreeSelection where
  toGObject = GObject . castForeignPtr . unTreeSelection
  unsafeCastGObject = TreeSelection . castForeignPtr . unGObject

castToTreeSelection :: GObjectClass obj => obj -> TreeSelection
castToTreeSelection = castTo gTypeTreeSelection "TreeSelection"

gTypeTreeSelection :: GType
gTypeTreeSelection =
  gtk_tree_selection_get_type
{-# LINE 4717 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** TreeModel

newtype TreeModel = TreeModel (ForeignPtr (TreeModel)) deriving (Eq,Ord)

mkTreeModel = (TreeModel, objectUnrefFromMainloop)
unTreeModel (TreeModel o) = o

class GObjectClass o => TreeModelClass o
toTreeModel :: TreeModelClass o => o -> TreeModel
toTreeModel = unsafeCastGObject . toGObject

instance TreeModelClass TreeModel
instance GObjectClass TreeModel where
  toGObject = GObject . castForeignPtr . unTreeModel
  unsafeCastGObject = TreeModel . castForeignPtr . unGObject

castToTreeModel :: GObjectClass obj => obj -> TreeModel
castToTreeModel = castTo gTypeTreeModel "TreeModel"

gTypeTreeModel :: GType
gTypeTreeModel =
  gtk_tree_model_get_type
{-# LINE 4740 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** TreeStore

newtype TreeStore = TreeStore (ForeignPtr (TreeStore)) deriving (Eq,Ord)

mkTreeStore = (TreeStore, objectUnrefFromMainloop)
unTreeStore (TreeStore o) = o

class TreeModelClass o => TreeStoreClass o
toTreeStore :: TreeStoreClass o => o -> TreeStore
toTreeStore = unsafeCastGObject . toGObject

instance TreeStoreClass TreeStore
instance TreeModelClass TreeStore
instance GObjectClass TreeStore where
  toGObject = GObject . castForeignPtr . unTreeStore
  unsafeCastGObject = TreeStore . castForeignPtr . unGObject

castToTreeStore :: GObjectClass obj => obj -> TreeStore
castToTreeStore = castTo gTypeTreeStore "TreeStore"

gTypeTreeStore :: GType
gTypeTreeStore =
  gtk_tree_store_get_type
{-# LINE 4764 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** ListStore

newtype ListStore = ListStore (ForeignPtr (ListStore)) deriving (Eq,Ord)

mkListStore = (ListStore, objectUnrefFromMainloop)
unListStore (ListStore o) = o

class TreeModelClass o => ListStoreClass o
toListStore :: ListStoreClass o => o -> ListStore
toListStore = unsafeCastGObject . toGObject

instance ListStoreClass ListStore
instance TreeModelClass ListStore
instance GObjectClass ListStore where
  toGObject = GObject . castForeignPtr . unListStore
  unsafeCastGObject = ListStore . castForeignPtr . unGObject

castToListStore :: GObjectClass obj => obj -> ListStore
castToListStore = castTo gTypeListStore "ListStore"

gTypeListStore :: GType
gTypeListStore =
  gtk_list_store_get_type
{-# LINE 4788 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************** TreeModelSort

newtype TreeModelSort = TreeModelSort (ForeignPtr (TreeModelSort)) deriving (Eq,Ord)

mkTreeModelSort = (TreeModelSort, objectUnrefFromMainloop)
unTreeModelSort (TreeModelSort o) = o

class GObjectClass o => TreeModelSortClass o
toTreeModelSort :: TreeModelSortClass o => o -> TreeModelSort
toTreeModelSort = unsafeCastGObject . toGObject

instance TreeModelSortClass TreeModelSort
instance GObjectClass TreeModelSort where
  toGObject = GObject . castForeignPtr . unTreeModelSort
  unsafeCastGObject = TreeModelSort . castForeignPtr . unGObject

castToTreeModelSort :: GObjectClass obj => obj -> TreeModelSort
castToTreeModelSort = castTo gTypeTreeModelSort "TreeModelSort"

gTypeTreeModelSort :: GType
gTypeTreeModelSort =
  gtk_tree_model_sort_get_type
{-# LINE 4811 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ TreeModelFilter

newtype TreeModelFilter = TreeModelFilter (ForeignPtr (TreeModelFilter)) deriving (Eq,Ord)

mkTreeModelFilter = (TreeModelFilter, objectUnrefFromMainloop)
unTreeModelFilter (TreeModelFilter o) = o

class GObjectClass o => TreeModelFilterClass o
toTreeModelFilter :: TreeModelFilterClass o => o -> TreeModelFilter
toTreeModelFilter = unsafeCastGObject . toGObject

instance TreeModelFilterClass TreeModelFilter
instance GObjectClass TreeModelFilter where
  toGObject = GObject . castForeignPtr . unTreeModelFilter
  unsafeCastGObject = TreeModelFilter . castForeignPtr . unGObject

castToTreeModelFilter :: GObjectClass obj => obj -> TreeModelFilter
castToTreeModelFilter = castTo gTypeTreeModelFilter "TreeModelFilter"

gTypeTreeModelFilter :: GType
gTypeTreeModelFilter =
  gtk_tree_model_filter_get_type
{-# LINE 4834 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** IconFactory

newtype IconFactory = IconFactory (ForeignPtr (IconFactory)) deriving (Eq,Ord)

mkIconFactory = (IconFactory, objectUnrefFromMainloop)
unIconFactory (IconFactory o) = o

class GObjectClass o => IconFactoryClass o
toIconFactory :: IconFactoryClass o => o -> IconFactory
toIconFactory = unsafeCastGObject . toGObject

instance IconFactoryClass IconFactory
instance GObjectClass IconFactory where
  toGObject = GObject . castForeignPtr . unIconFactory
  unsafeCastGObject = IconFactory . castForeignPtr . unGObject

castToIconFactory :: GObjectClass obj => obj -> IconFactory
castToIconFactory = castTo gTypeIconFactory "IconFactory"

gTypeIconFactory :: GType
gTypeIconFactory =
  gtk_icon_factory_get_type
{-# LINE 4857 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** IconTheme

newtype IconTheme = IconTheme (ForeignPtr (IconTheme)) deriving (Eq,Ord)

mkIconTheme = (IconTheme, objectUnrefFromMainloop)
unIconTheme (IconTheme o) = o

class GObjectClass o => IconThemeClass o
toIconTheme :: IconThemeClass o => o -> IconTheme
toIconTheme = unsafeCastGObject . toGObject

instance IconThemeClass IconTheme
instance GObjectClass IconTheme where
  toGObject = GObject . castForeignPtr . unIconTheme
  unsafeCastGObject = IconTheme . castForeignPtr . unGObject

castToIconTheme :: GObjectClass obj => obj -> IconTheme
castToIconTheme = castTo gTypeIconTheme "IconTheme"

gTypeIconTheme :: GType
gTypeIconTheme =
  gtk_icon_theme_get_type
{-# LINE 4880 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** SizeGroup

newtype SizeGroup = SizeGroup (ForeignPtr (SizeGroup)) deriving (Eq,Ord)

mkSizeGroup = (SizeGroup, objectUnrefFromMainloop)
unSizeGroup (SizeGroup o) = o

class GObjectClass o => SizeGroupClass o
toSizeGroup :: SizeGroupClass o => o -> SizeGroup
toSizeGroup = unsafeCastGObject . toGObject

instance SizeGroupClass SizeGroup
instance GObjectClass SizeGroup where
  toGObject = GObject . castForeignPtr . unSizeGroup
  unsafeCastGObject = SizeGroup . castForeignPtr . unGObject

castToSizeGroup :: GObjectClass obj => obj -> SizeGroup
castToSizeGroup = castTo gTypeSizeGroup "SizeGroup"

gTypeSizeGroup :: GType
gTypeSizeGroup =
  gtk_size_group_get_type
{-# LINE 4903 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** Clipboard

newtype Clipboard = Clipboard (ForeignPtr (Clipboard)) deriving (Eq,Ord)

mkClipboard = (Clipboard, objectUnrefFromMainloop)
unClipboard (Clipboard o) = o

class GObjectClass o => ClipboardClass o
toClipboard :: ClipboardClass o => o -> Clipboard
toClipboard = unsafeCastGObject . toGObject

instance ClipboardClass Clipboard
instance GObjectClass Clipboard where
  toGObject = GObject . castForeignPtr . unClipboard
  unsafeCastGObject = Clipboard . castForeignPtr . unGObject

castToClipboard :: GObjectClass obj => obj -> Clipboard
castToClipboard = castTo gTypeClipboard "Clipboard"

gTypeClipboard :: GType
gTypeClipboard =
  gtk_clipboard_get_type
{-# LINE 4926 "./Graphics/UI/Gtk/Types.chs" #-}

-- ***************************************************************** AccelGroup

newtype AccelGroup = AccelGroup (ForeignPtr (AccelGroup)) deriving (Eq,Ord)

mkAccelGroup = (AccelGroup, objectUnrefFromMainloop)
unAccelGroup (AccelGroup o) = o

class GObjectClass o => AccelGroupClass o
toAccelGroup :: AccelGroupClass o => o -> AccelGroup
toAccelGroup = unsafeCastGObject . toGObject

instance AccelGroupClass AccelGroup
instance GObjectClass AccelGroup where
  toGObject = GObject . castForeignPtr . unAccelGroup
  unsafeCastGObject = AccelGroup . castForeignPtr . unGObject

castToAccelGroup :: GObjectClass obj => obj -> AccelGroup
castToAccelGroup = castTo gTypeAccelGroup "AccelGroup"

gTypeAccelGroup :: GType
gTypeAccelGroup =
  gtk_accel_group_get_type
{-# LINE 4949 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* AccelMap

newtype AccelMap = AccelMap (ForeignPtr (AccelMap)) deriving (Eq,Ord)

mkAccelMap = (AccelMap, objectUnrefFromMainloop)
unAccelMap (AccelMap o) = o

class GObjectClass o => AccelMapClass o
toAccelMap :: AccelMapClass o => o -> AccelMap
toAccelMap = unsafeCastGObject . toGObject

instance AccelMapClass AccelMap
instance GObjectClass AccelMap where
  toGObject = GObject . castForeignPtr . unAccelMap
  unsafeCastGObject = AccelMap . castForeignPtr . unGObject

castToAccelMap :: GObjectClass obj => obj -> AccelMap
castToAccelMap = castTo gTypeAccelMap "AccelMap"

gTypeAccelMap :: GType
gTypeAccelMap =
  gtk_accel_map_get_type
{-# LINE 4972 "./Graphics/UI/Gtk/Types.chs" #-}

-- ************************************************************ EntryCompletion

newtype EntryCompletion = EntryCompletion (ForeignPtr (EntryCompletion)) deriving (Eq,Ord)

mkEntryCompletion = (EntryCompletion, objectUnrefFromMainloop)
unEntryCompletion (EntryCompletion o) = o

class GObjectClass o => EntryCompletionClass o
toEntryCompletion :: EntryCompletionClass o => o -> EntryCompletion
toEntryCompletion = unsafeCastGObject . toGObject

instance EntryCompletionClass EntryCompletion
instance GObjectClass EntryCompletion where
  toGObject = GObject . castForeignPtr . unEntryCompletion
  unsafeCastGObject = EntryCompletion . castForeignPtr . unGObject

castToEntryCompletion :: GObjectClass obj => obj -> EntryCompletion
castToEntryCompletion = castTo gTypeEntryCompletion "EntryCompletion"

gTypeEntryCompletion :: GType
gTypeEntryCompletion =
  gtk_entry_completion_get_type
{-# LINE 4995 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** EntryBuffer

newtype EntryBuffer = EntryBuffer (ForeignPtr (EntryBuffer)) deriving (Eq,Ord)

mkEntryBuffer = (EntryBuffer, objectUnrefFromMainloop)
unEntryBuffer (EntryBuffer o) = o

class GObjectClass o => EntryBufferClass o
toEntryBuffer :: EntryBufferClass o => o -> EntryBuffer
toEntryBuffer = unsafeCastGObject . toGObject

instance EntryBufferClass EntryBuffer
instance GObjectClass EntryBuffer where
  toGObject = GObject . castForeignPtr . unEntryBuffer
  unsafeCastGObject = EntryBuffer . castForeignPtr . unGObject

castToEntryBuffer :: GObjectClass obj => obj -> EntryBuffer
castToEntryBuffer = castTo gTypeEntryBuffer "EntryBuffer"

gTypeEntryBuffer :: GType
gTypeEntryBuffer =
  gtk_entry_buffer_get_type
{-# LINE 5018 "./Graphics/UI/Gtk/Types.chs" #-}

-- ********************************************************************* Action

newtype Action = Action (ForeignPtr (Action)) deriving (Eq,Ord)

mkAction = (Action, objectUnrefFromMainloop)
unAction (Action o) = o

class GObjectClass o => ActionClass o
toAction :: ActionClass o => o -> Action
toAction = unsafeCastGObject . toGObject

instance ActionClass Action
instance GObjectClass Action where
  toGObject = GObject . castForeignPtr . unAction
  unsafeCastGObject = Action . castForeignPtr . unGObject

castToAction :: GObjectClass obj => obj -> Action
castToAction = castTo gTypeAction "Action"

gTypeAction :: GType
gTypeAction =
  gtk_action_get_type
{-# LINE 5041 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** RecentAction

newtype RecentAction = RecentAction (ForeignPtr (RecentAction)) deriving (Eq,Ord)

mkRecentAction = (RecentAction, objectUnrefFromMainloop)
unRecentAction (RecentAction o) = o

class ActionClass o => RecentActionClass o
toRecentAction :: RecentActionClass o => o -> RecentAction
toRecentAction = unsafeCastGObject . toGObject

instance RecentActionClass RecentAction
instance ActionClass RecentAction
instance GObjectClass RecentAction where
  toGObject = GObject . castForeignPtr . unRecentAction
  unsafeCastGObject = RecentAction . castForeignPtr . unGObject

castToRecentAction :: GObjectClass obj => obj -> RecentAction
castToRecentAction = castTo gTypeRecentAction "RecentAction"

gTypeRecentAction :: GType
gTypeRecentAction =
  gtk_recent_action_get_type
{-# LINE 5065 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** ToggleAction

newtype ToggleAction = ToggleAction (ForeignPtr (ToggleAction)) deriving (Eq,Ord)

mkToggleAction = (ToggleAction, objectUnrefFromMainloop)
unToggleAction (ToggleAction o) = o

class ActionClass o => ToggleActionClass o
toToggleAction :: ToggleActionClass o => o -> ToggleAction
toToggleAction = unsafeCastGObject . toGObject

instance ToggleActionClass ToggleAction
instance ActionClass ToggleAction
instance GObjectClass ToggleAction where
  toGObject = GObject . castForeignPtr . unToggleAction
  unsafeCastGObject = ToggleAction . castForeignPtr . unGObject

castToToggleAction :: GObjectClass obj => obj -> ToggleAction
castToToggleAction = castTo gTypeToggleAction "ToggleAction"

gTypeToggleAction :: GType
gTypeToggleAction =
  gtk_toggle_action_get_type
{-# LINE 5089 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** RadioAction

newtype RadioAction = RadioAction (ForeignPtr (RadioAction)) deriving (Eq,Ord)

mkRadioAction = (RadioAction, objectUnrefFromMainloop)
unRadioAction (RadioAction o) = o

class ToggleActionClass o => RadioActionClass o
toRadioAction :: RadioActionClass o => o -> RadioAction
toRadioAction = unsafeCastGObject . toGObject

instance RadioActionClass RadioAction
instance ToggleActionClass RadioAction
instance ActionClass RadioAction
instance GObjectClass RadioAction where
  toGObject = GObject . castForeignPtr . unRadioAction
  unsafeCastGObject = RadioAction . castForeignPtr . unGObject

castToRadioAction :: GObjectClass obj => obj -> RadioAction
castToRadioAction = castTo gTypeRadioAction "RadioAction"

gTypeRadioAction :: GType
gTypeRadioAction =
  gtk_radio_action_get_type
{-# LINE 5114 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** ActionGroup

newtype ActionGroup = ActionGroup (ForeignPtr (ActionGroup)) deriving (Eq,Ord)

mkActionGroup = (ActionGroup, objectUnrefFromMainloop)
unActionGroup (ActionGroup o) = o

class GObjectClass o => ActionGroupClass o
toActionGroup :: ActionGroupClass o => o -> ActionGroup
toActionGroup = unsafeCastGObject . toGObject

instance ActionGroupClass ActionGroup
instance GObjectClass ActionGroup where
  toGObject = GObject . castForeignPtr . unActionGroup
  unsafeCastGObject = ActionGroup . castForeignPtr . unGObject

castToActionGroup :: GObjectClass obj => obj -> ActionGroup
castToActionGroup = castTo gTypeActionGroup "ActionGroup"

gTypeActionGroup :: GType
gTypeActionGroup =
  gtk_action_group_get_type
{-# LINE 5137 "./Graphics/UI/Gtk/Types.chs" #-}

-- ****************************************************************** UIManager

newtype UIManager = UIManager (ForeignPtr (UIManager)) deriving (Eq,Ord)

mkUIManager = (UIManager, objectUnrefFromMainloop)
unUIManager (UIManager o) = o

class GObjectClass o => UIManagerClass o
toUIManager :: UIManagerClass o => o -> UIManager
toUIManager = unsafeCastGObject . toGObject

instance UIManagerClass UIManager
instance GObjectClass UIManager where
  toGObject = GObject . castForeignPtr . unUIManager
  unsafeCastGObject = UIManager . castForeignPtr . unGObject

castToUIManager :: GObjectClass obj => obj -> UIManager
castToUIManager = castTo gTypeUIManager "UIManager"

gTypeUIManager :: GType
gTypeUIManager =
  gtk_ui_manager_get_type
{-# LINE 5160 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** WindowGroup

newtype WindowGroup = WindowGroup (ForeignPtr (WindowGroup)) deriving (Eq,Ord)

mkWindowGroup = (WindowGroup, objectUnrefFromMainloop)
unWindowGroup (WindowGroup o) = o

class GObjectClass o => WindowGroupClass o
toWindowGroup :: WindowGroupClass o => o -> WindowGroup
toWindowGroup = unsafeCastGObject . toGObject

instance WindowGroupClass WindowGroup
instance GObjectClass WindowGroup where
  toGObject = GObject . castForeignPtr . unWindowGroup
  unsafeCastGObject = WindowGroup . castForeignPtr . unGObject

castToWindowGroup :: GObjectClass obj => obj -> WindowGroup
castToWindowGroup = castTo gTypeWindowGroup "WindowGroup"

gTypeWindowGroup :: GType
gTypeWindowGroup =
  gtk_window_group_get_type
{-# LINE 5183 "./Graphics/UI/Gtk/Types.chs" #-}

-- *************************************************************** CellEditable

newtype CellEditable = CellEditable (ForeignPtr (CellEditable)) deriving (Eq,Ord)

mkCellEditable = (CellEditable, objectUnrefFromMainloop)
unCellEditable (CellEditable o) = o

class GObjectClass o => CellEditableClass o
toCellEditable :: CellEditableClass o => o -> CellEditable
toCellEditable = unsafeCastGObject . toGObject

instance CellEditableClass CellEditable
instance GObjectClass CellEditable where
  toGObject = GObject . castForeignPtr . unCellEditable
  unsafeCastGObject = CellEditable . castForeignPtr . unGObject

castToCellEditable :: GObjectClass obj => obj -> CellEditable
castToCellEditable = castTo gTypeCellEditable "CellEditable"

gTypeCellEditable :: GType
gTypeCellEditable =
  gtk_cell_editable_get_type
{-# LINE 5206 "./Graphics/UI/Gtk/Types.chs" #-}

-- ******************************************************************* Editable

newtype Editable = Editable (ForeignPtr (Editable)) deriving (Eq,Ord)

mkEditable = (Editable, objectUnrefFromMainloop)
unEditable (Editable o) = o

class GObjectClass o => EditableClass o
toEditable :: EditableClass o => o -> Editable
toEditable = unsafeCastGObject . toGObject

instance EditableClass Editable
instance GObjectClass Editable where
  toGObject = GObject . castForeignPtr . unEditable
  unsafeCastGObject = Editable . castForeignPtr . unGObject

castToEditable :: GObjectClass obj => obj -> Editable
castToEditable = castTo gTypeEditable "Editable"

gTypeEditable :: GType
gTypeEditable =
  gtk_editable_get_type
{-# LINE 5229 "./Graphics/UI/Gtk/Types.chs" #-}

-- **************************************************************** FileChooser

newtype FileChooser = FileChooser (ForeignPtr (FileChooser)) deriving (Eq,Ord)

mkFileChooser = (FileChooser, objectUnrefFromMainloop)
unFileChooser (FileChooser o) = o

class GObjectClass o => FileChooserClass o
toFileChooser :: FileChooserClass o => o -> FileChooser
toFileChooser = unsafeCastGObject . toGObject

instance FileChooserClass FileChooser
instance GObjectClass FileChooser where
  toGObject = GObject . castForeignPtr . unFileChooser
  unsafeCastGObject = FileChooser . castForeignPtr . unGObject

castToFileChooser :: GObjectClass obj => obj -> FileChooser
castToFileChooser = castTo gTypeFileChooser "FileChooser"

gTypeFileChooser :: GType
gTypeFileChooser =
  gtk_file_chooser_get_type
{-# LINE 5252 "./Graphics/UI/Gtk/Types.chs" #-}

foreign import ccall unsafe "atk_object_get_type"
  atk_object_get_type :: CULong

foreign import ccall unsafe "gtk_accessible_get_type"
  gtk_accessible_get_type :: CULong

foreign import ccall unsafe "gdk_keymap_get_type"
  gdk_keymap_get_type :: CULong

foreign import ccall unsafe "gdk_display_manager_get_type"
  gdk_display_manager_get_type :: CULong

foreign import ccall unsafe "gdk_app_launch_context_get_type"
  gdk_app_launch_context_get_type :: CULong

foreign import ccall unsafe "gtk_print_settings_get_type"
  gtk_print_settings_get_type :: CULong

foreign import ccall unsafe "gtk_print_operation_get_type"
  gtk_print_operation_get_type :: CULong

foreign import ccall unsafe "gtk_print_operation_preview_get_type"
  gtk_print_operation_preview_get_type :: CULong

foreign import ccall unsafe "gtk_page_setup_get_type"
  gtk_page_setup_get_type :: CULong

foreign import ccall unsafe "gtk_print_context_get_type"
  gtk_print_context_get_type :: CULong

foreign import ccall unsafe "gtk_recent_chooser_get_type"
  gtk_recent_chooser_get_type :: CULong

foreign import ccall unsafe "gtk_recent_manager_get_type"
  gtk_recent_manager_get_type :: CULong

foreign import ccall unsafe "gdk_window_get_type"
  gdk_window_get_type :: CULong

foreign import ccall unsafe "gdk_screen_get_type"
  gdk_screen_get_type :: CULong

foreign import ccall unsafe "gdk_display_get_type"
  gdk_display_get_type :: CULong

foreign import ccall unsafe "gdk_visual_get_type"
  gdk_visual_get_type :: CULong

foreign import ccall unsafe "gdk_device_get_type"
  gdk_device_get_type :: CULong

foreign import ccall unsafe "gdk_frame_clock_get_type"
  gdk_frame_clock_get_type :: CULong

foreign import ccall unsafe "gtk_settings_get_type"
  gtk_settings_get_type :: CULong

foreign import ccall unsafe "gtk_text_buffer_get_type"
  gtk_text_buffer_get_type :: CULong

foreign import ccall unsafe "gtk_text_tag_get_type"
  gtk_text_tag_get_type :: CULong

foreign import ccall unsafe "gtk_text_tag_table_get_type"
  gtk_text_tag_table_get_type :: CULong

foreign import ccall unsafe "gtk_style_get_type"
  gtk_style_get_type :: CULong

foreign import ccall unsafe "gtk_rc_style_get_type"
  gtk_rc_style_get_type :: CULong

foreign import ccall unsafe "gdk_drag_context_get_type"
  gdk_drag_context_get_type :: CULong

foreign import ccall unsafe "gdk_pixbuf_get_type"
  gdk_pixbuf_get_type :: CULong

foreign import ccall unsafe "gdk_pixbuf_animation_get_type"
  gdk_pixbuf_animation_get_type :: CULong

foreign import ccall unsafe "gdk_pixbuf_simple_anim_get_type"
  gdk_pixbuf_simple_anim_get_type :: CULong

foreign import ccall unsafe "gdk_pixbuf_animation_iter_get_type"
  gdk_pixbuf_animation_iter_get_type :: CULong

foreign import ccall unsafe "gtk_text_child_anchor_get_type"
  gtk_text_child_anchor_get_type :: CULong

foreign import ccall unsafe "gtk_text_mark_get_type"
  gtk_text_mark_get_type :: CULong

foreign import ccall unsafe "gtk_recent_filter_get_type"
  gtk_recent_filter_get_type :: CULong

foreign import ccall unsafe "gtk_widget_get_type"
  gtk_widget_get_type :: CULong

foreign import ccall unsafe "gtk_hsv_get_type"
  gtk_hsv_get_type :: CULong

foreign import ccall unsafe "gtk_misc_get_type"
  gtk_misc_get_type :: CULong

foreign import ccall unsafe "gtk_label_get_type"
  gtk_label_get_type :: CULong

foreign import ccall unsafe "gtk_accel_label_get_type"
  gtk_accel_label_get_type :: CULong

foreign import ccall unsafe "gtk_arrow_get_type"
  gtk_arrow_get_type :: CULong

foreign import ccall unsafe "gtk_image_get_type"
  gtk_image_get_type :: CULong

foreign import ccall unsafe "gtk_container_get_type"
  gtk_container_get_type :: CULong

foreign import ccall unsafe "gtk_tool_palette_get_type"
  gtk_tool_palette_get_type :: CULong

foreign import ccall unsafe "gtk_tool_item_group_get_type"
  gtk_tool_item_group_get_type :: CULong

foreign import ccall unsafe "gtk_stack_get_type"
  gtk_stack_get_type :: CULong

foreign import ccall unsafe "gtk_bin_get_type"
  gtk_bin_get_type :: CULong

foreign import ccall unsafe "gtk_alignment_get_type"
  gtk_alignment_get_type :: CULong

foreign import ccall unsafe "gtk_frame_get_type"
  gtk_frame_get_type :: CULong

foreign import ccall unsafe "gtk_aspect_frame_get_type"
  gtk_aspect_frame_get_type :: CULong

foreign import ccall unsafe "gtk_button_get_type"
  gtk_button_get_type :: CULong

foreign import ccall unsafe "gtk_scale_button_get_type"
  gtk_scale_button_get_type :: CULong

foreign import ccall unsafe "gtk_volume_button_get_type"
  gtk_volume_button_get_type :: CULong

foreign import ccall unsafe "gtk_link_button_get_type"
  gtk_link_button_get_type :: CULong

foreign import ccall unsafe "gtk_toggle_button_get_type"
  gtk_toggle_button_get_type :: CULong

foreign import ccall unsafe "gtk_check_button_get_type"
  gtk_check_button_get_type :: CULong

foreign import ccall unsafe "gtk_radio_button_get_type"
  gtk_radio_button_get_type :: CULong

foreign import ccall unsafe "gtk_color_button_get_type"
  gtk_color_button_get_type :: CULong

foreign import ccall unsafe "gtk_font_button_get_type"
  gtk_font_button_get_type :: CULong

foreign import ccall unsafe "gtk_menu_item_get_type"
  gtk_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_check_menu_item_get_type"
  gtk_check_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_radio_menu_item_get_type"
  gtk_radio_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_tearoff_menu_item_get_type"
  gtk_tearoff_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_image_menu_item_get_type"
  gtk_image_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_separator_menu_item_get_type"
  gtk_separator_menu_item_get_type :: CULong

foreign import ccall unsafe "gtk_overlay_get_type"
  gtk_overlay_get_type :: CULong

foreign import ccall unsafe "gtk_window_get_type"
  gtk_window_get_type :: CULong

foreign import ccall unsafe "gtk_assistant_get_type"
  gtk_assistant_get_type :: CULong

foreign import ccall unsafe "gtk_offscreen_window_get_type"
  gtk_offscreen_window_get_type :: CULong

foreign import ccall unsafe "gtk_dialog_get_type"
  gtk_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_about_dialog_get_type"
  gtk_about_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_color_selection_dialog_get_type"
  gtk_color_selection_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_file_chooser_dialog_get_type"
  gtk_file_chooser_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_font_selection_dialog_get_type"
  gtk_font_selection_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_message_dialog_get_type"
  gtk_message_dialog_get_type :: CULong

foreign import ccall unsafe "gtk_event_box_get_type"
  gtk_event_box_get_type :: CULong

foreign import ccall unsafe "gtk_handle_box_get_type"
  gtk_handle_box_get_type :: CULong

foreign import ccall unsafe "gtk_scrolled_window_get_type"
  gtk_scrolled_window_get_type :: CULong

foreign import ccall unsafe "gtk_viewport_get_type"
  gtk_viewport_get_type :: CULong

foreign import ccall unsafe "gtk_expander_get_type"
  gtk_expander_get_type :: CULong

foreign import ccall unsafe "gtk_combo_box_get_type"
  gtk_combo_box_get_type :: CULong

foreign import ccall unsafe "gtk_tool_item_get_type"
  gtk_tool_item_get_type :: CULong

foreign import ccall unsafe "gtk_tool_button_get_type"
  gtk_tool_button_get_type :: CULong

foreign import ccall unsafe "gtk_menu_tool_button_get_type"
  gtk_menu_tool_button_get_type :: CULong

foreign import ccall unsafe "gtk_toggle_tool_button_get_type"
  gtk_toggle_tool_button_get_type :: CULong

foreign import ccall unsafe "gtk_radio_tool_button_get_type"
  gtk_radio_tool_button_get_type :: CULong

foreign import ccall unsafe "gtk_separator_tool_item_get_type"
  gtk_separator_tool_item_get_type :: CULong

foreign import ccall unsafe "gtk_stack_switcher_get_type"
  gtk_stack_switcher_get_type :: CULong

foreign import ccall unsafe "gtk_box_get_type"
  gtk_box_get_type :: CULong

foreign import ccall unsafe "gtk_button_box_get_type"
  gtk_button_box_get_type :: CULong

foreign import ccall unsafe "gtk_hbutton_box_get_type"
  gtk_hbutton_box_get_type :: CULong

foreign import ccall unsafe "gtk_vbutton_box_get_type"
  gtk_vbutton_box_get_type :: CULong

foreign import ccall unsafe "gtk_vbox_get_type"
  gtk_vbox_get_type :: CULong

foreign import ccall unsafe "gtk_recent_chooser_widget_get_type"
  gtk_recent_chooser_widget_get_type :: CULong

foreign import ccall unsafe "gtk_color_selection_get_type"
  gtk_color_selection_get_type :: CULong

foreign import ccall unsafe "gtk_font_selection_get_type"
  gtk_font_selection_get_type :: CULong

foreign import ccall unsafe "gtk_file_chooser_widget_get_type"
  gtk_file_chooser_widget_get_type :: CULong

foreign import ccall unsafe "gtk_hbox_get_type"
  gtk_hbox_get_type :: CULong

foreign import ccall unsafe "gtk_info_bar_get_type"
  gtk_info_bar_get_type :: CULong

foreign import ccall unsafe "gtk_file_chooser_button_get_type"
  gtk_file_chooser_button_get_type :: CULong

foreign import ccall unsafe "gtk_statusbar_get_type"
  gtk_statusbar_get_type :: CULong

foreign import ccall unsafe "gtk_grid_get_type"
  gtk_grid_get_type :: CULong

foreign import ccall unsafe "gtk_fixed_get_type"
  gtk_fixed_get_type :: CULong

foreign import ccall unsafe "gtk_paned_get_type"
  gtk_paned_get_type :: CULong

foreign import ccall unsafe "gtk_hpaned_get_type"
  gtk_hpaned_get_type :: CULong

foreign import ccall unsafe "gtk_vpaned_get_type"
  gtk_vpaned_get_type :: CULong

foreign import ccall unsafe "gtk_icon_view_get_type"
  gtk_icon_view_get_type :: CULong

foreign import ccall unsafe "gtk_layout_get_type"
  gtk_layout_get_type :: CULong

foreign import ccall unsafe "gtk_menu_shell_get_type"
  gtk_menu_shell_get_type :: CULong

foreign import ccall unsafe "gtk_menu_get_type"
  gtk_menu_get_type :: CULong

foreign import ccall unsafe "gtk_recent_chooser_menu_get_type"
  gtk_recent_chooser_menu_get_type :: CULong

foreign import ccall unsafe "gtk_menu_bar_get_type"
  gtk_menu_bar_get_type :: CULong

foreign import ccall unsafe "gtk_notebook_get_type"
  gtk_notebook_get_type :: CULong

foreign import ccall unsafe "gtk_table_get_type"
  gtk_table_get_type :: CULong

foreign import ccall unsafe "gtk_text_view_get_type"
  gtk_text_view_get_type :: CULong

foreign import ccall unsafe "gtk_toolbar_get_type"
  gtk_toolbar_get_type :: CULong

foreign import ccall unsafe "gtk_tree_view_get_type"
  gtk_tree_view_get_type :: CULong

foreign import ccall unsafe "gtk_calendar_get_type"
  gtk_calendar_get_type :: CULong

foreign import ccall unsafe "gtk_cell_view_get_type"
  gtk_cell_view_get_type :: CULong

foreign import ccall unsafe "gtk_drawing_area_get_type"
  gtk_drawing_area_get_type :: CULong

foreign import ccall unsafe "gtk_spinner_get_type"
  gtk_spinner_get_type :: CULong

foreign import ccall unsafe "gtk_entry_get_type"
  gtk_entry_get_type :: CULong

foreign import ccall unsafe "gtk_spin_button_get_type"
  gtk_spin_button_get_type :: CULong

foreign import ccall unsafe "gtk_range_get_type"
  gtk_range_get_type :: CULong

foreign import ccall unsafe "gtk_scale_get_type"
  gtk_scale_get_type :: CULong

foreign import ccall unsafe "gtk_hscale_get_type"
  gtk_hscale_get_type :: CULong

foreign import ccall unsafe "gtk_vscale_get_type"
  gtk_vscale_get_type :: CULong

foreign import ccall unsafe "gtk_scrollbar_get_type"
  gtk_scrollbar_get_type :: CULong

foreign import ccall unsafe "gtk_hscrollbar_get_type"
  gtk_hscrollbar_get_type :: CULong

foreign import ccall unsafe "gtk_vscrollbar_get_type"
  gtk_vscrollbar_get_type :: CULong

foreign import ccall unsafe "gtk_separator_get_type"
  gtk_separator_get_type :: CULong

foreign import ccall unsafe "gtk_hseparator_get_type"
  gtk_hseparator_get_type :: CULong

foreign import ccall unsafe "gtk_vseparator_get_type"
  gtk_vseparator_get_type :: CULong

foreign import ccall unsafe "gtk_invisible_get_type"
  gtk_invisible_get_type :: CULong

foreign import ccall unsafe "gtk_progress_bar_get_type"
  gtk_progress_bar_get_type :: CULong

foreign import ccall unsafe "gtk_level_bar_get_type"
  gtk_level_bar_get_type :: CULong

foreign import ccall unsafe "gtk_adjustment_get_type"
  gtk_adjustment_get_type :: CULong

foreign import ccall unsafe "gtk_im_context_get_type"
  gtk_im_context_get_type :: CULong

foreign import ccall unsafe "gtk_im_multicontext_get_type"
  gtk_im_multicontext_get_type :: CULong

foreign import ccall unsafe "gtk_im_context_simple_get_type"
  gtk_im_context_simple_get_type :: CULong

foreign import ccall unsafe "gtk_tree_view_column_get_type"
  gtk_tree_view_column_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_get_type"
  gtk_cell_renderer_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_spinner_get_type"
  gtk_cell_renderer_spinner_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_pixbuf_get_type"
  gtk_cell_renderer_pixbuf_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_text_get_type"
  gtk_cell_renderer_text_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_accel_get_type"
  gtk_cell_renderer_accel_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_spin_get_type"
  gtk_cell_renderer_spin_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_combo_get_type"
  gtk_cell_renderer_combo_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_toggle_get_type"
  gtk_cell_renderer_toggle_get_type :: CULong

foreign import ccall unsafe "gtk_cell_renderer_progress_get_type"
  gtk_cell_renderer_progress_get_type :: CULong

foreign import ccall unsafe "gtk_file_filter_get_type"
  gtk_file_filter_get_type :: CULong

foreign import ccall unsafe "gtk_builder_get_type"
  gtk_builder_get_type :: CULong

foreign import ccall unsafe "gtk_style_context_get_type"
  gtk_style_context_get_type :: CULong

foreign import ccall unsafe "gtk_style_provider_get_type"
  gtk_style_provider_get_type :: CULong

foreign import ccall unsafe "gtk_css_provider_get_type"
  gtk_css_provider_get_type :: CULong

foreign import ccall unsafe "gtk_cell_layout_get_type"
  gtk_cell_layout_get_type :: CULong

foreign import ccall unsafe "gtk_tree_sortable_get_type"
  gtk_tree_sortable_get_type :: CULong

foreign import ccall unsafe "gtk_tooltip_get_type"
  gtk_tooltip_get_type :: CULong

foreign import ccall unsafe "gtk_status_icon_get_type"
  gtk_status_icon_get_type :: CULong

foreign import ccall unsafe "gtk_tree_selection_get_type"
  gtk_tree_selection_get_type :: CULong

foreign import ccall unsafe "gtk_tree_model_get_type"
  gtk_tree_model_get_type :: CULong

foreign import ccall unsafe "gtk_tree_store_get_type"
  gtk_tree_store_get_type :: CULong

foreign import ccall unsafe "gtk_list_store_get_type"
  gtk_list_store_get_type :: CULong

foreign import ccall unsafe "gtk_tree_model_sort_get_type"
  gtk_tree_model_sort_get_type :: CULong

foreign import ccall unsafe "gtk_tree_model_filter_get_type"
  gtk_tree_model_filter_get_type :: CULong

foreign import ccall unsafe "gtk_icon_factory_get_type"
  gtk_icon_factory_get_type :: CULong

foreign import ccall unsafe "gtk_icon_theme_get_type"
  gtk_icon_theme_get_type :: CULong

foreign import ccall unsafe "gtk_size_group_get_type"
  gtk_size_group_get_type :: CULong

foreign import ccall unsafe "gtk_clipboard_get_type"
  gtk_clipboard_get_type :: CULong

foreign import ccall unsafe "gtk_accel_group_get_type"
  gtk_accel_group_get_type :: CULong

foreign import ccall unsafe "gtk_accel_map_get_type"
  gtk_accel_map_get_type :: CULong

foreign import ccall unsafe "gtk_entry_completion_get_type"
  gtk_entry_completion_get_type :: CULong

foreign import ccall unsafe "gtk_entry_buffer_get_type"
  gtk_entry_buffer_get_type :: CULong

foreign import ccall unsafe "gtk_action_get_type"
  gtk_action_get_type :: CULong

foreign import ccall unsafe "gtk_recent_action_get_type"
  gtk_recent_action_get_type :: CULong

foreign import ccall unsafe "gtk_toggle_action_get_type"
  gtk_toggle_action_get_type :: CULong

foreign import ccall unsafe "gtk_radio_action_get_type"
  gtk_radio_action_get_type :: CULong

foreign import ccall unsafe "gtk_action_group_get_type"
  gtk_action_group_get_type :: CULong

foreign import ccall unsafe "gtk_ui_manager_get_type"
  gtk_ui_manager_get_type :: CULong

foreign import ccall unsafe "gtk_window_group_get_type"
  gtk_window_group_get_type :: CULong

foreign import ccall unsafe "gtk_cell_editable_get_type"
  gtk_cell_editable_get_type :: CULong

foreign import ccall unsafe "gtk_editable_get_type"
  gtk_editable_get_type :: CULong

foreign import ccall unsafe "gtk_file_chooser_get_type"
  gtk_file_chooser_get_type :: CULong