You can subscribe to this list here.
| 2003 |
Jan
(30) |
Feb
(20) |
Mar
(151) |
Apr
(86) |
May
(23) |
Jun
(25) |
Jul
(107) |
Aug
(141) |
Sep
(55) |
Oct
(85) |
Nov
(65) |
Dec
(2) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(22) |
Feb
(18) |
Mar
(3) |
Apr
(16) |
May
(69) |
Jun
(3) |
Jul
(1) |
Aug
(3) |
Sep
(1) |
Oct
|
Nov
(6) |
Dec
(1) |
| 2005 |
Jan
(2) |
Feb
(16) |
Mar
|
Apr
|
May
|
Jun
(47) |
Jul
(1) |
Aug
|
Sep
(6) |
Oct
(4) |
Nov
|
Dec
(34) |
| 2006 |
Jan
(39) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(5) |
Oct
|
Nov
(4) |
Dec
|
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2008 |
Jan
|
Feb
|
Mar
(26) |
Apr
(1) |
May
(1) |
Jun
|
Jul
(5) |
Aug
(2) |
Sep
(8) |
Oct
(8) |
Nov
(22) |
Dec
(30) |
| 2009 |
Jan
(10) |
Feb
(13) |
Mar
(14) |
Apr
(14) |
May
(32) |
Jun
(25) |
Jul
(36) |
Aug
(10) |
Sep
(2) |
Oct
|
Nov
|
Dec
(10) |
| 2010 |
Jan
(9) |
Feb
(4) |
Mar
(2) |
Apr
(1) |
May
(2) |
Jun
(2) |
Jul
(1) |
Aug
(4) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
|
From: <kr_...@us...> - 2003-03-15 01:06:39
|
Update of /cvsroot/htoolkit/port/doc In directory sc8-pr-cvs1:/tmp/cvs-serv24588/doc Added Files: colors.html Log Message: Add comprehencive list of predefined colors. The new Colors module contains the abstract data definition for Color type and a lot of functions which represents predefined colors. --- NEW FILE: colors.html --- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD><TITLE>Color Table</TITLE></HEAD> <BODY TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0" BGCOLOR="#FFFFFF"> <TABLE BGCOLOR="GRAY" CELLPADDING=2> <TR><TD STYLE="background:aliceblue" ALIGN=CENTER>aliceblue</TD> <TD STYLE="background:antiquewhite" ALIGN=CENTER>antiquewhite</TD> <TD STYLE="background:aqua" ALIGN=CENTER>aqua</TD> <TD STYLE="background:aquamarine" ALIGN=CENTER>aquamarine</TD></TR> <TR><TD STYLE="background:azure" ALIGN=CENTER>azure</TD> <TD STYLE="background:beige" ALIGN=CENTER>beige</TD> <TD STYLE="background:bisque" ALIGN=CENTER>bisque</TD> <TD STYLE="background:black" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>black</FONT></TD></TR> <TR><TD STYLE="background:blanchedalmond" ALIGN=CENTER>blanchedalmond</TD> <TD STYLE="background:#0000FF" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>blue</FONT></TD> <TD STYLE="background:#8A2BE2" ALIGN=CENTER>blueviolet</TD> <TD STYLE="background:brown" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>brown</FONT></TD></TR> <TR><TD STYLE="background:burlywood" ALIGN=CENTER>burlywood</TD> <TD STYLE="background:cadetblue" ALIGN=CENTER>cadetblue</TD> <TD STYLE="background:chartreuse" ALIGN=CENTER>chartreuse</TD> <TD STYLE="background:chocolate" ALIGN=CENTER>chocolate</TD></TR> <TR><TD STYLE="background:coral" ALIGN=CENTER>coral</TD> <TD STYLE="background:#6495ED" ALIGN=CENTER>cornflower</TD> <TD STYLE="background:cornsilk" ALIGN=CENTER>cornsilk</TD> <TD STYLE="background:crimson" ALIGN=CENTER>crimson</TD></TR> <TR><TD STYLE="background:cyan" ALIGN=CENTER>cyan</TD> <TD STYLE="background:darkblue" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkblue</FONT></TD> <TD STYLE="background:darkcyan" ALIGN=CENTER>darkcyan</TD> <TD STYLE="background:darkgoldenrod" ALIGN=CENTER>darkgoldenrod</TD></TR> <TR><TD STYLE="background:darkgray" ALIGN=CENTER>darkgray</TD> <TD STYLE="background:darkgreen" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkgreen</FONT></TD> <TD STYLE="background:darkkhaki" ALIGN=CENTER>darkkhaki</TD> <TD STYLE="background:darkmagenta" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkmagenta</FONT></TD></TR> <TR><TD STYLE="background:darkolivegreen" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkolivegreen</FONT></TD> <TD STYLE="background:darkorange" ALIGN=CENTER>darkorange</TD> <TD STYLE="background:darkorchid" ALIGN=CENTER>darkorchid</TD> <TD STYLE="background:darkred" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkred</FONT></TD></TR> <TR><TD STYLE="background:darksalmon" ALIGN=CENTER>darksalmon</TD> <TD STYLE="background:darkseagreen" ALIGN=CENTER>darkseagreen</TD> <TD STYLE="background:darkslateblue" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkslateblue</FONT></TD> <TD STYLE="background:darkslategray" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>darkslategray</FONT></TD></TR> <TR><TD STYLE="background:darkturquoise" ALIGN=CENTER>darkturquoise</TD> <TD STYLE="background:darkviolet" ALIGN=CENTER>darkviolet</TD> <TD STYLE="background:deeppink" ALIGN=CENTER>deeppink</TD> <TD STYLE="background:deepskyblue" ALIGN=CENTER>deepskyblue</TD></TR> <TR><TD STYLE="background:dimgray" ALIGN=CENTER>dimgray</TD> <TD STYLE="background:dodgerblue" ALIGN=CENTER>dodgerblue</TD> <TD STYLE="background:firebrick" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>firebrick</FONT></TD> <TD STYLE="background:floralwhite" ALIGN=CENTER>floralwhite</TD></TR> <TR><TD STYLE="background:forestgreen" ALIGN=CENTER>forestgreen</TD> <TD STYLE="background:#FF00FF" ALIGN=CENTER>fuchsia</TD> <TD STYLE="background:gainsboro" ALIGN=CENTER>gainsboro</TD> <TD STYLE="background:ghostwhite" ALIGN=CENTER>ghostwhite</TD></TR> <TR><TD STYLE="background:gold" ALIGN=CENTER>gold</TD> <TD STYLE="background:goldenrod" ALIGN=CENTER>goldenrod</TD> <TD STYLE="background:gray" ALIGN=CENTER>gray</TD> <TD STYLE="background:green" ALIGN=CENTER>green</TD></TR> <TR><TD STYLE="background:greenyellow" ALIGN=CENTER>greenyellow</TD> <TD STYLE="background:honeydew" ALIGN=CENTER>honeydew</TD> <TD STYLE="background:hotpink" ALIGN=CENTER>hotpink</TD> <TD STYLE="background:indianred" ALIGN=CENTER>indianred</TD></TR> <TR><TD STYLE="background:indigo" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>indigo</FONT></TD> <TD STYLE="background:ivory" ALIGN=CENTER>ivory</TD> <TD STYLE="background:khaki" ALIGN=CENTER>khaki</TD> <TD STYLE="background:lavender" ALIGN=CENTER>lavender</TD></TR> <TR><TD STYLE="background:lavenderblush" ALIGN=CENTER>lavenderblush</TD> <TD STYLE="background:lawngreen" ALIGN=CENTER>lawngreen</TD> <TD STYLE="background:lemonchiffon" ALIGN=CENTER>lemonchiffon</TD> <TD STYLE="background:lightblue" ALIGN=CENTER>lightblue</TD></TR> <TR><TD STYLE="background:lightcoral" ALIGN=CENTER>lightcoral</TD> <TD STYLE="background:lightcyan" ALIGN=CENTER>lightcyan</TD> <TD STYLE="background:lightgoldenrodyellow" ALIGN=CENTER>lightgoldenrodyellow</TD> <TD STYLE="background:lightgreen" ALIGN=CENTER>lightgreen</TD></TR> <TR><TD STYLE="background:lightgray" ALIGN=CENTER>lightgray</TD> <TD STYLE="background:lightpink" ALIGN=CENTER>lightpink</TD> <TD STYLE="background:lightsalmon" ALIGN=CENTER>lightsalmon</TD> <TD STYLE="background:lightseagreen" ALIGN=CENTER>lightseagreen</TD></TR> <TR><TD STYLE="background:lightskyblue" ALIGN=CENTER>lightskyblue</TD> <TD STYLE="background:lightslategray" ALIGN=CENTER>lightslategray</TD> <TD STYLE="background:lightsteelblue" ALIGN=CENTER>lightsteelblue</TD> <TD STYLE="background:lightyellow" ALIGN=CENTER>lightyellow</TD></TR> <TR><TD STYLE="background:lime" ALIGN=CENTER>lime</TD> <TD STYLE="background:limegreen" ALIGN=CENTER>limegreen</TD> <TD STYLE="background:linen" ALIGN=CENTER>linen</TD> <TD STYLE="background:magenta" ALIGN=CENTER>magenta</TD></TR> <TR><TD STYLE="background:maroon" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>maroon</FONT></TD> <TD STYLE="background:mediumaquamarine" ALIGN=CENTER>mediumaquamarine</TD> <TD STYLE="background:mediumblue" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>mediumblue</FONT></TD> <TD STYLE="background:mediumorchid" ALIGN=CENTER>mediumorchid</TD></TR> <TR><TD STYLE="background:mediumpurple" ALIGN=CENTER>mediumpurple</TD> <TD STYLE="background:mediumseagreen" ALIGN=CENTER>mediumseagreen</TD> <TD STYLE="background:mediumslateblue" ALIGN=CENTER>mediumslateblue</TD> <TD STYLE="background:mediumspringgreen" ALIGN=CENTER>mediumspringgreen</TD></TR> <TR><TD STYLE="background:mediumturquoise" ALIGN=CENTER>mediumturquoise</TD> <TD STYLE="background:mediumvioletred" ALIGN=CENTER>mediumvioletred</TD> <TD STYLE="background:midnightblue" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>midnightblue</FONT></TD> <TD STYLE="background:mintcream" ALIGN=CENTER>mintcream</TD></TR> <TR><TD STYLE="background:mistyrose" ALIGN=CENTER>mistyrose</TD> <TD STYLE="background:moccasin" ALIGN=CENTER>moccasin</TD> <TD STYLE="background:navajowhite" ALIGN=CENTER>navajowhite</TD> <TD STYLE="background:navy" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>navy</FONT></TD></TR> <TR><TD STYLE="background:oldlace" ALIGN=CENTER>oldlace</TD> <TD STYLE="background:olive" ALIGN=CENTER>olive</TD> <TD STYLE="background:olivedrab" ALIGN=CENTER>olivedrab</TD> <TD STYLE="background:orange" ALIGN=CENTER>orange</TD></TR> <TR><TD STYLE="background:orangered" ALIGN=CENTER>orangered</TD> <TD STYLE="background:orchid" ALIGN=CENTER>orchid</TD> <TD STYLE="background:palegoldenrod" ALIGN=CENTER>palegoldenrod</TD> <TD STYLE="background:palegreen" ALIGN=CENTER>palegreen</TD></TR> <TR><TD STYLE="background:paleturquoise" ALIGN=CENTER>paleturquoise</TD> <TD STYLE="background:palevioletred" ALIGN=CENTER>palevioletred</TD> <TD STYLE="background:papayawhip" ALIGN=CENTER>papayawhip</TD> <TD STYLE="background:peachpuff" ALIGN=CENTER>peachpuff</TD></TR> <TR><TD STYLE="background:peru" ALIGN=CENTER>peru</TD> <TD STYLE="background:pink" ALIGN=CENTER>pink</TD> <TD STYLE="background:plum" ALIGN=CENTER>plum</TD> <TD STYLE="background:powderblue" ALIGN=CENTER>powderblue</TD></TR> <TR><TD STYLE="background:purple" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>purple</FONT></TD> <TD STYLE="background:red" ALIGN=CENTER>red</TD> <TD STYLE="background:rosybrown" ALIGN=CENTER>rosybrown</TD> <TD STYLE="background:royalblue" ALIGN=CENTER>royalblue</TD></TR> <TR><TD STYLE="background:saddlebrown" ALIGN=CENTER><FONT COLOR=WHITE SIZE=2>saddlebrown</FONT></TD> <TD STYLE="background:salmon" ALIGN=CENTER>salmon</TD> <TD STYLE="background:sandybrown" ALIGN=CENTER>sandybrown</TD> <TD STYLE="background:seagreen" ALIGN=CENTER>seagreen</TD></TR> <TR><TD STYLE="background:seashell" ALIGN=CENTER>seashell</TD> <TD STYLE="background:sienna" ALIGN=CENTER>sienna</TD> <TD STYLE="background:silver" ALIGN=CENTER>silver</TD> <TD STYLE="background:skyblue" ALIGN=CENTER>skyblue</TD></TR> <TR><TD STYLE="background:slateblue" ALIGN=CENTER>slateblue</TD> <TD STYLE="background:slategray" ALIGN=CENTER>slategray</TD> <TD STYLE="background:snow" ALIGN=CENTER>snow</TD> <TD STYLE="background:springgreen" ALIGN=CENTER>springgreen</TD></TR> <TR><TD STYLE="background:steelblue" ALIGN=CENTER>steelblue</TD> <TD STYLE="background:tan" ALIGN=CENTER>tan</TD> <TD STYLE="background:teal" ALIGN=CENTER>teal</TD> <TD STYLE="background:thistle" ALIGN=CENTER>thistle</TD></TR> <TR><TD STYLE="background:tomato" ALIGN=CENTER>tomato</TD> <TD STYLE="background:turquoise" ALIGN=CENTER>turquoise</TD> <TD STYLE="background:violet" ALIGN=CENTER>violet</TD> <TD STYLE="background:wheat" ALIGN=CENTER>wheat</TD></TR> <TR><TD STYLE="background:white" ALIGN=CENTER>white</TD> <TD STYLE="background:whitesmoke" ALIGN=CENTER>whitesmoke</TD> <TD STYLE="background:yellow" ALIGN=CENTER>yellow</TD> <TD STYLE="background:yellowgreen" ALIGN=CENTER>yellowgreen</TD></TR> </TABLE> </BODY> </HTML> |
|
From: <kr_...@us...> - 2003-03-15 01:06:39
|
Update of /cvsroot/htoolkit/port/src/Port
In directory sc8-pr-cvs1:/tmp/cvs-serv24588/src/Port
Modified Files:
Canvas.hs ColorDialog.hs Types.hs
Added Files:
Colors.hs
Log Message:
Add comprehencive list of predefined colors. The new Colors module contains the abstract data definition for Color type and a lot of functions which represents predefined colors.
--- NEW FILE: Colors.hs ---
{-# OPTIONS -fglasgow-exts #-}
-----------------------------------------------------------------------------------------
{-| Module : Colors
Copyright : (c) Krasimir Angelov 2003
License : BSD-style
Maintainer : ka2...@ya...
Stability : provisional
Portability : portable
The module defines the abstract data type which represents colors and defines a
large set of predefined colors. The full list of predefined colors is
visible here: <colors.html>
-}
-----------------------------------------------------------------------------------------
module Graphics.UI.Port.Colors
( -- * Color type
Color
, rgbColor, colorRed, colorGreen, colorBlue
-- * Standard colors.
, aliceblue, antiquewhite, aqua, aquamarine, azure, beige
, bisque, black, blanchedalmond, blue, blueviolet, brown
, burlywood, cadetblue, chartreuse, chocolate, coral
, cornflower, cornsilk, crimson, cyan, darkblue, darkcyan
, darkgoldenrod, darkgray, darkgreen, darkkhaki
, darkmagenta, darkolivegreen, darkorange, darkorchid
, darkred, darksalmon, darkseagreen, darkslateblue
, darkslategray, darkturquoise, darkviolet, deeppink
, deepskyblue, dimgray, dodgerblue, firebrick
, floralwhite, forestgreen, fuchsia, gainsboro
, ghostwhite, gold, goldenrod, gray, green, greenyellow
, honeydew, hotpink, indianred, indigo, ivory, khaki
, lavender, lavenderblush, lawngreen, lemonchiffon
, lightblue, lightcoral, lightcyan, lightgoldenrodyellow
, lightgreen, lightgray, lightpink, lightsalmon
, lightseagreen, lightskyblue, lightslategray
, lightsteelblue, lightyellow, lime
, limegreen, linen, magenta, maroon, mediumaquamarine
, mediumblue, mediumorchid, mediumpurple, mediumseagreen
, mediumslateblue, mediumspringgreen, mediumturquoise
, mediumvioletred, midnightblue, mintcream, mistyrose
, moccasin, navajowhite, navy, oldlace, olive, olivedrab
, orange, orangered, orchid, palegoldenrod, palegreen
, paleturquoise, palevioletred, papayawhip, peachpuff
, peru, pink, plum, powderblue, purple, red, rosybrown
, royalblue, saddlebrown, salmon, sandybrown, seagreen
, seashell, sienna, silver, skyblue, slateblue, slategray
, snow, springgreen, steelblue, teal, thistle, tomato
, turquoise, violet, wheat, white, whitesmoke, yellow
, yellowgreen, dialoggray
-- * Marshalling
, CColor, fromCColor, toCColor
) where
import Foreign.C
import Data.Word
import Data.Bits
newtype Color = Color Word deriving Eq
instance Show Color where
showsPrec d c
| c == aliceblue = showString "aliceblue"
| c == antiquewhite = showString "antiquewhite"
| c == aqua = showString "aqua"
| c == aquamarine = showString "aquamarine"
| c == azure = showString "azure"
| c == beige = showString "beige"
| c == bisque = showString "bisque"
| c == black = showString "black"
| c == blanchedalmond = showString "blanchedalmond"
| c == blue = showString "blue"
| c == blueviolet = showString "blueviolet"
| c == brown = showString "brown"
| c == burlywood = showString "burlywood"
| c == cadetblue = showString "cadetblue"
| c == chartreuse = showString "chartreuse"
| c == chocolate = showString "chocolate"
| c == coral = showString "coral"
| c == cornflower = showString "cornflower"
| c == cornsilk = showString "cornsilk"
| c == crimson = showString "crimson"
| c == cyan = showString "cyan"
| c == darkblue = showString "darkblue"
| c == darkcyan = showString "darkcyan"
| c == darkgoldenrod = showString "darkgoldenrod"
| c == darkgray = showString "darkgray"
| c == darkgreen = showString "darkgreen"
| c == darkkhaki = showString "darkkhaki"
| c == darkmagenta = showString "darkmagenta"
| c == darkolivegreen = showString "darkolivegreen"
| c == darkorange = showString "darkorange"
| c == darkorchid = showString "darkorchid"
| c == darkred = showString "darkred"
| c == darksalmon = showString "darksalmon"
| c == darkseagreen = showString "darkseagreen"
| c == darkslateblue = showString "darkslateblue"
| c == darkslategray = showString "darkslategray"
| c == darkturquoise = showString "darkturquoise"
| c == darkviolet = showString "darkviolet"
| c == deeppink = showString "deeppink"
| c == deepskyblue = showString "deepskyblue"
| c == dimgray = showString "dimgray"
| c == dodgerblue = showString "dodgerblue"
| c == firebrick = showString "firebrick"
| c == floralwhite = showString "floralwhite"
| c == forestgreen = showString "forestgreen"
| c == fuchsia = showString "fuchsia"
| c == gainsboro = showString "gainsboro"
| c == ghostwhite = showString "ghostwhite"
| c == gold = showString "gold"
| c == goldenrod = showString "goldenrod"
| c == gray = showString "gray"
| c == green = showString "green"
| c == greenyellow = showString "greenyellow"
| c == honeydew = showString "honeydew"
| c == hotpink = showString "hotpink"
| c == indianred = showString "indianred"
| c == indigo = showString "indigo"
| c == ivory = showString "ivory"
| c == khaki = showString "khaki"
| c == lavender = showString "lavender"
| c == lavenderblush = showString "lavenderblush"
| c == lawngreen = showString "lawngreen"
| c == lemonchiffon = showString "lemonchiffon"
| c == lightblue = showString "lightblue"
| c == lightcoral = showString "lightcoral"
| c == lightcyan = showString "lightcyan"
| c == lightgoldenrodyellow= showString "lightgoldenrodyellow"
| c == lightgreen = showString "lightgreen"
| c == lightgray = showString "lightgray"
| c == lightpink = showString "lightpink"
| c == lightsalmon = showString "lightsalmon"
| c == lightseagreen = showString "lightseagreen"
| c == lightskyblue = showString "lightskyblue"
| c == lightslategray = showString "lightslategray"
| c == lightsteelblue = showString "lightsteelblue"
| c == lightyellow = showString "lightyellow"
| c == lime = showString "lime"
| c == limegreen = showString "limegreen"
| c == linen = showString "linen"
| c == magenta = showString "magenta"
| c == maroon = showString "maroon"
| c == mediumaquamarine = showString "mediumaquamarine"
| c == mediumblue = showString "mediumblue"
| c == mediumorchid = showString "mediumorchid"
| c == mediumpurple = showString "mediumpurple"
| c == mediumseagreen = showString "mediumseagreen"
| c == mediumslateblue = showString "mediumslateblue"
| c == mediumspringgreen = showString "mediumspringgreen"
| c == mediumturquoise = showString "mediumturquoise"
| c == mediumvioletred = showString "mediumvioletred"
| c == midnightblue = showString "midnightblue"
| c == mintcream = showString "mintcream"
| c == mistyrose = showString "mistyrose"
| c == moccasin = showString "moccasin"
| c == navajowhite = showString "navajowhite"
| c == navy = showString "navy"
| c == oldlace = showString "oldlace"
| c == olive = showString "olive"
| c == olivedrab = showString "olivedrab"
| c == orange = showString "orange"
| c == orangered = showString "orangered"
| c == orchid = showString "orchid"
| c == palegoldenrod = showString "palegoldenrod"
| c == palegreen = showString "palegreen"
| c == paleturquoise = showString "paleturquoise"
| c == palevioletred = showString "palevioletred"
| c == papayawhip = showString "papayawhip"
| c == peachpuff = showString "peachpuff"
| c == peru = showString "peru"
| c == pink = showString "pink"
| c == plum = showString "plum"
| c == powderblue = showString "powderblue"
| c == purple = showString "purple"
| c == red = showString "red"
| c == rosybrown = showString "rosybrown"
| c == royalblue = showString "royalblue"
| c == saddlebrown = showString "saddlebrown"
| c == salmon = showString "salmon"
| c == sandybrown = showString "sandybrown"
| c == seagreen = showString "seagreen"
| c == seashell = showString "seashell"
| c == sienna = showString "sienna"
| c == silver = showString "silver"
| c == skyblue = showString "skyblue"
| c == slateblue = showString "slateblue"
| c == slategray = showString "slategray"
| c == snow = showString "snow"
| c == springgreen = showString "springgreen"
| c == steelblue = showString "steelblue"
| c == teal = showString "teal"
| c == thistle = showString "thistle"
| c == tomato = showString "tomato"
| c == turquoise = showString "turquoise"
| c == violet = showString "violet"
| c == wheat = showString "wheat"
| c == white = showString "white"
| c == whitesmoke = showString "whitesmoke"
| c == yellow = showString "yellow"
| c == yellowgreen = showString "yellowgreen"
| c == dialoggray = showString "dialoggray"
| otherwise = showParen (d > 0)
(showString "rgbColor " . shows (colorRed c) .
showChar ' ' . shows (colorGreen c) .
showChar ' ' . shows (colorBlue c))
-- | Create a color from a red\/green\/blue triple.
rgbColor :: Word8 -> Word8 -> Word8 -> Color
rgbColor r g b = Color (((fromIntegral b) * 0x10000) .|. ((fromIntegral g) * 0x100) .|. fromIntegral r)
-- | Returns a red color component
colorRed :: Color -> Word8
colorRed (Color c) = fromIntegral ((c ) .&. 0xFF)
-- | Returns a green color component
colorGreen :: Color -> Word8
colorGreen (Color c) = fromIntegral ((c `div` 0x100 ) .&. 0xFF)
-- | Returns a blue color component
colorBlue :: Color -> Word8
colorBlue (Color c) = fromIntegral ((c `div` 0x10000) .&. 0xFF)
-- Default colors.
aliceblue, antiquewhite, aqua, aquamarine, azure, beige,
bisque, black, blanchedalmond, blue, blueviolet, brown,
burlywood, cadetblue, chartreuse, chocolate, coral,
cornflower, cornsilk, crimson, cyan, darkblue, darkcyan,
darkgoldenrod, darkgray, darkgreen, darkkhaki,
darkmagenta, darkolivegreen, darkorange, darkorchid,
darkred, darksalmon, darkseagreen, darkslateblue,
darkslategray, darkturquoise, darkviolet, deeppink,
deepskyblue, dimgray, dodgerblue, firebrick,
floralwhite, forestgreen, fuchsia, gainsboro,
ghostwhite, gold, goldenrod, gray, green, greenyellow,
honeydew, hotpink, indianred, indigo, ivory, khaki,
lavender, lavenderblush, lawngreen, lemonchiffon,
lightblue, lightcoral, lightcyan, lightgoldenrodyellow,
lightgreen, lightgray, lightpink, lightsalmon,
lightseagreen, lightskyblue, lightslategray,
lightsteelblue, lightyellow, lime,
limegreen, linen, magenta, maroon, mediumaquamarine,
mediumblue, mediumorchid, mediumpurple, mediumseagreen,
mediumslateblue, mediumspringgreen, mediumturquoise,
mediumvioletred, midnightblue, mintcream, mistyrose,
moccasin, navajowhite, navy, oldlace, olive, olivedrab,
orange, orangered, orchid, palegoldenrod, palegreen,
paleturquoise, palevioletred, papayawhip, peachpuff,
peru, pink, plum, powderblue, purple, red, rosybrown,
royalblue, saddlebrown, salmon, sandybrown, seagreen,
seashell, sienna, silver, skyblue, slateblue, slategray,
snow, springgreen, steelblue, teal, thistle, tomato,
turquoise, violet, wheat, white, whitesmoke, yellow,
yellowgreen, dialoggray :: Color
aliceblue = Color 0xFFF8F0
antiquewhite = Color 0xD7EBFA
aqua = Color 0xFFFF00
aquamarine = Color 0xD4FF7F
azure = Color 0xFFFFF0
beige = Color 0xDCF5F5
bisque = Color 0xFFE4C4
black = Color 0x000000
blanchedalmond = Color 0xCDEBFF
blue = Color 0xFF0000
blueviolet = Color 0xE22B8A
brown = Color 0x2A2AA5
burlywood = Color 0x87B8DE
cadetblue = Color 0xA09E5F
chartreuse = Color 0x00FF7F
chocolate = Color 0x1E69D2
coral = Color 0x507FFF
cornflower = Color 0xED9564
cornsilk = Color 0xDCF8FF
crimson = Color 0x3C14DC
cyan = Color 0xFFFF00
darkblue = Color 0x8B0000
darkcyan = Color 0x8B8B00
darkgoldenrod = Color 0x0B86B8
darkgray = Color 0xA9A9A9
darkgreen = Color 0x006400
darkkhaki = Color 0xBDB76B
darkmagenta = Color 0x8B008B
darkolivegreen = Color 0x2F6B55
darkorange = Color 0x008CFF
darkorchid = Color 0xCC3299
darkred = Color 0x00008B
darksalmon = Color 0x7A96E9
darkseagreen = Color 0x8BBC8F
darkslateblue = Color 0x8B3D48
darkslategray = Color 0x4F4F2F
darkturquoise = Color 0xD1CE00
darkviolet = Color 0xD30094
deeppink = Color 0x9314FF
deepskyblue = Color 0xFFBF00
dimgray = Color 0x696969
dodgerblue = Color 0xFF901E
firebrick = Color 0x2222B2
floralwhite = Color 0xF0FAFF
forestgreen = Color 0x228B22
fuchsia = Color 0xFF00FF
gainsboro = Color 0xDCDCDC
ghostwhite = Color 0xFFF8F8
gold = Color 0x00D7FF
goldenrod = Color 0x20A5DA
gray = Color 0x808080
green = Color 0x008000
greenyellow = Color 0x2FFFAD
honeydew = Color 0xF0FFF0
hotpink = Color 0xB469FF
indianred = Color 0x5C5CCD
indigo = Color 0x82004B
ivory = Color 0xF0FFFF
khaki = Color 0x8CE6F0
lavender = Color 0xFAE6E6
lavenderblush = Color 0xF5F0FF
lawngreen = Color 0x00FC7C
lemonchiffon = Color 0xCDFAFF
lightblue = Color 0xE6D8AD
lightcoral = Color 0x8080F0
lightcyan = Color 0xFFFFE0
lightgoldenrodyellow= Color 0xD2FAFA
lightgreen = Color 0x90EE90
lightgray = Color 0xD3D3D3
lightpink = Color 0xC1B6FF
lightsalmon = Color 0x7AA0FF
lightseagreen = Color 0xAAB220
lightskyblue = Color 0xFACE87
lightslategray = Color 0x998877
lightsteelblue = Color 0xDEC4B0
lightyellow = Color 0xE0FFFF
lime = Color 0x00FF00
limegreen = Color 0x32CD32
linen = Color 0xE6F0FA
magenta = Color 0xFF00FF
maroon = Color 0x000080
mediumaquamarine = Color 0xAACD66
mediumblue = Color 0xCD0000
mediumorchid = Color 0xD355BA
mediumpurple = Color 0xDB7093
mediumseagreen = Color 0x71B33C
mediumslateblue = Color 0xEE687B
mediumspringgreen = Color 0x9AFA00
mediumturquoise = Color 0xCCD148
mediumvioletred = Color 0x8515C7
midnightblue = Color 0x701919
mintcream = Color 0xFAFFF5
mistyrose = Color 0xE1E4FF
moccasin = Color 0xB5E4FF
navajowhite = Color 0xADDEFF
navy = Color 0x800000
oldlace = Color 0xE6F5FD
olive = Color 0x008080
olivedrab = Color 0x238E6B
orange = Color 0x00A5FF
orangered = Color 0x0045FF
orchid = Color 0xD670DA
palegoldenrod = Color 0xAAE8EE
palegreen = Color 0x98FB98
paleturquoise = Color 0xEEEEAF
palevioletred = Color 0x9370DB
papayawhip = Color 0xD5EFFF
peachpuff = Color 0xB9DAFF
peru = Color 0x3F85CD
pink = Color 0xCBC0FF
plum = Color 0xDDA0DD
powderblue = Color 0xE6E0B0
purple = Color 0x800080
red = Color 0x0000FF
rosybrown = Color 0x8F8FBC
royalblue = Color 0xE16941
saddlebrown = Color 0x13458B
salmon = Color 0x7280FA
sandybrown = Color 0x60A4F4
seagreen = Color 0x578B2E
seashell = Color 0xEEF5FF
sienna = Color 0x2D52A0
silver = Color 0xC0C0C0
skyblue = Color 0xEBCE87
slateblue = Color 0xCD5A6A
slategray = Color 0x908070
snow = Color 0xFAFAFF
springgreen = Color 0x7FFF00
steelblue = Color 0xB48246
teal = Color 0x808000
thistle = Color 0xD8BFD8
tomato = Color 0x4763FF
turquoise = Color 0xD0E040
violet = Color 0xEE82EE
wheat = Color 0xB3DEF5
white = Color 0xFFFFFF
whitesmoke = Color 0xF5F5F5
yellow = Color 0x00FFFF
yellowgreen = Color 0x32CD9A
dialoggray = Color 0xC8D0D4
-- marshalling
type CColor = CUInt
toCColor :: Color -> CColor
toCColor (Color c) = fromIntegral c
fromCColor :: CColor -> Color
fromCColor cx = Color (fromIntegral cx)
Index: Canvas.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port/Canvas.hs,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** Canvas.hs 8 Feb 2003 08:36:14 -0000 1.12
--- Canvas.hs 15 Mar 2003 01:06:32 -0000 1.13
***************
*** 93,97 ****
dialogPen :: Pen
dialogPen
! = Pen 1 DrawCopy black dialoggrey False dialogFont JoinMiter CapFlat LineSolid HatchSolid
--- 93,97 ----
dialogPen :: Pen
dialogPen
! = Pen 1 DrawCopy black dialoggray False dialogFont JoinMiter CapFlat LineSolid HatchSolid
***************
*** 117,121 ****
(toCBufferMode buffermode)
! foreign import ccall osInitCanvas :: CInt -> CInt -> CWord -> CWord
-> CInt -> CInt
-> CInt -> CInt -> Ptr CUChar
--- 117,121 ----
(toCBufferMode buffermode)
! foreign import ccall osInitCanvas :: CInt -> CInt -> CColor -> CColor
-> CInt -> CInt
-> CInt -> CInt -> Ptr CUChar
***************
*** 150,154 ****
cfont
canvas
! foreign import ccall osChangeCanvasPen :: CInt -> CInt -> CWord -> CWord
-> CInt -> CInt
-> CInt -> CInt -> Ptr CUChar
--- 150,154 ----
cfont
canvas
! foreign import ccall osChangeCanvasPen :: CInt -> CInt -> CColor -> CColor
-> CInt -> CInt
-> CInt -> CInt -> Ptr CUChar
Index: ColorDialog.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port/ColorDialog.hs,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ColorDialog.hs 14 Mar 2003 18:38:43 -0000 1.1
--- ColorDialog.hs 15 Mar 2003 01:06:32 -0000 1.2
***************
*** 27,29 ****
return (Just (fromCColor c))
else return Nothing
! foreign import ccall osRunColorDialog :: Ptr CWord -> IO Bool
--- 27,29 ----
return (Just (fromCColor c))
else return Nothing
! foreign import ccall osRunColorDialog :: Ptr CColor -> IO Bool
Index: Types.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port/Types.hs,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** Types.hs 10 Feb 2003 22:42:09 -0000 1.13
--- Types.hs 15 Mar 2003 01:06:32 -0000 1.14
***************
*** 36,46 ****
-- ** Colors
! , Color
! , rgbColor, colorRed, colorGreen, colorBlue
!
! -- *** Standard colors
! , black, darkgrey, grey, lightgrey, dialoggrey, white
! , red, green, blue
! , cyan, magenta, yellow
-- ** Bitmaps
--- 36,40 ----
-- ** Colors
! , module Graphics.UI.Port.Colors
-- ** Bitmaps
***************
*** 101,105 ****
, withCFontMetricsResult, fromCFontMetrics
- , fromCColor, toCColor
, withCPoint, fromCPoint
, withCSize, withCSizeResult, fromCSize
--- 95,98 ----
***************
*** 123,129 ****
import Foreign.Marshal.Alloc
import System.IO( bracket )
- import Data.Word
import Data.Bits
!
{-----------------------------------------------------------------------------------------
--- 116,121 ----
import Foreign.Marshal.Alloc
import System.IO( bracket )
import Data.Bits
! import Graphics.UI.Port.Colors
{-----------------------------------------------------------------------------------------
***************
*** 158,231 ****
nullHandle
= nullPtr
-
- {-----------------------------------------------------------------------------------------
- Color
- -----------------------------------------------------------------------------------------}
- -- | An abstract data type to define colors.
- newtype Color = Color Word deriving Eq
-
- instance Show Color where
- showsPrec d c
- | c == black = showString "black"
- | c == darkgrey = showString "darkgrey"
- | c == grey = showString "grey"
- | c == lightgrey= showString "lightgrey"
- | c == white = showString "white"
- | c == red = showString "red"
- | c == green = showString "green"
- | c == blue = showString "blue"
- | c == cyan = showString "cyan"
- | c == magenta = showString "magenta"
- | c == yellow = showString "yellow"
- | otherwise = showParen (d > 0)
- (showString "rgbColor " . shows (colorRed c) .
- showChar ' ' . shows (colorGreen c) .
- showChar ' ' . shows (colorBlue c))
-
- -- | Create a color from a red\/green\/blue triple.
- rgbColor :: Word8 -> Word8 -> Word8 -> Color
- rgbColor r g b = Color (((fromIntegral b) * 0x10000) .|. ((fromIntegral g) * 0x100) .|. fromIntegral r)
-
- -- | Returns a red color component
- colorRed :: Color -> Word8
- colorRed (Color c) = fromIntegral ((c ) .&. 0xFF)
-
- -- | Returns a green color component
- colorGreen :: Color -> Word8
- colorGreen (Color c) = fromIntegral ((c `div` 0x100 ) .&. 0xFF)
-
- -- | Returns a blue color component
- colorBlue :: Color -> Word8
- colorBlue (Color c) = fromIntegral ((c `div` 0x10000) .&. 0xFF)
-
-
- -- Default colors.
- black, darkgrey, grey, lightgrey, white :: Color
- red, green, blue :: Color
- cyan, magenta, yellow, dialoggrey :: Color
-
- black = Color 0x000000
- darkgrey = Color 0x3F3F3F
- grey = Color 0x7F7F7F
- lightgrey = Color 0xBFBFBF
- white = Color 0xFFFFFF
-
- red = Color 0x0000FF
- green = Color 0x00FF00
- blue = Color 0xFF0000
-
- cyan = Color 0xFFFF00
- magenta = Color 0xFF00FF
- yellow = Color 0x00FFFF
-
- dialoggrey= Color 0xC8D0D4
-
- -- marshalling
- toCColor :: Color -> CWord
- toCColor (Color c) = fromIntegral c
-
- fromCColor :: CWord -> Color
- fromCColor cx = Color (fromIntegral cx)
-
{-----------------------------------------------------------------------------------------
--- 150,153 ----
|
|
From: <kr_...@us...> - 2003-03-15 01:06:39
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv24588 Modified Files: configure makefile Log Message: Add comprehencive list of predefined colors. The new Colors module contains the abstract data definition for Color type and a lot of functions which represents predefined colors. Index: configure =================================================================== RCS file: /cvsroot/htoolkit/port/configure,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** configure 30 Jan 2003 11:26:47 -0000 1.8 --- configure 15 Mar 2003 01:06:32 -0000 1.9 *************** *** 362,367 **** # Create directories echo "creating output directories:" - echo " - doc" - mkdir -p doc echo " - config" mkdir -p config --- 362,365 ---- Index: makefile =================================================================== RCS file: /cvsroot/htoolkit/port/makefile,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** makefile 14 Mar 2003 18:38:42 -0000 1.12 --- makefile 15 Mar 2003 01:06:32 -0000 1.13 *************** *** 34,37 **** --- 34,38 ---- # haskell (H) and C sources HSRCS = Port/IntMap.hs Port/PtrMap.hs \ + Port/Colors.hs \ Port/Types.hs Port/Handlers.hs \ Port/Bitmap.hs Port/Font.hs Port/Canvas.hs \ |
|
From: <kr_...@us...> - 2003-03-15 01:00:57
|
Update of /cvsroot/htoolkit/port/doc In directory sc8-pr-cvs1:/tmp/cvs-serv23537/doc Log Message: Directory /cvsroot/htoolkit/port/doc added to the repository |
|
From: <kr_...@us...> - 2003-03-14 18:38:46
|
Update of /cvsroot/htoolkit/port/src/include In directory sc8-pr-cvs1:/tmp/cvs-serv31129/src/include Added Files: ColorDialog.h Log Message: Implementation for the ColorDialog --- NEW FILE: ColorDialog.h --- #ifndef COLORDIALOG_H #define COLORDIALOG_H #include "Types.h" BOOL osRunColorDialog(unsigned int *color); #endif |
|
From: <kr_...@us...> - 2003-03-14 18:38:46
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv31129/src/cbits/GTK
Added Files:
ColorDialog.c
Log Message:
Implementation for the ColorDialog
--- NEW FILE: ColorDialog.c ---
#include "ColorDialog.h"
BOOL osRunColorDialog(unsigned int *color)
{
gint result;
GdkColor c;
GtkWidget *color_dialog;
color_dialog = gtk_color_selection_dialog_new("Color");
result = gtk_dialog_run(GTK_DIALOG(color_dialog));
gtk_color_selection_get_current_color(GTK_COLOR_SELECTION(GTK_COLOR_SELECTION_DIALOG(color_dialog)->colorsel), &c);
gtk_widget_destroy (color_dialog);
if (result != GTK_RESPONSE_OK)
return FALSE;
*color = (c.red/257) | (c.green/257 << 8) | (c.blue/257 << 16);
return TRUE;
}
|
|
From: <kr_...@us...> - 2003-03-14 18:38:46
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv31129 Modified Files: makefile Log Message: Implementation for the ColorDialog Index: makefile =================================================================== RCS file: /cvsroot/htoolkit/port/makefile,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** makefile 14 Mar 2003 15:26:09 -0000 1.11 --- makefile 14 Mar 2003 18:38:42 -0000 1.12 *************** *** 37,41 **** Port/Bitmap.hs Port/Font.hs Port/Canvas.hs \ Port/Controls.hs \ ! Port/FileDialog.hs Port/Menu.hs Port/Window.hs \ Port/Timer.hs \ Port/Message.hs \ --- 37,42 ---- Port/Bitmap.hs Port/Font.hs Port/Canvas.hs \ Port/Controls.hs \ ! Port/FileDialog.hs Port/ColorDialog.hs \ ! Port/Menu.hs Port/Window.hs \ Port/Timer.hs \ Port/Message.hs \ *************** *** 46,51 **** CSRCS = Window.c Util.c Bitmap.c Button.c CheckBox.c EditBox.c \ ! FileDialog.c PopUp.c Canvas.c Menu.c ListBox.c Label.c \ ! Font.c RadioBox.c Timer.c Frame.c Message.c # package description --- 47,52 ---- CSRCS = Window.c Util.c Bitmap.c Button.c CheckBox.c EditBox.c \ ! FileDialog.c ColorDialog.c PopUp.c Canvas.c Menu.c ListBox.c \ ! Label.c Font.c RadioBox.c Timer.c Frame.c Message.c # package description |
|
From: <kr_...@us...> - 2003-03-14 18:38:46
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32
In directory sc8-pr-cvs1:/tmp/cvs-serv31129/src/cbits/Win32
Added Files:
ColorDialog.c
Log Message:
Implementation for the ColorDialog
--- NEW FILE: ColorDialog.c ---
#include "ColorDialog.h"
static COLORREF std_colors[] =
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
BOOL osRunColorDialog(unsigned int *color)
{
CHOOSECOLOR cc;
cc.lStructSize = sizeof(cc);
cc.hwndOwner = GetActiveWindow();
cc.hInstance = NULL;
cc.rgbResult = 0;
cc.lpCustColors = std_colors;
cc.Flags = 0;
cc.lCustData = 0;
cc.lpfnHook = NULL;
cc.lpTemplateName = NULL;
if (!ChooseColor(&cc))
return FALSE;
*color = cc.rgbResult;
return TRUE;
}
|
|
From: <kr_...@us...> - 2003-03-14 18:38:45
|
Update of /cvsroot/htoolkit/port/src/Port
In directory sc8-pr-cvs1:/tmp/cvs-serv31129/src/Port
Added Files:
ColorDialog.hs
Log Message:
Implementation for the ColorDialog
--- NEW FILE: ColorDialog.hs ---
{-# OPTIONS -fglasgow-exts -#include ColorDialog.h #-}
-----------------------------------------------------------------------------------------
{-| Module : FileDialog
Copyright : (c) Krasimir Angelov 2003
License : BSD-style
Maintainer : ka2...@ya...
Stability : provisional
Portability : portable
Standard color selection dialog.
-}
-----------------------------------------------------------------------------------------
module Graphics.UI.Port.ColorDialog( runColorDialog ) where
import Foreign
import Graphics.UI.Port.Types
-- | Run a dialog to select a color. Returns 'Nothing' when cancelled.
runColorDialog :: IO (Maybe Color)
runColorDialog = alloca $ \cref -> do
res <- osRunColorDialog cref
if res
then do
c <- peek cref
return (Just (fromCColor c))
else return Nothing
foreign import ccall osRunColorDialog :: Ptr CWord -> IO Bool
|
|
From: <kr_...@us...> - 2003-03-14 18:38:45
|
Update of /cvsroot/htoolkit/port/src
In directory sc8-pr-cvs1:/tmp/cvs-serv31129/src
Modified Files:
Port.hs
Log Message:
Implementation for the ColorDialog
Index: Port.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port.hs,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** Port.hs 3 Mar 2003 21:19:41 -0000 1.8
--- Port.hs 14 Mar 2003 18:38:42 -0000 1.9
***************
*** 19,22 ****
--- 19,23 ----
, module Graphics.UI.Port.Window
, module Graphics.UI.Port.FileDialog
+ , module Graphics.UI.Port.ColorDialog
, module Graphics.UI.Port.Message
***************
*** 49,52 ****
--- 50,54 ----
import Graphics.UI.Port.Message
import Graphics.UI.Port.FileDialog
+ import Graphics.UI.Port.ColorDialog
import Graphics.UI.Port.Window
import Graphics.UI.Port.Menu
|
|
From: <kr_...@us...> - 2003-03-14 18:37:29
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32
In directory sc8-pr-cvs1:/tmp/cvs-serv30128/src/cbits/Win32
Modified Files:
Util.c
Log Message:
The multithreading stuff was tricky and as side effect the package cannot be loaded into GHCi. For that reason the stuff is removed.
Index: Util.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Util.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** Util.c 14 Mar 2003 15:23:35 -0000 1.5
--- Util.c 14 Mar 2003 18:37:22 -0000 1.6
***************
*** 1,8 ****
#define _WIN32_IE 0x0400
- #define IN_STG_CODE 0
- #include "Stg.h"
#include "RtsAPI.h"
- #include "SchedAPI.h"
#include "Types.h"
#include "Handlers_stub.h"
--- 1,5 ----
***************
*** 179,184 ****
{
MSG msg;
- HaskellObj ret;
- SchedulerStatus rc;
while (gActiveObjects > 0)
--- 176,179 ----
***************
*** 195,211 ****
};
- rc=rts_evalIO(rts_apply((HaskellObj)runIO_closure,&GHCziConc_yield_closure) ,&ret);
- rts_checkSchedStatus("yield",rc);
-
if (gActiveObjects <= 0)
return;
! if (howManyThreadsAvail() < 1)
{
! if (GetMessage(&msg, NULL, 0, 0) != 0)
! {
! TranslateMessage(&msg);
! DispatchMessage(&msg);
! }
}
}
--- 190,200 ----
};
if (gActiveObjects <= 0)
return;
! if (GetMessage(&msg, NULL, 0, 0) != 0)
{
! TranslateMessage(&msg);
! DispatchMessage(&msg);
}
}
|
|
From: <kr_...@us...> - 2003-03-14 18:37:25
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv30128/src/cbits/GTK
Modified Files:
Util.c
Log Message:
The multithreading stuff was tricky and as side effect the package cannot be loaded into GHCi. For that reason the stuff is removed.
Index: Util.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Util.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** Util.c 14 Mar 2003 15:23:34 -0000 1.6
--- Util.c 14 Mar 2003 18:37:20 -0000 1.7
***************
*** 55,61 ****
void osStart()
{
- HaskellObj ret;
- SchedulerStatus rc;
-
while (gActiveObjects > 0)
{
--- 55,58 ----
***************
*** 69,80 ****
}
- rc=rts_evalIO(rts_apply((HaskellObj)runIO_closure,&GHCziConc_yield_closure) ,&ret);
- rts_checkSchedStatus("yield",rc);
-
if (gActiveObjects <= 0)
return;
! if (howManyThreadsAvail() < 1)
! gtk_main_iteration();
}
--- 66,73 ----
}
if (gActiveObjects <= 0)
return;
! gtk_main_iteration();
}
|
|
From: <kr_...@us...> - 2003-03-14 17:15:01
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32
In directory sc8-pr-cvs1:/tmp/cvs-serv15641/src/cbits/Win32
Modified Files:
Message.c
Log Message:
Add new message box types. Haddock style comments are provided.
Index: Message.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Message.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Message.c 3 Mar 2003 21:19:42 -0000 1.1
--- Message.c 14 Mar 2003 17:14:56 -0000 1.2
***************
*** 2,10 ****
#include "Internals.h"
! void osMessageInfo(char *szText)
{
MessageBox(GetActiveWindow(), szText, gAppName, MB_OK | MB_ICONINFORMATION);
};
void osMessageWarning(char *szText)
{
--- 2,15 ----
#include "Internals.h"
! void osMessageAlert(char *szText)
{
MessageBox(GetActiveWindow(), szText, gAppName, MB_OK | MB_ICONINFORMATION);
};
+ BOOL osMessageConfirm(char *szText)
+ {
+ return (MessageBox(GetActiveWindow(), szText, gAppName, MB_OKCANCEL | MB_ICONINFORMATION) == IDOK);
+ };
+
void osMessageWarning(char *szText)
{
***************
*** 21,22 ****
--- 26,47 ----
return (MessageBox(GetActiveWindow(), szText, gAppName, MB_OKCANCEL | MB_ICONERROR) == IDOK);
};
+
+ int osMessageCancelQuestion(char *szText)
+ {
+ switch (MessageBox(GetActiveWindow(), szText, gAppName, MB_YESNO | MB_ICONQUESTION))
+ {
+ case IDNO: return 0;
+ case IDYES: return 1;
+ default: return -1;
+ }
+ };
+
+ int osMessageConfirmSave(char *szText)
+ {
+ switch (MessageBox(GetActiveWindow(), szText, gAppName, MB_YESNO | MB_ICONQUESTION))
+ {
+ case IDNO: return 0;
+ case IDYES: return 1;
+ default: return -1;
+ }
+ };
\ No newline at end of file
|
|
From: <kr_...@us...> - 2003-03-14 17:15:01
|
Update of /cvsroot/htoolkit/port/src/include In directory sc8-pr-cvs1:/tmp/cvs-serv15641/src/include Modified Files: Message.h Log Message: Add new message box types. Haddock style comments are provided. Index: Message.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/include/Message.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Message.h 3 Mar 2003 21:19:43 -0000 1.1 --- Message.h 14 Mar 2003 17:14:56 -0000 1.2 *************** *** 5,11 **** void osMessageInfo(char *szText); void osMessageWarning(char *szText); BOOL osMessageQuestion(char *szText); BOOL osMessageError(char *szText); ! #endif \ No newline at end of file --- 5,14 ---- void osMessageInfo(char *szText); + BOOL osMessageConfirm(char *szText); void osMessageWarning(char *szText); BOOL osMessageQuestion(char *szText); BOOL osMessageError(char *szText); + int osMessageCancelQuestion(char *szText); + int osMessageConfirmSave(char *szText); ! #endif |
|
From: <kr_...@us...> - 2003-03-14 17:14:59
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv15641/src/cbits/GTK
Modified Files:
Message.c
Log Message:
Add new message box types. Haddock style comments are provided.
Index: Message.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Message.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Message.c 3 Mar 2003 21:19:41 -0000 1.1
--- Message.c 14 Mar 2003 17:14:56 -0000 1.2
***************
*** 1,42 ****
! #include "Message.h"
! #include "Internals.h"
!
! void osMessageInfo(char *szText)
! {
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
! "%s", szText);
! gtk_dialog_run(GTK_DIALOG(msg_dialog));
! gtk_widget_destroy (msg_dialog);
! };
!
! void osMessageWarning(char *szText)
! {
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK,
! "%s", szText);
! gtk_dialog_run(GTK_DIALOG(msg_dialog));
! gtk_widget_destroy (msg_dialog);
! };
!
! BOOL osMessageQuestion(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
! "%s", szText);
! result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_YES);
! gtk_widget_destroy (msg_dialog);
! return result;
! };
!
! BOOL osMessageError(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK_CANCEL,
! "%s", szText);
! result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_OK);
! gtk_widget_destroy (msg_dialog);
! return result;
! };
--- 1,91 ----
! #include "Message.h"
! #include "Internals.h"
!
! void osMessageAlert(char *szText)
! {
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
! "%s", szText);
! gtk_dialog_run(GTK_DIALOG(msg_dialog));
! gtk_widget_destroy (msg_dialog);
! };
!
! BOOL osMessageConfirm(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK_CANCEL,
! "%s", szText);
! result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_OK);
! gtk_widget_destroy (msg_dialog);
! return result;
! };
!
! void osMessageWarning(char *szText)
! {
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK,
! "%s", szText);
! gtk_dialog_run(GTK_DIALOG(msg_dialog));
! gtk_widget_destroy (msg_dialog);
! };
!
! BOOL osMessageQuestion(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
! "%s", szText);
! result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_YES);
! gtk_widget_destroy (msg_dialog);
! return result;
! };
!
! BOOL osMessageError(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK_CANCEL,
! "%s", szText);
! result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_OK);
! gtk_widget_destroy (msg_dialog);
! return result;
! };
!
! int osMessageCancelQuestion(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
! "%s", szText);
! gtk_dialog_add_button (GTK_DIALOG(msg_dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
!
! switch (gtk_dialog_run(GTK_DIALOG(msg_dialog)))
! {
! case GTK_RESPONSE_NO: result = 0; break;
! case GTK_RESPONSE_YES: result = 1; break;
! default: result = -1; break;
! }
!
! gtk_widget_destroy (msg_dialog);
! return result;
! };
!
! int osMessageConfirmSave(char *szText)
! {
! gboolean result;
! GtkWidget *msg_dialog;
! msg_dialog = gtk_message_dialog_new(GTK_WINDOW(gActiveTopLevelWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
! "%s", szText);
! gtk_dialog_add_button (GTK_DIALOG(msg_dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
!
! switch (gtk_dialog_run(GTK_DIALOG(msg_dialog)))
! {
! case GTK_RESPONSE_NO: result = 0; break;
! case GTK_RESPONSE_YES: result = 1; break;
! default: result = -1; break;
! }
!
! gtk_widget_destroy (msg_dialog);
! return result;
! }
|
|
From: <kr_...@us...> - 2003-03-14 17:14:58
|
Update of /cvsroot/htoolkit/port/src/Port
In directory sc8-pr-cvs1:/tmp/cvs-serv15641/src/Port
Modified Files:
Message.hs
Log Message:
Add new message box types. Haddock style comments are provided.
Index: Message.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port/Message.hs,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Message.hs 3 Mar 2003 21:19:41 -0000 1.1
--- Message.hs 14 Mar 2003 17:14:54 -0000 1.2
***************
*** 10,35 ****
Portability : portable
! Message boxes
-}
-----------------------------------------------------------------------------------------
module Graphics.UI.Port.Message
! ( messageInfo
, messageWarning
, messageQuestion
, messageError
) where
import Foreign.C
! messageInfo msg = withCString msg osMessageInfo
! foreign import ccall osMessageInfo :: CString -> IO ()
messageWarning msg = withCString msg osMessageWarning
foreign import ccall osMessageWarning :: CString -> IO ()
messageQuestion msg = withCString msg osMessageQuestion
foreign import ccall osMessageQuestion :: CString -> IO Bool
messageError msg = withCString msg osMessageError
foreign import ccall osMessageError :: CString -> IO Bool
--- 10,79 ----
Portability : portable
! The message functions create, display, and operate a message box. The
! message box contains an application-defined message and any combination
! of predefined icons and push buttons.
-}
-----------------------------------------------------------------------------------------
module Graphics.UI.Port.Message
! ( messageAlert
! , messageConfirm
, messageWarning
, messageQuestion
, messageError
+ , QuestionAnswer(..)
+ , messageCancelQuestion
+ , messageConfirmSave
) where
import Foreign.C
! -- | The messageAlert box provides an OK button and an image which indicates that
! -- the given message is just for information.
! messageAlert :: String -> IO ()
! messageAlert msg = withCString msg osMessageAlert
! foreign import ccall osMessageAlert :: CString -> IO ()
+ -- | The messageConfirm box, like the 'messageAlert' box provides an OK button, and in addition
+ -- a Cancel button. An image indicates that the given message is just for information.
+ -- The function returns True when the box is closed with the OK button; in all other cases it returns False.
+ messageConfirm :: String -> IO Bool
+ messageConfirm msg = withCString msg osMessageConfirm
+ foreign import ccall osMessageConfirm :: CString -> IO Bool
+
+ -- | The messageWarning box provides an OK button and an image which indicates that
+ -- the given message is a warning.
+ messageWarning :: String -> IO ()
messageWarning msg = withCString msg osMessageWarning
foreign import ccall osMessageWarning :: CString -> IO ()
+ -- | The messageQuestion box provides Yes and No buttons and an image which indicates that
+ -- the given message is a question. The function returns True for Yes button and False for No answer.
+ messageQuestion :: String -> IO Bool
messageQuestion msg = withCString msg osMessageQuestion
foreign import ccall osMessageQuestion :: CString -> IO Bool
+ -- | The messageError box provides OK and Cancel buttons and an image which indicates that
+ -- it is an error message. The function returns True when the box is closed
+ -- with the OK button; in all other cases it returns False.
+ messageError :: String -> IO Bool
messageError msg = withCString msg osMessageError
foreign import ccall osMessageError :: CString -> IO Bool
+
+
+ data QuestionAnswer = Yes | No | Cancel deriving Show
+
+ toQuestionAnswer 0 = No
+ toQuestionAnswer 1 = Yes
+ toQuestionAnswer _ = Cancel
+
+ -- | The messageCancelQuestion box like the 'messageQuestion' box provides an Yes and No buttons,and in addition
+ -- a Cancel button. An image indicates that the given message is a question.
+ messageCancelQuestion :: String -> IO QuestionAnswer
+ messageCancelQuestion msg = fmap toQuestionAnswer (withCString msg osMessageCancelQuestion)
+ foreign import ccall osMessageCancelQuestion :: CString -> IO Int
+
+ -- | The messageConfirmSave box is applicable when the application asks whether the document should be saved or not.
+ messageConfirmSave :: String -> IO QuestionAnswer
+ messageConfirmSave msg = fmap toQuestionAnswer (withCString msg osMessageConfirmSave)
+ foreign import ccall osMessageConfirmSave :: CString -> IO Int
|
|
From: <kr_...@us...> - 2003-03-14 15:26:18
|
Update of /cvsroot/htoolkit/port/src/Port
In directory sc8-pr-cvs1:/tmp/cvs-serv22788/src/Port
Added Files:
Document.hs
Log Message:
Initial support for Document model
--- NEW FILE: Document.hs ---
{-# OPTIONS -fglasgow-exts #-}
-----------------------------------------------------------------------------------------
{-| Module : Document
Copyright : (c) Krasimir Angelov 2003
License : BSD-style
Maintainer : ka2...@ya...
Stability : provisional
Portability : portable
Documents
-}
-----------------------------------------------------------------------------------------
module Graphics.UI.Port.Document
(
-- * Document templates
DocumentTemplate(..), registerDocTemplate
-- * Documents
, registerDocument, unregisterDocument, setDocumentModified
)where
import Graphics.UI.Port.Types
import Graphics.UI.Port.PtrMap
import Control.Concurrent.MVar
import System.IO.Unsafe( unsafePerformIO )
data Document = forall a . Document a (DocumentTemplate a) Bool
data DocumentTemplate a = DocumentTemplate
{ dtExtensions :: [String]
, dtDescription :: String
, dtNewDocument :: IO a
, dtOpenDocument :: String -> IO a
, dtSaveDocument :: a -> IO ()
, dtSaveDocumentAs :: String -> a -> IO ()
, dtCloseDocument :: a -> IO ()
}
data DTHolder = forall a . DTHolder (DocumentTemplate a)
{-----------------------------------------------------------------------------------------
Document templeates
-----------------------------------------------------------------------------------------}
{-# NOINLINE documentTemplates #-}
documentTemplates :: MVar [DTHolder]
documentTemplates = unsafePerformIO (newMVar [])
registerDocTemplate :: DocumentTemplate a -> IO ()
registerDocTemplate template = do
templates <- takeMVar documentTemplates
putMVar documentTemplates ((DTHolder template):templates)
{-----------------------------------------------------------------------------------------
Documents
-----------------------------------------------------------------------------------------}
{-# NOINLINE documents #-}
documents :: MVar (PtrMap WindowHandle Document)
documents = unsafePerformIO (newMVar empty)
registerDocument :: WindowHandle -> a -> DocumentTemplate a -> IO ()
registerDocument handle doc template = do
docs <- takeMVar documents
putMVar documents (insertWith const handle (Document doc template False) docs)
unregisterDocument :: WindowHandle -> a -> DocumentTemplate a -> IO ()
unregisterDocument handle doc template = do
docs <- takeMVar documents
putMVar documents (delete handle docs)
setDocumentModified :: WindowHandle -> Bool -> IO ()
setDocumentModified handle flag = do
docs <- takeMVar documents
putMVar documents (adjust upd handle docs)
where
upd (Document doc template _) = Document doc template flag
|
|
From: <kr_...@us...> - 2003-03-14 15:26:17
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv22788 Modified Files: makefile Log Message: Initial support for Document model Index: makefile =================================================================== RCS file: /cvsroot/htoolkit/port/makefile,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** makefile 10 Feb 2003 22:42:07 -0000 1.10 --- makefile 14 Mar 2003 15:26:09 -0000 1.11 *************** *** 39,42 **** --- 39,44 ---- Port/FileDialog.hs Port/Menu.hs Port/Window.hs \ Port/Timer.hs \ + Port/Message.hs \ + Port/Document.hs \ Port.hs *************** *** 45,49 **** CSRCS = Window.c Util.c Bitmap.c Button.c CheckBox.c EditBox.c \ FileDialog.c PopUp.c Canvas.c Menu.c ListBox.c Label.c \ ! Font.c RadioBox.c Timer.c Frame.c # package description --- 47,51 ---- CSRCS = Window.c Util.c Bitmap.c Button.c CheckBox.c EditBox.c \ FileDialog.c PopUp.c Canvas.c Menu.c ListBox.c Label.c \ ! Font.c RadioBox.c Timer.c Frame.c Message.c # package description |
|
From: <kr_...@us...> - 2003-03-14 15:23:40
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32
In directory sc8-pr-cvs1:/tmp/cvs-serv20413/src/cbits/Win32
Modified Files:
Util.c
Log Message:
After this commit the osStart function will allow the lightweight Haskell threads to continue their execution during GUI main loop.
Index: Util.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Util.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** Util.c 3 Mar 2003 00:21:51 -0000 1.4
--- Util.c 14 Mar 2003 15:23:35 -0000 1.5
***************
*** 1,4 ****
--- 1,8 ----
#define _WIN32_IE 0x0400
+ #define IN_STG_CODE 0
+ #include "Stg.h"
+ #include "RtsAPI.h"
+ #include "SchedAPI.h"
#include "Types.h"
#include "Handlers_stub.h"
***************
*** 170,176 ****
--- 174,184 ----
}
+ extern StgClosure GHCziConc_yield_closure;
+
void osStart()
{
MSG msg;
+ HaskellObj ret;
+ SchedulerStatus rc;
while (gActiveObjects > 0)
***************
*** 187,197 ****
};
if (gActiveObjects <= 0)
return;
! if (GetMessage(&msg, NULL, 0, 0) != 0)
{
! TranslateMessage(&msg);
! DispatchMessage(&msg);
}
}
--- 195,211 ----
};
+ rc=rts_evalIO(rts_apply((HaskellObj)runIO_closure,&GHCziConc_yield_closure) ,&ret);
+ rts_checkSchedStatus("yield",rc);
+
if (gActiveObjects <= 0)
return;
! if (howManyThreadsAvail() < 1)
{
! if (GetMessage(&msg, NULL, 0, 0) != 0)
! {
! TranslateMessage(&msg);
! DispatchMessage(&msg);
! }
}
}
|
|
From: <kr_...@us...> - 2003-03-14 15:23:39
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv20413/src/cbits/GTK
Modified Files:
Util.c
Log Message:
After this commit the osStart function will allow the lightweight Haskell threads to continue their execution during GUI main loop.
Index: Util.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Util.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** Util.c 3 Mar 2003 19:03:24 -0000 1.5
--- Util.c 14 Mar 2003 15:23:34 -0000 1.6
***************
*** 55,58 ****
--- 55,61 ----
void osStart()
{
+ HaskellObj ret;
+ SchedulerStatus rc;
+
while (gActiveObjects > 0)
{
***************
*** 66,73 ****
}
if (gActiveObjects <= 0)
return;
! gtk_main_iteration();
}
--- 69,80 ----
}
+ rc=rts_evalIO(rts_apply((HaskellObj)runIO_closure,&GHCziConc_yield_closure) ,&ret);
+ rts_checkSchedStatus("yield",rc);
+
if (gActiveObjects <= 0)
return;
! if (howManyThreadsAvail() < 1)
! gtk_main_iteration();
}
|
|
From: <kr_...@us...> - 2003-03-14 15:14:00
|
Update of /cvsroot/htoolkit/port/src/Port
In directory sc8-pr-cvs1:/tmp/cvs-serv16950/src/Port
Modified Files:
PtrMap.hs
Log Message:
add update and adjust functions to PtrMap
Index: PtrMap.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port/PtrMap.hs,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** PtrMap.hs 20 Jan 2003 11:56:25 -0000 1.1.1.1
--- PtrMap.hs 14 Mar 2003 15:13:56 -0000 1.2
***************
*** 21,24 ****
--- 21,25 ----
, insertWith
, elems, keys
+ , update, adjust
) where
***************
*** 69,70 ****
--- 70,77 ----
keys m
= map ptrFromInt (M.keys m)
+
+ update :: (b -> Maybe b) -> Ptr a -> PtrMap a b -> PtrMap a b
+ update f k m = M.update f (intFromPtr k) m
+
+ adjust :: (b -> b) -> Ptr a -> PtrMap a b -> PtrMap a b
+ adjust f k m = M.adjust f (intFromPtr k) m
|
|
From: <kr_...@us...> - 2003-03-03 21:20:17
|
Update of /cvsroot/htoolkit/port/src
In directory sc8-pr-cvs1:/tmp/cvs-serv32157
Modified Files:
Port.hs
Log Message:
Portable message boxes
Index: Port.hs
===================================================================
RCS file: /cvsroot/htoolkit/port/src/Port.hs,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** Port.hs 10 Feb 2003 22:42:08 -0000 1.7
--- Port.hs 3 Mar 2003 21:19:41 -0000 1.8
***************
*** 19,22 ****
--- 19,23 ----
, module Graphics.UI.Port.Window
, module Graphics.UI.Port.FileDialog
+ , module Graphics.UI.Port.Message
-- ** Controls
***************
*** 46,49 ****
--- 47,51 ----
import Graphics.UI.Port.Controls
+ import Graphics.UI.Port.Message
import Graphics.UI.Port.FileDialog
import Graphics.UI.Port.Window
|
|
From: <kr_...@us...> - 2003-03-03 21:19:46
|
Update of /cvsroot/htoolkit/port/src/include In directory sc8-pr-cvs1:/tmp/cvs-serv32157/include Modified Files: HsPort.h Added Files: Message.h Log Message: Portable message boxes --- NEW FILE: Message.h --- #ifndef MESSAGE_H #define MESSAGE_H #include "Types.h" void osMessageInfo(char *szText); void osMessageWarning(char *szText); BOOL osMessageQuestion(char *szText); BOOL osMessageError(char *szText); #endif Index: HsPort.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/include/HsPort.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** HsPort.h 28 Jan 2003 01:22:57 -0000 1.1 --- HsPort.h 3 Mar 2003 21:19:43 -0000 1.2 *************** *** 16,17 **** --- 16,18 ---- #include "Bitmap.h" #include "FileDialog.h" + #include "Message.h" |
|
From: <kr_...@us...> - 2003-03-03 21:19:46
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32
In directory sc8-pr-cvs1:/tmp/cvs-serv32157/cbits/Win32
Added Files:
Message.c
Log Message:
Portable message boxes
--- NEW FILE: Message.c ---
#include "Message.h"
#include "Internals.h"
void osMessageInfo(char *szText)
{
MessageBox(GetActiveWindow(), szText, gAppName, MB_OK | MB_ICONINFORMATION);
};
void osMessageWarning(char *szText)
{
MessageBox(GetActiveWindow(), szText, gAppName, MB_OK | MB_ICONWARNING);
};
BOOL osMessageQuestion(char *szText)
{
return (MessageBox(GetActiveWindow(), szText, gAppName, MB_YESNO | MB_ICONQUESTION) == IDYES);
};
BOOL osMessageError(char *szText)
{
return (MessageBox(GetActiveWindow(), szText, gAppName, MB_OKCANCEL | MB_ICONERROR) == IDOK);
};
|
|
From: <kr_...@us...> - 2003-03-03 21:19:45
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv32157/cbits/GTK
Added Files:
Message.c
Log Message:
Portable message boxes
--- NEW FILE: Message.c ---
#include "Message.h"
#include "Internals.h"
void osMessageInfo(char *szText)
{
GtkWidget *msg_dialog;
msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
"%s", szText);
gtk_dialog_run(GTK_DIALOG(msg_dialog));
gtk_widget_destroy (msg_dialog);
};
void osMessageWarning(char *szText)
{
GtkWidget *msg_dialog;
msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK,
"%s", szText);
gtk_dialog_run(GTK_DIALOG(msg_dialog));
gtk_widget_destroy (msg_dialog);
};
BOOL osMessageQuestion(char *szText)
{
gboolean result;
GtkWidget *msg_dialog;
msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,
"%s", szText);
result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_YES);
gtk_widget_destroy (msg_dialog);
return result;
};
BOOL osMessageError(char *szText)
{
gboolean result;
GtkWidget *msg_dialog;
msg_dialog = gtk_message_dialog_new(gActiveTopLevelWindow, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK_CANCEL,
"%s", szText);
result = (gtk_dialog_run(GTK_DIALOG(msg_dialog)) == GTK_RESPONSE_OK);
gtk_widget_destroy (msg_dialog);
return result;
};
|