packages feed

fltkhs 0.5.3.0 → 0.5.3.1

raw patch · 4 files changed

+39/−24 lines, 4 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Graphics.UI.FLTK.LowLevel.Hierarchy: clearDamageWithBitmask :: (HasCallStack, Match r ~ FindOp a a (ClearDamageWithBitmask ()), Op (ClearDamageWithBitmask ()) r a impl) => Ref a -> impl
- Graphics.UI.FLTK.LowLevel.Hierarchy: data ClearDamageWithBitmask a
- Graphics.UI.FLTK.LowLevel.Hierarchy: data GetDamageInsideWidget a
- Graphics.UI.FLTK.LowLevel.Hierarchy: data GetDamageWithText a
- Graphics.UI.FLTK.LowLevel.Hierarchy: getDamageInsideWidget :: (HasCallStack, Match r ~ FindOp a a (GetDamageInsideWidget ()), Op (GetDamageInsideWidget ()) r a impl) => Ref a -> impl
- Graphics.UI.FLTK.LowLevel.Hierarchy: getDamageWithText :: (HasCallStack, Match r ~ FindOp a a (GetDamageWithText ()), Op (GetDamageWithText ()) r a impl) => Ref a -> impl
- Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ (GHC.Word.Word8 -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.ClearDamageWithBitmask ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
- Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ (GHC.Word.Word8 -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.GetDamageWithText ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
- Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ (GHC.Word.Word8 -> Graphics.UI.FLTK.LowLevel.Fl_Types.Rectangle -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.GetDamageInsideWidget ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
- Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ GHC.Types.IO GHC.Word.Word8 => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.GetDamage ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
+ Graphics.UI.FLTK.LowLevel.Fl_Enumerations: allDamages :: [Damage]
+ Graphics.UI.FLTK.LowLevel.Fl_Enumerations: instance GHC.Classes.Eq Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Cursor
+ Graphics.UI.FLTK.LowLevel.Fl_Enumerations: instance GHC.Classes.Eq Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage
+ Graphics.UI.FLTK.LowLevel.Fl_Enumerations: instance GHC.Classes.Ord Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Cursor
+ Graphics.UI.FLTK.LowLevel.Fl_Enumerations: instance GHC.Classes.Ord Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage
+ Graphics.UI.FLTK.LowLevel.Hierarchy: clearDamageExcept :: (HasCallStack, Match r ~ FindOp a a (ClearDamageExcept ()), Op (ClearDamageExcept ()) r a impl) => Ref a -> impl
+ Graphics.UI.FLTK.LowLevel.Hierarchy: data ClearDamageExcept a
+ Graphics.UI.FLTK.LowLevel.Hierarchy: data SetDamage a
+ Graphics.UI.FLTK.LowLevel.Hierarchy: data SetDamageInside a
+ Graphics.UI.FLTK.LowLevel.Hierarchy: setDamage :: (HasCallStack, Match r ~ FindOp a a (SetDamage ()), Op (SetDamage ()) r a impl) => Ref a -> impl
+ Graphics.UI.FLTK.LowLevel.Hierarchy: setDamageInside :: (HasCallStack, Match r ~ FindOp a a (SetDamageInside ()), Op (SetDamageInside ()) r a impl) => Ref a -> impl
+ Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ ([Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage] -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.ClearDamageExcept ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
+ Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ ([Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage] -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.SetDamage ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
+ Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ ([Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage] -> Graphics.UI.FLTK.LowLevel.Fl_Types.Rectangle -> GHC.Types.IO ()) => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.SetDamageInside ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
+ Graphics.UI.FLTK.LowLevel.Widget: instance impl ~ GHC.Types.IO [Graphics.UI.FLTK.LowLevel.Fl_Enumerations.Damage] => Graphics.UI.FLTK.LowLevel.Dispatch.Op (Graphics.UI.FLTK.LowLevel.Hierarchy.GetDamage ()) Graphics.UI.FLTK.LowLevel.Hierarchy.Widget orig impl
- Graphics.UI.FLTK.LowLevel.Hierarchy: type WidgetFuncs = Destroy (Handle (GetParent (SetParent (GetType_ (SetType (DrawLabel (DoCallback (GetX (GetY (GetW (GetH (GetRectangle (SetAlign (GetAlign (GetBox (SetBox (GetColor (SetColor (SetColorWithBgSel (GetSelectionColor (SetSelectionColor (GetLabel (CopyLabel (SetLabel (GetLabeltype (SetLabeltype (GetLabelcolor (SetLabelcolor (GetLabelfont (SetLabelfont (GetLabelsize (SetLabelsize (GetImage (SetImage (GetDeimage (SetDeimage (GetTooltip (CopyTooltip (SetTooltip (GetWhen (SetWhen (GetVisible (GetVisibleR (ShowWidgetSuper (ShowWidget (HideSuper (Hide (SetVisible (ClearVisible (Active (ActiveR (Activate (Deactivate (GetOutput (SetOutput (Takesevents (Changed (SetChanged (ClearChanged (SetActive (ClearActive (TakeFocus (SetVisibleFocus (ClearVisibleFocus (ModifyVisibleFocus (GetVisibleFocus (Contains (Inside (Redraw (RedrawLabel (GetDamage (ClearDamageWithBitmask (ClearDamage (GetDamageWithText (GetDamageInsideWidget (MeasureLabel (GetWindow (GetTopWindow (GetTopWindowOffset (ResizeSuper (Resize (SetCallback (HasCallback (DrawBox (DrawBoxWithBoxtype (DrawBackdrop (DrawFocus ())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+ Graphics.UI.FLTK.LowLevel.Hierarchy: type WidgetFuncs = Destroy (Handle (GetParent (SetParent (GetType_ (SetType (DrawLabel (DoCallback (GetX (GetY (GetW (GetH (GetRectangle (SetAlign (GetAlign (GetBox (SetBox (GetColor (SetColor (SetColorWithBgSel (GetSelectionColor (SetSelectionColor (GetLabel (CopyLabel (SetLabel (GetLabeltype (SetLabeltype (GetLabelcolor (SetLabelcolor (GetLabelfont (SetLabelfont (GetLabelsize (SetLabelsize (GetImage (SetImage (GetDeimage (SetDeimage (GetTooltip (CopyTooltip (SetTooltip (GetWhen (SetWhen (GetVisible (GetVisibleR (ShowWidgetSuper (ShowWidget (HideSuper (Hide (SetVisible (ClearVisible (Active (ActiveR (Activate (Deactivate (GetOutput (SetOutput (Takesevents (Changed (SetChanged (ClearChanged (SetActive (ClearActive (TakeFocus (SetVisibleFocus (ClearVisibleFocus (ModifyVisibleFocus (GetVisibleFocus (Contains (Inside (Redraw (RedrawLabel (GetDamage (ClearDamageExcept (ClearDamage (SetDamage (SetDamageInside (MeasureLabel (GetWindow (GetTopWindow (GetTopWindowOffset (ResizeSuper (Resize (SetCallback (HasCallback (DrawBox (DrawBoxWithBoxtype (DrawBackdrop (DrawFocus ())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))

Files

fltkhs.cabal view
@@ -1,5 +1,5 @@ name : fltkhs-version : 0.5.3.0+version : 0.5.3.1 synopsis : FLTK bindings description: Low level bindings for the FLTK GUI toolkit. For installation and quick start instruction please scroll all the way down to the README. license : MIT
src/Graphics/UI/FLTK/LowLevel/Fl_Enumerations.chs view
@@ -28,6 +28,7 @@      kb_CommandState, kb_ControlState, kb_KpLast,      -- * Widget damage types      Damage(..),+     allDamages,      -- * Cursor type      Cursor(..),      -- * Various modes@@ -523,8 +524,20 @@ #endif kb_KpLast :: SpecialKey kb_KpLast = Kb_F-{#enum Damage {} deriving (Show) #}-{#enum Cursor {} deriving (Show) #}+{#enum Damage {} deriving (Show, Eq, Ord) #}+allDamages :: [Damage]+allDamages =+  [+   DamageChild+   , DamageExpose+   , DamageScroll+   , DamageOverlay+   , DamageUser1+   , DamageUser2+   , DamageAll+  ]++{#enum Cursor {} deriving (Show, Eq, Ord) #} {#enum Mode   {} deriving (Show,Eq,Ord) #} -- Fl_Mode Aliases single :: Mode
src/Graphics/UI/FLTK/LowLevel/Hierarchy.hs view
@@ -173,14 +173,14 @@          redrawLabel,          GetDamage,          getDamage,-         ClearDamageWithBitmask,-         clearDamageWithBitmask,+         ClearDamageExcept,+         clearDamageExcept,          ClearDamage,          clearDamage,-         GetDamageWithText,-         getDamageWithText,-         GetDamageInsideWidget,-         getDamageInsideWidget,+         SetDamage,+         setDamage,+         SetDamageInside,+         setDamageInside,          MeasureLabel,          measureLabel,          GetWindow,@@ -1653,10 +1653,10 @@   (Redraw   (RedrawLabel   (GetDamage-  (ClearDamageWithBitmask+  (ClearDamageExcept   (ClearDamage-  (GetDamageWithText-  (GetDamageInsideWidget+  (SetDamage+  (SetDamageInside   (MeasureLabel   (GetWindow   (GetTopWindow@@ -1743,10 +1743,10 @@ MAKE_METHOD(Redraw,redraw) MAKE_METHOD(RedrawLabel,redrawLabel) MAKE_METHOD(GetDamage,getDamage)-MAKE_METHOD(ClearDamageWithBitmask,clearDamageWithBitmask)+MAKE_METHOD(ClearDamageExcept,clearDamageExcept) MAKE_METHOD(ClearDamage,clearDamage)-MAKE_METHOD(GetDamageWithText,getDamageWithText)-MAKE_METHOD(GetDamageInsideWidget,getDamageInsideWidget)+MAKE_METHOD(SetDamage,setDamage)+MAKE_METHOD(SetDamageInside,setDamageInside) MAKE_METHOD(MeasureLabel,measureLabel) MAKE_METHOD(GetWindow,getWindow) MAKE_METHOD(GetTopWindow,getTopWindow)
src/Graphics/UI/FLTK/LowLevel/Widget.chs view
@@ -402,22 +402,24 @@ instance (impl ~ (IO ())) => Op (RedrawLabel ()) Widget orig impl where   runOp _ _ widget = withRef widget $ \widgetPtr -> redrawLabel' widgetPtr {# fun Fl_Widget_damage as damage' { id `Ptr ()' } -> `Word8' #}-instance (impl ~ (IO (Word8))) => Op (GetDamage ()) Widget orig impl where-  runOp _ _ widget = withRef widget $ \widgetPtr -> damage' widgetPtr+instance (impl ~ (IO ([Damage]))) => Op (GetDamage ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> do+    d <- damage' widgetPtr+    return (extract allDamages (fromIntegral d)) {# fun Fl_Widget_clear_damage_with_bitmask as clearDamageWithBitmask' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}-instance (impl ~ ( Word8 ->  IO ())) => Op (ClearDamageWithBitmask ()) Widget orig impl where-  runOp _ _ widget c = withRef widget $ \widgetPtr -> clearDamageWithBitmask' widgetPtr c+instance (impl ~ ( [Damage] ->  IO ())) => Op (ClearDamageExcept ()) Widget orig impl where+  runOp _ _ widget damages = withRef widget $ \widgetPtr -> clearDamageWithBitmask' widgetPtr (fromIntegral (combine damages)) {# fun Fl_Widget_clear_damage as clearDamage' { id `Ptr ()' } -> `()' supressWarningAboutRes #} instance (impl ~ (IO ())) => Op (ClearDamage ()) Widget orig impl where   runOp _ _ widget = withRef widget $ \widgetPtr -> clearDamage' widgetPtr {# fun Fl_Widget_damage_with_text as damageWithText' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}-instance (impl ~ ( Word8 ->  IO ())) => Op (GetDamageWithText ()) Widget orig impl where-  runOp _ _ widget c = withRef widget $ \widgetPtr -> damageWithText' widgetPtr c+instance (impl ~ ( [Damage] ->  IO ())) => Op (SetDamage ()) Widget orig impl where+  runOp _ _ widget damages = withRef widget $ \widgetPtr -> damageWithText' widgetPtr (fromIntegral (combine damages)) {# fun Fl_Widget_damage_inside_widget as damageInsideWidget' { id `Ptr ()',`Word8',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}-instance (impl ~ ( Word8 -> Rectangle ->  IO ())) => Op (GetDamageInsideWidget ()) Widget orig impl where-  runOp _ _ widget c rectangle = withRef widget $ \widgetPtr -> do+instance (impl ~ ( [Damage] -> Rectangle ->  IO ())) => Op (SetDamageInside()) Widget orig impl where+  runOp _ _ widget damages rectangle = withRef widget $ \widgetPtr -> do     let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle-    damageInsideWidget' widgetPtr c x_pos y_pos w_pos h_pos+    damageInsideWidget' widgetPtr (fromIntegral (combine damages)) x_pos y_pos w_pos h_pos {# fun Fl_Widget_measure_label as measureLabel' {id `Ptr ()',alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv*} -> `()' #} instance (impl ~ ( IO (Size))) => Op (MeasureLabel ()) Widget orig impl where   runOp _ _ widget = withRef widget $ \widgetPtr -> measureLabel' widgetPtr >>= \(width, height) -> return $ Size (Width width) (Height height)