{-# LINE 2 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
module Graphics.UI.Gtk.Abstract.Range (
Range,
RangeClass,
castToRange, gTypeRange,
toRange,
rangeGetAdjustment,
rangeSetAdjustment,
rangeGetInverted,
rangeSetInverted,
rangeGetValue,
rangeSetValue,
rangeSetIncrements,
rangeSetRange,
ScrollType(..),
SensitivityType(..),
rangeSetLowerStepperSensitivity,
rangeGetLowerStepperSensitivity,
rangeSetUpperStepperSensitivity,
rangeGetUpperStepperSensitivity,
rangeGetMinSliderSize,
rangeGetRangeRect,
rangeGetSliderRange,
rangeGetSliderSizeFixed,
rangeSetMinSliderSize,
rangeSetSliderSizeFixed,
rangeAdjustment,
rangeInverted,
rangeLowerStepperSensitivity,
rangeUpperStepperSensitivity,
rangeValue,
rangeSliderSizeFixed,
rangeMinSliderSize,
adjustBounds,
valueChanged,
changeValue,
{-# LINE 117 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
) where
import Control.Monad (liftM)
import System.Glib.FFI
import System.Glib.Attributes
import System.Glib.Properties
import Graphics.UI.Gtk.Abstract.Object (makeNewObject)
import Graphics.UI.Gtk.Types
{-# LINE 126 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
import Graphics.UI.Gtk.Signals
{-# LINE 127 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
import Graphics.UI.Gtk.General.Enums (ScrollType(..))
import Graphics.UI.Gtk.General.Structs (Rectangle(..))
{-# LINE 134 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeGetAdjustment :: RangeClass self => self
-> IO Adjustment
rangeGetAdjustment :: forall self. RangeClass self => self -> IO Adjustment
rangeGetAdjustment self
self =
(ForeignPtr Adjustment -> Adjustment, FinalizerPtr Adjustment)
-> IO (Ptr Adjustment) -> IO Adjustment
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
makeNewObject (ForeignPtr Adjustment -> Adjustment, FinalizerPtr Adjustment)
forall {a}. (ForeignPtr Adjustment -> Adjustment, FinalizerPtr a)
mkAdjustment (IO (Ptr Adjustment) -> IO Adjustment)
-> IO (Ptr Adjustment) -> IO Adjustment
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range
-> (Ptr Range -> IO (Ptr Adjustment)) -> IO (Ptr Adjustment)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO (Ptr Adjustment)) -> IO (Ptr Adjustment))
-> (Ptr Range -> IO (Ptr Adjustment)) -> IO (Ptr Adjustment)
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO (Ptr Adjustment)
gtk_range_get_adjustment Ptr Range
argPtr1)
{-# LINE 146 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeSetAdjustment :: RangeClass self => self
-> Adjustment
-> IO ()
rangeSetAdjustment :: forall self. RangeClass self => self -> Adjustment -> IO ()
rangeSetAdjustment self
self Adjustment
adjustment =
(\(Range ForeignPtr Range
arg1) (Adjustment ForeignPtr Adjustment
arg2) -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->ForeignPtr Adjustment -> (Ptr Adjustment -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Adjustment
arg2 ((Ptr Adjustment -> IO ()) -> IO ())
-> (Ptr Adjustment -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Adjustment
argPtr2 ->Ptr Range -> Ptr Adjustment -> IO ()
gtk_range_set_adjustment Ptr Range
argPtr1 Ptr Adjustment
argPtr2)
{-# LINE 161 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
Adjustment
adjustment
{-# LINE 194 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeGetInverted :: RangeClass self => self
-> IO Bool
rangeGetInverted :: forall self. RangeClass self => self -> IO Bool
rangeGetInverted self
self =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CInt) -> IO CInt)
-> (Ptr Range -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CInt
gtk_range_get_inverted Ptr Range
argPtr1)
{-# LINE 201 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeSetInverted :: RangeClass self => self
-> Bool
-> IO ()
rangeSetInverted :: forall self. RangeClass self => self -> Bool -> IO ()
rangeSetInverted self
self Bool
setting =
(\(Range ForeignPtr Range
arg1) CInt
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CInt -> IO ()
gtk_range_set_inverted Ptr Range
argPtr1 CInt
arg2)
{-# LINE 212 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
setting)
rangeGetValue :: RangeClass self => self
-> IO Double
rangeGetValue :: forall self. RangeClass self => self -> IO Double
rangeGetValue self
self =
(CDouble -> Double) -> IO CDouble -> IO Double
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CDouble -> Double
forall a b. (Real a, Fractional b) => a -> b
realToFrac (IO CDouble -> IO Double) -> IO CDouble -> IO Double
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CDouble) -> IO CDouble
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CDouble) -> IO CDouble)
-> (Ptr Range -> IO CDouble) -> IO CDouble
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CDouble
gtk_range_get_value Ptr Range
argPtr1)
{-# LINE 222 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeSetValue :: RangeClass self => self
-> Double
-> IO ()
rangeSetValue :: forall self. RangeClass self => self -> Double -> IO ()
rangeSetValue self
self Double
value =
(\(Range ForeignPtr Range
arg1) CDouble
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CDouble -> IO ()
gtk_range_set_value Ptr Range
argPtr1 CDouble
arg2)
{-# LINE 233 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
value)
rangeSetIncrements :: RangeClass self => self
-> Double
-> Double
-> IO ()
rangeSetIncrements :: forall self. RangeClass self => self -> Double -> Double -> IO ()
rangeSetIncrements self
self Double
step Double
page =
(\(Range ForeignPtr Range
arg1) CDouble
arg2 CDouble
arg3 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CDouble -> CDouble -> IO ()
gtk_range_set_increments Ptr Range
argPtr1 CDouble
arg2 CDouble
arg3)
{-# LINE 246 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
step)
(Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
page)
rangeSetRange :: RangeClass self => self
-> Double
-> Double
-> IO ()
rangeSetRange :: forall self. RangeClass self => self -> Double -> Double -> IO ()
rangeSetRange self
self Double
min Double
max =
(\(Range ForeignPtr Range
arg1) CDouble
arg2 CDouble
arg3 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CDouble -> CDouble -> IO ()
gtk_range_set_range Ptr Range
argPtr1 CDouble
arg2 CDouble
arg3)
{-# LINE 260 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
min)
(Double -> CDouble
forall a b. (Real a, Fractional b) => a -> b
realToFrac Double
max)
data SensitivityType = SensitivityAuto
| SensitivityOn
| SensitivityOff
deriving (Int -> SensitivityType
SensitivityType -> Int
SensitivityType -> [SensitivityType]
SensitivityType -> SensitivityType
SensitivityType -> SensitivityType -> [SensitivityType]
SensitivityType
-> SensitivityType -> SensitivityType -> [SensitivityType]
(SensitivityType -> SensitivityType)
-> (SensitivityType -> SensitivityType)
-> (Int -> SensitivityType)
-> (SensitivityType -> Int)
-> (SensitivityType -> [SensitivityType])
-> (SensitivityType -> SensitivityType -> [SensitivityType])
-> (SensitivityType -> SensitivityType -> [SensitivityType])
-> (SensitivityType
-> SensitivityType -> SensitivityType -> [SensitivityType])
-> Enum SensitivityType
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
$csucc :: SensitivityType -> SensitivityType
succ :: SensitivityType -> SensitivityType
$cpred :: SensitivityType -> SensitivityType
pred :: SensitivityType -> SensitivityType
$ctoEnum :: Int -> SensitivityType
toEnum :: Int -> SensitivityType
$cfromEnum :: SensitivityType -> Int
fromEnum :: SensitivityType -> Int
$cenumFrom :: SensitivityType -> [SensitivityType]
enumFrom :: SensitivityType -> [SensitivityType]
$cenumFromThen :: SensitivityType -> SensitivityType -> [SensitivityType]
enumFromThen :: SensitivityType -> SensitivityType -> [SensitivityType]
$cenumFromTo :: SensitivityType -> SensitivityType -> [SensitivityType]
enumFromTo :: SensitivityType -> SensitivityType -> [SensitivityType]
$cenumFromThenTo :: SensitivityType
-> SensitivityType -> SensitivityType -> [SensitivityType]
enumFromThenTo :: SensitivityType
-> SensitivityType -> SensitivityType -> [SensitivityType]
Enum,SensitivityType
SensitivityType -> SensitivityType -> Bounded SensitivityType
forall a. a -> a -> Bounded a
$cminBound :: SensitivityType
minBound :: SensitivityType
$cmaxBound :: SensitivityType
maxBound :: SensitivityType
Bounded,SensitivityType -> SensitivityType -> Bool
(SensitivityType -> SensitivityType -> Bool)
-> (SensitivityType -> SensitivityType -> Bool)
-> Eq SensitivityType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SensitivityType -> SensitivityType -> Bool
== :: SensitivityType -> SensitivityType -> Bool
$c/= :: SensitivityType -> SensitivityType -> Bool
/= :: SensitivityType -> SensitivityType -> Bool
Eq,Int -> SensitivityType -> ShowS
[SensitivityType] -> ShowS
SensitivityType -> String
(Int -> SensitivityType -> ShowS)
-> (SensitivityType -> String)
-> ([SensitivityType] -> ShowS)
-> Show SensitivityType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SensitivityType -> ShowS
showsPrec :: Int -> SensitivityType -> ShowS
$cshow :: SensitivityType -> String
show :: SensitivityType -> String
$cshowList :: [SensitivityType] -> ShowS
showList :: [SensitivityType] -> ShowS
Show)
{-# LINE 275 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeSetLowerStepperSensitivity :: RangeClass self => self
-> SensitivityType
-> IO ()
rangeSetLowerStepperSensitivity :: forall self. RangeClass self => self -> SensitivityType -> IO ()
rangeSetLowerStepperSensitivity self
self SensitivityType
sensitivity =
(\(Range ForeignPtr Range
arg1) CInt
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CInt -> IO ()
gtk_range_set_lower_stepper_sensitivity Ptr Range
argPtr1 CInt
arg2)
{-# LINE 288 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt)
-> (SensitivityType -> Int) -> SensitivityType -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. SensitivityType -> Int
forall a. Enum a => a -> Int
fromEnum) SensitivityType
sensitivity)
rangeGetLowerStepperSensitivity :: RangeClass self => self
-> IO SensitivityType
rangeGetLowerStepperSensitivity :: forall self. RangeClass self => self -> IO SensitivityType
rangeGetLowerStepperSensitivity self
self =
(CInt -> SensitivityType) -> IO CInt -> IO SensitivityType
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM (Int -> SensitivityType
forall a. Enum a => Int -> a
toEnum (Int -> SensitivityType)
-> (CInt -> Int) -> CInt -> SensitivityType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) (IO CInt -> IO SensitivityType) -> IO CInt -> IO SensitivityType
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CInt) -> IO CInt)
-> (Ptr Range -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CInt
gtk_range_get_lower_stepper_sensitivity Ptr Range
argPtr1)
{-# LINE 302 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeSetUpperStepperSensitivity :: RangeClass self => self
-> SensitivityType
-> IO ()
rangeSetUpperStepperSensitivity :: forall self. RangeClass self => self -> SensitivityType -> IO ()
rangeSetUpperStepperSensitivity self
self SensitivityType
sensitivity =
(\(Range ForeignPtr Range
arg1) CInt
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CInt -> IO ()
gtk_range_set_upper_stepper_sensitivity Ptr Range
argPtr1 CInt
arg2)
{-# LINE 316 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt)
-> (SensitivityType -> Int) -> SensitivityType -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. SensitivityType -> Int
forall a. Enum a => a -> Int
fromEnum) SensitivityType
sensitivity)
rangeGetUpperStepperSensitivity :: RangeClass self => self
-> IO SensitivityType
rangeGetUpperStepperSensitivity :: forall self. RangeClass self => self -> IO SensitivityType
rangeGetUpperStepperSensitivity self
self =
(CInt -> SensitivityType) -> IO CInt -> IO SensitivityType
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM (Int -> SensitivityType
forall a. Enum a => Int -> a
toEnum (Int -> SensitivityType)
-> (CInt -> Int) -> CInt -> SensitivityType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) (IO CInt -> IO SensitivityType) -> IO CInt -> IO SensitivityType
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CInt) -> IO CInt)
-> (Ptr Range -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CInt
gtk_range_get_upper_stepper_sensitivity Ptr Range
argPtr1)
{-# LINE 330 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeGetMinSliderSize :: RangeClass self => self
-> IO Int
rangeGetMinSliderSize :: forall self. RangeClass self => self -> IO Int
rangeGetMinSliderSize self
range =
(CInt -> Int) -> IO CInt -> IO Int
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CInt -> IO Int) -> IO CInt -> IO Int
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CInt) -> IO CInt)
-> (Ptr Range -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CInt
gtk_range_get_min_slider_size Ptr Range
argPtr1)
{-# LINE 341 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange range)
rangeGetRangeRect :: RangeClass self => self
-> IO Rectangle
rangeGetRangeRect :: forall self. RangeClass self => self -> IO Rectangle
rangeGetRangeRect self
self =
(Ptr Rectangle -> IO Rectangle) -> IO Rectangle
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr Rectangle -> IO Rectangle) -> IO Rectangle)
-> (Ptr Rectangle -> IO Rectangle) -> IO Rectangle
forall a b. (a -> b) -> a -> b
$ \Ptr Rectangle
rPtr -> do
(\(Range ForeignPtr Range
arg1) Ptr ()
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> Ptr () -> IO ()
gtk_range_get_range_rect Ptr Range
argPtr1 Ptr ()
arg2)
{-# LINE 352 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Ptr Rectangle -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr Ptr Rectangle
rPtr)
Ptr Rectangle -> IO Rectangle
forall a. Storable a => Ptr a -> IO a
peek Ptr Rectangle
rPtr
rangeGetSliderRange :: RangeClass self => self
-> IO (Maybe (Int, Int))
rangeGetSliderRange :: forall self. RangeClass self => self -> IO (Maybe (Int, Int))
rangeGetSliderRange self
range =
(Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int))
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int)))
-> (Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int))
forall a b. (a -> b) -> a -> b
$ \ Ptr CInt
startPtr ->
(Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int))
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int)))
-> (Ptr CInt -> IO (Maybe (Int, Int))) -> IO (Maybe (Int, Int))
forall a b. (a -> b) -> a -> b
$ \ Ptr CInt
endPtr -> do
(\(Range ForeignPtr Range
arg1) Ptr CInt
arg2 Ptr CInt
arg3 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> Ptr CInt -> Ptr CInt -> IO ()
gtk_range_get_slider_range Ptr Range
argPtr1 Ptr CInt
arg2 Ptr CInt
arg3)
{-# LINE 365 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(self -> Range
forall o. RangeClass o => o -> Range
toRange self
range)
Ptr CInt
startPtr
Ptr CInt
endPtr
if (Ptr CInt
startPtr Ptr CInt -> Ptr CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr CInt
forall a. Ptr a
nullPtr Bool -> Bool -> Bool
&& Ptr CInt
endPtr Ptr CInt -> Ptr CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr CInt
forall a. Ptr a
nullPtr)
then do
CInt
start <- Ptr CInt -> IO CInt
forall a. Storable a => Ptr a -> IO a
peek Ptr CInt
startPtr
CInt
end <- Ptr CInt -> IO CInt
forall a. Storable a => Ptr a -> IO a
peek Ptr CInt
endPtr
Maybe (Int, Int) -> IO (Maybe (Int, Int))
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ((Int, Int) -> Maybe (Int, Int)
forall a. a -> Maybe a
Just (CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CInt
start, CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CInt
end))
else Maybe (Int, Int) -> IO (Maybe (Int, Int))
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe (Int, Int)
forall a. Maybe a
Nothing
rangeGetSliderSizeFixed :: RangeClass self => self
-> IO Bool
rangeGetSliderSizeFixed :: forall self. RangeClass self => self -> IO Bool
rangeGetSliderSizeFixed self
self =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(Range ForeignPtr Range
arg1) -> ForeignPtr Range -> (Ptr Range -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO CInt) -> IO CInt)
-> (Ptr Range -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> IO CInt
gtk_range_get_slider_size_fixed Ptr Range
argPtr1)
{-# LINE 383 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
rangeSetMinSliderSize :: RangeClass self => self
-> Bool
-> IO ()
rangeSetMinSliderSize :: forall self. RangeClass self => self -> Bool -> IO ()
rangeSetMinSliderSize self
self Bool
minSize =
(\(Range ForeignPtr Range
arg1) CInt
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CInt -> IO ()
gtk_range_set_min_slider_size Ptr Range
argPtr1 CInt
arg2)
{-# LINE 393 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
minSize)
rangeSetSliderSizeFixed :: RangeClass self => self
-> Bool
-> IO ()
rangeSetSliderSizeFixed :: forall self. RangeClass self => self -> Bool -> IO ()
rangeSetSliderSizeFixed self
self Bool
sizeFixed =
(\(Range ForeignPtr Range
arg1) CInt
arg2 -> ForeignPtr Range -> (Ptr Range -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Range
arg1 ((Ptr Range -> IO ()) -> IO ()) -> (Ptr Range -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Range
argPtr1 ->Ptr Range -> CInt -> IO ()
gtk_range_set_slider_size_fixed Ptr Range
argPtr1 CInt
arg2)
{-# LINE 405 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
(toRange self)
(Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
sizeFixed)
{-# LINE 424 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeAdjustment :: RangeClass self => Attr self Adjustment
rangeAdjustment :: forall self. RangeClass self => Attr self Adjustment
rangeAdjustment = (self -> IO Adjustment)
-> (self -> Adjustment -> IO ())
-> ReadWriteAttr self Adjustment Adjustment
forall o a b.
(o -> IO a) -> (o -> b -> IO ()) -> ReadWriteAttr o a b
newAttr
self -> IO Adjustment
forall self. RangeClass self => self -> IO Adjustment
rangeGetAdjustment
self -> Adjustment -> IO ()
forall self. RangeClass self => self -> Adjustment -> IO ()
rangeSetAdjustment
rangeInverted :: RangeClass self => Attr self Bool
rangeInverted :: forall self. RangeClass self => Attr self Bool
rangeInverted = (self -> IO Bool)
-> (self -> Bool -> IO ()) -> ReadWriteAttr self Bool Bool
forall o a b.
(o -> IO a) -> (o -> b -> IO ()) -> ReadWriteAttr o a b
newAttr
self -> IO Bool
forall self. RangeClass self => self -> IO Bool
rangeGetInverted
self -> Bool -> IO ()
forall self. RangeClass self => self -> Bool -> IO ()
rangeSetInverted
rangeLowerStepperSensitivity :: RangeClass self => Attr self SensitivityType
rangeLowerStepperSensitivity :: forall self. RangeClass self => Attr self SensitivityType
rangeLowerStepperSensitivity = String -> GType -> Attr self SensitivityType
forall gobj enum.
(GObjectClass gobj, Enum enum) =>
String -> GType -> Attr gobj enum
newAttrFromEnumProperty String
"lower-stepper-sensitivity"
GType
gtk_sensitivity_type_get_type
{-# LINE 450 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeUpperStepperSensitivity :: RangeClass self => Attr self SensitivityType
rangeUpperStepperSensitivity :: forall self. RangeClass self => Attr self SensitivityType
rangeUpperStepperSensitivity = String -> GType -> Attr self SensitivityType
forall gobj enum.
(GObjectClass gobj, Enum enum) =>
String -> GType -> Attr gobj enum
newAttrFromEnumProperty String
"upper-stepper-sensitivity"
GType
gtk_sensitivity_type_get_type
{-# LINE 460 "./Graphics/UI/Gtk/Abstract/Range.chs" #-}
rangeValue :: RangeClass self => Attr self Double
rangeValue :: forall self. RangeClass self => Attr self Double
rangeValue = (self -> IO Double)
-> (self -> Double -> IO ()) -> ReadWriteAttr self Double Double
forall o a b.
(o -> IO a) -> (o -> b -> IO ()) -> ReadWriteAttr o a b
newAttr
self -> IO Double
forall self. RangeClass self => self -> IO Double
rangeGetValue
self -> Double -> IO ()
forall self. RangeClass self => self -> Double -> IO ()
rangeSetValue
rangeSliderSizeFixed :: RangeClass self => Attr self Bool
rangeSliderSizeFixed :: forall self. RangeClass self => Attr self Bool
rangeSliderSizeFixed = (self -> IO Bool)
-> (self -> Bool -> IO ()) -> ReadWriteAttr self Bool Bool
forall o a b.
(o -> IO a) -> (o -> b -> IO ()) -> ReadWriteAttr o a b
newAttr
self -> IO Bool
forall self. RangeClass self => self -> IO Bool
rangeGetSliderSizeFixed
self -> Bool -> IO ()
forall self. RangeClass self => self -> Bool -> IO ()
rangeSetSliderSizeFixed
rangeMinSliderSize :: RangeClass self => ReadWriteAttr self Int Bool
rangeMinSliderSize :: forall self. RangeClass self => ReadWriteAttr self Int Bool
rangeMinSliderSize = (self -> IO Int)
-> (self -> Bool -> IO ()) -> ReadWriteAttr self Int Bool
forall o a b.
(o -> IO a) -> (o -> b -> IO ()) -> ReadWriteAttr o a b
newAttr
self -> IO Int
forall self. RangeClass self => self -> IO Int
rangeGetMinSliderSize
self -> Bool -> IO ()
forall self. RangeClass self => self -> Bool -> IO ()
rangeSetMinSliderSize
valueChanged :: RangeClass self => Signal self (IO ())
valueChanged :: forall self. RangeClass self => Signal self (IO ())
valueChanged = (Bool -> self -> IO () -> IO (ConnectId self))
-> Signal self (IO ())
forall object handler.
(Bool -> object -> handler -> IO (ConnectId object))
-> Signal object handler
Signal (String -> Bool -> self -> IO () -> IO (ConnectId self)
forall obj.
GObjectClass obj =>
String -> Bool -> obj -> IO () -> IO (ConnectId obj)
connect_NONE__NONE String
"value-changed")
adjustBounds :: RangeClass self => Signal self (Double -> IO ())
adjustBounds :: forall self. RangeClass self => Signal self (Double -> IO ())
adjustBounds = (Bool -> self -> (Double -> IO ()) -> IO (ConnectId self))
-> Signal self (Double -> IO ())
forall object handler.
(Bool -> object -> handler -> IO (ConnectId object))
-> Signal object handler
Signal (String -> Bool -> self -> (Double -> IO ()) -> IO (ConnectId self)
forall obj.
GObjectClass obj =>
String -> Bool -> obj -> (Double -> IO ()) -> IO (ConnectId obj)
connect_DOUBLE__NONE String
"adjust-bounds")
changeValue :: RangeClass self => Signal self (ScrollType -> Double -> IO Bool)
changeValue :: forall self.
RangeClass self =>
Signal self (ScrollType -> Double -> IO Bool)
changeValue = (Bool
-> self
-> (ScrollType -> Double -> IO Bool)
-> IO (ConnectId self))
-> Signal self (ScrollType -> Double -> IO Bool)
forall object handler.
(Bool -> object -> handler -> IO (ConnectId object))
-> Signal object handler
Signal (String
-> Bool
-> self
-> (ScrollType -> Double -> IO Bool)
-> IO (ConnectId self)
forall a obj.
(Enum a, GObjectClass obj) =>
String
-> Bool -> obj -> (a -> Double -> IO Bool) -> IO (ConnectId obj)
connect_ENUM_DOUBLE__BOOL String
"change-value")
foreign import ccall unsafe "gtk_range_get_adjustment"
gtk_range_get_adjustment :: ((Ptr Range) -> (IO (Ptr Adjustment)))
foreign import ccall safe "gtk_range_set_adjustment"
gtk_range_set_adjustment :: ((Ptr Range) -> ((Ptr Adjustment) -> (IO ())))
foreign import ccall unsafe "gtk_range_get_inverted"
gtk_range_get_inverted :: ((Ptr Range) -> (IO CInt))
foreign import ccall safe "gtk_range_set_inverted"
gtk_range_set_inverted :: ((Ptr Range) -> (CInt -> (IO ())))
foreign import ccall unsafe "gtk_range_get_value"
gtk_range_get_value :: ((Ptr Range) -> (IO CDouble))
foreign import ccall safe "gtk_range_set_value"
gtk_range_set_value :: ((Ptr Range) -> (CDouble -> (IO ())))
foreign import ccall safe "gtk_range_set_increments"
gtk_range_set_increments :: ((Ptr Range) -> (CDouble -> (CDouble -> (IO ()))))
foreign import ccall safe "gtk_range_set_range"
gtk_range_set_range :: ((Ptr Range) -> (CDouble -> (CDouble -> (IO ()))))
foreign import ccall safe "gtk_range_set_lower_stepper_sensitivity"
gtk_range_set_lower_stepper_sensitivity :: ((Ptr Range) -> (CInt -> (IO ())))
foreign import ccall safe "gtk_range_get_lower_stepper_sensitivity"
gtk_range_get_lower_stepper_sensitivity :: ((Ptr Range) -> (IO CInt))
foreign import ccall safe "gtk_range_set_upper_stepper_sensitivity"
gtk_range_set_upper_stepper_sensitivity :: ((Ptr Range) -> (CInt -> (IO ())))
foreign import ccall safe "gtk_range_get_upper_stepper_sensitivity"
gtk_range_get_upper_stepper_sensitivity :: ((Ptr Range) -> (IO CInt))
foreign import ccall safe "gtk_range_get_min_slider_size"
gtk_range_get_min_slider_size :: ((Ptr Range) -> (IO CInt))
foreign import ccall safe "gtk_range_get_range_rect"
gtk_range_get_range_rect :: ((Ptr Range) -> ((Ptr ()) -> (IO ())))
foreign import ccall safe "gtk_range_get_slider_range"
gtk_range_get_slider_range :: ((Ptr Range) -> ((Ptr CInt) -> ((Ptr CInt) -> (IO ()))))
foreign import ccall safe "gtk_range_get_slider_size_fixed"
gtk_range_get_slider_size_fixed :: ((Ptr Range) -> (IO CInt))
foreign import ccall safe "gtk_range_set_min_slider_size"
gtk_range_set_min_slider_size :: ((Ptr Range) -> (CInt -> (IO ())))
foreign import ccall safe "gtk_range_set_slider_size_fixed"
gtk_range_set_slider_size_fixed :: ((Ptr Range) -> (CInt -> (IO ())))
foreign import ccall unsafe "gtk_sensitivity_type_get_type"
gtk_sensitivity_type_get_type :: CUInt