packages feed

qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Generated/Widgets/QListView.hs

{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------

module Graphics.UI.Qtah.Generated.Widgets.QListView (
  castQListViewToQAbstractItemView,
  castQAbstractItemViewToQListView,
  castQListViewToQAbstractScrollArea,
  castQAbstractScrollAreaToQListView,
  castQListViewToQFrame,
  castQFrameToQListView,
  castQListViewToQWidget,
  castQWidgetToQListView,
  castQListViewToQObject,
  castQObjectToQListView,
  QListViewValue (..),
  QListViewConstPtr (..),
  batchSize,
  flow,
  gridSize,
  isWrapping,
  itemAlignment,
  layoutMode,
  modelColumn,
  movement,
  resizeMode,
  isSelectionRectVisible,
  spacing,
  uniformItemSizes,
  viewMode,
  wordWrap,
  indexAt,
  isRowHidden,
  QListViewPtr (..),
  setBatchSize,
  clearPropertyFlags,
  setFlow,
  setGridSize,
  setWrapping,
  setItemAlignment,
  setLayoutMode,
  setModelColumn,
  setMovement,
  setResizeMode,
  setSelectionRectVisible,
  setSpacing,
  setUniformItemSizes,
  setViewMode,
  setWordWrap,
  scrollTo,
  scrollToWithHint,
  setRowHidden,
  visualRect,
  emitIndexesMoved,
  QListViewConst (..),
  castQListViewToConst,
  QListView (..),
  castQListViewToNonconst,
  new,
  newWithParent,
  QListViewSuper (..),
  QListViewSuperConst (..),
  QListViewFlow (..),
  QListViewLayoutMode (..),
  QListViewMovement (..),
  QListViewResizeMode (..),
  QListViewViewMode (..),
  ) where

import qualified Foreign as HoppyF
import qualified Foreign.C as HoppyFC
import qualified Foreign.Hoppy.Runtime as HoppyFHR
import qualified Graphics.UI.Qtah.Core.HRect as HRect
import qualified Graphics.UI.Qtah.Core.HSize as HSize
import qualified Graphics.UI.Qtah.Flags as QtahFlags
import qualified Graphics.UI.Qtah.Generated.Core.QList.QModelIndex as M200
import qualified Graphics.UI.Qtah.Generated.Core.QModelIndex as M92
import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94
import qualified Graphics.UI.Qtah.Generated.Core.QPoint as M114
import qualified Graphics.UI.Qtah.Generated.Core.QRect as M122
import qualified Graphics.UI.Qtah.Generated.Core.QSize as M134
import qualified Graphics.UI.Qtah.Generated.Core.Types as M190
import qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractItemView as M360
import qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractScrollArea as M362
import qualified Graphics.UI.Qtah.Generated.Widgets.QFrame as M400
import qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506
import Prelude (($), (.), (/=), (=<<), (==), (>>=))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP

foreign import ccall "genpop__QListView_new" new' ::  HoppyP.IO (HoppyF.Ptr QListView)
foreign import ccall "genpop__QListView_newWithParent" newWithParent' ::  HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QListView)
foreign import ccall "genpop__QListView_batchSize" batchSize' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setBatchSize" setBatchSize' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_clearPropertyFlags" clearPropertyFlags' ::  HoppyF.Ptr QListView -> HoppyP.IO ()
foreign import ccall "genpop__QListView_flow" flow' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setFlow" setFlow' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_gridSize" gridSize' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO (HoppyF.Ptr M134.QSizeConst)
foreign import ccall "genpop__QListView_setGridSize" setGridSize' ::  HoppyF.Ptr QListView -> HoppyF.Ptr M134.QSizeConst -> HoppyP.IO ()
foreign import ccall "genpop__QListView_isWrapping" isWrapping' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QListView_setWrapping" setWrapping' ::  HoppyF.Ptr QListView -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QListView_itemAlignment" itemAlignment' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setItemAlignment" setItemAlignment' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_layoutMode" layoutMode' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setLayoutMode" setLayoutMode' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_modelColumn" modelColumn' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setModelColumn" setModelColumn' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_movement" movement' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setMovement" setMovement' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_resizeMode" resizeMode' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setResizeMode" setResizeMode' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_isSelectionRectVisible" isSelectionRectVisible' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QListView_setSelectionRectVisible" setSelectionRectVisible' ::  HoppyF.Ptr QListView -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QListView_spacing" spacing' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setSpacing" setSpacing' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_uniformItemSizes" uniformItemSizes' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QListView_setUniformItemSizes" setUniformItemSizes' ::  HoppyF.Ptr QListView -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QListView_viewMode" viewMode' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CInt
foreign import ccall "genpop__QListView_setViewMode" setViewMode' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_wordWrap" wordWrap' ::  HoppyF.Ptr QListViewConst -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QListView_setWordWrap" setWordWrap' ::  HoppyF.Ptr QListView -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QListView_indexAt" indexAt' ::  HoppyF.Ptr QListViewConst -> HoppyF.Ptr M114.QPointConst -> HoppyP.IO (HoppyF.Ptr M92.QModelIndexConst)
foreign import ccall "genpop__QListView_isRowHidden" isRowHidden' ::  HoppyF.Ptr QListViewConst -> HoppyFC.CInt -> HoppyP.IO HoppyFC.CBool
foreign import ccall "genpop__QListView_scrollTo" scrollTo' ::  HoppyF.Ptr QListView -> HoppyF.Ptr M92.QModelIndexConst -> HoppyP.IO ()
foreign import ccall "genpop__QListView_scrollToWithHint" scrollToWithHint' ::  HoppyF.Ptr QListView -> HoppyF.Ptr M92.QModelIndexConst -> HoppyFC.CInt -> HoppyP.IO ()
foreign import ccall "genpop__QListView_setRowHidden" setRowHidden' ::  HoppyF.Ptr QListView -> HoppyFC.CInt -> HoppyFC.CBool -> HoppyP.IO ()
foreign import ccall "genpop__QListView_visualRect" visualRect' ::  HoppyF.Ptr QListView -> HoppyF.Ptr M92.QModelIndexConst -> HoppyP.IO (HoppyF.Ptr M122.QRectConst)
foreign import ccall "genpop__QListView_emitIndexesMoved" emitIndexesMoved' ::  HoppyF.Ptr QListView -> HoppyF.Ptr M200.QListQModelIndexConst -> HoppyP.IO ()
foreign import ccall "gencast__QListView__QAbstractItemView" castQListViewToQAbstractItemView :: HoppyF.Ptr QListViewConst -> HoppyF.Ptr M360.QAbstractItemViewConst
foreign import ccall "gencast__QAbstractItemView__QListView" castQAbstractItemViewToQListView :: HoppyF.Ptr M360.QAbstractItemViewConst -> HoppyF.Ptr QListViewConst
foreign import ccall "gencast__QListView__QAbstractScrollArea" castQListViewToQAbstractScrollArea :: HoppyF.Ptr QListViewConst -> HoppyF.Ptr M362.QAbstractScrollAreaConst
foreign import ccall "gencast__QAbstractScrollArea__QListView" castQAbstractScrollAreaToQListView :: HoppyF.Ptr M362.QAbstractScrollAreaConst -> HoppyF.Ptr QListViewConst
foreign import ccall "gencast__QListView__QFrame" castQListViewToQFrame :: HoppyF.Ptr QListViewConst -> HoppyF.Ptr M400.QFrameConst
foreign import ccall "gencast__QFrame__QListView" castQFrameToQListView :: HoppyF.Ptr M400.QFrameConst -> HoppyF.Ptr QListViewConst
foreign import ccall "gencast__QListView__QWidget" castQListViewToQWidget :: HoppyF.Ptr QListViewConst -> HoppyF.Ptr M506.QWidgetConst
foreign import ccall "gencast__QWidget__QListView" castQWidgetToQListView :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr QListViewConst
foreign import ccall "gencast__QListView__QObject" castQListViewToQObject :: HoppyF.Ptr QListViewConst -> HoppyF.Ptr M94.QObjectConst
foreign import ccall "gencast__QObject__QListView" castQObjectToQListView :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QListViewConst
foreign import ccall "gendel__QListView" delete'QListView :: HoppyF.Ptr QListViewConst -> HoppyP.IO ()
foreign import ccall "&gendel__QListView" deletePtr'QListView :: HoppyF.FunPtr (HoppyF.Ptr QListViewConst -> HoppyP.IO ())

class QListViewValue a where
  withQListViewPtr :: a -> (QListViewConst -> HoppyP.IO b) -> HoppyP.IO b

instance {-# OVERLAPPABLE #-} QListViewConstPtr a => QListViewValue a where
  withQListViewPtr = HoppyP.flip ($) . toQListViewConst

class (M360.QAbstractItemViewConstPtr this) => QListViewConstPtr this where
  toQListViewConst :: this -> QListViewConst

batchSize :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Int)
batchSize arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) =<<
  (batchSize' arg'1')

flow :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO QListViewFlow)
flow arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.toCppEnum
  ) =<<
  (flow' arg'1')

gridSize :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HSize.HSize)
gridSize arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (HoppyFHR.decodeAndDelete . M134.QSizeConst) =<<
  (gridSize' arg'1')

isWrapping :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool)
isWrapping arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    (HoppyP.return . (/= 0))
  ) =<<
  (isWrapping' arg'1')

itemAlignment :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtAlignment)
itemAlignment arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    QtahP.return . QtahFlags.numToFlags
  ) =<<
  (itemAlignment' arg'1')

layoutMode :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO QListViewLayoutMode)
layoutMode arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.toCppEnum
  ) =<<
  (layoutMode' arg'1')

modelColumn :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Int)
modelColumn arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) =<<
  (modelColumn' arg'1')

movement :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO QListViewMovement)
movement arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.toCppEnum
  ) =<<
  (movement' arg'1')

resizeMode :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO QListViewResizeMode)
resizeMode arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.toCppEnum
  ) =<<
  (resizeMode' arg'1')

isSelectionRectVisible :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool)
isSelectionRectVisible arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    (HoppyP.return . (/= 0))
  ) =<<
  (isSelectionRectVisible' arg'1')

spacing :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Int)
spacing arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) =<<
  (spacing' arg'1')

uniformItemSizes :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool)
uniformItemSizes arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    (HoppyP.return . (/= 0))
  ) =<<
  (uniformItemSizes' arg'1')

viewMode :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO QListViewViewMode)
viewMode arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.toCppEnum
  ) =<<
  (viewMode' arg'1')

wordWrap :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool)
wordWrap arg'1 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    (HoppyP.return . (/= 0))
  ) =<<
  (wordWrap' arg'1')

indexAt :: (QListViewValue this, M114.QPointValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO M92.QModelIndex)
indexAt arg'1 arg'2 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  M114.withQPointPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (HoppyFHR.decodeAndDelete . M92.QModelIndexConst) =<<
  (indexAt' arg'1' arg'2')

isRowHidden :: (QListViewValue this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO HoppyP.Bool)
isRowHidden arg'1 arg'2 =
  withQListViewPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) arg'2 >>= \arg'2' ->
  (
    (HoppyP.return . (/= 0))
  ) =<<
  (isRowHidden' arg'1' arg'2')

class (QListViewConstPtr this, M360.QAbstractItemViewPtr this) => QListViewPtr this where
  toQListView :: this -> QListView

setBatchSize :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO ())
setBatchSize arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) arg'2 >>= \arg'2' ->
  (setBatchSize' arg'1' arg'2')

clearPropertyFlags :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.IO ())
clearPropertyFlags arg'1 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (clearPropertyFlags' arg'1')

