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; }; |