{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-} ---------- GENERATED FILE, EDITS WILL BE LOST ---------- module Graphics.UI.Qtah.Generated.Widgets.QToolButton ( castQToolButtonToQAbstractButton, castQAbstractButtonToQToolButton, castQToolButtonToQWidget, castQWidgetToQToolButton, castQToolButtonToQObject, castQObjectToQToolButton, QToolButtonValue (..), QToolButtonConstPtr (..), arrowType, autoRaise, defaultAction, menu, popupMode, toolButtonStyle, QToolButtonPtr (..), setArrowType, setAutoRaise, setDefaultAction, setMenu, setPopupMode, setToolButtonStyle, showMenu, QToolButtonConst (..), castQToolButtonToConst, QToolButton (..), castQToolButtonToNonconst, new, newWithParent, QToolButtonSuper (..), QToolButtonSuperConst (..), QToolButtonToolButtonPopupMode (..), ) where import qualified Foreign as HoppyF import qualified Foreign.C as HoppyFC import qualified Foreign.Hoppy.Runtime as HoppyFHR import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94 import qualified Graphics.UI.Qtah.Generated.Core.Types as M190 import qualified Graphics.UI.Qtah.Generated.Widgets.QAbstractButton as M354 import qualified Graphics.UI.Qtah.Generated.Widgets.QAction as M368 import qualified Graphics.UI.Qtah.Generated.Widgets.QMenu as M448 import qualified Graphics.UI.Qtah.Generated.Widgets.QWidget as M506 import Prelude (($), (.), (/=), (=<<), (==), (>>=)) import qualified Prelude as HoppyP foreign import ccall "genpop__QToolButton_new" new' :: HoppyP.IO (HoppyF.Ptr QToolButton) foreign import ccall "genpop__QToolButton_newWithParent" newWithParent' :: HoppyF.Ptr M506.QWidget -> HoppyP.IO (HoppyF.Ptr QToolButton) foreign import ccall "genpop__QToolButton_arrowType" arrowType' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QToolButton_setArrowType" setArrowType' :: HoppyF.Ptr QToolButton -> HoppyFC.CInt -> HoppyP.IO () foreign import ccall "genpop__QToolButton_autoRaise" autoRaise' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO HoppyFC.CBool foreign import ccall "genpop__QToolButton_setAutoRaise" setAutoRaise' :: HoppyF.Ptr QToolButton -> HoppyFC.CBool -> HoppyP.IO () foreign import ccall "genpop__QToolButton_defaultAction" defaultAction' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO (HoppyF.Ptr M368.QAction) foreign import ccall "genpop__QToolButton_setDefaultAction" setDefaultAction' :: HoppyF.Ptr QToolButton -> HoppyF.Ptr M368.QAction -> HoppyP.IO () foreign import ccall "genpop__QToolButton_menu" menu' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO (HoppyF.Ptr M448.QMenu) foreign import ccall "genpop__QToolButton_setMenu" setMenu' :: HoppyF.Ptr QToolButton -> HoppyF.Ptr M448.QMenu -> HoppyP.IO () foreign import ccall "genpop__QToolButton_popupMode" popupMode' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QToolButton_setPopupMode" setPopupMode' :: HoppyF.Ptr QToolButton -> HoppyFC.CInt -> HoppyP.IO () foreign import ccall "genpop__QToolButton_toolButtonStyle" toolButtonStyle' :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO HoppyFC.CInt foreign import ccall "genpop__QToolButton_setToolButtonStyle" setToolButtonStyle' :: HoppyF.Ptr QToolButton -> HoppyFC.CInt -> HoppyP.IO () foreign import ccall "genpop__QToolButton_showMenu" showMenu' :: HoppyF.Ptr QToolButton -> HoppyP.IO () foreign import ccall "gencast__QToolButton__QAbstractButton" castQToolButtonToQAbstractButton :: HoppyF.Ptr QToolButtonConst -> HoppyF.Ptr M354.QAbstractButtonConst foreign import ccall "gencast__QAbstractButton__QToolButton" castQAbstractButtonToQToolButton :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr QToolButtonConst foreign import ccall "gencast__QToolButton__QWidget" castQToolButtonToQWidget :: HoppyF.Ptr QToolButtonConst -> HoppyF.Ptr M506.QWidgetConst foreign import ccall "gencast__QWidget__QToolButton" castQWidgetToQToolButton :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr QToolButtonConst foreign import ccall "gencast__QToolButton__QObject" castQToolButtonToQObject :: HoppyF.Ptr QToolButtonConst -> HoppyF.Ptr M94.QObjectConst foreign import ccall "gencast__QObject__QToolButton" castQObjectToQToolButton :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr QToolButtonConst foreign import ccall "gendel__QToolButton" delete'QToolButton :: HoppyF.Ptr QToolButtonConst -> HoppyP.IO () foreign import ccall "&gendel__QToolButton" deletePtr'QToolButton :: HoppyF.FunPtr (HoppyF.Ptr QToolButtonConst -> HoppyP.IO ()) class QToolButtonValue a where withQToolButtonPtr :: a -> (QToolButtonConst -> HoppyP.IO b) -> HoppyP.IO b instance {-# OVERLAPPABLE #-} QToolButtonConstPtr a => QToolButtonValue a where withQToolButtonPtr = HoppyP.flip ($) . toQToolButtonConst class (M354.QAbstractButtonConstPtr this) => QToolButtonConstPtr this where toQToolButtonConst :: this -> QToolButtonConst arrowType :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtArrowType) arrowType arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( HoppyP.return . HoppyFHR.toCppEnum ) =<< (arrowType' arg'1') autoRaise :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO HoppyP.Bool) autoRaise arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( (HoppyP.return . (/= 0)) ) =<< (autoRaise' arg'1') defaultAction :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO M368.QAction) defaultAction arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> HoppyP.fmap M368.QAction (defaultAction' arg'1') menu :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO M448.QMenu) menu arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> HoppyP.fmap M448.QMenu (menu' arg'1') popupMode :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO QToolButtonToolButtonPopupMode) popupMode arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( HoppyP.return . HoppyFHR.toCppEnum ) =<< (popupMode' arg'1') toolButtonStyle :: (QToolButtonValue this) => (this) {- ^ this -} -> (HoppyP.IO M190.QtToolButtonStyle) toolButtonStyle arg'1 = withQToolButtonPtr arg'1 $ HoppyP.flip HoppyFHR.withCppPtr $ \arg'1' -> ( HoppyP.return . HoppyFHR.toCppEnum ) =<< (toolButtonStyle' arg'1') class (QToolButtonConstPtr this, M354.QAbstractButtonPtr this) => QToolButtonPtr this where toQToolButton :: this -> QToolButton setArrowType :: (QToolButtonPtr this) => (this) {- ^ this -} -> (M190.QtArrowType) -> (HoppyP.IO ()) setArrowType arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> ( HoppyP.return . HoppyFHR.fromCppEnum ) arg'2 >>= \arg'2' -> (setArrowType' arg'1' arg'2') setAutoRaise :: (QToolButtonPtr this) => (this) {- ^ this -} -> (HoppyP.Bool) -> (HoppyP.IO ()) setAutoRaise arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> ( \x -> HoppyP.return $ if x then 1 else 0 ) arg'2 >>= \arg'2' -> (setAutoRaise' arg'1' arg'2') setDefaultAction :: (QToolButtonPtr this, M368.QActionPtr arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ()) setDefaultAction arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> HoppyFHR.withCppPtr (M368.toQAction arg'2) $ \arg'2' -> (setDefaultAction' arg'1' arg'2') setMenu :: (QToolButtonPtr this, M448.QMenuPtr arg'2) => (this) {- ^ this -} -> (arg'2) -> (HoppyP.IO ()) setMenu arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> HoppyFHR.withCppPtr (M448.toQMenu arg'2) $ \arg'2' -> (setMenu' arg'1' arg'2') setPopupMode :: (QToolButtonPtr this) => (this) {- ^ this -} -> (QToolButtonToolButtonPopupMode) -> (HoppyP.IO ()) setPopupMode arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> ( HoppyP.return . HoppyFHR.fromCppEnum ) arg'2 >>= \arg'2' -> (setPopupMode' arg'1' arg'2') setToolButtonStyle :: (QToolButtonPtr this) => (this) {- ^ this -} -> (M190.QtToolButtonStyle) -> (HoppyP.IO ()) setToolButtonStyle arg'1 arg'2 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> ( HoppyP.return . HoppyFHR.fromCppEnum ) arg'2 >>= \arg'2' -> (setToolButtonStyle' arg'1' arg'2') showMenu :: (QToolButtonPtr this) => (this) {- ^ this -} -> (HoppyP.IO ()) showMenu arg'1 = HoppyFHR.withCppPtr (toQToolButton arg'1) $ \arg'1' -> (showMenu' arg'1') data QToolButtonConst = QToolButtonConst (HoppyF.Ptr QToolButtonConst) | QToolButtonConstGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QToolButtonConst) deriving (HoppyP.Show) instance HoppyP.Eq QToolButtonConst where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QToolButtonConst where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQToolButtonToConst :: QToolButton -> QToolButtonConst castQToolButtonToConst (QToolButton ptr') = QToolButtonConst $ HoppyF.castPtr ptr' castQToolButtonToConst (QToolButtonGc fptr' ptr') = QToolButtonConstGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QToolButtonConst where nullptr = QToolButtonConst HoppyF.nullPtr withCppPtr (QToolButtonConst ptr') f' = f' ptr' withCppPtr (QToolButtonConstGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QToolButtonConst ptr') = ptr' toPtr (QToolButtonConstGc _ ptr') = ptr' touchCppPtr (QToolButtonConst _) = HoppyP.return () touchCppPtr (QToolButtonConstGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QToolButtonConst where delete (QToolButtonConst ptr') = delete'QToolButton ptr' delete (QToolButtonConstGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QToolButtonConst", " object."] toGc this'@(QToolButtonConst ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QToolButtonConstGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QToolButton :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QToolButtonConstGc {}) = HoppyP.return this' instance QToolButtonConstPtr QToolButtonConst where toQToolButtonConst = HoppyP.id instance M354.QAbstractButtonConstPtr QToolButtonConst where toQAbstractButtonConst (QToolButtonConst ptr') = M354.QAbstractButtonConst $ castQToolButtonToQAbstractButton ptr' toQAbstractButtonConst (QToolButtonConstGc fptr' ptr') = M354.QAbstractButtonConstGc fptr' $ castQToolButtonToQAbstractButton ptr' instance M506.QWidgetConstPtr QToolButtonConst where toQWidgetConst (QToolButtonConst ptr') = M506.QWidgetConst $ castQToolButtonToQWidget ptr' toQWidgetConst (QToolButtonConstGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQToolButtonToQWidget ptr' instance M94.QObjectConstPtr QToolButtonConst where toQObjectConst (QToolButtonConst ptr') = M94.QObjectConst $ castQToolButtonToQObject ptr' toQObjectConst (QToolButtonConstGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQToolButtonToQObject ptr' data QToolButton = QToolButton (HoppyF.Ptr QToolButton) | QToolButtonGc (HoppyF.ForeignPtr ()) (HoppyF.Ptr QToolButton) deriving (HoppyP.Show) instance HoppyP.Eq QToolButton where x == y = HoppyFHR.toPtr x == HoppyFHR.toPtr y instance HoppyP.Ord QToolButton where compare x y = HoppyP.compare (HoppyFHR.toPtr x) (HoppyFHR.toPtr y) castQToolButtonToNonconst :: QToolButtonConst -> QToolButton castQToolButtonToNonconst (QToolButtonConst ptr') = QToolButton $ HoppyF.castPtr ptr' castQToolButtonToNonconst (QToolButtonConstGc fptr' ptr') = QToolButtonGc fptr' $ HoppyF.castPtr ptr' instance HoppyFHR.CppPtr QToolButton where nullptr = QToolButton HoppyF.nullPtr withCppPtr (QToolButton ptr') f' = f' ptr' withCppPtr (QToolButtonGc fptr' ptr') f' = HoppyF.withForeignPtr fptr' $ \_ -> f' ptr' toPtr (QToolButton ptr') = ptr' toPtr (QToolButtonGc _ ptr') = ptr' touchCppPtr (QToolButton _) = HoppyP.return () touchCppPtr (QToolButtonGc fptr' _) = HoppyF.touchForeignPtr fptr' instance HoppyFHR.Deletable QToolButton where delete (QToolButton ptr') = delete'QToolButton $ (HoppyF.castPtr ptr' :: HoppyF.Ptr QToolButtonConst) delete (QToolButtonGc _ _) = HoppyP.fail $ HoppyP.concat ["Deletable.delete: Asked to delete a GC-managed ", "QToolButton", " object."] toGc this'@(QToolButton ptr') = if ptr' == HoppyF.nullPtr then HoppyP.return this' else HoppyP.fmap (HoppyP.flip QToolButtonGc ptr') $ HoppyF.newForeignPtr (HoppyF.castFunPtr deletePtr'QToolButton :: HoppyF.FunPtr (HoppyF.Ptr () -> HoppyP.IO ())) (HoppyF.castPtr ptr' :: HoppyF.Ptr ()) toGc this'@(QToolButtonGc {}) = HoppyP.return this' instance QToolButtonConstPtr QToolButton where toQToolButtonConst (QToolButton ptr') = QToolButtonConst $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQToolButtonConst (QToolButtonGc fptr' ptr') = QToolButtonConstGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance QToolButtonPtr QToolButton where toQToolButton = HoppyP.id instance M354.QAbstractButtonConstPtr QToolButton where toQAbstractButtonConst (QToolButton ptr') = M354.QAbstractButtonConst $ castQToolButtonToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQAbstractButtonConst (QToolButtonGc fptr' ptr') = M354.QAbstractButtonConstGc fptr' $ castQToolButtonToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance M354.QAbstractButtonPtr QToolButton where toQAbstractButton (QToolButton ptr') = M354.QAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr M354.QAbstractButton) $ castQToolButtonToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQAbstractButton (QToolButtonGc fptr' ptr') = M354.QAbstractButtonGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M354.QAbstractButtonConst -> HoppyF.Ptr M354.QAbstractButton) $ castQToolButtonToQAbstractButton $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance M506.QWidgetConstPtr QToolButton where toQWidgetConst (QToolButton ptr') = M506.QWidgetConst $ castQToolButtonToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQWidgetConst (QToolButtonGc fptr' ptr') = M506.QWidgetConstGc fptr' $ castQToolButtonToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance M506.QWidgetPtr QToolButton where toQWidget (QToolButton ptr') = M506.QWidget $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQToolButtonToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQWidget (QToolButtonGc fptr' ptr') = M506.QWidgetGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M506.QWidgetConst -> HoppyF.Ptr M506.QWidget) $ castQToolButtonToQWidget $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance M94.QObjectConstPtr QToolButton where toQObjectConst (QToolButton ptr') = M94.QObjectConst $ castQToolButtonToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQObjectConst (QToolButtonGc fptr' ptr') = M94.QObjectConstGc fptr' $ castQToolButtonToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' instance M94.QObjectPtr QToolButton where toQObject (QToolButton ptr') = M94.QObject $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQToolButtonToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' toQObject (QToolButtonGc fptr' ptr') = M94.QObjectGc fptr' $ (HoppyF.castPtr :: HoppyF.Ptr M94.QObjectConst -> HoppyF.Ptr M94.QObject) $ castQToolButtonToQObject $ (HoppyF.castPtr :: HoppyF.Ptr QToolButton -> HoppyF.Ptr QToolButtonConst) ptr' new :: (HoppyP.IO QToolButton) new = HoppyP.fmap QToolButton (new') newWithParent :: (M506.QWidgetPtr arg'1) => (arg'1) -> (HoppyP.IO QToolButton) newWithParent arg'1 = HoppyFHR.withCppPtr (M506.toQWidget arg'1) $ \arg'1' -> HoppyP.fmap QToolButton (newWithParent' arg'1') class QToolButtonSuper a where downToQToolButton :: a -> QToolButton instance QToolButtonSuper M354.QAbstractButton where downToQToolButton = castQToolButtonToNonconst . cast' . M354.castQAbstractButtonToConst where cast' (M354.QAbstractButtonConst ptr') = QToolButtonConst $ castQAbstractButtonToQToolButton ptr' cast' (M354.QAbstractButtonConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQAbstractButtonToQToolButton ptr' instance QToolButtonSuper M506.QWidget where downToQToolButton = castQToolButtonToNonconst . cast' . M506.castQWidgetToConst where cast' (M506.QWidgetConst ptr') = QToolButtonConst $ castQWidgetToQToolButton ptr' cast' (M506.QWidgetConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQWidgetToQToolButton ptr' instance QToolButtonSuper M94.QObject where downToQToolButton = castQToolButtonToNonconst . cast' . M94.castQObjectToConst where cast' (M94.QObjectConst ptr') = QToolButtonConst $ castQObjectToQToolButton ptr' cast' (M94.QObjectConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQObjectToQToolButton ptr' class QToolButtonSuperConst a where downToQToolButtonConst :: a -> QToolButtonConst instance QToolButtonSuperConst M354.QAbstractButtonConst where downToQToolButtonConst = cast' where cast' (M354.QAbstractButtonConst ptr') = QToolButtonConst $ castQAbstractButtonToQToolButton ptr' cast' (M354.QAbstractButtonConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQAbstractButtonToQToolButton ptr' instance QToolButtonSuperConst M506.QWidgetConst where downToQToolButtonConst = cast' where cast' (M506.QWidgetConst ptr') = QToolButtonConst $ castQWidgetToQToolButton ptr' cast' (M506.QWidgetConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQWidgetToQToolButton ptr' instance QToolButtonSuperConst M94.QObjectConst where downToQToolButtonConst = cast' where cast' (M94.QObjectConst ptr') = QToolButtonConst $ castQObjectToQToolButton ptr' cast' (M94.QObjectConstGc fptr' ptr') = QToolButtonConstGc fptr' $ castQObjectToQToolButton ptr' instance HoppyFHR.Assignable (HoppyF.Ptr (HoppyF.Ptr QToolButton)) QToolButton where assign ptr' value' = HoppyF.poke ptr' $ HoppyFHR.toPtr value' instance HoppyFHR.Decodable (HoppyF.Ptr (HoppyF.Ptr QToolButton)) QToolButton where decode = HoppyP.fmap QToolButton . HoppyF.peek data QToolButtonToolButtonPopupMode = DelayedPopup | MenuButtonPopup | InstantPopup | UnknownQToolButtonToolButtonPopupMode (HoppyFC.CInt) deriving (HoppyP.Show) instance HoppyFHR.CppEnum (HoppyFC.CInt) QToolButtonToolButtonPopupMode where fromCppEnum DelayedPopup = 0 fromCppEnum MenuButtonPopup = 1 fromCppEnum InstantPopup = 2 fromCppEnum (UnknownQToolButtonToolButtonPopupMode n) = n toCppEnum (0) = DelayedPopup toCppEnum (1) = MenuButtonPopup toCppEnum (2) = InstantPopup toCppEnum n = UnknownQToolButtonToolButtonPopupMode n instance HoppyP.Eq QToolButtonToolButtonPopupMode where x == y = HoppyFHR.fromCppEnum x == HoppyFHR.fromCppEnum y instance HoppyP.Ord QToolButtonToolButtonPopupMode where compare x y = HoppyP.compare (HoppyFHR.fromCppEnum x) (HoppyFHR.fromCppEnum y)