Portability | semi-portable (uses MPTC and type families) |
---|---|
Stability | experimental |
Maintainer | felipe.lessa@gmail.com |
Safe Haskell | Safe-Infered |
System.Dzen.Bars
Contents
Description
- dbar :: (Num a, Enum a, Ord a, Show a) => Bool -> Width -> (a, a) -> a -> DString
- cdbar :: (Num a, Enum a, Ord a, Show a) => Bool -> Width -> (a, a) -> Printer a
- gdbar :: (Num a, Enum a, Ord a, Show a) => Bool -> (Width, Height) -> Maybe DColour -> Maybe DColour -> Bool -> (a, a) -> a -> DString
- cgdbar :: (Num a, Enum a, Ord a, Show a) => Bool -> (Width, Height) -> Maybe DColour -> Maybe DColour -> Bool -> (a, a) -> Printer a
- bar :: (Num a, Enum a, Ord a, Show a) => BarText -> BarType -> (a, a) -> a -> DString
- cbar :: (Num a, Enum a, Ord a, Show a) => BarText -> BarType -> (a, a) -> Printer a
- data BarType
- data BarTextType
- = Percentage
- | Absolute
- data BarText
- = AtLeft !BarTextType
- | AtRight !BarTextType
- | None
- dbar_style :: Char -> Width -> BarType
- gdbar_style :: (Width, Height) -> Maybe DColour -> Maybe DColour -> Bool -> BarType
Simple interface
Mimicking dbar
Arguments
:: (Num a, Enum a, Ord a, Show a) | |
=> Bool | If |
-> Width | Width of the bar interior. |
-> (a, a) | Minimum and maximum values. |
-> a | Actual value. |
-> DString |
Mimics the dbar utility. Uses the dbar_style
.
cdbar :: (Num a, Enum a, Ord a, Show a) => Bool -> Width -> (a, a) -> Printer aSource
Mimics the dbar utility while getting the input dinamically.
Mimicking gdbar
Arguments
:: (Num a, Enum a, Ord a, Show a) | |
=> Bool | If |
-> (Width, Height) | Size of the whole bar (excluding text). |
-> Maybe DColour | Filled colour (see |
-> Maybe DColour | Background/border colour
(see |
-> Bool |
|
-> (a, a) | Minimum and maximum values. |
-> a | Actual value. |
-> DString |
Mimics the gdbar utility. Uses the gdbar_style
.
cgdbar :: (Num a, Enum a, Ord a, Show a) => Bool -> (Width, Height) -> Maybe DColour -> Maybe DColour -> Bool -> (a, a) -> Printer aSource
Mimics the gdbar utility while getting the input dinamically.
Generic interface
bar :: (Num a, Enum a, Ord a, Show a) => BarText -> BarType -> (a, a) -> a -> DStringSource
Draws a bar and optionally some text describing some quantity in relation to some range. For example,
bar (AtLeft Percentage) (Text "[" "=" (Just ">") " " "]" 20) (-10,10) i
produces the bars
" 2% [ ]" where i = -9.6 " 2% [> ]" where i = -9.5 " 50% [=========> ]" where i = 0 " 96% [==================> ]" where i = 9.4 " 99% [===================>]" where i = 9.99 "100% [====================]" where i = 10
Note that the text is always padded to four characters. If the
first bar above had AtRight Percentage
the result would be
"[ ] 2% "
so the padding always inserts the spaces on the outside.
The type of the bar to be drawn.
Constructors
Text | Draws a text bar. Note, however, that the
|
Fields
| |
Filled | Draws a filled graphical bar, like |
Fields
| |
Hollow | Draws a filled graphical bar with a surrounding border. |
Fields
|
How to draw the bar text. AtLeft
and AtRight
are used to
specify if the text is at the left or the right of the bar,
and None
means that no text will be written.
Constructors
AtLeft !BarTextType | |
AtRight !BarTextType | |
None |
Styles of the simple interfaces
dbar_style :: Char -> Width -> BarTypeSource
The style produced by the dbar utility.