{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- /No description available in the introspection data./

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.Handy.Objects.TitleBar
    ( 

-- * Exported types
    TitleBar(..)                            ,
    IsTitleBar                              ,
    toTitleBar                              ,


 -- * Methods
-- ** Overloaded methods #method:Overloaded methods#

#if defined(ENABLE_OVERLOADING)
    ResolveTitleBarMethod                   ,
#endif


-- ** getSelectionMode #method:getSelectionMode#

#if defined(ENABLE_OVERLOADING)
    TitleBarGetSelectionModeMethodInfo      ,
#endif
    titleBarGetSelectionMode                ,


-- ** new #method:new#

    titleBarNew                             ,


-- ** setSelectionMode #method:setSelectionMode#

#if defined(ENABLE_OVERLOADING)
    TitleBarSetSelectionModeMethodInfo      ,
#endif
    titleBarSetSelectionMode                ,




 -- * Properties
-- ** selectionMode #attr:selectionMode#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    TitleBarSelectionModePropertyInfo       ,
#endif
    constructTitleBarSelectionMode          ,
    getTitleBarSelectionMode                ,
    setTitleBarSelectionMode                ,
#if defined(ENABLE_OVERLOADING)
    titleBarSelectionMode                   ,
#endif




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL

import qualified GI.Atk.Interfaces.ImplementorIface as Atk.ImplementorIface
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gtk.Interfaces.Buildable as Gtk.Buildable
import qualified GI.Gtk.Objects.Bin as Gtk.Bin
import qualified GI.Gtk.Objects.Container as Gtk.Container
import qualified GI.Gtk.Objects.Widget as Gtk.Widget

-- | Memory-managed wrapper type.
newtype TitleBar = TitleBar (SP.ManagedPtr TitleBar)
    deriving (TitleBar -> TitleBar -> Bool
(TitleBar -> TitleBar -> Bool)
-> (TitleBar -> TitleBar -> Bool) -> Eq TitleBar
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TitleBar -> TitleBar -> Bool
$c/= :: TitleBar -> TitleBar -> Bool
== :: TitleBar -> TitleBar -> Bool
$c== :: TitleBar -> TitleBar -> Bool
Eq)

instance SP.ManagedPtrNewtype TitleBar where
    toManagedPtr :: TitleBar -> ManagedPtr TitleBar
toManagedPtr (TitleBar ManagedPtr TitleBar
p) = ManagedPtr TitleBar
p

foreign import ccall "hdy_title_bar_get_type"
    c_hdy_title_bar_get_type :: IO B.Types.GType

instance B.Types.TypedObject TitleBar where
    glibType :: IO GType
glibType = IO GType
c_hdy_title_bar_get_type

instance B.Types.GObject TitleBar

-- | Convert 'TitleBar' to and from 'Data.GI.Base.GValue.GValue' with 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue TitleBar where
    toGValue :: TitleBar -> IO GValue
toGValue TitleBar
o = do
        GType
gtype <- IO GType
c_hdy_title_bar_get_type
        TitleBar -> (Ptr TitleBar -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr TitleBar
o (GType
-> (GValue -> Ptr TitleBar -> IO ()) -> Ptr TitleBar -> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr TitleBar -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO TitleBar
fromGValue GValue
gv = do
        Ptr TitleBar
ptr <- GValue -> IO (Ptr TitleBar)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr TitleBar)
        (ManagedPtr TitleBar -> TitleBar) -> Ptr TitleBar -> IO TitleBar
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr TitleBar -> TitleBar
TitleBar Ptr TitleBar
ptr
        
    

-- | Type class for types which can be safely cast to `TitleBar`, for instance with `toTitleBar`.
class (SP.GObject o, O.IsDescendantOf TitleBar o) => IsTitleBar o
instance (SP.GObject o, O.IsDescendantOf TitleBar o) => IsTitleBar o

instance O.HasParentTypes TitleBar
type instance O.ParentTypes TitleBar = '[Gtk.Bin.Bin, Gtk.Container.Container, Gtk.Widget.Widget, GObject.Object.Object, Atk.ImplementorIface.ImplementorIface, Gtk.Buildable.Buildable]

-- | Cast to `TitleBar`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toTitleBar :: (MonadIO m, IsTitleBar o) => o -> m TitleBar
toTitleBar :: o -> m TitleBar
toTitleBar = IO TitleBar -> m TitleBar
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO TitleBar -> m TitleBar)
-> (o -> IO TitleBar) -> o -> m TitleBar
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr TitleBar -> TitleBar) -> o -> IO TitleBar
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr TitleBar -> TitleBar
TitleBar

#if defined(ENABLE_OVERLOADING)
type family ResolveTitleBarMethod (t :: Symbol) (o :: *) :: * where
    ResolveTitleBarMethod "activate" o = Gtk.Widget.WidgetActivateMethodInfo
    ResolveTitleBarMethod "add" o = Gtk.Container.ContainerAddMethodInfo
    ResolveTitleBarMethod "addAccelerator" o = Gtk.Widget.WidgetAddAcceleratorMethodInfo
    ResolveTitleBarMethod "addChild" o = Gtk.Buildable.BuildableAddChildMethodInfo
    ResolveTitleBarMethod "addDeviceEvents" o = Gtk.Widget.WidgetAddDeviceEventsMethodInfo
    ResolveTitleBarMethod "addEvents" o = Gtk.Widget.WidgetAddEventsMethodInfo
    ResolveTitleBarMethod "addMnemonicLabel" o = Gtk.Widget.WidgetAddMnemonicLabelMethodInfo
    ResolveTitleBarMethod "addTickCallback" o = Gtk.Widget.WidgetAddTickCallbackMethodInfo
    ResolveTitleBarMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveTitleBarMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveTitleBarMethod "canActivateAccel" o = Gtk.Widget.WidgetCanActivateAccelMethodInfo
    ResolveTitleBarMethod "checkResize" o = Gtk.Container.ContainerCheckResizeMethodInfo
    ResolveTitleBarMethod "childFocus" o = Gtk.Widget.WidgetChildFocusMethodInfo
    ResolveTitleBarMethod "childGetProperty" o = Gtk.Container.ContainerChildGetPropertyMethodInfo
    ResolveTitleBarMethod "childNotify" o = Gtk.Container.ContainerChildNotifyMethodInfo
    ResolveTitleBarMethod "childNotifyByPspec" o = Gtk.Container.ContainerChildNotifyByPspecMethodInfo
    ResolveTitleBarMethod "childSetProperty" o = Gtk.Container.ContainerChildSetPropertyMethodInfo
    ResolveTitleBarMethod "childType" o = Gtk.Container.ContainerChildTypeMethodInfo
    ResolveTitleBarMethod "classPath" o = Gtk.Widget.WidgetClassPathMethodInfo
    ResolveTitleBarMethod "computeExpand" o = Gtk.Widget.WidgetComputeExpandMethodInfo
    ResolveTitleBarMethod "constructChild" o = Gtk.Buildable.BuildableConstructChildMethodInfo
    ResolveTitleBarMethod "createPangoContext" o = Gtk.Widget.WidgetCreatePangoContextMethodInfo
    ResolveTitleBarMethod "createPangoLayout" o = Gtk.Widget.WidgetCreatePangoLayoutMethodInfo
    ResolveTitleBarMethod "customFinished" o = Gtk.Buildable.BuildableCustomFinishedMethodInfo
    ResolveTitleBarMethod "customTagEnd" o = Gtk.Buildable.BuildableCustomTagEndMethodInfo
    ResolveTitleBarMethod "customTagStart" o = Gtk.Buildable.BuildableCustomTagStartMethodInfo
    ResolveTitleBarMethod "destroy" o = Gtk.Widget.WidgetDestroyMethodInfo
    ResolveTitleBarMethod "destroyed" o = Gtk.Widget.WidgetDestroyedMethodInfo
    ResolveTitleBarMethod "deviceIsShadowed" o = Gtk.Widget.WidgetDeviceIsShadowedMethodInfo
    ResolveTitleBarMethod "dragBegin" o = Gtk.Widget.WidgetDragBeginMethodInfo
    ResolveTitleBarMethod "dragBeginWithCoordinates" o = Gtk.Widget.WidgetDragBeginWithCoordinatesMethodInfo
    ResolveTitleBarMethod "dragCheckThreshold" o = Gtk.Widget.WidgetDragCheckThresholdMethodInfo
    ResolveTitleBarMethod "dragDestAddImageTargets" o = Gtk.Widget.WidgetDragDestAddImageTargetsMethodInfo
    ResolveTitleBarMethod "dragDestAddTextTargets" o = Gtk.Widget.WidgetDragDestAddTextTargetsMethodInfo
    ResolveTitleBarMethod "dragDestAddUriTargets" o = Gtk.Widget.WidgetDragDestAddUriTargetsMethodInfo
    ResolveTitleBarMethod "dragDestFindTarget" o = Gtk.Widget.WidgetDragDestFindTargetMethodInfo
    ResolveTitleBarMethod "dragDestGetTargetList" o = Gtk.Widget.WidgetDragDestGetTargetListMethodInfo
    ResolveTitleBarMethod "dragDestGetTrackMotion" o = Gtk.Widget.WidgetDragDestGetTrackMotionMethodInfo
    ResolveTitleBarMethod "dragDestSet" o = Gtk.Widget.WidgetDragDestSetMethodInfo
    ResolveTitleBarMethod "dragDestSetProxy" o = Gtk.Widget.WidgetDragDestSetProxyMethodInfo
    ResolveTitleBarMethod "dragDestSetTargetList" o = Gtk.Widget.WidgetDragDestSetTargetListMethodInfo
    ResolveTitleBarMethod "dragDestSetTrackMotion" o = Gtk.Widget.WidgetDragDestSetTrackMotionMethodInfo
    ResolveTitleBarMethod "dragDestUnset" o = Gtk.Widget.WidgetDragDestUnsetMethodInfo
    ResolveTitleBarMethod "dragGetData" o = Gtk.Widget.WidgetDragGetDataMethodInfo
    ResolveTitleBarMethod "dragHighlight" o = Gtk.Widget.WidgetDragHighlightMethodInfo
    ResolveTitleBarMethod "dragSourceAddImageTargets" o = Gtk.Widget.WidgetDragSourceAddImageTargetsMethodInfo
    ResolveTitleBarMethod "dragSourceAddTextTargets" o = Gtk.Widget.WidgetDragSourceAddTextTargetsMethodInfo
    ResolveTitleBarMethod "dragSourceAddUriTargets" o = Gtk.Widget.WidgetDragSourceAddUriTargetsMethodInfo
    ResolveTitleBarMethod "dragSourceGetTargetList" o = Gtk.Widget.WidgetDragSourceGetTargetListMethodInfo
    ResolveTitleBarMethod "dragSourceSet" o = Gtk.Widget.WidgetDragSourceSetMethodInfo
    ResolveTitleBarMethod "dragSourceSetIconGicon" o = Gtk.Widget.WidgetDragSourceSetIconGiconMethodInfo
    ResolveTitleBarMethod "dragSourceSetIconName" o = Gtk.Widget.WidgetDragSourceSetIconNameMethodInfo
    ResolveTitleBarMethod "dragSourceSetIconPixbuf" o = Gtk.Widget.WidgetDragSourceSetIconPixbufMethodInfo
    ResolveTitleBarMethod "dragSourceSetIconStock" o = Gtk.Widget.WidgetDragSourceSetIconStockMethodInfo
    ResolveTitleBarMethod "dragSourceSetTargetList" o = Gtk.Widget.WidgetDragSourceSetTargetListMethodInfo
    ResolveTitleBarMethod "dragSourceUnset" o = Gtk.Widget.WidgetDragSourceUnsetMethodInfo
    ResolveTitleBarMethod "dragUnhighlight" o = Gtk.Widget.WidgetDragUnhighlightMethodInfo
    ResolveTitleBarMethod "draw" o = Gtk.Widget.WidgetDrawMethodInfo
    ResolveTitleBarMethod "ensureStyle" o = Gtk.Widget.WidgetEnsureStyleMethodInfo
    ResolveTitleBarMethod "errorBell" o = Gtk.Widget.WidgetErrorBellMethodInfo
    ResolveTitleBarMethod "event" o = Gtk.Widget.WidgetEventMethodInfo
    ResolveTitleBarMethod "forall" o = Gtk.Container.ContainerForallMethodInfo
    ResolveTitleBarMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveTitleBarMethod "foreach" o = Gtk.Container.ContainerForeachMethodInfo
    ResolveTitleBarMethod "freezeChildNotify" o = Gtk.Widget.WidgetFreezeChildNotifyMethodInfo
    ResolveTitleBarMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveTitleBarMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveTitleBarMethod "grabAdd" o = Gtk.Widget.WidgetGrabAddMethodInfo
    ResolveTitleBarMethod "grabDefault" o = Gtk.Widget.WidgetGrabDefaultMethodInfo
    ResolveTitleBarMethod "grabFocus" o = Gtk.Widget.WidgetGrabFocusMethodInfo
    ResolveTitleBarMethod "grabRemove" o = Gtk.Widget.WidgetGrabRemoveMethodInfo
    ResolveTitleBarMethod "hasDefault" o = Gtk.Widget.WidgetHasDefaultMethodInfo
    ResolveTitleBarMethod "hasFocus" o = Gtk.Widget.WidgetHasFocusMethodInfo
    ResolveTitleBarMethod "hasGrab" o = Gtk.Widget.WidgetHasGrabMethodInfo
    ResolveTitleBarMethod "hasRcStyle" o = Gtk.Widget.WidgetHasRcStyleMethodInfo
    ResolveTitleBarMethod "hasScreen" o = Gtk.Widget.WidgetHasScreenMethodInfo
    ResolveTitleBarMethod "hasVisibleFocus" o = Gtk.Widget.WidgetHasVisibleFocusMethodInfo
    ResolveTitleBarMethod "hide" o = Gtk.Widget.WidgetHideMethodInfo
    ResolveTitleBarMethod "hideOnDelete" o = Gtk.Widget.WidgetHideOnDeleteMethodInfo
    ResolveTitleBarMethod "inDestruction" o = Gtk.Widget.WidgetInDestructionMethodInfo
    ResolveTitleBarMethod "initTemplate" o = Gtk.Widget.WidgetInitTemplateMethodInfo
    ResolveTitleBarMethod "inputShapeCombineRegion" o = Gtk.Widget.WidgetInputShapeCombineRegionMethodInfo
    ResolveTitleBarMethod "insertActionGroup" o = Gtk.Widget.WidgetInsertActionGroupMethodInfo
    ResolveTitleBarMethod "intersect" o = Gtk.Widget.WidgetIntersectMethodInfo
    ResolveTitleBarMethod "isAncestor" o = Gtk.Widget.WidgetIsAncestorMethodInfo
    ResolveTitleBarMethod "isComposited" o = Gtk.Widget.WidgetIsCompositedMethodInfo
    ResolveTitleBarMethod "isDrawable" o = Gtk.Widget.WidgetIsDrawableMethodInfo
    ResolveTitleBarMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveTitleBarMethod "isFocus" o = Gtk.Widget.WidgetIsFocusMethodInfo
    ResolveTitleBarMethod "isSensitive" o = Gtk.Widget.WidgetIsSensitiveMethodInfo
    ResolveTitleBarMethod "isToplevel" o = Gtk.Widget.WidgetIsToplevelMethodInfo
    ResolveTitleBarMethod "isVisible" o = Gtk.Widget.WidgetIsVisibleMethodInfo
    ResolveTitleBarMethod "keynavFailed" o = Gtk.Widget.WidgetKeynavFailedMethodInfo
    ResolveTitleBarMethod "listAccelClosures" o = Gtk.Widget.WidgetListAccelClosuresMethodInfo
    ResolveTitleBarMethod "listActionPrefixes" o = Gtk.Widget.WidgetListActionPrefixesMethodInfo
    ResolveTitleBarMethod "listMnemonicLabels" o = Gtk.Widget.WidgetListMnemonicLabelsMethodInfo
    ResolveTitleBarMethod "map" o = Gtk.Widget.WidgetMapMethodInfo
    ResolveTitleBarMethod "mnemonicActivate" o = Gtk.Widget.WidgetMnemonicActivateMethodInfo
    ResolveTitleBarMethod "modifyBase" o = Gtk.Widget.WidgetModifyBaseMethodInfo
    ResolveTitleBarMethod "modifyBg" o = Gtk.Widget.WidgetModifyBgMethodInfo
    ResolveTitleBarMethod "modifyCursor" o = Gtk.Widget.WidgetModifyCursorMethodInfo
    ResolveTitleBarMethod "modifyFg" o = Gtk.Widget.WidgetModifyFgMethodInfo
    ResolveTitleBarMethod "modifyFont" o = Gtk.Widget.WidgetModifyFontMethodInfo
    ResolveTitleBarMethod "modifyStyle" o = Gtk.Widget.WidgetModifyStyleMethodInfo
    ResolveTitleBarMethod "modifyText" o = Gtk.Widget.WidgetModifyTextMethodInfo
    ResolveTitleBarMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveTitleBarMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveTitleBarMethod "overrideBackgroundColor" o = Gtk.Widget.WidgetOverrideBackgroundColorMethodInfo
    ResolveTitleBarMethod "overrideColor" o = Gtk.Widget.WidgetOverrideColorMethodInfo
    ResolveTitleBarMethod "overrideCursor" o = Gtk.Widget.WidgetOverrideCursorMethodInfo
    ResolveTitleBarMethod "overrideFont" o = Gtk.Widget.WidgetOverrideFontMethodInfo
    ResolveTitleBarMethod "overrideSymbolicColor" o = Gtk.Widget.WidgetOverrideSymbolicColorMethodInfo
    ResolveTitleBarMethod "parserFinished" o = Gtk.Buildable.BuildableParserFinishedMethodInfo
    ResolveTitleBarMethod "path" o = Gtk.Widget.WidgetPathMethodInfo
    ResolveTitleBarMethod "propagateDraw" o = Gtk.Container.ContainerPropagateDrawMethodInfo
    ResolveTitleBarMethod "queueAllocate" o = Gtk.Widget.WidgetQueueAllocateMethodInfo
    ResolveTitleBarMethod "queueComputeExpand" o = Gtk.Widget.WidgetQueueComputeExpandMethodInfo
    ResolveTitleBarMethod "queueDraw" o = Gtk.Widget.WidgetQueueDrawMethodInfo
    ResolveTitleBarMethod "queueDrawArea" o = Gtk.Widget.WidgetQueueDrawAreaMethodInfo
    ResolveTitleBarMethod "queueDrawRegion" o = Gtk.Widget.WidgetQueueDrawRegionMethodInfo
    ResolveTitleBarMethod "queueResize" o = Gtk.Widget.WidgetQueueResizeMethodInfo
    ResolveTitleBarMethod "queueResizeNoRedraw" o = Gtk.Widget.WidgetQueueResizeNoRedrawMethodInfo
    ResolveTitleBarMethod "realize" o = Gtk.Widget.WidgetRealizeMethodInfo
    ResolveTitleBarMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveTitleBarMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveTitleBarMethod "regionIntersect" o = Gtk.Widget.WidgetRegionIntersectMethodInfo
    ResolveTitleBarMethod "registerWindow" o = Gtk.Widget.WidgetRegisterWindowMethodInfo
    ResolveTitleBarMethod "remove" o = Gtk.Container.ContainerRemoveMethodInfo
    ResolveTitleBarMethod "removeAccelerator" o = Gtk.Widget.WidgetRemoveAcceleratorMethodInfo
    ResolveTitleBarMethod "removeMnemonicLabel" o = Gtk.Widget.WidgetRemoveMnemonicLabelMethodInfo
    ResolveTitleBarMethod "removeTickCallback" o = Gtk.Widget.WidgetRemoveTickCallbackMethodInfo
    ResolveTitleBarMethod "renderIcon" o = Gtk.Widget.WidgetRenderIconMethodInfo
    ResolveTitleBarMethod "renderIconPixbuf" o = Gtk.Widget.WidgetRenderIconPixbufMethodInfo
    ResolveTitleBarMethod "reparent" o = Gtk.Widget.WidgetReparentMethodInfo
    ResolveTitleBarMethod "resetRcStyles" o = Gtk.Widget.WidgetResetRcStylesMethodInfo
    ResolveTitleBarMethod "resetStyle" o = Gtk.Widget.WidgetResetStyleMethodInfo
    ResolveTitleBarMethod "resizeChildren" o = Gtk.Container.ContainerResizeChildrenMethodInfo
    ResolveTitleBarMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveTitleBarMethod "sendExpose" o = Gtk.Widget.WidgetSendExposeMethodInfo
    ResolveTitleBarMethod "sendFocusChange" o = Gtk.Widget.WidgetSendFocusChangeMethodInfo
    ResolveTitleBarMethod "shapeCombineRegion" o = Gtk.Widget.WidgetShapeCombineRegionMethodInfo
    ResolveTitleBarMethod "show" o = Gtk.Widget.WidgetShowMethodInfo
    ResolveTitleBarMethod "showAll" o = Gtk.Widget.WidgetShowAllMethodInfo
    ResolveTitleBarMethod "showNow" o = Gtk.Widget.WidgetShowNowMethodInfo
    ResolveTitleBarMethod "sizeAllocate" o = Gtk.Widget.WidgetSizeAllocateMethodInfo
    ResolveTitleBarMethod "sizeAllocateWithBaseline" o = Gtk.Widget.WidgetSizeAllocateWithBaselineMethodInfo
    ResolveTitleBarMethod "sizeRequest" o = Gtk.Widget.WidgetSizeRequestMethodInfo
    ResolveTitleBarMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveTitleBarMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveTitleBarMethod "styleAttach" o = Gtk.Widget.WidgetStyleAttachMethodInfo
    ResolveTitleBarMethod "styleGetProperty" o = Gtk.Widget.WidgetStyleGetPropertyMethodInfo
    ResolveTitleBarMethod "thawChildNotify" o = Gtk.Widget.WidgetThawChildNotifyMethodInfo
    ResolveTitleBarMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveTitleBarMethod "translateCoordinates" o = Gtk.Widget.WidgetTranslateCoordinatesMethodInfo
    ResolveTitleBarMethod "triggerTooltipQuery" o = Gtk.Widget.WidgetTriggerTooltipQueryMethodInfo
    ResolveTitleBarMethod "unmap" o = Gtk.Widget.WidgetUnmapMethodInfo
    ResolveTitleBarMethod "unparent" o = Gtk.Widget.WidgetUnparentMethodInfo
    ResolveTitleBarMethod "unrealize" o = Gtk.Widget.WidgetUnrealizeMethodInfo
    ResolveTitleBarMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveTitleBarMethod "unregisterWindow" o = Gtk.Widget.WidgetUnregisterWindowMethodInfo
    ResolveTitleBarMethod "unsetFocusChain" o = Gtk.Container.ContainerUnsetFocusChainMethodInfo
    ResolveTitleBarMethod "unsetStateFlags" o = Gtk.Widget.WidgetUnsetStateFlagsMethodInfo
    ResolveTitleBarMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveTitleBarMethod "getAccessible" o = Gtk.Widget.WidgetGetAccessibleMethodInfo
    ResolveTitleBarMethod "getActionGroup" o = Gtk.Widget.WidgetGetActionGroupMethodInfo
    ResolveTitleBarMethod "getAllocatedBaseline" o = Gtk.Widget.WidgetGetAllocatedBaselineMethodInfo
    ResolveTitleBarMethod "getAllocatedHeight" o = Gtk.Widget.WidgetGetAllocatedHeightMethodInfo
    ResolveTitleBarMethod "getAllocatedSize" o = Gtk.Widget.WidgetGetAllocatedSizeMethodInfo
    ResolveTitleBarMethod "getAllocatedWidth" o = Gtk.Widget.WidgetGetAllocatedWidthMethodInfo
    ResolveTitleBarMethod "getAllocation" o = Gtk.Widget.WidgetGetAllocationMethodInfo
    ResolveTitleBarMethod "getAncestor" o = Gtk.Widget.WidgetGetAncestorMethodInfo
    ResolveTitleBarMethod "getAppPaintable" o = Gtk.Widget.WidgetGetAppPaintableMethodInfo
    ResolveTitleBarMethod "getBorderWidth" o = Gtk.Container.ContainerGetBorderWidthMethodInfo
    ResolveTitleBarMethod "getCanDefault" o = Gtk.Widget.WidgetGetCanDefaultMethodInfo
    ResolveTitleBarMethod "getCanFocus" o = Gtk.Widget.WidgetGetCanFocusMethodInfo
    ResolveTitleBarMethod "getChild" o = Gtk.Bin.BinGetChildMethodInfo
    ResolveTitleBarMethod "getChildRequisition" o = Gtk.Widget.WidgetGetChildRequisitionMethodInfo
    ResolveTitleBarMethod "getChildVisible" o = Gtk.Widget.WidgetGetChildVisibleMethodInfo
    ResolveTitleBarMethod "getChildren" o = Gtk.Container.ContainerGetChildrenMethodInfo
    ResolveTitleBarMethod "getClip" o = Gtk.Widget.WidgetGetClipMethodInfo
    ResolveTitleBarMethod "getClipboard" o = Gtk.Widget.WidgetGetClipboardMethodInfo
    ResolveTitleBarMethod "getCompositeName" o = Gtk.Widget.WidgetGetCompositeNameMethodInfo
    ResolveTitleBarMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveTitleBarMethod "getDeviceEnabled" o = Gtk.Widget.WidgetGetDeviceEnabledMethodInfo
    ResolveTitleBarMethod "getDeviceEvents" o = Gtk.Widget.WidgetGetDeviceEventsMethodInfo
    ResolveTitleBarMethod "getDirection" o = Gtk.Widget.WidgetGetDirectionMethodInfo
    ResolveTitleBarMethod "getDisplay" o = Gtk.Widget.WidgetGetDisplayMethodInfo
    ResolveTitleBarMethod "getDoubleBuffered" o = Gtk.Widget.WidgetGetDoubleBufferedMethodInfo
    ResolveTitleBarMethod "getEvents" o = Gtk.Widget.WidgetGetEventsMethodInfo
    ResolveTitleBarMethod "getFocusChain" o = Gtk.Container.ContainerGetFocusChainMethodInfo
    ResolveTitleBarMethod "getFocusChild" o = Gtk.Container.ContainerGetFocusChildMethodInfo
    ResolveTitleBarMethod "getFocusHadjustment" o = Gtk.Container.ContainerGetFocusHadjustmentMethodInfo
    ResolveTitleBarMethod "getFocusOnClick" o = Gtk.Widget.WidgetGetFocusOnClickMethodInfo
    ResolveTitleBarMethod "getFocusVadjustment" o = Gtk.Container.ContainerGetFocusVadjustmentMethodInfo
    ResolveTitleBarMethod "getFontMap" o = Gtk.Widget.WidgetGetFontMapMethodInfo
    ResolveTitleBarMethod "getFontOptions" o = Gtk.Widget.WidgetGetFontOptionsMethodInfo
    ResolveTitleBarMethod "getFrameClock" o = Gtk.Widget.WidgetGetFrameClockMethodInfo
    ResolveTitleBarMethod "getHalign" o = Gtk.Widget.WidgetGetHalignMethodInfo
    ResolveTitleBarMethod "getHasTooltip" o = Gtk.Widget.WidgetGetHasTooltipMethodInfo
    ResolveTitleBarMethod "getHasWindow" o = Gtk.Widget.WidgetGetHasWindowMethodInfo
    ResolveTitleBarMethod "getHexpand" o = Gtk.Widget.WidgetGetHexpandMethodInfo
    ResolveTitleBarMethod "getHexpandSet" o = Gtk.Widget.WidgetGetHexpandSetMethodInfo
    ResolveTitleBarMethod "getInternalChild" o = Gtk.Buildable.BuildableGetInternalChildMethodInfo
    ResolveTitleBarMethod "getMapped" o = Gtk.Widget.WidgetGetMappedMethodInfo
    ResolveTitleBarMethod "getMarginBottom" o = Gtk.Widget.WidgetGetMarginBottomMethodInfo
    ResolveTitleBarMethod "getMarginEnd" o = Gtk.Widget.WidgetGetMarginEndMethodInfo
    ResolveTitleBarMethod "getMarginLeft" o = Gtk.Widget.WidgetGetMarginLeftMethodInfo
    ResolveTitleBarMethod "getMarginRight" o = Gtk.Widget.WidgetGetMarginRightMethodInfo
    ResolveTitleBarMethod "getMarginStart" o = Gtk.Widget.WidgetGetMarginStartMethodInfo
    ResolveTitleBarMethod "getMarginTop" o = Gtk.Widget.WidgetGetMarginTopMethodInfo
    ResolveTitleBarMethod "getModifierMask" o = Gtk.Widget.WidgetGetModifierMaskMethodInfo
    ResolveTitleBarMethod "getModifierStyle" o = Gtk.Widget.WidgetGetModifierStyleMethodInfo
    ResolveTitleBarMethod "getName" o = Gtk.Widget.WidgetGetNameMethodInfo
    ResolveTitleBarMethod "getNoShowAll" o = Gtk.Widget.WidgetGetNoShowAllMethodInfo
    ResolveTitleBarMethod "getOpacity" o = Gtk.Widget.WidgetGetOpacityMethodInfo
    ResolveTitleBarMethod "getPangoContext" o = Gtk.Widget.WidgetGetPangoContextMethodInfo
    ResolveTitleBarMethod "getParent" o = Gtk.Widget.WidgetGetParentMethodInfo
    ResolveTitleBarMethod "getParentWindow" o = Gtk.Widget.WidgetGetParentWindowMethodInfo
    ResolveTitleBarMethod "getPath" o = Gtk.Widget.WidgetGetPathMethodInfo
    ResolveTitleBarMethod "getPathForChild" o = Gtk.Container.ContainerGetPathForChildMethodInfo
    ResolveTitleBarMethod "getPointer" o = Gtk.Widget.WidgetGetPointerMethodInfo
    ResolveTitleBarMethod "getPreferredHeight" o = Gtk.Widget.WidgetGetPreferredHeightMethodInfo
    ResolveTitleBarMethod "getPreferredHeightAndBaselineForWidth" o = Gtk.Widget.WidgetGetPreferredHeightAndBaselineForWidthMethodInfo
    ResolveTitleBarMethod "getPreferredHeightForWidth" o = Gtk.Widget.WidgetGetPreferredHeightForWidthMethodInfo
    ResolveTitleBarMethod "getPreferredSize" o = Gtk.Widget.WidgetGetPreferredSizeMethodInfo
    ResolveTitleBarMethod "getPreferredWidth" o = Gtk.Widget.WidgetGetPreferredWidthMethodInfo
    ResolveTitleBarMethod "getPreferredWidthForHeight" o = Gtk.Widget.WidgetGetPreferredWidthForHeightMethodInfo
    ResolveTitleBarMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveTitleBarMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveTitleBarMethod "getRealized" o = Gtk.Widget.WidgetGetRealizedMethodInfo
    ResolveTitleBarMethod "getReceivesDefault" o = Gtk.Widget.WidgetGetReceivesDefaultMethodInfo
    ResolveTitleBarMethod "getRequestMode" o = Gtk.Widget.WidgetGetRequestModeMethodInfo
    ResolveTitleBarMethod "getRequisition" o = Gtk.Widget.WidgetGetRequisitionMethodInfo
    ResolveTitleBarMethod "getResizeMode" o = Gtk.Container.ContainerGetResizeModeMethodInfo
    ResolveTitleBarMethod "getRootWindow" o = Gtk.Widget.WidgetGetRootWindowMethodInfo
    ResolveTitleBarMethod "getScaleFactor" o = Gtk.Widget.WidgetGetScaleFactorMethodInfo
    ResolveTitleBarMethod "getScreen" o = Gtk.Widget.WidgetGetScreenMethodInfo
    ResolveTitleBarMethod "getSelectionMode" o = TitleBarGetSelectionModeMethodInfo
    ResolveTitleBarMethod "getSensitive" o = Gtk.Widget.WidgetGetSensitiveMethodInfo
    ResolveTitleBarMethod "getSettings" o = Gtk.Widget.WidgetGetSettingsMethodInfo
    ResolveTitleBarMethod "getSizeRequest" o = Gtk.Widget.WidgetGetSizeRequestMethodInfo
    ResolveTitleBarMethod "getState" o = Gtk.Widget.WidgetGetStateMethodInfo
    ResolveTitleBarMethod "getStateFlags" o = Gtk.Widget.WidgetGetStateFlagsMethodInfo
    ResolveTitleBarMethod "getStyle" o = Gtk.Widget.WidgetGetStyleMethodInfo
    ResolveTitleBarMethod "getStyleContext" o = Gtk.Widget.WidgetGetStyleContextMethodInfo
    ResolveTitleBarMethod "getSupportMultidevice" o = Gtk.Widget.WidgetGetSupportMultideviceMethodInfo
    ResolveTitleBarMethod "getTemplateChild" o = Gtk.Widget.WidgetGetTemplateChildMethodInfo
    ResolveTitleBarMethod "getTooltipMarkup" o = Gtk.Widget.WidgetGetTooltipMarkupMethodInfo
    ResolveTitleBarMethod "getTooltipText" o = Gtk.Widget.WidgetGetTooltipTextMethodInfo
    ResolveTitleBarMethod "getTooltipWindow" o = Gtk.Widget.WidgetGetTooltipWindowMethodInfo
    ResolveTitleBarMethod "getToplevel" o = Gtk.Widget.WidgetGetToplevelMethodInfo
    ResolveTitleBarMethod "getValign" o = Gtk.Widget.WidgetGetValignMethodInfo
    ResolveTitleBarMethod "getValignWithBaseline" o = Gtk.Widget.WidgetGetValignWithBaselineMethodInfo
    ResolveTitleBarMethod "getVexpand" o = Gtk.Widget.WidgetGetVexpandMethodInfo
    ResolveTitleBarMethod "getVexpandSet" o = Gtk.Widget.WidgetGetVexpandSetMethodInfo
    ResolveTitleBarMethod "getVisible" o = Gtk.Widget.WidgetGetVisibleMethodInfo
    ResolveTitleBarMethod "getVisual" o = Gtk.Widget.WidgetGetVisualMethodInfo
    ResolveTitleBarMethod "getWindow" o = Gtk.Widget.WidgetGetWindowMethodInfo
    ResolveTitleBarMethod "setAccelPath" o = Gtk.Widget.WidgetSetAccelPathMethodInfo
    ResolveTitleBarMethod "setAllocation" o = Gtk.Widget.WidgetSetAllocationMethodInfo
    ResolveTitleBarMethod "setAppPaintable" o = Gtk.Widget.WidgetSetAppPaintableMethodInfo
    ResolveTitleBarMethod "setBorderWidth" o = Gtk.Container.ContainerSetBorderWidthMethodInfo
    ResolveTitleBarMethod "setBuildableProperty" o = Gtk.Buildable.BuildableSetBuildablePropertyMethodInfo
    ResolveTitleBarMethod "setCanDefault" o = Gtk.Widget.WidgetSetCanDefaultMethodInfo
    ResolveTitleBarMethod "setCanFocus" o = Gtk.Widget.WidgetSetCanFocusMethodInfo
    ResolveTitleBarMethod "setChildVisible" o = Gtk.Widget.WidgetSetChildVisibleMethodInfo
    ResolveTitleBarMethod "setClip" o = Gtk.Widget.WidgetSetClipMethodInfo
    ResolveTitleBarMethod "setCompositeName" o = Gtk.Widget.WidgetSetCompositeNameMethodInfo
    ResolveTitleBarMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveTitleBarMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveTitleBarMethod "setDeviceEnabled" o = Gtk.Widget.WidgetSetDeviceEnabledMethodInfo
    ResolveTitleBarMethod "setDeviceEvents" o = Gtk.Widget.WidgetSetDeviceEventsMethodInfo
    ResolveTitleBarMethod "setDirection" o = Gtk.Widget.WidgetSetDirectionMethodInfo
    ResolveTitleBarMethod "setDoubleBuffered" o = Gtk.Widget.WidgetSetDoubleBufferedMethodInfo
    ResolveTitleBarMethod "setEvents" o = Gtk.Widget.WidgetSetEventsMethodInfo
    ResolveTitleBarMethod "setFocusChain" o = Gtk.Container.ContainerSetFocusChainMethodInfo
    ResolveTitleBarMethod "setFocusChild" o = Gtk.Container.ContainerSetFocusChildMethodInfo
    ResolveTitleBarMethod "setFocusHadjustment" o = Gtk.Container.ContainerSetFocusHadjustmentMethodInfo
    ResolveTitleBarMethod "setFocusOnClick" o = Gtk.Widget.WidgetSetFocusOnClickMethodInfo
    ResolveTitleBarMethod "setFocusVadjustment" o = Gtk.Container.ContainerSetFocusVadjustmentMethodInfo
    ResolveTitleBarMethod "setFontMap" o = Gtk.Widget.WidgetSetFontMapMethodInfo
    ResolveTitleBarMethod "setFontOptions" o = Gtk.Widget.WidgetSetFontOptionsMethodInfo
    ResolveTitleBarMethod "setHalign" o = Gtk.Widget.WidgetSetHalignMethodInfo
    ResolveTitleBarMethod "setHasTooltip" o = Gtk.Widget.WidgetSetHasTooltipMethodInfo
    ResolveTitleBarMethod "setHasWindow" o = Gtk.Widget.WidgetSetHasWindowMethodInfo
    ResolveTitleBarMethod "setHexpand" o = Gtk.Widget.WidgetSetHexpandMethodInfo
    ResolveTitleBarMethod "setHexpandSet" o = Gtk.Widget.WidgetSetHexpandSetMethodInfo
    ResolveTitleBarMethod "setMapped" o = Gtk.Widget.WidgetSetMappedMethodInfo
    ResolveTitleBarMethod "setMarginBottom" o = Gtk.Widget.WidgetSetMarginBottomMethodInfo
    ResolveTitleBarMethod "setMarginEnd" o = Gtk.Widget.WidgetSetMarginEndMethodInfo
    ResolveTitleBarMethod "setMarginLeft" o = Gtk.Widget.WidgetSetMarginLeftMethodInfo
    ResolveTitleBarMethod "setMarginRight" o = Gtk.Widget.WidgetSetMarginRightMethodInfo
    ResolveTitleBarMethod "setMarginStart" o = Gtk.Widget.WidgetSetMarginStartMethodInfo
    ResolveTitleBarMethod "setMarginTop" o = Gtk.Widget.WidgetSetMarginTopMethodInfo
    ResolveTitleBarMethod "setName" o = Gtk.Widget.WidgetSetNameMethodInfo
    ResolveTitleBarMethod "setNoShowAll" o = Gtk.Widget.WidgetSetNoShowAllMethodInfo
    ResolveTitleBarMethod "setOpacity" o = Gtk.Widget.WidgetSetOpacityMethodInfo
    ResolveTitleBarMethod "setParent" o = Gtk.Widget.WidgetSetParentMethodInfo
    ResolveTitleBarMethod "setParentWindow" o = Gtk.Widget.WidgetSetParentWindowMethodInfo
    ResolveTitleBarMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveTitleBarMethod "setRealized" o = Gtk.Widget.WidgetSetRealizedMethodInfo
    ResolveTitleBarMethod "setReallocateRedraws" o = Gtk.Container.ContainerSetReallocateRedrawsMethodInfo
    ResolveTitleBarMethod "setReceivesDefault" o = Gtk.Widget.WidgetSetReceivesDefaultMethodInfo
    ResolveTitleBarMethod "setRedrawOnAllocate" o = Gtk.Widget.WidgetSetRedrawOnAllocateMethodInfo
    ResolveTitleBarMethod "setResizeMode" o = Gtk.Container.ContainerSetResizeModeMethodInfo
    ResolveTitleBarMethod "setSelectionMode" o = TitleBarSetSelectionModeMethodInfo
    ResolveTitleBarMethod "setSensitive" o = Gtk.Widget.WidgetSetSensitiveMethodInfo
    ResolveTitleBarMethod "setSizeRequest" o = Gtk.Widget.WidgetSetSizeRequestMethodInfo
    ResolveTitleBarMethod "setState" o = Gtk.Widget.WidgetSetStateMethodInfo
    ResolveTitleBarMethod "setStateFlags" o = Gtk.Widget.WidgetSetStateFlagsMethodInfo
    ResolveTitleBarMethod "setStyle" o = Gtk.Widget.WidgetSetStyleMethodInfo
    ResolveTitleBarMethod "setSupportMultidevice" o = Gtk.Widget.WidgetSetSupportMultideviceMethodInfo
    ResolveTitleBarMethod "setTooltipMarkup" o = Gtk.Widget.WidgetSetTooltipMarkupMethodInfo
    ResolveTitleBarMethod "setTooltipText" o = Gtk.Widget.WidgetSetTooltipTextMethodInfo
    ResolveTitleBarMethod "setTooltipWindow" o = Gtk.Widget.WidgetSetTooltipWindowMethodInfo
    ResolveTitleBarMethod "setValign" o = Gtk.Widget.WidgetSetValignMethodInfo
    ResolveTitleBarMethod "setVexpand" o = Gtk.Widget.WidgetSetVexpandMethodInfo
    ResolveTitleBarMethod "setVexpandSet" o = Gtk.Widget.WidgetSetVexpandSetMethodInfo
    ResolveTitleBarMethod "setVisible" o = Gtk.Widget.WidgetSetVisibleMethodInfo
    ResolveTitleBarMethod "setVisual" o = Gtk.Widget.WidgetSetVisualMethodInfo
    ResolveTitleBarMethod "setWindow" o = Gtk.Widget.WidgetSetWindowMethodInfo
    ResolveTitleBarMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveTitleBarMethod t TitleBar, O.MethodInfo info TitleBar p) => OL.IsLabel t (TitleBar -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#endif

-- VVV Prop "selection-mode"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@selection-mode@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' titleBar #selectionMode
-- @
getTitleBarSelectionMode :: (MonadIO m, IsTitleBar o) => o -> m Bool
getTitleBarSelectionMode :: o -> m Bool
getTitleBarSelectionMode o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"selection-mode"

-- | Set the value of the “@selection-mode@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' titleBar [ #selectionMode 'Data.GI.Base.Attributes.:=' value ]
-- @
setTitleBarSelectionMode :: (MonadIO m, IsTitleBar o) => o -> Bool -> m ()
setTitleBarSelectionMode :: o -> Bool -> m ()
setTitleBarSelectionMode o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"selection-mode" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@selection-mode@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructTitleBarSelectionMode :: (IsTitleBar o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructTitleBarSelectionMode :: Bool -> m (GValueConstruct o)
constructTitleBarSelectionMode Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"selection-mode" Bool
val

#if defined(ENABLE_OVERLOADING)
data TitleBarSelectionModePropertyInfo
instance AttrInfo TitleBarSelectionModePropertyInfo where
    type AttrAllowedOps TitleBarSelectionModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint TitleBarSelectionModePropertyInfo = IsTitleBar
    type AttrSetTypeConstraint TitleBarSelectionModePropertyInfo = (~) Bool
    type AttrTransferTypeConstraint TitleBarSelectionModePropertyInfo = (~) Bool
    type AttrTransferType TitleBarSelectionModePropertyInfo = Bool
    type AttrGetType TitleBarSelectionModePropertyInfo = Bool
    type AttrLabel TitleBarSelectionModePropertyInfo = "selection-mode"
    type AttrOrigin TitleBarSelectionModePropertyInfo = TitleBar
    attrGet = getTitleBarSelectionMode
    attrSet = setTitleBarSelectionMode
    attrTransfer _ v = do
        return v
    attrConstruct = constructTitleBarSelectionMode
    attrClear = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList TitleBar
type instance O.AttributeList TitleBar = TitleBarAttributeList
type TitleBarAttributeList = ('[ '("appPaintable", Gtk.Widget.WidgetAppPaintablePropertyInfo), '("borderWidth", Gtk.Container.ContainerBorderWidthPropertyInfo), '("canDefault", Gtk.Widget.WidgetCanDefaultPropertyInfo), '("canFocus", Gtk.Widget.WidgetCanFocusPropertyInfo), '("child", Gtk.Container.ContainerChildPropertyInfo), '("compositeChild", Gtk.Widget.WidgetCompositeChildPropertyInfo), '("doubleBuffered", Gtk.Widget.WidgetDoubleBufferedPropertyInfo), '("events", Gtk.Widget.WidgetEventsPropertyInfo), '("expand", Gtk.Widget.WidgetExpandPropertyInfo), '("focusOnClick", Gtk.Widget.WidgetFocusOnClickPropertyInfo), '("halign", Gtk.Widget.WidgetHalignPropertyInfo), '("hasDefault", Gtk.Widget.WidgetHasDefaultPropertyInfo), '("hasFocus", Gtk.Widget.WidgetHasFocusPropertyInfo), '("hasTooltip", Gtk.Widget.WidgetHasTooltipPropertyInfo), '("heightRequest", Gtk.Widget.WidgetHeightRequestPropertyInfo), '("hexpand", Gtk.Widget.WidgetHexpandPropertyInfo), '("hexpandSet", Gtk.Widget.WidgetHexpandSetPropertyInfo), '("isFocus", Gtk.Widget.WidgetIsFocusPropertyInfo), '("margin", Gtk.Widget.WidgetMarginPropertyInfo), '("marginBottom", Gtk.Widget.WidgetMarginBottomPropertyInfo), '("marginEnd", Gtk.Widget.WidgetMarginEndPropertyInfo), '("marginLeft", Gtk.Widget.WidgetMarginLeftPropertyInfo), '("marginRight", Gtk.Widget.WidgetMarginRightPropertyInfo), '("marginStart", Gtk.Widget.WidgetMarginStartPropertyInfo), '("marginTop", Gtk.Widget.WidgetMarginTopPropertyInfo), '("name", Gtk.Widget.WidgetNamePropertyInfo), '("noShowAll", Gtk.Widget.WidgetNoShowAllPropertyInfo), '("opacity", Gtk.Widget.WidgetOpacityPropertyInfo), '("parent", Gtk.Widget.WidgetParentPropertyInfo), '("receivesDefault", Gtk.Widget.WidgetReceivesDefaultPropertyInfo), '("resizeMode", Gtk.Container.ContainerResizeModePropertyInfo), '("scaleFactor", Gtk.Widget.WidgetScaleFactorPropertyInfo), '("selectionMode", TitleBarSelectionModePropertyInfo), '("sensitive", Gtk.Widget.WidgetSensitivePropertyInfo), '("style", Gtk.Widget.WidgetStylePropertyInfo), '("tooltipMarkup", Gtk.Widget.WidgetTooltipMarkupPropertyInfo), '("tooltipText", Gtk.Widget.WidgetTooltipTextPropertyInfo), '("valign", Gtk.Widget.WidgetValignPropertyInfo), '("vexpand", Gtk.Widget.WidgetVexpandPropertyInfo), '("vexpandSet", Gtk.Widget.WidgetVexpandSetPropertyInfo), '("visible", Gtk.Widget.WidgetVisiblePropertyInfo), '("widthRequest", Gtk.Widget.WidgetWidthRequestPropertyInfo), '("window", Gtk.Widget.WidgetWindowPropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
titleBarSelectionMode :: AttrLabelProxy "selectionMode"
titleBarSelectionMode = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList TitleBar = TitleBarSignalList
type TitleBarSignalList = ('[ '("accelClosuresChanged", Gtk.Widget.WidgetAccelClosuresChangedSignalInfo), '("add", Gtk.Container.ContainerAddSignalInfo), '("buttonPressEvent", Gtk.Widget.WidgetButtonPressEventSignalInfo), '("buttonReleaseEvent", Gtk.Widget.WidgetButtonReleaseEventSignalInfo), '("canActivateAccel", Gtk.Widget.WidgetCanActivateAccelSignalInfo), '("checkResize", Gtk.Container.ContainerCheckResizeSignalInfo), '("childNotify", Gtk.Widget.WidgetChildNotifySignalInfo), '("compositedChanged", Gtk.Widget.WidgetCompositedChangedSignalInfo), '("configureEvent", Gtk.Widget.WidgetConfigureEventSignalInfo), '("damageEvent", Gtk.Widget.WidgetDamageEventSignalInfo), '("deleteEvent", Gtk.Widget.WidgetDeleteEventSignalInfo), '("destroy", Gtk.Widget.WidgetDestroySignalInfo), '("destroyEvent", Gtk.Widget.WidgetDestroyEventSignalInfo), '("directionChanged", Gtk.Widget.WidgetDirectionChangedSignalInfo), '("dragBegin", Gtk.Widget.WidgetDragBeginSignalInfo), '("dragDataDelete", Gtk.Widget.WidgetDragDataDeleteSignalInfo), '("dragDataGet", Gtk.Widget.WidgetDragDataGetSignalInfo), '("dragDataReceived", Gtk.Widget.WidgetDragDataReceivedSignalInfo), '("dragDrop", Gtk.Widget.WidgetDragDropSignalInfo), '("dragEnd", Gtk.Widget.WidgetDragEndSignalInfo), '("dragFailed", Gtk.Widget.WidgetDragFailedSignalInfo), '("dragLeave", Gtk.Widget.WidgetDragLeaveSignalInfo), '("dragMotion", Gtk.Widget.WidgetDragMotionSignalInfo), '("draw", Gtk.Widget.WidgetDrawSignalInfo), '("enterNotifyEvent", Gtk.Widget.WidgetEnterNotifyEventSignalInfo), '("event", Gtk.Widget.WidgetEventSignalInfo), '("eventAfter", Gtk.Widget.WidgetEventAfterSignalInfo), '("focus", Gtk.Widget.WidgetFocusSignalInfo), '("focusInEvent", Gtk.Widget.WidgetFocusInEventSignalInfo), '("focusOutEvent", Gtk.Widget.WidgetFocusOutEventSignalInfo), '("grabBrokenEvent", Gtk.Widget.WidgetGrabBrokenEventSignalInfo), '("grabFocus", Gtk.Widget.WidgetGrabFocusSignalInfo), '("grabNotify", Gtk.Widget.WidgetGrabNotifySignalInfo), '("hide", Gtk.Widget.WidgetHideSignalInfo), '("hierarchyChanged", Gtk.Widget.WidgetHierarchyChangedSignalInfo), '("keyPressEvent", Gtk.Widget.WidgetKeyPressEventSignalInfo), '("keyReleaseEvent", Gtk.Widget.WidgetKeyReleaseEventSignalInfo), '("keynavFailed", Gtk.Widget.WidgetKeynavFailedSignalInfo), '("leaveNotifyEvent", Gtk.Widget.WidgetLeaveNotifyEventSignalInfo), '("map", Gtk.Widget.WidgetMapSignalInfo), '("mapEvent", Gtk.Widget.WidgetMapEventSignalInfo), '("mnemonicActivate", Gtk.Widget.WidgetMnemonicActivateSignalInfo), '("motionNotifyEvent", Gtk.Widget.WidgetMotionNotifyEventSignalInfo), '("moveFocus", Gtk.Widget.WidgetMoveFocusSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("parentSet", Gtk.Widget.WidgetParentSetSignalInfo), '("popupMenu", Gtk.Widget.WidgetPopupMenuSignalInfo), '("propertyNotifyEvent", Gtk.Widget.WidgetPropertyNotifyEventSignalInfo), '("proximityInEvent", Gtk.Widget.WidgetProximityInEventSignalInfo), '("proximityOutEvent", Gtk.Widget.WidgetProximityOutEventSignalInfo), '("queryTooltip", Gtk.Widget.WidgetQueryTooltipSignalInfo), '("realize", Gtk.Widget.WidgetRealizeSignalInfo), '("remove", Gtk.Container.ContainerRemoveSignalInfo), '("screenChanged", Gtk.Widget.WidgetScreenChangedSignalInfo), '("scrollEvent", Gtk.Widget.WidgetScrollEventSignalInfo), '("selectionClearEvent", Gtk.Widget.WidgetSelectionClearEventSignalInfo), '("selectionGet", Gtk.Widget.WidgetSelectionGetSignalInfo), '("selectionNotifyEvent", Gtk.Widget.WidgetSelectionNotifyEventSignalInfo), '("selectionReceived", Gtk.Widget.WidgetSelectionReceivedSignalInfo), '("selectionRequestEvent", Gtk.Widget.WidgetSelectionRequestEventSignalInfo), '("setFocusChild", Gtk.Container.ContainerSetFocusChildSignalInfo), '("show", Gtk.Widget.WidgetShowSignalInfo), '("showHelp", Gtk.Widget.WidgetShowHelpSignalInfo), '("sizeAllocate", Gtk.Widget.WidgetSizeAllocateSignalInfo), '("stateChanged", Gtk.Widget.WidgetStateChangedSignalInfo), '("stateFlagsChanged", Gtk.Widget.WidgetStateFlagsChangedSignalInfo), '("styleSet", Gtk.Widget.WidgetStyleSetSignalInfo), '("styleUpdated", Gtk.Widget.WidgetStyleUpdatedSignalInfo), '("touchEvent", Gtk.Widget.WidgetTouchEventSignalInfo), '("unmap", Gtk.Widget.WidgetUnmapSignalInfo), '("unmapEvent", Gtk.Widget.WidgetUnmapEventSignalInfo), '("unrealize", Gtk.Widget.WidgetUnrealizeSignalInfo), '("visibilityNotifyEvent", Gtk.Widget.WidgetVisibilityNotifyEventSignalInfo), '("windowStateEvent", Gtk.Widget.WidgetWindowStateEventSignalInfo)] :: [(Symbol, *)])

#endif

-- method TitleBar::new
-- method type : Constructor
-- Args: []
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "Handy" , name = "TitleBar" })
-- throws : False
-- Skip return : False

foreign import ccall "hdy_title_bar_new" hdy_title_bar_new :: 
    IO (Ptr TitleBar)

-- | Creates a new t'GI.Handy.Objects.TitleBar.TitleBar'.
titleBarNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m TitleBar
    -- ^ __Returns:__ a new t'GI.Handy.Objects.TitleBar.TitleBar'
titleBarNew :: m TitleBar
titleBarNew  = IO TitleBar -> m TitleBar
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO TitleBar -> m TitleBar) -> IO TitleBar -> m TitleBar
forall a b. (a -> b) -> a -> b
$ do
    Ptr TitleBar
result <- IO (Ptr TitleBar)
hdy_title_bar_new
    Text -> Ptr TitleBar -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"titleBarNew" Ptr TitleBar
result
    TitleBar
result' <- ((ManagedPtr TitleBar -> TitleBar) -> Ptr TitleBar -> IO TitleBar
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr TitleBar -> TitleBar
TitleBar) Ptr TitleBar
result
    TitleBar -> IO TitleBar
forall (m :: * -> *) a. Monad m => a -> m a
return TitleBar
result'

#if defined(ENABLE_OVERLOADING)
#endif

-- method TitleBar::get_selection_mode
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface Name { namespace = "Handy" , name = "TitleBar" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #HdyTitleBar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "hdy_title_bar_get_selection_mode" hdy_title_bar_get_selection_mode :: 
    Ptr TitleBar ->                         -- self : TInterface (Name {namespace = "Handy", name = "TitleBar"})
    IO CInt

-- | Returns wether whether /@self@/ is in selection mode.
titleBarGetSelectionMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsTitleBar a) =>
    a
    -- ^ /@self@/: a t'GI.Handy.Objects.TitleBar.TitleBar'
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the title bar is in selection mode
titleBarGetSelectionMode :: a -> m Bool
titleBarGetSelectionMode a
self = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr TitleBar
self' <- a -> IO (Ptr TitleBar)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CInt
result <- Ptr TitleBar -> IO CInt
hdy_title_bar_get_selection_mode Ptr TitleBar
self'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data TitleBarGetSelectionModeMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTitleBar a) => O.MethodInfo TitleBarGetSelectionModeMethodInfo a signature where
    overloadedMethod = titleBarGetSelectionMode

#endif

-- method TitleBar::set_selection_mode
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface Name { namespace = "Handy" , name = "TitleBar" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #HdyTitleBar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "selection_mode"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "%TRUE to enable the selection mode"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "hdy_title_bar_set_selection_mode" hdy_title_bar_set_selection_mode :: 
    Ptr TitleBar ->                         -- self : TInterface (Name {namespace = "Handy", name = "TitleBar"})
    CInt ->                                 -- selection_mode : TBasicType TBoolean
    IO ()

-- | Sets whether /@self@/ is in selection mode.
titleBarSetSelectionMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsTitleBar a) =>
    a
    -- ^ /@self@/: a t'GI.Handy.Objects.TitleBar.TitleBar'
    -> Bool
    -- ^ /@selectionMode@/: 'P.True' to enable the selection mode
    -> m ()
titleBarSetSelectionMode :: a -> Bool -> m ()
titleBarSetSelectionMode a
self Bool
selectionMode = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr TitleBar
self' <- a -> IO (Ptr TitleBar)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    let selectionMode' :: CInt
selectionMode' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
selectionMode
    Ptr TitleBar -> CInt -> IO ()
hdy_title_bar_set_selection_mode Ptr TitleBar
self' CInt
selectionMode'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data TitleBarSetSelectionModeMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsTitleBar a) => O.MethodInfo TitleBarSetSelectionModeMethodInfo a signature where
    overloadedMethod = titleBarSetSelectionMode

#endif