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-11-16 08:40:48
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK In directory sc8-pr-cvs1:/tmp/cvs-serv5824/src/cbits/GTK Modified Files: Menu.c Log Message: Working menu tooltips for Linux Index: Menu.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Menu.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Menu.c 15 Nov 2003 13:33:10 -0000 1.12 --- Menu.c 16 Nov 2003 08:40:04 -0000 1.13 *************** *** 7,11 **** static const char *apphelper_statusbar_hint = "apphelper_statusbar_hint"; ! static menu_destroy(GtkWidget *menu) { handleMenuDestroy(menu); --- 7,11 ---- static const char *apphelper_statusbar_hint = "apphelper_statusbar_hint"; ! static void menu_destroy(GtkWidget *menu) { handleMenuDestroy(menu); *************** *** 17,20 **** --- 17,31 ---- } + static void menu_put_hint_in_statusbar(GtkWidget *menuitem, gpointer data) + { + gchar* hint = g_object_get_data(G_OBJECT(menuitem), apphelper_statusbar_hint); + gnome_appbar_push(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar), hint); + } + + static void menu_remove_hint_from_statusbar(GtkWidget *menu) + { + gnome_appbar_pop(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar)); + } + static MenuHandle getMenu(MenuHandle parent) { *************** *** 163,166 **** --- 174,183 ---- GTK_SIGNAL_FUNC(menu_destroy), NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "select", + GTK_SIGNAL_FUNC(menu_put_hint_in_statusbar), + NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "deselect", + GTK_SIGNAL_FUNC(menu_remove_hint_from_statusbar), + NULL); menu = getMenu(parent); *************** *** 188,191 **** --- 205,214 ---- GTK_SIGNAL_FUNC(menu_destroy), NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "select", + GTK_SIGNAL_FUNC(menu_put_hint_in_statusbar), + NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "deselect", + GTK_SIGNAL_FUNC(menu_remove_hint_from_statusbar), + NULL); menu = getMenu(parent); *************** *** 236,239 **** --- 259,269 ---- GTK_SIGNAL_FUNC(menu_destroy), NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "select", + GTK_SIGNAL_FUNC(menu_put_hint_in_statusbar), + NULL); + gtk_signal_connect (GTK_OBJECT(menuItem), "deselect", + GTK_SIGNAL_FUNC(menu_remove_hint_from_statusbar), + NULL); + menu = getMenu(parent); |
From: <kr_...@us...> - 2003-11-15 13:33:14
|
Update of /cvsroot/htoolkit/port/src/Port In directory sc8-pr-cvs1:/tmp/cvs-serv27743/src/Port Modified Files: StatusBar.hs Log Message: Extended StatusBar API for Linux. Partial support for MenuItem tooltips Index: StatusBar.hs =================================================================== RCS file: /cvsroot/htoolkit/port/src/Port/StatusBar.hs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** StatusBar.hs 15 Nov 2003 10:31:49 -0000 1.2 --- StatusBar.hs 15 Nov 2003 13:33:10 -0000 1.3 *************** *** 1,3 **** ! {-# OPTIONS -fglasgow-exts -#include Types.h #-} ----------------------------------------------------------------------------------------- {-| Module : StatusBar --- 1,3 ---- ! {-# OPTIONS -fglasgow-exts -#include StatusBar.h #-} ----------------------------------------------------------------------------------------- {-| Module : StatusBar |
From: <kr_...@us...> - 2003-11-15 13:33:14
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK In directory sc8-pr-cvs1:/tmp/cvs-serv27743/src/cbits/GTK Modified Files: Menu.c StatusBar.c Log Message: Extended StatusBar API for Linux. Partial support for MenuItem tooltips Index: Menu.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Menu.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Menu.c 17 Aug 2003 22:02:45 -0000 1.11 --- Menu.c 15 Nov 2003 13:33:10 -0000 1.12 *************** *** 5,8 **** --- 5,20 ---- #include <gdk/gdkkeysyms.h> + static const char *apphelper_statusbar_hint = "apphelper_statusbar_hint"; + + static menu_destroy(GtkWidget *menu) + { + handleMenuDestroy(menu); + + gchar *hint = g_object_get_data(G_OBJECT(menu), apphelper_statusbar_hint); + if (hint) free(hint); + + g_object_set_data(G_OBJECT(menu), apphelper_statusbar_hint, NULL); + } + static MenuHandle getMenu(MenuHandle parent) { *************** *** 77,81 **** GtkWidget *popUpMenu = gtk_menu_new(); gtk_signal_connect (GTK_OBJECT(popUpMenu), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); gtk_signal_connect (GTK_OBJECT(popUpMenu), "show", --- 89,93 ---- GtkWidget *popUpMenu = gtk_menu_new(); gtk_signal_connect (GTK_OBJECT(popUpMenu), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); gtk_signal_connect (GTK_OBJECT(popUpMenu), "show", *************** *** 121,125 **** gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); gtk_signal_connect (GTK_OBJECT(popUpMenu), "show", --- 133,137 ---- gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); gtk_signal_connect (GTK_OBJECT(popUpMenu), "show", *************** *** 149,153 **** NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); --- 161,165 ---- NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); *************** *** 174,178 **** NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); --- 186,190 ---- NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); *************** *** 190,194 **** GtkWidget *item = gtk_separator_menu_item_new(); gtk_signal_connect (GTK_OBJECT(item), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); --- 202,206 ---- GtkWidget *item = gtk_separator_menu_item_new(); gtk_signal_connect (GTK_OBJECT(item), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); *************** *** 222,226 **** NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(handleMenuDestroy), NULL); --- 234,238 ---- NULL); gtk_signal_connect (GTK_OBJECT(menuItem), "destroy", ! GTK_SIGNAL_FUNC(menu_destroy), NULL); *************** *** 306,309 **** --- 318,334 ---- else return NULL; + }; + + void osSetMenuTip(MenuHandle item, char* title) + { + gchar *hint = g_object_get_data(G_OBJECT(item), apphelper_statusbar_hint); + if (hint) free(hint); + + g_object_set_data(G_OBJECT(item), apphelper_statusbar_hint, strdup(title)); + } + + char *osGetMenuTip(MenuHandle item) + { + return g_object_get_data(G_OBJECT(item), apphelper_statusbar_hint); }; Index: StatusBar.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/StatusBar.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** StatusBar.c 14 Nov 2003 22:35:20 -0000 1.1 --- StatusBar.c 15 Nov 2003 13:33:11 -0000 1.2 *************** *** 1,4 **** #include "StatusBar.h" - #include "DockBar.h" #include "Internals.h" --- 1,3 ---- *************** *** 14,16 **** --- 13,36 ---- { return GTK_WIDGET_VISIBLE(GNOME_APP(gFrameWidget)->statusbar); + } + + void osPushStatusBarContext() + { + gnome_appbar_push(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar), ""); + } + + void osPopStatusBarContext() + { + gnome_appbar_pop(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar)); + } + + char *osGetStatusBarTitle() + { + GtkWidget *label = gnome_appbar_get_status(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar)); + return strdup(gtk_label_get_text(GTK_LABEL(label))); + } + + void osSetStatusBarTitle(char *title) + { + gnome_appbar_set_status(GNOME_APPBAR(GNOME_APP(gFrameWidget)->statusbar), title); } |
From: <kr_...@us...> - 2003-11-15 10:53:26
|
Update of /cvsroot/htoolkit/gio/src/examples/simple In directory sc8-pr-cvs1:/tmp/cvs-serv4336/src/examples/simple Modified Files: SimpleMenu.hs Log Message: Update example after last changes Index: SimpleMenu.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/examples/simple/SimpleMenu.hs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** SimpleMenu.hs 14 Nov 2003 22:36:28 -0000 1.11 --- SimpleMenu.hs 15 Nov 2003 10:53:23 -0000 1.12 *************** *** 4,8 **** main ! = start "SimpleMenu" "1.0" SDI [visibleStatusBar =: True] $ do w <- window [view =: sz 200 200] showWindow w --- 4,8 ---- main ! = start "SimpleMenu" "1.0" SDI [] $ do w <- window [view =: sz 200 200] showWindow w *************** *** 14,29 **** fm <- menu [title =: "&File"] mainMenu menuitem [ title =: "&New" , accel =: KeyChar '\^N' , on command =: messageAlert "NEW" , icon =: Just bmpNew ] fm ! menuitem [title =: "&Open" , accel =: KeyChar '\^O' , on command =: messageAlert "OPEN" , icon =: Just bmpOpen ] fm ! menuitem [title =: "&Close"] fm menuline fm menuitem [ title =: "&Save" , accel =: KeyChar '\^S' , on command =: messageAlert "SAVE" --- 14,34 ---- fm <- menu [title =: "&File"] mainMenu menuitem [ title =: "&New" + , tooltip =: "Create a new document" , accel =: KeyChar '\^N' , on command =: messageAlert "NEW" , icon =: Just bmpNew ] fm ! menuitem [ title =: "&Open" ! , tooltip =: "Open an existing document" , accel =: KeyChar '\^O' , on command =: messageAlert "OPEN" , icon =: Just bmpOpen ] fm ! menuitem [ title =: "&Close" ! , tooltip =: "Close the active document" ! ] fm menuline fm menuitem [ title =: "&Save" + , tooltip =: "Save the active document" , accel =: KeyChar '\^S' , on command =: messageAlert "SAVE" *************** *** 31,43 **** ] fm menuline fm ! menuitem [title =: "&Exit", on command =: halt] fm mColor <- menu [title =: "&Color"] mainMenu ! menucheck [title =: "&Transparent", accel =: KeyChar '\^T', on command =:: onToggleTransparent] mColor menuline mColor ! mRed <- menuRadioItem [title =: "&Red", on command =: messageAlert "RED COLOR" ] mColor ! mGreen <- menuRadioItem [title =: "&Green", on command =: messageAlert "GREEN COLOR"] mColor ! mBlue <- menuRadioItem [title =: "&Blue", on command =: messageAlert "BLUE COLOR" ] mColor setMenuRadioGroup [mRed, mGreen, mBlue] where onToggleTransparent tgl = do --- 36,66 ---- ] fm menuline fm ! menuitem [ title =: "&Exit" ! , tooltip =: "Quit the application" ! , on command =: halt ! ] fm mColor <- menu [title =: "&Color"] mainMenu ! menucheck [ title =: "&Transparent" ! , tooltip =: "Set transparency on/off" ! , accel =: KeyChar '\^T' ! , on command =:: onToggleTransparent ! ] mColor menuline mColor ! mRed <- menuRadioItem [ title =: "&Red" ! , tooltip =: "Select red color" ! , on command =: messageAlert "RED COLOR" ! ] mColor ! mGreen <- menuRadioItem [ title =: "&Green" ! , tooltip =: "Select green color" ! , on command =: messageAlert "GREEN COLOR" ! ] mColor ! mBlue <- menuRadioItem [ title =: "&Blue" ! , tooltip =: "Select blue color" ! , on command =: messageAlert "BLUE COLOR" ! ] mColor setMenuRadioGroup [mRed, mGreen, mBlue] + + set sb [visible =: True] where onToggleTransparent tgl = do |
From: <kr_...@us...> - 2003-11-15 10:52:33
|
Update of /cvsroot/htoolkit/gio/src/Graphics/UI/GIO In directory sc8-pr-cvs1:/tmp/cvs-serv4156/src/Graphics/UI/GIO Modified Files: Attributes.hs Controls.hs Menu.hs ToolBar.hs Log Message: Rename ToolTip class to Tipped Index: Attributes.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Attributes.hs,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Attributes.hs 15 Nov 2003 10:34:14 -0000 1.19 --- Attributes.hs 15 Nov 2003 10:52:30 -0000 1.20 *************** *** 72,77 **** , Able, enabled ! -- ** ToolTip ! , ToolTip, tooltip -- ** Accelerated --- 72,77 ---- , Able, enabled ! -- ** Tipped ! , Tipped, tooltip -- ** Accelerated *************** *** 288,293 **** enabled :: Attr w Bool ! -- | Widgets that supports tooltips. ! class ToolTip w where -- | The tip text tooltip :: Attr w String --- 288,293 ---- enabled :: Attr w Bool ! -- | Widgets that have a tooltip. ! class Tipped w where -- | The tip text tooltip :: Attr w String *************** *** 303,307 **** pos :: Attr w Int ! -- | Widgets that can be visible/invisible. class Visible w where visible :: Attr w Bool --- 303,307 ---- pos :: Attr w Int ! -- | Widgets that can be visible\/invisible. class Visible w where visible :: Attr w Bool Index: Controls.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Controls.hs,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** Controls.hs 12 Oct 2003 21:33:47 -0000 1.36 --- Controls.hs 15 Nov 2003 10:52:30 -0000 1.37 *************** *** 157,161 **** enabled = newStdAttr lhandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip Label where tooltip = newStdAttr lhandle Port.getControlTip Port.setControlTip --- 157,161 ---- enabled = newStdAttr lhandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped Label where tooltip = newStdAttr lhandle Port.getControlTip Port.setControlTip *************** *** 193,197 **** enabled = newStdAttr bhandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip Button where tooltip = newStdAttr bhandle Port.getControlTip Port.setControlTip --- 193,197 ---- enabled = newStdAttr bhandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped Button where tooltip = newStdAttr bhandle Port.getControlTip Port.setControlTip *************** *** 232,236 **** enabled = newStdAttr ehandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip Entry where tooltip = newStdAttr ehandle Port.getControlTip Port.setControlTip --- 232,236 ---- enabled = newStdAttr ehandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped Entry where tooltip = newStdAttr ehandle Port.getControlTip Port.setControlTip *************** *** 314,318 **** enabled = newStdAttr phandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip Popup where tooltip = newStdAttr phandle Port.getControlTip Port.setControlTip --- 314,318 ---- enabled = newStdAttr phandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped Popup where tooltip = newStdAttr phandle Port.getControlTip Port.setControlTip *************** *** 403,407 **** enabled = newStdAttr lbhandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip ListBox where tooltip = newStdAttr lbhandle Port.getControlTip Port.setControlTip --- 403,407 ---- enabled = newStdAttr lbhandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped ListBox where tooltip = newStdAttr lbhandle Port.getControlTip Port.setControlTip *************** *** 444,448 **** enabled = newStdAttr chandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip CheckBox where tooltip = newStdAttr chandle Port.getControlTip Port.setControlTip --- 444,448 ---- enabled = newStdAttr chandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped CheckBox where tooltip = newStdAttr chandle Port.getControlTip Port.setControlTip *************** *** 479,483 **** enabled = newStdAttr rhandle Port.getControlEnabled Port.setControlEnabled ! instance ToolTip RadioBox where tooltip = newStdAttr rhandle Port.getControlTip Port.setControlTip --- 479,483 ---- enabled = newStdAttr rhandle Port.getControlEnabled Port.setControlEnabled ! instance Tipped RadioBox where tooltip = newStdAttr rhandle Port.getControlTip Port.setControlTip Index: Menu.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Menu.hs,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** Menu.hs 15 Nov 2003 10:34:14 -0000 1.16 --- Menu.hs 15 Nov 2003 10:52:30 -0000 1.17 *************** *** 145,149 **** icon = newStdAttr hitem Lib.getMenuItemBitmap Lib.setMenuItemBitmap ! instance ToolTip MenuItem where tooltip = newStdAttr hitem Lib.getMenuTip Lib.setMenuTip --- 145,149 ---- icon = newStdAttr hitem Lib.getMenuItemBitmap Lib.setMenuItemBitmap ! instance Tipped MenuItem where tooltip = newStdAttr hitem Lib.getMenuTip Lib.setMenuTip *************** *** 208,212 **** accel = newStdAttr hradioitem Lib.getMenuItemAccel Lib.setMenuItemAccel ! instance ToolTip MenuRadioItem where tooltip = newStdAttr hradioitem Lib.getMenuTip Lib.setMenuTip --- 208,212 ---- accel = newStdAttr hradioitem Lib.getMenuItemAccel Lib.setMenuItemAccel ! instance Tipped MenuRadioItem where tooltip = newStdAttr hradioitem Lib.getMenuTip Lib.setMenuTip *************** *** 256,260 **** accel = newStdAttr hcheck Lib.getMenuItemAccel Lib.setMenuItemAccel ! instance ToolTip MenuCheck where tooltip = newStdAttr hcheck Lib.getMenuTip Lib.setMenuTip --- 256,260 ---- accel = newStdAttr hcheck Lib.getMenuItemAccel Lib.setMenuItemAccel ! instance Tipped MenuCheck where tooltip = newStdAttr hcheck Lib.getMenuTip Lib.setMenuTip Index: ToolBar.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/ToolBar.hs,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** ToolBar.hs 31 Aug 2003 12:56:25 -0000 1.7 --- ToolBar.hs 15 Nov 2003 10:52:30 -0000 1.8 *************** *** 77,81 **** pos = readAttr "pos" (Lib.getToolItemPos . hbutton) ! instance ToolTip ToolButton where tooltip = newStdAttr hbutton Lib.getToolButtonTip Lib.setToolButtonTip --- 77,81 ---- pos = readAttr "pos" (Lib.getToolItemPos . hbutton) ! instance Tipped ToolButton where tooltip = newStdAttr hbutton Lib.getToolButtonTip Lib.setToolButtonTip *************** *** 115,119 **** pos = readAttr "pos" (Lib.getToolItemPos . hcheck) ! instance ToolTip ToolCheckButton where tooltip = newStdAttr hcheck Lib.getToolButtonTip Lib.setToolButtonTip --- 115,119 ---- pos = readAttr "pos" (Lib.getToolItemPos . hcheck) ! instance Tipped ToolCheckButton where tooltip = newStdAttr hcheck Lib.getToolButtonTip Lib.setToolButtonTip *************** *** 156,160 **** pos = readAttr "pos" (Lib.getToolItemPos . hradio) ! instance ToolTip ToolRadioButton where tooltip = newStdAttr hradio Lib.getToolButtonTip Lib.setToolButtonTip --- 156,160 ---- pos = readAttr "pos" (Lib.getToolItemPos . hradio) ! instance Tipped ToolRadioButton where tooltip = newStdAttr hradio Lib.getToolButtonTip Lib.setToolButtonTip *************** *** 197,201 **** pos = readAttr "pos" (Lib.getToolItemPos . hdropdown) ! instance ToolTip ToolDropDownButton where tooltip = newStdAttr hdropdown Lib.getToolButtonTip Lib.setToolButtonTip --- 197,201 ---- pos = readAttr "pos" (Lib.getToolItemPos . hdropdown) ! instance Tipped ToolDropDownButton where tooltip = newStdAttr hdropdown Lib.getToolButtonTip Lib.setToolButtonTip |
From: <kr_...@us...> - 2003-11-15 10:40:32
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32 In directory sc8-pr-cvs1:/tmp/cvs-serv2313/src/cbits/Win32 Modified Files: Frame.c Log Message: bugfix Index: Frame.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Frame.c,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Frame.c 15 Nov 2003 10:31:49 -0000 1.19 --- Frame.c 15 Nov 2003 10:40:29 -0000 1.20 *************** *** 133,137 **** { if (handle->type & (MENU_RADIO_ITEM | MENU_CHECK_ITEM)) ! osSetMenuItemChecked(handle, TRUE); else handleMenuCommand(handle); --- 133,137 ---- { if (handle->type & (MENU_RADIO_ITEM | MENU_CHECK_ITEM)) ! osSetMenuItemChecked(handle, !osGetMenuItemChecked(handle)); else handleMenuCommand(handle); |
From: <kr_...@us...> - 2003-11-15 10:34:17
|
Update of /cvsroot/htoolkit/gio/src/Graphics/UI/GIO In directory sc8-pr-cvs1:/tmp/cvs-serv1675/src/Graphics/UI/GIO Modified Files: Attributes.hs Menu.hs Process.hs Window.hs Added Files: StatusBar.hs Log Message: Extended StatusBar API. Added support for tooltips for menu items --- NEW FILE: StatusBar.hs --- ----------------------------------------------------------------------------------------- {-| Module : StatusBar Copyright : (c) Krasimir Angelov 2003 License : BSD-style Maintainer : ka2...@ya... Stability : provisional Portability : portable Defines an API for status bar creation. A status bar is a horizontal band at the bottom of an application window in which the application can display various kinds of status information. -} ----------------------------------------------------------------------------------------- module Graphics.UI.GIO.StatusBar ( StatusBar, sb , pushStatusBarContext, popStatusBarContext, withStatus ) where import qualified Graphics.UI.Port as Lib import Graphics.UI.GIO.Types import Graphics.UI.GIO.Attributes data StatusBar = StatusBar sb :: StatusBar sb = StatusBar instance Visible StatusBar where visible = newAttr (\sb -> Lib.getStatusBarVisible) (\sb -> Lib.setStatusBarVisible) instance Titled StatusBar where title = newAttr (\sb -> Lib.getStatusBarTitle) (\sb -> Lib.setStatusBarTitle) pushStatusBarContext :: StatusBar -> IO () pushStatusBarContext sb = Lib.pushStatusBarContext popStatusBarContext :: StatusBar -> IO () popStatusBarContext sb = Lib.popStatusBarContext withStatus :: StatusBar -> String -> IO a -> IO a withStatus sb txt action = do pushStatusBarContext sb set sb [title =: txt] r <- action popStatusBarContext sb return r Index: Attributes.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Attributes.hs,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Attributes.hs 31 Aug 2003 12:56:25 -0000 1.18 --- Attributes.hs 15 Nov 2003 10:34:14 -0000 1.19 *************** *** 80,83 **** --- 80,86 ---- -- ** Positioned , Positioned, pos + + -- ** Visible + , Visible, visible -- ** Selection *************** *** 299,302 **** --- 302,309 ---- -- | The widget position pos :: Attr w Int + + -- | Widgets that can be visible/invisible. + class Visible w where + visible :: Attr w Bool -- | Widgets that can be checked. Index: Menu.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Menu.hs,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Menu.hs 31 Aug 2003 12:56:25 -0000 1.15 --- Menu.hs 15 Nov 2003 10:34:14 -0000 1.16 *************** *** 144,147 **** --- 144,150 ---- instance HasIcon MenuItem where icon = newStdAttr hitem Lib.getMenuItemBitmap Lib.setMenuItemBitmap + + instance ToolTip MenuItem where + tooltip = newStdAttr hitem Lib.getMenuTip Lib.setMenuTip instance Positioned MenuItem where *************** *** 204,207 **** --- 207,213 ---- instance Accelerated MenuRadioItem where accel = newStdAttr hradioitem Lib.getMenuItemAccel Lib.setMenuItemAccel + + instance ToolTip MenuRadioItem where + tooltip = newStdAttr hradioitem Lib.getMenuTip Lib.setMenuTip -- | The 'setMenuRadioGroup' function specifies a set of mutually exclusive options. *************** *** 249,252 **** --- 255,261 ---- instance Accelerated MenuCheck where accel = newStdAttr hcheck Lib.getMenuItemAccel Lib.setMenuItemAccel + + instance ToolTip MenuCheck where + tooltip = newStdAttr hcheck Lib.getMenuTip Lib.setMenuTip instance Positioned MenuCheck where Index: Process.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Process.hs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Process.hs 14 Nov 2003 22:36:28 -0000 1.6 --- Process.hs 15 Nov 2003 10:34:14 -0000 1.7 *************** *** 17,21 **** ( Process, pc , start, quit, halt ! , ConfigKey(..), configKey, configKeyDef, visibleStatusBar ) where --- 17,21 ---- ( Process, pc , start, quit, halt ! , ConfigKey(..), configKey, configKeyDef ) where *************** *** 65,70 **** configKeyDef :: ConfigKey a => String -> a -> Attr Process a configKeyDef name defvalue = newAttr (\p -> Lib.getConfigKeyDef name defvalue) (\p v -> Lib.setConfigKey name v) - - visibleStatusBar :: Attr Process Bool - visibleStatusBar = newAttr (\p -> Lib.getStatusBarVisible) (\p -> Lib.setStatusBarVisible) --- 65,67 ---- Index: Window.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Window.hs,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** Window.hs 15 Oct 2003 18:14:09 -0000 1.31 --- Window.hs 15 Nov 2003 10:34:14 -0000 1.32 *************** *** 121,127 **** view = newStdAttr hwindow Lib.getWindowViewSize Lib.setWindowViewSize ! -- | The attribute controls whether the window is visible ! visible :: Attr Window Bool ! visible = newStdAttr hwindow Lib.getWindowVisible Lib.setWindowVisible instance Dismissible Window where --- 121,126 ---- view = newStdAttr hwindow Lib.getWindowViewSize Lib.setWindowViewSize ! instance Visible Window where ! visible = newStdAttr hwindow Lib.getWindowVisible Lib.setWindowVisible instance Dismissible Window where |
From: <kr_...@us...> - 2003-11-15 10:34:16
|
Update of /cvsroot/htoolkit/gio/src/Graphics/UI In directory sc8-pr-cvs1:/tmp/cvs-serv1675/src/Graphics/UI Modified Files: GIO.hs Log Message: Extended StatusBar API. Added support for tooltips for menu items Index: GIO.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO.hs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** GIO.hs 17 Jul 2003 19:30:04 -0000 1.11 --- GIO.hs 15 Nov 2003 10:34:14 -0000 1.12 *************** *** 24,27 **** --- 24,28 ---- , module Graphics.UI.GIO.Window , module Graphics.UI.GIO.ToolBar + , module Graphics.UI.GIO.StatusBar , module Graphics.UI.GIO.Timer , module Graphics.UI.GIO.Menu *************** *** 41,44 **** --- 42,46 ---- import Graphics.UI.GIO.Window import Graphics.UI.GIO.ToolBar + import Graphics.UI.GIO.StatusBar import Graphics.UI.GIO.Timer import Graphics.UI.GIO.Menu |
From: <kr_...@us...> - 2003-11-15 10:34:16
|
Update of /cvsroot/htoolkit/gio In directory sc8-pr-cvs1:/tmp/cvs-serv1675 Modified Files: makefile Log Message: Extended StatusBar API. Added support for tooltips for menu items Index: makefile =================================================================== RCS file: /cvsroot/htoolkit/gio/makefile,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** makefile 6 Oct 2003 19:04:50 -0000 1.16 --- makefile 15 Nov 2003 10:34:13 -0000 1.17 *************** *** 34,38 **** GIO/CommonDialogs.hs GIO/Controls.hs \ GIO/Messages.hs GIO/Process.hs \ ! GIO/ToolBar.hs \ GIO.hs \ --- 34,38 ---- GIO/CommonDialogs.hs GIO/Controls.hs \ GIO/Messages.hs GIO/Process.hs \ ! GIO/ToolBar.hs GIO/StatusBar.hs \ GIO.hs \ |
From: <kr_...@us...> - 2003-11-15 10:31:53
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32 In directory sc8-pr-cvs1:/tmp/cvs-serv1334/src/cbits/Win32 Modified Files: Frame.c Internals.h Menu.c MenuHandlesMap.c MenuHandlesMap.h StatusBar.c Log Message: Extended StatusBar API. Added support for tooltips for menu items Index: Frame.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Frame.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Frame.c 14 Nov 2003 22:35:20 -0000 1.18 --- Frame.c 15 Nov 2003 10:31:49 -0000 1.19 *************** *** 3,6 **** --- 3,7 ---- #include "Menu.h" #include "DockBar.h" + #include "StatusBar.h" #include "MenuHandlesMap.h" #include "Canvas.h" *************** *** 40,43 **** --- 41,52 ---- free(pData->lpszAppVersion); deleteMenuHandlesMap(pData->pMenuHandlesMap); + + while (pData->statusContexts) + { + StatusContext context = pData->statusContexts; + pData->statusContexts = context->next; + free(context); + } + free(pData); PostQuitMessage(0); *************** *** 109,112 **** --- 118,122 ---- (HANDLE) ghModule, NULL); + pData->statusContexts = NULL; SetWindowLong(hWnd,GWL_USERDATA,(LONG) pData); *************** *** 348,351 **** --- 358,377 ---- } break; + case WM_MENUSELECT: + if ((HIWORD(wParam) & MF_POPUP) == 0) + { + handle = getMenuHandle(pData->pMenuHandlesMap, (UINT) LOWORD(wParam)); + if (handle) + { + SetWindowText(pData->hStatusBar, handle->tip ? handle->tip : ""); + } + } + break; + case WM_ENTERMENULOOP: + osPushStatusBarContext(); + break; + case WM_EXITMENULOOP: + osPopStatusBarContext(); + break; } Index: Internals.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Internals.h,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Internals.h 14 Nov 2003 22:35:20 -0000 1.13 --- Internals.h 15 Nov 2003 10:31:49 -0000 1.14 *************** *** 61,64 **** --- 61,70 ---- extern void SetupLogBrush(LOGBRUSH *plb, BOOL bSetSolid, int hatchStyle, BitmapHandle patBmp); + typedef struct StatusContext + { + struct StatusContext *next; + char tip[0]; + } *StatusContext; + typedef struct { *************** *** 71,74 **** --- 77,81 ---- HWND hLeftBar, hTopBar, hRightBar, hBottomBar; HWND hStatusBar; + StatusContext statusContexts; } FrameData; Index: Menu.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Menu.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Menu.c 14 Nov 2003 22:35:20 -0000 1.18 --- Menu.c 15 Nov 2003 10:31:49 -0000 1.19 *************** *** 462,465 **** --- 462,481 ---- } + char *osGetMenuTip(MenuHandle handle) + { + CHECK_MENU_TYPE(handle, MENU_RADIO_ITEM | MENU_CHECK_ITEM | MENU_ITEM, NULL); + return handle->tip; + } + + void osSetMenuTip(MenuHandle handle, char *tip) + { + CHECK_MENU_TYPE_V(handle, MENU_RADIO_ITEM | MENU_CHECK_ITEM | MENU_ITEM); + + if (handle->tip) + free(handle->tip); + + handle->tip = strdup(tip); + } + void osSetMenuItemAccel(MenuHandle handle, int key, unsigned int mods) { Index: MenuHandlesMap.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/MenuHandlesMap.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** MenuHandlesMap.c 17 Aug 2003 16:45:07 -0000 1.3 --- MenuHandlesMap.c 15 Nov 2003 10:31:49 -0000 1.4 *************** *** 86,89 **** --- 86,90 ---- handle->nextInGroup = handle; handle->sibling = NULL; + handle->tip = NULL; if (type != MENU_POPUP) Index: MenuHandlesMap.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/MenuHandlesMap.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** MenuHandlesMap.h 17 Aug 2003 16:45:07 -0000 1.4 --- MenuHandlesMap.h 15 Nov 2003 10:31:49 -0000 1.5 *************** *** 31,34 **** --- 31,35 ---- BitmapHandle bitmap; MENU_TYPE type; + char *tip; }; Index: StatusBar.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/StatusBar.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** StatusBar.c 14 Nov 2003 22:35:20 -0000 1.1 --- StatusBar.c 15 Nov 2003 10:31:49 -0000 1.2 *************** *** 15,16 **** --- 15,60 ---- return (GetWindowLong(pData->hStatusBar, GWL_STYLE) & WS_VISIBLE) != 0; } + + void osPushStatusBarContext() + { + int nLen; + StatusContext context; + FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); + + nLen = GetWindowTextLength(pData->hStatusBar); + context = (StatusContext) rmalloc(sizeof(struct StatusContext) + nLen+1); + GetWindowText(pData->hStatusBar, context->tip, nLen+1); + context->next = pData->statusContexts; + pData->statusContexts = context; + } + + void osPopStatusBarContext() + { + StatusContext context; + FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); + + context = pData->statusContexts; + if (!context) + return; + + pData->statusContexts = context->next; + + SetWindowText(pData->hStatusBar, context->tip); + + free(context); + } + + char *osGetStatusBarTitle() + { + FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); + int nLen = GetWindowTextLength(pData->hStatusBar); + char *buffer = (char *) rmalloc(nLen+1); + GetWindowText(pData->hStatusBar, buffer, nLen+1); + return buffer; + }; + + void osSetStatusBarTitle(char *title) + { + FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); + SetWindowText(pData->hStatusBar, title); + }; |
From: <kr_...@us...> - 2003-11-15 10:31:53
|
Update of /cvsroot/htoolkit/port/src/include In directory sc8-pr-cvs1:/tmp/cvs-serv1334/src/include Modified Files: HsPort.h Menu.h StatusBar.h Log Message: Extended StatusBar API. Added support for tooltips for menu items Index: HsPort.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/include/HsPort.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** HsPort.h 1 Sep 2003 20:27:49 -0000 1.8 --- HsPort.h 15 Nov 2003 10:31:50 -0000 1.9 *************** *** 15,18 **** --- 15,19 ---- #include "port/Menu.h" #include "port/ToolBar.h" + #include "port/StatusBar.h" #include "port/Font.h" #include "port/Canvas.h" Index: Menu.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/include/Menu.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Menu.h 17 Aug 2003 16:45:07 -0000 1.8 --- Menu.h 15 Nov 2003 10:31:50 -0000 1.9 *************** *** 26,29 **** --- 26,31 ---- void osSetMenuLabel(MenuHandle item, char* title); char *osGetMenuLabel(MenuHandle item); + void osSetMenuTip(MenuHandle item, char* tip); + char *osGetMenuTip(MenuHandle item); void osSetMenuItemAccel(MenuHandle item, int key, unsigned int mods); Index: StatusBar.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/include/StatusBar.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** StatusBar.h 14 Nov 2003 22:35:20 -0000 1.1 --- StatusBar.h 15 Nov 2003 10:31:50 -0000 1.2 *************** *** 7,9 **** --- 7,15 ---- BOOL osGetStatusBarVisible(); + void osPushStatusBarContext(); + void osPopStatusBarContext(); + + char *osGetStatusBarTitle(); + void osSetStatusBarTitle(char *title); + #endif |
From: <kr_...@us...> - 2003-11-15 10:31:52
|
Update of /cvsroot/htoolkit/port/src/Port In directory sc8-pr-cvs1:/tmp/cvs-serv1334/src/Port Modified Files: Menu.hs StatusBar.hs Log Message: Extended StatusBar API. Added support for tooltips for menu items Index: Menu.hs =================================================================== RCS file: /cvsroot/htoolkit/port/src/Port/Menu.hs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Menu.hs 17 Aug 2003 16:45:07 -0000 1.11 --- Menu.hs 15 Nov 2003 10:31:49 -0000 1.12 *************** *** 40,43 **** --- 40,44 ---- , getMenuItemPos , setMenuLabel, getMenuLabel + , setMenuTip, getMenuTip ) where *************** *** 201,202 **** --- 202,215 ---- = resultCString (osGetMenuLabel hmenu) foreign import ccall osGetMenuLabel :: MenuHandle -> IO CString + + -- | Change the tooltip of a menu item (or checkable menu item). + setMenuTip :: MenuHandle -> String -> IO () + setMenuTip hmenu tip + = withCString tip (osSetMenuTip hmenu) + foreign import ccall osSetMenuTip :: MenuHandle -> CString -> IO () + + -- | Returns the tooltip of a menu item (or checkable menu item). + getMenuTip :: MenuHandle -> IO String + getMenuTip hmenu + = resultCString (osGetMenuTip hmenu) + foreign import ccall osGetMenuTip :: MenuHandle -> IO CString Index: StatusBar.hs =================================================================== RCS file: /cvsroot/htoolkit/port/src/Port/StatusBar.hs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** StatusBar.hs 14 Nov 2003 22:35:20 -0000 1.1 --- StatusBar.hs 15 Nov 2003 10:31:49 -0000 1.2 *************** *** 16,22 **** ----------------------------------------------------------------------------------------- module Graphics.UI.Port.StatusBar ! ( setStatusBarVisible, getStatusBarVisible ) where foreign import ccall "osSetStatusBarVisible" setStatusBarVisible :: Bool -> IO () foreign import ccall "osGetStatusBarVisible" getStatusBarVisible :: IO Bool --- 16,41 ---- ----------------------------------------------------------------------------------------- module Graphics.UI.Port.StatusBar ! ( setStatusBarVisible, getStatusBarVisible ! , setStatusBarTitle, getStatusBarTitle ! , pushStatusBarContext, popStatusBarContext ) where + import Foreign + import Foreign.C + import Graphics.UI.Port.Types + foreign import ccall "osSetStatusBarVisible" setStatusBarVisible :: Bool -> IO () foreign import ccall "osGetStatusBarVisible" getStatusBarVisible :: IO Bool + + -- | Change the title of the status bar. + setStatusBarTitle :: String -> IO () + setStatusBarTitle title = withCString title osSetStatusBarTitle + foreign import ccall osSetStatusBarTitle :: CString -> IO () + + -- | Returns the title of the status bar. + getStatusBarTitle :: IO String + getStatusBarTitle = resultCString osGetStatusBarTitle + foreign import ccall osGetStatusBarTitle :: IO CString + + foreign import ccall "osPushStatusBarContext" pushStatusBarContext :: IO () + foreign import ccall "osPopStatusBarContext" popStatusBarContext :: IO () |
From: <kr_...@us...> - 2003-11-14 22:36:32
|
Update of /cvsroot/htoolkit/gio/src/examples/simple In directory sc8-pr-cvs1:/tmp/cvs-serv715/src/examples/simple Modified Files: SimpleMenu.hs Log Message: Basic support for statusbar Index: SimpleMenu.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/examples/simple/SimpleMenu.hs,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** SimpleMenu.hs 7 Oct 2003 21:39:31 -0000 1.10 --- SimpleMenu.hs 14 Nov 2003 22:36:28 -0000 1.11 *************** *** 4,8 **** main ! = start "SimpleMenu" "1.0" SDI [] $ do w <- window [view =: sz 200 200] showWindow w --- 4,8 ---- main ! = start "SimpleMenu" "1.0" SDI [visibleStatusBar =: True] $ do w <- window [view =: sz 200 200] showWindow w |
From: <kr_...@us...> - 2003-11-14 22:36:32
|
Update of /cvsroot/htoolkit/gio/src/Graphics/UI/GIO In directory sc8-pr-cvs1:/tmp/cvs-serv715/src/Graphics/UI/GIO Modified Files: Process.hs Log Message: Basic support for statusbar Index: Process.hs =================================================================== RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Process.hs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Process.hs 20 Oct 2003 10:17:20 -0000 1.5 --- Process.hs 14 Nov 2003 22:36:28 -0000 1.6 *************** *** 17,21 **** ( Process, pc , start, quit, halt ! , ConfigKey(..), configKey, configKeyDef ) where --- 17,21 ---- ( Process, pc , start, quit, halt ! , ConfigKey(..), configKey, configKeyDef, visibleStatusBar ) where *************** *** 65,66 **** --- 65,70 ---- configKeyDef :: ConfigKey a => String -> a -> Attr Process a configKeyDef name defvalue = newAttr (\p -> Lib.getConfigKeyDef name defvalue) (\p v -> Lib.setConfigKey name v) + + visibleStatusBar :: Attr Process Bool + visibleStatusBar = newAttr (\p -> Lib.getStatusBarVisible) (\p -> Lib.setStatusBarVisible) + |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port/src/cbits/Win32 In directory sc8-pr-cvs1:/tmp/cvs-serv32717/src/cbits/Win32 Modified Files: DockBar.c Frame.c Internals.h Menu.c Window.c Added Files: StatusBar.c Log Message: Basic support for statusbar --- NEW FILE: StatusBar.c --- #include "StatusBar.h" #include "DockBar.h" #include "Internals.h" void osSetStatusBarVisible(BOOL visible) { FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); ShowWindow(pData->hStatusBar, visible ? SW_SHOWNORMAL : SW_HIDE); RelayoutFrameBars(); } BOOL osGetStatusBarVisible() { FrameData *pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); return (GetWindowLong(pData->hStatusBar, GWL_STYLE) & WS_VISIBLE) != 0; } Index: DockBar.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/DockBar.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** DockBar.c 4 Oct 2003 09:24:22 -0000 1.7 --- DockBar.c 14 Nov 2003 22:35:20 -0000 1.8 *************** *** 91,110 **** RECT rect; FrameData *pData; ! int nWidth, nHeight, nLeft, nTop, nRight, nBottom; if (!ghWndFrame) ! return NULL; pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); GetClientRect(ghWndFrame, &rect); nWidth = rect.right-rect.left; ! nHeight = rect.bottom-rect.top; nLeft = GetDockBarSize(pData->hLeftBar); nTop = GetDockBarSize(pData->hTopBar); nRight = GetDockBarSize(pData->hRightBar); nBottom = GetDockBarSize(pData->hBottomBar); ! SetWindowPos(pData->hLeftBar, NULL,0,nTop,nLeft,nHeight-(nBottom+nTop),SWP_NOZORDER); SetWindowPos(pData->hTopBar, NULL,0,0,nWidth,nTop,SWP_NOZORDER); --- 91,117 ---- RECT rect; FrameData *pData; ! int nWidth, nHeight; ! int nLeft, nTop, nRight, nBottom; ! int nStatusHeight; if (!ghWndFrame) ! return; pData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); + if (GetWindowLong(pData->hStatusBar, GWL_STYLE) & WS_VISIBLE) + nStatusHeight = 20; + else + nStatusHeight = 0; + GetClientRect(ghWndFrame, &rect); nWidth = rect.right-rect.left; ! nHeight = rect.bottom-rect.top-nStatusHeight; nLeft = GetDockBarSize(pData->hLeftBar); nTop = GetDockBarSize(pData->hTopBar); nRight = GetDockBarSize(pData->hRightBar); nBottom = GetDockBarSize(pData->hBottomBar); ! SetWindowPos(pData->hLeftBar, NULL,0,nTop,nLeft,nHeight-(nBottom+nTop),SWP_NOZORDER); SetWindowPos(pData->hTopBar, NULL,0,0,nWidth,nTop,SWP_NOZORDER); *************** *** 113,116 **** --- 120,125 ---- SetWindowPos(pData->hClientWnd,NULL,nLeft,nTop,nWidth-(nRight+nLeft),nHeight-(nBottom+nTop),SWP_NOZORDER); + + SetWindowPos(pData->hStatusBar,NULL,0,nHeight,nWidth,nStatusHeight,SWP_NOZORDER); } Index: Frame.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Frame.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** Frame.c 4 Oct 2003 09:58:36 -0000 1.17 --- Frame.c 14 Nov 2003 22:35:20 -0000 1.18 *************** *** 100,103 **** --- 100,112 ---- (HANDLE) ghModule, NULL); + + pData->hStatusBar = CreateWindow("msctls_statusbar32", + NULL, + WS_CHILD, + 0,0,0,0, + hWnd, + NULL, + (HANDLE) ghModule, + NULL); SetWindowLong(hWnd,GWL_USERDATA,(LONG) pData); Index: Internals.h =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Internals.h,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Internals.h 17 Oct 2003 08:52:22 -0000 1.12 --- Internals.h 14 Nov 2003 22:35:20 -0000 1.13 *************** *** 70,73 **** --- 70,74 ---- HWND hLeftBar, hTopBar, hRightBar, hBottomBar; + HWND hStatusBar; } FrameData; Index: Menu.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Menu.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** Menu.c 4 Oct 2003 09:53:44 -0000 1.17 --- Menu.c 14 Nov 2003 22:35:20 -0000 1.18 *************** *** 1,4 **** --- 1,5 ---- #include "Menu.h" #include "Window.h" + #include "DockBar.h" #include "Internals.h" #include "Handlers_stub.h" *************** *** 94,102 **** if (!parent) { ! RECT rc; ! FrameData *pFrameData = (FrameData *) GetWindowLong(ghWndFrame,GWL_USERDATA); ! ! GetClientRect(ghWndFrame, &rc); ! SetWindowPos(pFrameData->hClientWnd,NULL,rc.left,rc.top,rc.right-rc.left,rc.bottom-rc.top,SWP_NOZORDER); DrawMenuBar(ghWndFrame); } --- 95,99 ---- if (!parent) { ! RelayoutFrameBars(); DrawMenuBar(ghWndFrame); } *************** *** 238,242 **** mii.fState = MFS_ENABLED; mii.fType = MFT_RADIOCHECK | MFT_STRING; ! mii.dwTypeData = (DWORD) ""; mii.cch = 0; InsertMenuItem(getParentHMENU(handle),getMenuPos(pFrameData->pMenuHandlesMap, handle),TRUE,&mii); --- 235,239 ---- mii.fState = MFS_ENABLED; mii.fType = MFT_RADIOCHECK | MFT_STRING; ! mii.dwTypeData = ""; mii.cch = 0; InsertMenuItem(getParentHMENU(handle),getMenuPos(pFrameData->pMenuHandlesMap, handle),TRUE,&mii); Index: Window.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/Win32/Window.c,v retrieving revision 1.59 retrieving revision 1.60 diff -C2 -d -r1.59 -r1.60 *** Window.c 17 Oct 2003 08:52:22 -0000 1.59 --- Window.c 14 Nov 2003 22:35:20 -0000 1.60 *************** *** 1,4 **** --- 1,5 ---- #include "Window.h" #include "Menu.h" + #include "DockBar.h" #include "Internals.h" #include "Handlers_stub.h" *************** *** 790,794 **** NULL, WS_CHILD | WS_HSCROLL | WS_VSCROLL, ! 0,0,rect.right-rect.left,rect.bottom-rect.top, ghWndFrame, NULL, --- 791,795 ---- NULL, WS_CHILD | WS_HSCROLL | WS_VSCROLL, ! 0,0,0,0, ghWndFrame, NULL, *************** *** 797,800 **** --- 798,803 ---- ); pFrameData->hClientWnd = hWnd; + + RelayoutFrameBars(); break; case 2: // MDI |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port/src/include In directory sc8-pr-cvs1:/tmp/cvs-serv32717/src/include Added Files: StatusBar.h Log Message: Basic support for statusbar --- NEW FILE: StatusBar.h --- #ifndef STATUSBAR_H #define STATUSBAR_H #include "Types.h" void osSetStatusBarVisible(BOOL visible); BOOL osGetStatusBarVisible(); #endif |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK In directory sc8-pr-cvs1:/tmp/cvs-serv32717/src/cbits/GTK Modified Files: Frame.c Added Files: StatusBar.c Log Message: Basic support for statusbar --- NEW FILE: StatusBar.c --- #include "StatusBar.h" #include "DockBar.h" #include "Internals.h" void osSetStatusBarVisible(BOOL visible) { if (visible) gtk_widget_show(GNOME_APP(gFrameWidget)->statusbar); else gtk_widget_hide(GNOME_APP(gFrameWidget)->statusbar); } BOOL osGetStatusBarVisible() { return GTK_WIDGET_VISIBLE(GNOME_APP(gFrameWidget)->statusbar); } Index: Frame.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Frame.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Frame.c 8 Jul 2003 20:31:29 -0000 1.11 --- Frame.c 14 Nov 2003 22:35:20 -0000 1.12 *************** *** 205,208 **** --- 205,209 ---- { GtkWidget *notebook_menu, *menu_item, *pages_menu; + GtkWidget *statusBar; GSList *group; *************** *** 289,294 **** gtk_window_add_accel_group (GTK_WINDOW (gFrameWidget), gtk_accel_group_new()); ! gtk_widget_show_all(pages_menu); } --- 290,300 ---- gtk_window_add_accel_group (GTK_WINDOW (gFrameWidget), gtk_accel_group_new()); ! gtk_widget_show_all(pages_menu); + + + statusBar = gnome_appbar_new(FALSE, TRUE, GNOME_PREFERENCES_NEVER); + gnome_app_set_statusbar(GNOME_APP(gFrameWidget), statusBar); + gtk_widget_hide(statusBar); } *************** *** 302,305 **** --- 308,313 ---- void createSDIFrame() { + GtkWidget *statusBar; + /* Create the window. */ gFrameWidget = gnome_app_new(gAppName, gAppName); *************** *** 333,335 **** --- 341,348 ---- gnome_app_enable_layout_config (GNOME_APP(gFrameWidget), TRUE); + + + statusBar = gnome_appbar_new(FALSE, TRUE, GNOME_PREFERENCES_NEVER); + gnome_app_set_statusbar(GNOME_APP(gFrameWidget), statusBar); + gtk_widget_hide(statusBar); } |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port/src In directory sc8-pr-cvs1:/tmp/cvs-serv32717/src Modified Files: Port.hs Log Message: Basic support for statusbar Index: Port.hs =================================================================== RCS file: /cvsroot/htoolkit/port/src/Port.hs,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Port.hs 17 Jul 2003 19:33:32 -0000 1.18 --- Port.hs 14 Nov 2003 22:35:20 -0000 1.19 *************** *** 20,23 **** --- 20,24 ---- , module Graphics.UI.Port.Message , module Graphics.UI.Port.ToolBar + , module Graphics.UI.Port.StatusBar -- ** Controls *************** *** 48,51 **** --- 49,53 ---- import Graphics.UI.Port.Message import Graphics.UI.Port.ToolBar + import Graphics.UI.Port.StatusBar import Graphics.UI.Port.Controls |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port/src/Port In directory sc8-pr-cvs1:/tmp/cvs-serv32717/src/Port Added Files: StatusBar.hs Log Message: Basic support for statusbar --- NEW FILE: StatusBar.hs --- {-# OPTIONS -fglasgow-exts -#include Types.h #-} ----------------------------------------------------------------------------------------- {-| Module : StatusBar Copyright : (c) Krasimir Angelov 2003 License : BSD-style Maintainer : ka2...@ya... Stability : provisional Portability : portable Defines an API for status bar creation. A status bar is a horizontal band at the bottom of an application window in which the application can display various kinds of status information. -} ----------------------------------------------------------------------------------------- module Graphics.UI.Port.StatusBar ( setStatusBarVisible, getStatusBarVisible ) where foreign import ccall "osSetStatusBarVisible" setStatusBarVisible :: Bool -> IO () foreign import ccall "osGetStatusBarVisible" getStatusBarVisible :: IO Bool |
From: <kr_...@us...> - 2003-11-14 22:35:23
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv32717 Modified Files: makefile Log Message: Basic support for statusbar Index: makefile =================================================================== RCS file: /cvsroot/htoolkit/port/makefile,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** makefile 1 Oct 2003 21:58:57 -0000 1.42 --- makefile 14 Nov 2003 22:35:20 -0000 1.43 *************** *** 41,44 **** --- 41,45 ---- Port/ConfigKey.hs \ Port/ToolBar.hs \ + Port/StatusBar.hs \ Port.hs *************** *** 48,52 **** FileDialog.c ColorDialog.c FontDialog.c AboutDialog.c PopUp.c Canvas.c Menu.c ListBox.c \ Label.c Font.c RadioBox.c Timer.c Frame.c Message.c Slider.c ProgressBar.c ConfigKey.c \ ! ToolBar.c Notebook.c GroupBox.c ifeq "$(GUILIB)" "WIN32" --- 49,53 ---- FileDialog.c ColorDialog.c FontDialog.c AboutDialog.c PopUp.c Canvas.c Menu.c ListBox.c \ Label.c Font.c RadioBox.c Timer.c Frame.c Message.c Slider.c ProgressBar.c ConfigKey.c \ ! ToolBar.c StatusBar.c Notebook.c GroupBox.c ifeq "$(GUILIB)" "WIN32" |
From: <kr_...@us...> - 2003-11-13 20:17:39
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv4363 Modified Files: configure Log Message: bugfix Index: configure =================================================================== RCS file: /cvsroot/htoolkit/port/configure,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** configure 30 Sep 2003 17:04:03 -0000 1.21 --- configure 13 Nov 2003 20:17:18 -0000 1.22 *************** *** 412,416 **** echo " , hs_libraries=[\"HSport\"]" >> config/port.pkg echo " , extra_libraries=[$extralibs]" >> config/port.pkg ! echo " , package_deps=[]" >> config/port.pkg echo " , include_dirs = [$incdirs]" >> config/port.pkg echo " , c_includes = [\"HsPort.h\"]" >> config/port.pkg --- 412,416 ---- echo " , hs_libraries=[\"HSport\"]" >> config/port.pkg echo " , extra_libraries=[$extralibs]" >> config/port.pkg ! echo " , package_deps=[\"base\"]" >> config/port.pkg echo " , include_dirs = [$incdirs]" >> config/port.pkg echo " , c_includes = [\"HsPort.h\"]" >> config/port.pkg |
From: <kr_...@us...> - 2003-10-27 19:59:25
|
Update of /cvsroot/htoolkit/port/src/examples In directory sc8-pr-cvs1:/tmp/cvs-serv4515 Modified Files: ByeDemo.hs Log Message: Update to the actual version of port Index: ByeDemo.hs =================================================================== RCS file: /cvsroot/htoolkit/port/src/examples/ByeDemo.hs,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** ByeDemo.hs 24 Mar 2003 17:07:12 -0000 1.8 --- ByeDemo.hs 27 Oct 2003 19:56:03 -0000 1.9 *************** *** 11,15 **** import Graphics.UI.Port ! main = start "Bye!" SDI demo demo :: IO () --- 11,15 ---- import Graphics.UI.Port ! main = start "Bye" "1.0" SDI demo demo :: IO () *************** *** 23,26 **** --- 23,27 ---- lsize <- getLabelRequestSize l -- get the minimal size of the label moveResizeControl l (rectAt (pt 0 0) lsize) -- position in upperleft corner + setControlVisible l True b <- createButton w *************** *** 28,37 **** bsize <- getButtonRequestSize b -- get the minimal size of the button moveResizeControl b (rectAt (pt 0 (sh lsize)) bsize) -- position under the label ! setControlCommandHandler b (bye w l b) -- register event handler ! showWindow w -- show it all where -- called on the first click with the window, label, and button as arguments. bye w l b = do setLabelText l "Goodbye" ! setControlCommandHandler b (destroyWindow w) -- overwrite the old event handler --- 29,39 ---- bsize <- getButtonRequestSize b -- get the minimal size of the button moveResizeControl b (rectAt (pt 0 (sh lsize)) bsize) -- position under the label + setControlVisible b True ! setControlCommandHandler b (bye w l b) -- register event handler ! setWindowVisible w True -- show it all where -- called on the first click with the window, label, and button as arguments. bye w l b = do setLabelText l "Goodbye" ! setControlCommandHandler b halt -- overwrite the old event handler |
From: <kr_...@us...> - 2003-10-21 20:32:51
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK In directory sc8-pr-cvs1:/tmp/cvs-serv32380/src/cbits/GTK Modified Files: AboutDialog.c Log Message: Be ANSI C compatible Index: AboutDialog.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/AboutDialog.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AboutDialog.c 2 May 2003 06:41:33 -0000 1.1 --- AboutDialog.c 21 Oct 2003 19:26:05 -0000 1.2 *************** *** 25,28 **** --- 25,29 ---- void osRunAboutDialog(char *appName, char *appVersion, char *copyright, char *comments, char *authors, char *documenters, char *translator_credits, BitmapHandle bitmap, WindowHandle owner) { + GtkWidget *about; gchar **authorsArr, **documentersArr; *************** *** 30,41 **** documentersArr = strList2Array(documenters); ! GtkWidget *about = gnome_about_new(appName, ! appVersion, ! copyright, ! comments, ! authorsArr ? authorsArr : &authorsArr, ! documentersArr, ! translator_credits, ! bitmap->pixbuf); if (owner) --- 31,42 ---- documentersArr = strList2Array(documenters); ! about = gnome_about_new(appName, ! appVersion, ! copyright, ! comments, ! authorsArr ? authorsArr : &authorsArr, ! documentersArr, ! translator_credits, ! bitmap->pixbuf); if (owner) *************** *** 49,52 **** free(documentersArr); free(authorsArr); - } --- 50,52 ---- |
From: <kr_...@us...> - 2003-10-21 15:31:58
|
Update of /cvsroot/htoolkit/port In directory sc8-pr-cvs1:/tmp/cvs-serv3752 Modified Files: README Log Message: comments Index: README =================================================================== RCS file: /cvsroot/htoolkit/port/README,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** README 4 Sep 2003 09:19:48 -0000 1.1 --- README 21 Oct 2003 11:45:14 -0000 1.2 *************** *** 5,8 **** --- 5,12 ---- ------------------------------------------------------------------------- + + Introduction + ~~~~~~~~~~~~ + The "Graphics.UI.Port" library is a portable graphical user interface library for Haskell. It currently supports Windows and GTK. The *************** *** 17,20 **** haddock for generating the documentation automatically. ! See "install.txt" for instructions on building and installing ! the Port package. \ No newline at end of file --- 21,49 ---- haddock for generating the documentation automatically. ! See "INSTALL" for instructions on building and installing ! the Port package. ! ! ! Requirements ! ~~~~~~~~~~~~ ! ! If you want to build Port for Linux you need to have GTK 2.2 ! and GNOME 2.2 development packages. The applications built with Port ! are dependent from GTK and GNOME shared libraries. ! If you want to build the library for Windows you need CYGWIN ! environment but applications built with Port uses only native Windows ! libraries and don't require CYGWIN. If you want to read/write/create ! images in formats different from BMP then you need to have GdiPlus.dll ! in your search path. GdiPlus.dll is part of GDI+ package which is ! available from http://www.microsoft.com for platforms older that ! Windows XP. Windows XP and Windows 2003 comes with GDI+ installed ! by default. ! ! ! Known bugs ! ~~~~~~~~~~ ! ! In Port 1.2 the toolbars for GTK are not supported. The CVS ! version of library supports toolbars but uses the new toolbar API ! implemented in GTK 2.3. The support will be enabled after ! GTK 2.4 release. |
From: <kr_...@us...> - 2003-10-20 23:09:37
|
Update of /cvsroot/htoolkit/port/src/cbits/GTK In directory sc8-pr-cvs1:/tmp/cvs-serv6184/src/cbits/GTK Modified Files: Window.c Log Message: bugfix Index: Window.c =================================================================== RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/Window.c,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** Window.c 20 Oct 2003 18:19:23 -0000 1.42 --- Window.c 20 Oct 2003 19:11:33 -0000 1.43 *************** *** 879,884 **** if (toplevel != gFrameWidget || gDocumentInterface == 1) { - GTK_WINDOW(toplevel)->allow_grow = (resizeable != FALSE); - if (resizeable) gtk_window_set_geometry_hints(GTK_WINDOW(toplevel), toplevel, NULL, 0); --- 879,882 ---- *************** *** 887,894 **** GdkGeometry geometry; ! geometry.min_width = toplevel->allocation.width; ! geometry.min_height = toplevel->allocation.height; ! geometry.max_width = toplevel->allocation.width; ! geometry.max_height = toplevel->allocation.height; gtk_window_set_geometry_hints(GTK_WINDOW(toplevel), toplevel, &geometry, --- 885,902 ---- GdkGeometry geometry; ! if (toplevel != gFrameWidget) ! { ! geometry.min_width = toplevel->allocation.width; ! geometry.min_height = toplevel->allocation.height; ! geometry.max_width = toplevel->allocation.width; ! geometry.max_height = toplevel->allocation.height; ! } ! else ! { ! geometry.min_width = gFrameWidth; ! geometry.min_height = gFrameHeight; ! geometry.max_width = gFrameWidth; ! geometry.max_height = gFrameHeight; ! } gtk_window_set_geometry_hints(GTK_WINDOW(toplevel), toplevel, &geometry, |