setFlow :: (QListViewPtr this) => (this) {- ^ this -} -> (QListViewFlow) -> (HoppyP.IO ())
setFlow arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'2 >>= \arg'2' ->
  (setFlow' arg'1' arg'2')

setGridSize :: (QListViewPtr this, M134.QSizeValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ())
setGridSize arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  M134.withQSizePtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (setGridSize' arg'1' arg'2')

setWrapping :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ())
setWrapping arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    \x -> HoppyP.return $ if x then 1 else 0
  ) arg'2 >>= \arg'2' ->
  (setWrapping' arg'1' arg'2')

setItemAlignment :: (QListViewPtr this, M190.IsQtAlignment arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ())
setItemAlignment arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    QtahP.return . QtahFlags.flagsToNum . M190.toQtAlignment
  ) arg'2 >>= \arg'2' ->
  (setItemAlignment' arg'1' arg'2')

setLayoutMode :: (QListViewPtr this) => (this) {- ^ this -} -> (QListViewLayoutMode) -> (HoppyP.IO ())
setLayoutMode arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'2 >>= \arg'2' ->
  (setLayoutMode' arg'1' arg'2')

setModelColumn :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO ())
setModelColumn arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) arg'2 >>= \arg'2' ->
  (setModelColumn' arg'1' arg'2')

setMovement :: (QListViewPtr this) => (this) {- ^ this -} -> (QListViewMovement) -> (HoppyP.IO ())
setMovement arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'2 >>= \arg'2' ->
  (setMovement' arg'1' arg'2')

setResizeMode :: (QListViewPtr this) => (this) {- ^ this -} -> (QListViewResizeMode) -> (HoppyP.IO ())
setResizeMode arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'2 >>= \arg'2' ->
  (setResizeMode' arg'1' arg'2')

setSelectionRectVisible :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ())
setSelectionRectVisible arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    \x -> HoppyP.return $ if x then 1 else 0
  ) arg'2 >>= \arg'2' ->
  (setSelectionRectVisible' arg'1' arg'2')

setSpacing :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.IO ())
setSpacing arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) arg'2 >>= \arg'2' ->
  (setSpacing' arg'1' arg'2')

setUniformItemSizes :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ())
setUniformItemSizes arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    \x -> HoppyP.return $ if x then 1 else 0
  ) arg'2 >>= \arg'2' ->
  (setUniformItemSizes' arg'1' arg'2')

setViewMode :: (QListViewPtr this) => (this) {- ^ this -} -> (QListViewViewMode) -> (HoppyP.IO ())
setViewMode arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'2 >>= \arg'2' ->
  (setViewMode' arg'1' arg'2')

setWordWrap :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ())
setWordWrap arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    \x -> HoppyP.return $ if x then 1 else 0
  ) arg'2 >>= \arg'2' ->
  (setWordWrap' arg'1' arg'2')

scrollTo :: (QListViewPtr this, M92.QModelIndexValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ())
scrollTo arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  M92.withQModelIndexPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (scrollTo' arg'1' arg'2')

scrollToWithHint :: (QListViewPtr this, M92.QModelIndexValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (M360.QAbstractItemViewScrollHint) -> (HoppyP.IO ())
scrollToWithHint arg'1 arg'2 arg'3 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  M92.withQModelIndexPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (
    HoppyP.return . HoppyFHR.fromCppEnum
  ) arg'3 >>= \arg'3' ->
  (scrollToWithHint' arg'1' arg'2' arg'3')

setRowHidden :: (QListViewPtr this) => (this) {- ^ this -} -> (HoppyP.Int) -> (HoppyP.Bool) -> (HoppyP.IO ())
setRowHidden arg'1 arg'2 arg'3 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  (
    HoppyP.return . HoppyFHR.coerceIntegral
  ) arg'2 >>= \arg'2' ->
  (
    \x -> HoppyP.return $ if x then 1 else 0
  ) arg'3 >>= \arg'3' ->
  (setRowHidden' arg'1' arg'2' arg'3')

visualRect :: (QListViewPtr this, M92.QModelIndexValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO HRect.HRect)
visualRect arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  M92.withQModelIndexPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (HoppyFHR.decodeAndDelete . M122.QRectConst) =<<
  (visualRect' arg'1' arg'2')

emitIndexesMoved :: (QListViewPtr this, M200.QListQModelIndexValue arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ())
emitIndexesMoved arg'1 arg'2 =
  HoppyFHR.withCppPtr (toQListView arg'1) $ \arg'1' ->
  M200.withQListQModelIndexPtr arg'2 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'2' ->
  (emitIndexesMoved' arg'1' arg'2')

data QListViewConst =
    QListViewConst (HoppyF.Ptr QListViewConst)
  | QListViewConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QListViewConst)
  deriving (HoppyP.Show)

instance HoppyP.Eq QListViewConst where
  x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y

instance HoppyP.Ord QListViewConst where
  compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)

castQListViewToConst :: QListView -> QListViewConst
castQListViewToConst (QListView ptr') = QListViewConst $ HoppyF.castPtr ptr'
castQListViewToConst (QListViewGc fptr' ptr') = QListViewConstGc fptr' $ HoppyF.castPtr ptr'

instance HoppyFHR.CppPtr QListViewConst where
  nullptr = QListViewConst HoppyF.nullPtr
  
  withCppPtr (QListViewConst ptr') f' = f' ptr'
  withCppPtr (QListViewConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
  
  toPtr (QListViewConst ptr') = ptr'
  toPtr (QListViewConstGc _ ptr') = ptr'
  
  touchCppPtr (QListViewConst _) = HoppyP.return ()
  touchCppPtr (QListViewConstGc fptr' _) = HoppyF.touchForeignPtr fptr'

instance HoppyFHR.Deletable QListViewConst where
  delete (QListViewConst ptr') = delete'QListView ptr'
  delete (QListViewConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QListViewConst", " object."]
  
  toGc this'@(QListViewConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QListViewConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QListView :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
  toGc this'@(QListViewConstGc {}) = HoppyP.return this'

instance QListViewConstPtr QListViewConst where
  toQListViewConst = HoppyP.id

instance M360.QAbstractItemViewConstPtr QListViewConst where
  toQAbstractItemViewConst (QListViewConst ptr') = M360.QAbstractItemViewConst $ castQListViewToQAbstractItemView ptr'
  toQAbstractItemViewConst (QListViewConstGc fptr' ptr') = M360.QAbstractItemViewConstGc fptr' $ castQListViewToQAbstractItemView ptr'

instance M362.QAbstractScrollAreaConstPtr QListViewConst where
  toQAbstractScrollAreaConst (QListViewConst ptr') = M362.QAbstractScrollAreaConst $ castQListViewToQAbstractScrollArea ptr'
  toQAbstractScrollAreaConst (QListViewConstGc fptr' ptr') = M362.QAbstractScrollAreaConstGc fptr' $ castQListViewToQAbstractScrollArea ptr'

instance M400.QFrameConstPtr QListViewConst where
  toQFrameConst (QListViewConst ptr') = M400.QFrameConst $ castQListViewToQFrame ptr'
  toQFrameConst (QListViewConstGc fptr' ptr') = M400.QFrameConstGc fptr' $ castQListViewToQFrame ptr'

instance M506.QWidgetConstPtr QListViewConst where
  toQWidgetConst (QListViewConst ptr') = M506.QWidgetConst $ castQListViewToQWidget ptr'
  toQWidgetConst (QListViewConstGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQListViewToQWidget ptr'

instance M94.QObjectConstPtr QListViewConst where
  toQObjectConst (QListViewConst ptr') = M94.QObjectConst $ castQListViewToQObject ptr'
  toQObjectConst (QListViewConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQListViewToQObject ptr'

data QListView =
    QListView (HoppyF.Ptr QListView)
  | QListViewGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QListView)
  deriving (HoppyP.Show)

instance HoppyP.Eq QListView where
  x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y

instance HoppyP.Ord QListView where
  compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y)

castQListViewToNonconst :: QListViewConst -> QListView
castQListViewToNonconst (QListViewConst ptr') = QListView $ HoppyF.castPtr ptr'
castQListViewToNonconst (QListViewConstGc fptr' ptr') = QListViewGc fptr' $ HoppyF.castPtr ptr'

instance HoppyFHR.CppPtr QListView where
  nullptr = QListView HoppyF.nullPtr
  
  withCppPtr (QListView ptr') f' = f' ptr'
  withCppPtr (QListViewGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr'
  
  toPtr (QListView ptr') = ptr'
  toPtr (QListViewGc _ ptr') = ptr'
  
  touchCppPtr (QListView _) = HoppyP.return ()
  touchCppPtr (QListViewGc fptr' _) = HoppyF.touchForeignPtr fptr'

instance HoppyFHR.Deletable QListView where
  delete (QListView ptr') = delete'QListView $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QListViewConst)
  delete (QListViewGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QListView", " object."]
  
  toGc this'@(QListView ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QListViewGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QListView :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ())
  toGc this'@(QListViewGc {}) = HoppyP.return this'

instance QListViewConstPtr QListView where
  toQListViewConst (QListView ptr') = QListViewConst $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQListViewConst (QListViewGc fptr' ptr') = QListViewConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance QListViewPtr QListView where
  toQListView = HoppyP.id

instance M360.QAbstractItemViewConstPtr QListView where
  toQAbstractItemViewConst (QListView ptr') = M360.QAbstractItemViewConst $ castQListViewToQAbstractItemView $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQAbstractItemViewConst (QListViewGc fptr' ptr') = M360.QAbstractItemViewConstGc fptr' $ castQListViewToQAbstractItemView $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M360.QAbstractItemViewPtr QListView where
  toQAbstractItemView (QListView ptr') = M360.QAbstractItemView $ (HoppyF.castPtr :: HoppyF.Ptr M360.QAbstractItemViewConst -> HoppyF.Ptr M360.QAbstractItemView) $ castQListViewToQAbstractItemView $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQAbstractItemView (QListViewGc fptr' ptr') = M360.QAbstractItemViewGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M360.QAbstractItemViewConst -> HoppyF.Ptr M360.QAbstractItemView) $ castQListViewToQAbstractItemView $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M362.QAbstractScrollAreaConstPtr QListView where
  toQAbstractScrollAreaConst (QListView ptr') = M362.QAbstractScrollAreaConst $ castQListViewToQAbstractScrollArea $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQAbstractScrollAreaConst (QListViewGc fptr' ptr') = M362.QAbstractScrollAreaConstGc fptr' $ castQListViewToQAbstractScrollArea $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M362.QAbstractScrollAreaPtr QListView where
  toQAbstractScrollArea (QListView ptr') = M362.QAbstractScrollArea $ (HoppyF.castPtr :: HoppyF.Ptr M362.QAbstractScrollAreaConst -> HoppyF.Ptr M362.QAbstractScrollArea) $ castQListViewToQAbstractScrollArea $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQAbstractScrollArea (QListViewGc fptr' ptr') = M362.QAbstractScrollAreaGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M362.QAbstractScrollAreaConst -> HoppyF.Ptr M362.QAbstractScrollArea) $ castQListViewToQAbstractScrollArea $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M400.QFrameConstPtr QListView where
  toQFrameConst (QListView ptr') = M400.QFrameConst $ castQListViewToQFrame $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQFrameConst (QListViewGc fptr' ptr') = M400.QFrameConstGc fptr' $ castQListViewToQFrame $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M400.QFramePtr QListView where
  toQFrame (QListView ptr') = M400.QFrame $ (HoppyF.castPtr :: HoppyF.Ptr M400.QFrameConst -> HoppyF.Ptr M400.QFrame) $ castQListViewToQFrame $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQFrame (QListViewGc fptr' ptr') = M400.QFrameGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M400.QFrameConst -> HoppyF.Ptr M400.QFrame) $ castQListViewToQFrame $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M506.QWidgetConstPtr QListView where
  toQWidgetConst (QListView ptr') = M506.QWidgetConst $ castQListViewToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQWidgetConst (QListViewGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQListViewToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M506.QWidgetPtr QListView where
  toQWidget (QListView ptr') = M506.QWidget $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQListViewToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQWidget (QListViewGc fptr' ptr') = M506.QWidgetGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQListViewToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M94.QObjectConstPtr QListView where
  toQObjectConst (QListView ptr') = M94.QObjectConst $ castQListViewToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQObjectConst (QListViewGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQListViewToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

instance M94.QObjectPtr QListView where
  toQObject (QListView ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQListViewToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'
  toQObject (QListViewGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQListViewToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QListView -> HoppyF.Ptr QListViewConst) ptr'

new :: (HoppyP.IO QListView)
new =
  HoppyP.fmap QListView
  (new')

newWithParent :: (M506.QWidgetPtr arg'1) => (arg'1) -> (HoppyP.IO QListView)
newWithParent arg'1 =
  HoppyFHR.withCppPtr (M506.toQWidget arg'1) $ \arg'1' ->
  HoppyP.fmap QListView
  (newWithParent' arg'1')

class QListViewSuper a where
  downToQListView :: a -> QListView

instance QListViewSuper M360.QAbstractItemView where
  downToQListView = castQListViewToNonconst . cast' . M360.castQAbstractItemViewToConst
    where
      cast' (M360.QAbstractItemViewConst ptr') = QListViewConst $ castQAbstractItemViewToQListView ptr'
      cast' (M360.QAbstractItemViewConstGc fptr' ptr') = QListViewConstGc fptr' $ castQAbstractItemViewToQListView ptr'
instance QListViewSuper M362.QAbstractScrollArea where
  downToQListView = castQListViewToNonconst . cast' . M362.castQAbstractScrollAreaToConst
    where
      cast' (M362.QAbstractScrollAreaConst ptr') = QListViewConst $ castQAbstractScrollAreaToQListView ptr'
      cast' (M362.QAbstractScrollAreaConstGc fptr' ptr') = QListViewConstGc fptr' $ castQAbstractScrollAreaToQListView ptr'
instance QListViewSuper M400.QFrame where
  downToQListView = castQListViewToNonconst . cast' . M400.castQFrameToConst
    where
      cast' (M400.QFrameConst ptr') = QListViewConst $ castQFrameToQListView ptr'
      cast' (M400.QFrameConstGc fptr' ptr') = QListViewConstGc fptr' $ castQFrameToQListView ptr'
instance QListViewSuper M506.QWidget where
  downToQListView = castQListViewToNonconst . cast' . M506.castQWidgetToConst
    where
      cast' (M506.QWidgetConst ptr') = QListViewConst $ castQWidgetToQListView ptr'
      cast' (M506.QWidgetConstGc fptr' ptr') = QListViewConstGc fptr' $ castQWidgetToQListView ptr'
instance QListViewSuper M94.QObject where
  downToQListView = castQListViewToNonconst . cast' . M94.castQObjectToConst
    where
      cast' (M94.QObjectConst ptr') = QListViewConst $ castQObjectToQListView ptr'
      cast' (M94.QObjectConstGc fptr' ptr') = QListViewConstGc fptr' $ castQObjectToQListView ptr'

class QListViewSuperConst a where
  downToQListViewConst :: a -> QListViewConst

instance QListViewSuperConst M360.QAbstractItemViewConst where
  downToQListViewConst = cast'
    where
      cast' (M360.QAbstractItemViewConst ptr') = QListViewConst $ castQAbstractItemViewToQListView ptr'
      cast' (M360.QAbstractItemViewConstGc fptr' ptr') = QListViewConstGc fptr' $ castQAbstractItemViewToQListView ptr'
instance QListViewSuperConst M362.QAbstractScrollAreaConst where
  downToQListViewConst = cast'
    where
      cast' (M362.QAbstractScrollAreaConst ptr') = QListViewConst $ castQAbstractScrollAreaToQListView ptr'
      cast' (M362.QAbstractScrollAreaConstGc fptr' ptr') = QListViewConstGc fptr' $ castQAbstractScrollAreaToQListView ptr'
instance QListViewSuperConst M400.QFrameConst where
  downToQListViewConst = cast'
    where
      cast' (M400.QFrameConst ptr') = QListViewConst $ castQFrameToQListView ptr'
      cast' (M400.QFrameConstGc fptr' ptr') = QListViewConstGc fptr' $ castQFrameToQListView ptr'
instance QListViewSuperConst M506.QWidgetConst where
  downToQListViewConst = cast'
    where
      cast' (M506.QWidgetConst ptr') = QListViewConst $ castQWidgetToQListView ptr'
      cast' (M506.QWidgetConstGc fptr' ptr') = QListViewConstGc fptr' $ castQWidgetToQListView ptr'
instance QListViewSuperConst M94.QObjectConst where
  downToQListViewConst = cast'
    where
      cast' (M94.QObjectConst ptr') = QListViewConst $ castQObjectToQListView ptr'
      cast' (M94.QObjectConstGc fptr' ptr') = QListViewConstGc fptr' $ castQObjectToQListView ptr'

instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QListView)) QListView where
  assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value'

instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QListView)) QListView where
  decode = HoppyP.fmap QListView . HoppyF.peek

data QListViewFlow =
  LeftToRight
  | TopToBottom
  | UnknownQListViewFlow (HoppyFC.CInt)
  deriving (HoppyP.Show)

instance HoppyFHR.CppEnum (HoppyFC.CInt) QListViewFlow where
  fromCppEnum LeftToRight = 0
  fromCppEnum TopToBottom = 1
  fromCppEnum (UnknownQListViewFlow n) = n
  
  toCppEnum (0) = LeftToRight
  toCppEnum (1) = TopToBottom
  toCppEnum n = UnknownQListViewFlow n

instance HoppyP.Eq QListViewFlow where
  x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y

instance HoppyP.Ord QListViewFlow where
  compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)

data QListViewLayoutMode =
  SinglePass
  | Batched
  | UnknownQListViewLayoutMode (HoppyFC.CInt)
  deriving (HoppyP.Show)

instance HoppyFHR.CppEnum (HoppyFC.CInt) QListViewLayoutMode where
  fromCppEnum SinglePass = 0
  fromCppEnum Batched = 1
  fromCppEnum (UnknownQListViewLayoutMode n) = n
  
  toCppEnum (0) = SinglePass
  toCppEnum (1) = Batched
  toCppEnum n = UnknownQListViewLayoutMode n

instance HoppyP.Eq QListViewLayoutMode where
  x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y

instance HoppyP.Ord QListViewLayoutMode where
  compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)

data QListViewMovement =
  Static
  | Free
  | Snap
  | UnknownQListViewMovement (HoppyFC.CInt)
  deriving (HoppyP.Show)

instance HoppyFHR.CppEnum (HoppyFC.CInt) QListViewMovement where
  fromCppEnum Static = 0
  fromCppEnum Free = 1
  fromCppEnum Snap = 2
  fromCppEnum (UnknownQListViewMovement n) = n
  
  toCppEnum (0) = Static
  toCppEnum (1) = Free
  toCppEnum (2) = Snap
  toCppEnum n = UnknownQListViewMovement n

instance HoppyP.Eq QListViewMovement where
  x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y

instance HoppyP.Ord QListViewMovement where
  compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)

data QListViewResizeMode =
  Fixed
  | Adjust
  | UnknownQListViewResizeMode (HoppyFC.CInt)
  deriving (HoppyP.Show)

instance HoppyFHR.CppEnum (HoppyFC.CInt) QListViewResizeMode where
  fromCppEnum Fixed = 0
  fromCppEnum Adjust = 1
  fromCppEnum (UnknownQListViewResizeMode n) = n
  
  toCppEnum (0) = Fixed
  toCppEnum (1) = Adjust
  toCppEnum n = UnknownQListViewResizeMode n

instance HoppyP.Eq QListViewResizeMode where
  x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y

instance HoppyP.Ord QListViewResizeMode where
  compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)

data QListViewViewMode =
  ListMode
  | IconMode
  | UnknownQListViewViewMode (HoppyFC.CInt)
  deriving (HoppyP.Show)

instance HoppyFHR.CppEnum (HoppyFC.CInt) QListViewViewMode where
  fromCppEnum ListMode = 0
  fromCppEnum IconMode = 1
  fromCppEnum (UnknownQListViewViewMode n) = n
  
  toCppEnum (0) = ListMode
  toCppEnum (1) = IconMode
  toCppEnum n = UnknownQListViewViewMode n

instance HoppyP.Eq QListViewViewMode where
  x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y

instance HoppyP.Ord QListViewViewMode where
  compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)