You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(70) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(38) |
Feb
(4) |
Mar
(11) |
Apr
(49) |
May
(81) |
Jun
(65) |
Jul
(36) |
Aug
(57) |
Sep
(63) |
Oct
(57) |
Nov
(49) |
Dec
(41) |
2006 |
Jan
(75) |
Feb
(80) |
Mar
(10) |
Apr
(13) |
May
(100) |
Jun
(100) |
Jul
(77) |
Aug
(87) |
Sep
(80) |
Oct
(124) |
Nov
(39) |
Dec
(41) |
2007 |
Jan
(20) |
Feb
(32) |
Mar
(32) |
Apr
(43) |
May
(146) |
Jun
(40) |
Jul
(49) |
Aug
(33) |
Sep
(25) |
Oct
(19) |
Nov
(11) |
Dec
(8) |
2008 |
Jan
(4) |
Feb
(11) |
Mar
(31) |
Apr
(40) |
May
(34) |
Jun
(24) |
Jul
(39) |
Aug
(104) |
Sep
(27) |
Oct
(35) |
Nov
(34) |
Dec
(97) |
2009 |
Jan
(75) |
Feb
(29) |
Mar
(45) |
Apr
(76) |
May
(121) |
Jun
(103) |
Jul
(67) |
Aug
(28) |
Sep
(22) |
Oct
(39) |
Nov
(9) |
Dec
(15) |
2010 |
Jan
(7) |
Feb
(39) |
Mar
(40) |
Apr
(57) |
May
(67) |
Jun
(69) |
Jul
(49) |
Aug
(68) |
Sep
(22) |
Oct
(7) |
Nov
(2) |
Dec
(10) |
2011 |
Jan
|
Feb
|
Mar
(10) |
Apr
(4) |
May
(6) |
Jun
(10) |
Jul
(16) |
Aug
(23) |
Sep
(9) |
Oct
|
Nov
(28) |
Dec
(3) |
2012 |
Jan
(11) |
Feb
(10) |
Mar
(1) |
Apr
|
May
(4) |
Jun
(3) |
Jul
(3) |
Aug
(4) |
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
2013 |
Jan
|
Feb
(7) |
Mar
(30) |
Apr
(4) |
May
(4) |
Jun
(8) |
Jul
(10) |
Aug
(4) |
Sep
|
Oct
(2) |
Nov
(24) |
Dec
(13) |
2014 |
Jan
(7) |
Feb
(2) |
Mar
|
Apr
(1) |
May
(9) |
Jun
|
Jul
(3) |
Aug
(9) |
Sep
|
Oct
(2) |
Nov
|
Dec
(3) |
2015 |
Jan
(4) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
(5) |
Sep
(1) |
Oct
(4) |
Nov
(7) |
Dec
(39) |
2016 |
Jan
(17) |
Feb
(2) |
Mar
(2) |
Apr
|
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(2) |
2017 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
(1) |
Jun
(2) |
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
(2) |
2018 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: George H. <geo...@us...> - 2006-01-26 11:21:04
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27036/win32forth/src Modified Files: GENERIC.F Window.f Log Message: gah: Some optimizations and documenting Index: Window.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/Window.f,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** Window.f 25 Jan 2006 11:10:53 -0000 1.9 --- Window.f 26 Jan 2006 11:20:49 -0000 1.10 *************** *** 469,473 **** \ ** (&PS ivar) and the window device context (DC ivar) are initialized. \n \ ** Check ps_fErase in your method to see if the background of the window should ! \ ** be drawn and use ps_left, ps_top, ps_right and ps_bottom to see whitch part of \ ** the window should be painted. \n \ ** Default does nothing. --- 469,473 ---- \ ** (&PS ivar) and the window device context (DC ivar) are initialized. \n \ ** Check ps_fErase in your method to see if the background of the window should ! \ ** be drawn and use ps_left, ps_top, ps_right and ps_bottom to see which part of \ ** the window should be painted. \n \ ** Default does nothing. *************** *** 863,867 **** : LoadIconFile ( adr len -- hIcon ) \ w32f ! \ *G Load an icon from a icon file. asciiz >r LR_LOADFROMFILE 0 0 IMAGE_ICON r> NULL call LoadImage ; --- 863,867 ---- : LoadIconFile ( adr len -- hIcon ) \ w32f ! \ *G Load an icon from an icon file. asciiz >r LR_LOADFROMFILE 0 0 IMAGE_ICON r> NULL call LoadImage ; Index: GENERIC.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/GENERIC.F,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** GENERIC.F 26 Dec 2005 09:28:23 -0000 1.6 --- GENERIC.F 26 Jan 2006 11:20:49 -0000 1.7 *************** *** 40,53 **** in-application ! \ Linked list, to hold all window objects VARIABLE windows-link windows-link OFF ! \ Linked list, to hold all dialog objects VARIABLE dialog-link dialog-link OFF \ Normally wRect is called by methods and : definitions inside generic-window, however the ! \ original global object is used by ResgistryWindowPos.f in the Libs folder so we define it \ as an alias for backward compatibility. ' TempRect Alias wRect --- 40,54 ---- in-application ! \ Linked list, to hold all dictionary window objects. VARIABLE windows-link windows-link OFF ! \ Linked list, to hold all modeless dialog, Frame window and MDI child window objects ! \ that respond to dialog messages. VARIABLE dialog-link dialog-link OFF \ Normally wRect is called by methods and : definitions inside generic-window, however the ! \ original global object is used by Lib\RegistryWindowPos.f so we define it \ as an alias for backward compatibility. ' TempRect Alias wRect *************** *** 116,120 **** :M Classinit: ( -- ) ! \ *G Init the class ClassInit: super 0 to hWnd turnkeyed? 0= \ only dynamic windows can be used in a --- 117,121 ---- :M Classinit: ( -- ) ! \ *G Initialise the class. ClassInit: super 0 to hWnd turnkeyed? 0= \ only dynamic windows can be used in a *************** *** 123,139 **** :M GetHandle: ( -- hWnd ) ! \ *G Get the window handle hWnd ;M :M PutHandle: ( hWnd -- ) ! \ *G Set the window handle to hWnd ;M :M ZeroWindow: ( -- ) ! \ *G Clear the window handle 0 to hWnd ;M :M DestroyWindow: ( -- ) ! \ *G Destroy the window hWnd if hWnd Call DestroyWindow ?win-error --- 124,141 ---- :M GetHandle: ( -- hWnd ) ! \ *G Get the window handle. hWnd ;M :M PutHandle: ( hWnd -- ) ! \ *G Set the window handle. Normally handled by the system. to hWnd ;M :M ZeroWindow: ( -- ) ! \ *G Clear the window handle. Normally handled by the system. At start-up all window ! \ ** objects are zeroed automatically. 0 to hWnd ;M :M DestroyWindow: ( -- ) ! \ *G Destroy the window. The handle is always zero after executing this method. hWnd if hWnd Call DestroyWindow ?win-error *************** *** 142,150 **** :M Close: ( -- ) ! \ *G Close the window DestroyWindow: self ;M :M Paint: ( -- ) ! \ *G force window repaint hWnd if 1 0 hWnd Call InvalidateRect ?win-error --- 144,152 ---- :M Close: ( -- ) ! \ *G Close the window. DestroyWindow: self ;M :M Paint: ( -- ) ! \ *G Force window repaint. A WM_PAINT message is posted to the message queue. hWnd if 1 0 hWnd Call InvalidateRect ?win-error *************** *** 467,471 **** :M SetDlgItemFocus: ( id -- ) ! \ *G Set the focus to the control (id) in the window GetDlgItem: self Call SetFocus drop ;M --- 469,473 ---- :M SetDlgItemFocus: ( id -- ) ! \ *G Set the focus to the control (id) in the window. GetDlgItem: self Call SetFocus drop ;M *************** *** 501,505 **** :M SetAlign: ( flag id -- ) \ DEPRECATED ! \ *G Obsolescent Method use SetDlgItemAlign: instead SetDlgItemAlign: self ;M DEPRECATED --- 503,507 ---- :M SetAlign: ( flag id -- ) \ DEPRECATED ! \ *G Obsolescent Method use SetDlgItemAlign: instead. SetDlgItemAlign: self ;M DEPRECATED *************** *** 568,573 **** \ *G End of generic-window class ! : zero-windows { \ wlink -- } \ startup the console's menubar ! windows-link @ \ clear all menu handles begin dup while dup cell+ @ to wlink --- 570,575 ---- \ *G End of generic-window class ! : zero-windows { \ wlink -- } \ Zero all window handles. ! windows-link @ begin dup while dup cell+ @ to wlink |
From: George H. <geo...@us...> - 2006-01-25 11:11:11
|
Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15558/win32forth/doc/classes Modified Files: Window.htm Log Message: gah: Some optimizations and documenting Index: Window.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Window.htm,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Window.htm 8 Jan 2006 09:28:07 -0000 1.5 --- Window.htm 25 Jan 2006 11:10:52 -0000 1.6 *************** *** 19,26 **** </h1><hr /><h2>Glossary </h2><pre><b><a name="0">:CLASS Window <SUPER Generic-Window ! </a></b></pre><p>Class for window objects. </p><pre><b><a name="0">:M ClassInit: ( -- ) ! </a></b></pre><p>Init the class ! </p><h3>Window sizeing </h3><pre><b><a name="0">:M GetSize: ( -- w h ) </a></b></pre><p>Get the size (width and height) of the window. --- 19,26 ---- </h1><hr /><h2>Glossary </h2><pre><b><a name="0">:CLASS Window <SUPER Generic-Window ! </a></b></pre><p>Base class for window objects. </p><pre><b><a name="0">:M ClassInit: ( -- ) ! </a></b></pre><p>Initialise the class. ! </p><h3>Window sizing </h3><pre><b><a name="0">:M GetSize: ( -- w h ) </a></b></pre><p>Get the size (width and height) of the window. *************** *** 35,43 **** </a></b></pre><p>User windows should override the On_Size: method. When this method is called, the variables Width and Height will have already been set. <br /> ! default does nothing </p><pre><b><a name="0">:M MinSize: ( -- width height ) ! </a></b></pre><p>To change the minimum window size, override the MinSize: method. </p><pre><b><a name="0">:M MaxSize: ( -- width height ) ! </a></b></pre><p>To change the maximum window size, override the MaxSize: method. </p><pre><b><a name="0">:M StartSize: ( -- width height ) </a></b></pre><p>To change the size of the window when it's created, override the StartSize: method --- 35,43 ---- </a></b></pre><p>User windows should override the On_Size: method. When this method is called, the variables Width and Height will have already been set. <br /> ! Default does nothing </p><pre><b><a name="0">:M MinSize: ( -- width height ) ! </a></b></pre><p>To change the minimum window size, override the MinSize: method. Default is 10 by 10. </p><pre><b><a name="0">:M MaxSize: ( -- width height ) ! </a></b></pre><p>To change the maximum window size, override the MaxSize: method. Default is 8192 by 8192. </p><pre><b><a name="0">:M StartSize: ( -- width height ) </a></b></pre><p>To change the size of the window when it's created, override the StartSize: method *************** *** 51,57 **** </p><h3>Window creation </h3><pre><b><a name="0">:M On_Init: ( -- ) ! </a></b></pre><p>Thing's to do during creation of the window. </p><pre><b><a name="0">:M On_Done: ( -- ) ! </a></b></pre><p>Thing's to do when the window will be destroyed. </p><pre>Your On_Init: and On_Done: methods should look like this: --- 51,57 ---- </p><h3>Window creation </h3><pre><b><a name="0">:M On_Init: ( -- ) ! </a></b></pre><p>Thing's to do during creation of the window. Default does nothing. </p><pre><b><a name="0">:M On_Done: ( -- ) ! </a></b></pre><p>Thing's to do when the window will be destroyed. Default does nothing. </p><pre>Your On_Init: and On_Done: methods should look like this: *************** *** 66,73 **** ;M ! An application window will need the following methods, which cause the program to terminate when the user closes the main application window. ! Don't un-comment these out here, copy them into your application window ! Object or Class, and them un-comment them out. :M WM_CLOSE ( h m w l -- res ) --- 66,74 ---- ;M ! ! The main application window will need the following methods, which cause the program to terminate when the user closes the main application window. ! Don't uncomment these out here, copy them into your application window ! Object or Class, and then uncomment them out. :M WM_CLOSE ( h m w l -- res ) *************** *** 79,106 **** On_Done: super \ cleanup the super class 0 ;M </pre><pre><b><a name="0">:M SetClassName: ( adr len -- ) </a></b></pre><p>User windows should override the SetClassName: method to set the window class name. </p><pre><b><a name="0">:M GetClassName: ( -- adr len ) ! </a></b></pre><p>Get the window class name </p><pre><b><a name="0">:M SetParent: ( hwndParent -- ) ! </a></b></pre><p>Set owner window (0 if no parent) </p><pre><b><a name="0">:M ParentWindow: ( -- hwndparent | 0 if no parent ) ! </a></b></pre><p>Get owner window </p><pre><b><a name="0">:M DefaultCursor: ( -- cursor-id ) </a></b></pre><p>User windows should override the DefaultCursor: method to ! set the default cursor for window </p><pre><b><a name="0">:M DefaultIcon: ( -- hIcon ) </a></b></pre><p>User windows should override the WindowStyle: method to ! set the default icon handle for window. </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to ! set the window style. </p><pre><b><a name="0">:M ExWindowStyle: ( -- extended_style ) </a></b></pre><p>User windows should override the ExWindowStyle: method to ! set the extended window style. </p><pre><b><a name="0">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to ! set the window caption. </p><h3>Painting </h3><pre><b><a name="0">WinDC dc --- 80,115 ---- On_Done: super \ cleanup the super class 0 ;M + + For multi-tasking applications the main window of each task should define + the following method, to quit the message loop and exit the task. + + :M On_Done: ( h m w l -- res ) + 0 call PostQuitMessage drop \ terminate application + On_Done: super \ cleanup the super class + 0 ;M </pre><pre><b><a name="0">:M SetClassName: ( adr len -- ) </a></b></pre><p>User windows should override the SetClassName: method to set the window class name. </p><pre><b><a name="0">:M GetClassName: ( -- adr len ) ! </a></b></pre><p>Get the window class name. </p><pre><b><a name="0">:M SetParent: ( hwndParent -- ) ! </a></b></pre><p>Set owner window (0 if no parent). </p><pre><b><a name="0">:M ParentWindow: ( -- hwndparent | 0 if no parent ) ! </a></b></pre><p>Get owner window. </p><pre><b><a name="0">:M DefaultCursor: ( -- cursor-id ) </a></b></pre><p>User windows should override the DefaultCursor: method to ! set the default cursor for window. Default is IDC_ARROW. </p><pre><b><a name="0">:M DefaultIcon: ( -- hIcon ) </a></b></pre><p>User windows should override the WindowStyle: method to ! set the default icon handle for window. Default is the W32F icon. </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to ! set the window style. Default is WS_OVERLAPPEDWINDOW. </p><pre><b><a name="0">:M ExWindowStyle: ( -- extended_style ) </a></b></pre><p>User windows should override the ExWindowStyle: method to ! set the extended window style. Default is null. </p><pre><b><a name="0">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to ! set the window caption. Default is Window. </p><h3>Painting </h3><pre><b><a name="0">WinDC dc *************** *** 115,119 **** </a></b></pre><p>User windows should override the On_EraseBackground: method to handle WM_ERASEBKGND messages. <br /> ! Default does nothing </p><pre><b><a name="0">:M On_Paint: ( -- ) </a></b></pre><p>User windows should override the On_Paint: method to handle WM_PAINT messages. <br /> --- 124,128 ---- </a></b></pre><p>User windows should override the On_EraseBackground: method to handle WM_ERASEBKGND messages. <br /> ! Default does nothing. </p><pre><b><a name="0">:M On_Paint: ( -- ) </a></b></pre><p>User windows should override the On_Paint: method to handle WM_PAINT messages. <br /> *************** *** 123,141 **** be drawn and use ps_left, ps_top, ps_right and ps_bottom to see whitch part of the window should be painted. <br /> ! Default does nothing </p><h3>Menu support </h3><pre><b><a name="0">:M WindowHasMenu: ( -- flag ) ! </a></b></pre><p>Override this method if your window has a menu </p><h3>Cursor (caret) support </h3><pre><b><a name="0">:M MoveCursor: ( gx gy -- ) ! </a></b></pre><p>Move the caret </p><pre><b><a name="0">:M MakeCursor: ( gx gy width height -- ) ! </a></b></pre><p>Create the caret </p><pre><b><a name="0">:M DestroyCursor: ( -- ) ! </a></b></pre><p>Destroy the caret </p><pre><b><a name="0">:M ShowCursor: ( -- ) ! </a></b></pre><p>Show the caret </p><pre><b><a name="0">:M HideCursor: ( -- ) ! </a></b></pre><p>Hide the caret </p><pre><b><a name="0">:M On_SetFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_SETFOCUS message. <br /> --- 132,151 ---- be drawn and use ps_left, ps_top, ps_right and ps_bottom to see whitch part of the window should be painted. <br /> ! Default does nothing. </p><h3>Menu support </h3><pre><b><a name="0">:M WindowHasMenu: ( -- flag ) ! </a></b></pre><p>Flag is true if the window has a menu. Override this method if your window has a ! menu. Default is false. </p><h3>Cursor (caret) support </h3><pre><b><a name="0">:M MoveCursor: ( gx gy -- ) ! </a></b></pre><p>Move the caret. </p><pre><b><a name="0">:M MakeCursor: ( gx gy width height -- ) ! </a></b></pre><p>Create the caret. </p><pre><b><a name="0">:M DestroyCursor: ( -- ) ! </a></b></pre><p>Destroy the caret. </p><pre><b><a name="0">:M ShowCursor: ( -- ) ! </a></b></pre><p>Show the caret. </p><pre><b><a name="0">:M HideCursor: ( -- ) ! </a></b></pre><p>Hide the caret. </p><pre><b><a name="0">:M On_SetFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_SETFOCUS message. <br /> *************** *** 151,155 **** </pre><h3>Keyboard and mouse handling </h3><pre><b><a name="0">:M PushKey: ( c1 -- ) ! </a></b></pre><p>override to process keys yoruself </p><h3>Message handling </h3><pre><b><a name="0">:M Win32Forth: ( h m w l -- ) --- 161,165 ---- </pre><h3>Keyboard and mouse handling </h3><pre><b><a name="0">:M PushKey: ( c1 -- ) ! </a></b></pre><p>override to process keys yoruself. </p><h3>Message handling </h3><pre><b><a name="0">:M Win32Forth: ( h m w l -- ) *************** *** 162,167 **** </p><h3>everything else... </h3><pre><b><a name="0">:M CenterWindow: ( -- x y ) ! </a></b></pre><p>Calc the position of the window to center it in the middle of it's parent window. ! Whe the windows has no parent it will be placed in the middle of the primary display monitor. </p><pre><b><a name="0">:M Enable: ( f1 -- ) --- 172,177 ---- </p><h3>everything else... </h3><pre><b><a name="0">:M CenterWindow: ( -- x y ) ! </a></b></pre><p>Calculate the position of the window to center it in the middle of it's parent window. ! When the windows has no parent it will be placed in the middle of the primary display monitor. </p><pre><b><a name="0">:M Enable: ( f1 -- ) *************** *** 171,183 **** The dimensions are given in screen coordinates that are relative to the upper-left corner of the screen. </p><pre><b><a name="0">:M SetTitle: { adr len \ temp$ -- } ! </a></b></pre><p>Set the window title </p><pre><b><a name="0">;CLASS ! </a></b></pre><p>End of window class </p><pre><b><a name="0">: find-window ( z"a1 -- hWnd ) \ w32f ! </a></b></pre><p>Find a window </p><pre><b><a name="0">: send-window ( lParam wParam Message_ID hWnd -- ) \ w32f ! </a></b></pre><p>Send a message to a window </p><pre><b><a name="0">: LoadIconFile ( adr len -- hIcon ) \ w32f ! </a></b></pre><p>load an icon from a icon file </p><hr><p>Document $Id$</p> </body></html> --- 181,193 ---- The dimensions are given in screen coordinates that are relative to the upper-left corner of the screen. </p><pre><b><a name="0">:M SetTitle: { adr len \ temp$ -- } ! </a></b></pre><p>Set the window title. </p><pre><b><a name="0">;CLASS ! </a></b></pre><p>End of window class. </p><pre><b><a name="0">: find-window ( z"a1 -- hWnd ) \ w32f ! </a></b></pre><p>Find a window. </p><pre><b><a name="0">: send-window ( lParam wParam Message_ID hWnd -- ) \ w32f ! </a></b></pre><p>Send a message to a window. </p><pre><b><a name="0">: LoadIconFile ( adr len -- hIcon ) \ w32f ! </a></b></pre><p>Load an icon from a icon file. </p><hr><p>Document $Id$</p> </body></html> |
From: George H. <geo...@us...> - 2006-01-25 11:11:11
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15558/win32forth/src Modified Files: Class.f Window.f Log Message: gah: Some optimizations and documenting Index: Window.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/Window.f,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Window.f 24 Dec 2005 11:57:59 -0000 1.8 --- Window.f 25 Jan 2006 11:10:53 -0000 1.9 *************** *** 40,47 **** :CLASS Window <SUPER Generic-Window ! \ *G Class for window objects. \ The following synonyms replace the original global rectangle object ! \ and dotted notations for it for backward compatibility: see Generic.f synonym WndRect.addrof wRect.addrof synonym WndRect.left wRect.left --- 40,47 ---- :CLASS Window <SUPER Generic-Window ! \ *G Base class for window objects. \ The following synonyms replace the original global rectangle object ! \ and dotted notations for it, for backward compatibility: see Generic.f synonym WndRect.addrof wRect.addrof synonym WndRect.left wRect.left *************** *** 76,80 **** :M ClassInit: ( -- ) ! \ *G Init the class ClassInit: super 0 to OriginX --- 76,80 ---- :M ClassInit: ( -- ) ! \ *G Initialise the class. ClassInit: super 0 to OriginX *************** *** 106,110 **** \ ----------------------------------------------------------------- ! \ *N Window sizeing \ ----------------------------------------------------------------- --- 106,110 ---- \ ----------------------------------------------------------------- ! \ *N Window sizing \ ----------------------------------------------------------------- *************** *** 129,133 **** \ *G User windows should override the On_Size: method. When this method is \ ** called, the variables Width and Height will have already been set. \n ! \ ** default does nothing ;M --- 129,133 ---- \ *G User windows should override the On_Size: method. When this method is \ ** called, the variables Width and Height will have already been set. \n ! \ ** Default does nothing ;M *************** *** 140,144 **** :M WM_MOVE ( hwnd msg wparam lparam -- res ) EraseRect: WinRect \ make a new rectangle ! AddrOf: WinRect hWnd Call GetWindowRect \ adjust the window if Left: WinRect to OriginX --- 140,144 ---- :M WM_MOVE ( hwnd msg wparam lparam -- res ) EraseRect: WinRect \ make a new rectangle ! WinRect hWnd Call GetWindowRect \ adjust the window if Left: WinRect to OriginX *************** *** 148,156 **** :M MinSize: ( -- width height ) ! \ *G To change the minimum window size, override the MinSize: method. 10 10 ;M :M MaxSize: ( -- width height ) ! \ *G To change the maximum window size, override the MaxSize: method. 8192 8192 ;M --- 148,156 ---- :M MinSize: ( -- width height ) ! \ *G To change the minimum window size, override the MinSize: method. Default is 10 by 10. 10 10 ;M :M MaxSize: ( -- width height ) ! \ *G To change the maximum window size, override the MaxSize: method. Default is 8192 by 8192. 8192 8192 ;M *************** *** 182,187 **** AddrOf: WinRect \ make a new rectangle Call AdjustWindowRectEx ?win-error \ adjust the window ! Bottom: WinRect Top: WinRect - \ adjusted height ! Right: WinRect Left: WinRect - \ adjusted width ; --- 182,187 ---- AddrOf: WinRect \ make a new rectangle Call AdjustWindowRectEx ?win-error \ adjust the window ! Height: WinRect \ adjusted height ! Width: WinRect \ adjusted width ; *************** *** 300,305 **** NULL LoadMenu: [ self ] \ menu ParentWindow: [ self ] \ parent window handle ! Bottom: WinRect Top: WinRect - \ adjusted height ! Right: WinRect Left: WinRect - \ adjusted width StartPos: [ self ] swap \ y, x starting position WindowStyle: [ self ] \ the window style --- 300,305 ---- NULL LoadMenu: [ self ] \ menu ParentWindow: [ self ] \ parent window handle ! Height: WinRect \ adjusted height ! Width: WinRect \ adjusted width StartPos: [ self ] swap \ y, x starting position WindowStyle: [ self ] \ the window style *************** *** 329,337 **** :M On_Init: ( -- ) ! \ *G Thing's to do during creation of the window. ;M :M On_Done: ( -- ) ! \ *G Thing's to do when the window will be destroyed. ;M --- 329,337 ---- :M On_Init: ( -- ) ! \ *G Thing's to do during creation of the window. Default does nothing. ;M :M On_Done: ( -- ) ! \ *G Thing's to do when the window will be destroyed. Default does nothing. ;M *************** *** 348,355 **** \ ** ;M \ ** ! \ ** An application window will need the following methods, which cause the \ ** program to terminate when the user closes the main application window. ! \ ** Don't un-comment these out here, copy them into your application window ! \ ** Object or Class, and them un-comment them out. \ ** \ ** :M WM_CLOSE ( h m w l -- res ) --- 348,356 ---- \ ** ;M \ ** ! \ ** ! \ ** The main application window will need the following methods, which cause the \ ** program to terminate when the user closes the main application window. ! \ ** Don't uncomment these out here, copy them into your application window ! \ ** Object or Class, and then uncomment them out. \ ** \ ** :M WM_CLOSE ( h m w l -- res ) *************** *** 361,364 **** --- 362,373 ---- \ ** On_Done: super \ cleanup the super class \ ** 0 ;M + \ ** + \ ** For multi-tasking applications the main window of each task should define + \ ** the following method, to quit the message loop and exit the task. + \ ** + \ ** :M On_Done: ( h m w l -- res ) + \ ** 0 call PostQuitMessage drop \ terminate application + \ ** On_Done: super \ cleanup the super class + \ ** 0 ;M :M WM_CLOSE ( hwnd msg wparam lparam -- res ) *************** *** 384,406 **** :M GetClassName: ( -- adr len ) ! \ *G Get the window class name WindowClassName count ;M :M SetParent: ( hwndParent -- ) ! \ *G Set owner window (0 if no parent) to Parent ;M :M ParentWindow: ( -- hwndparent | 0 if no parent ) ! \ *G Get owner window Parent ;M :M DefaultCursor: ( -- cursor-id ) \ *G User windows should override the DefaultCursor: method to ! \ ** set the default cursor for window IDC_ARROW ;M :M DefaultIcon: ( -- hIcon ) \ *G User windows should override the WindowStyle: method to ! \ ** set the default icon handle for window. 101 appInst Call LoadIcon dup 0= if drop 100 z" w32fConsole.dll" Call GetModuleHandle Call LoadIcon --- 393,415 ---- :M GetClassName: ( -- adr len ) ! \ *G Get the window class name. WindowClassName count ;M :M SetParent: ( hwndParent -- ) ! \ *G Set owner window (0 if no parent). to Parent ;M :M ParentWindow: ( -- hwndparent | 0 if no parent ) ! \ *G Get owner window. Parent ;M :M DefaultCursor: ( -- cursor-id ) \ *G User windows should override the DefaultCursor: method to ! \ ** set the default cursor for window. Default is IDC_ARROW. IDC_ARROW ;M :M DefaultIcon: ( -- hIcon ) \ *G User windows should override the WindowStyle: method to ! \ ** set the default icon handle for window. Default is the W32F icon. 101 appInst Call LoadIcon dup 0= if drop 100 z" w32fConsole.dll" Call GetModuleHandle Call LoadIcon *************** *** 409,423 **** :M WindowStyle: ( -- style ) \ *G User windows should override the WindowStyle: method to ! \ ** set the window style. WS_OVERLAPPEDWINDOW ;M :M ExWindowStyle: ( -- extended_style ) \ *G User windows should override the ExWindowStyle: method to ! \ ** set the extended window style. 0 ;M :M WindowTitle: ( -- Zstring ) \ *G User windows should override the WindowTitle: method to ! \ ** set the window caption. z" Window" ;M --- 418,432 ---- :M WindowStyle: ( -- style ) \ *G User windows should override the WindowStyle: method to ! \ ** set the window style. Default is WS_OVERLAPPEDWINDOW. WS_OVERLAPPEDWINDOW ;M :M ExWindowStyle: ( -- extended_style ) \ *G User windows should override the ExWindowStyle: method to ! \ ** set the extended window style. Default is null. 0 ;M :M WindowTitle: ( -- Zstring ) \ *G User windows should override the WindowTitle: method to ! \ ** set the window caption. Default is Window. z" Window" ;M *************** *** 449,453 **** \ *G User windows should override the On_EraseBackground: method to handle \ ** WM_ERASEBKGND messages. \n ! \ ** Default does nothing DefWindowProc: [ self ] ;M --- 458,462 ---- \ *G User windows should override the On_EraseBackground: method to handle \ ** WM_ERASEBKGND messages. \n ! \ ** Default does nothing. DefWindowProc: [ self ] ;M *************** *** 462,466 **** \ ** be drawn and use ps_left, ps_top, ps_right and ps_bottom to see whitch part of \ ** the window should be painted. \n ! \ ** Default does nothing ;M --- 471,475 ---- \ ** be drawn and use ps_left, ps_top, ps_right and ps_bottom to see whitch part of \ ** the window should be painted. \n ! \ ** Default does nothing. ;M *************** *** 502,506 **** :M WindowHasMenu: ( -- flag ) ! \ *G Override this method if your window has a menu FALSE ;M --- 511,516 ---- :M WindowHasMenu: ( -- flag ) ! \ *G Flag is true if the window has a menu. Override this method if your window has a ! \ ** menu. Default is false. FALSE ;M *************** *** 515,519 **** :M MoveCursor: ( gx gy -- ) ! \ *G Move the caret 1+ \ correct for single pixel start offset have-focus? --- 525,529 ---- :M MoveCursor: ( gx gy -- ) ! \ *G Move the caret. 1+ \ correct for single pixel start offset have-focus? *************** *** 528,532 **** :M MakeCursor: ( gx gy width height -- ) ! \ *G Create the caret have-focus? cursor-on? 0= and if 2dup to c-height to c-width --- 538,542 ---- :M MakeCursor: ( gx gy width height -- ) ! \ *G Create the caret. have-focus? cursor-on? 0= and if 2dup to c-height to c-width *************** *** 542,546 **** :M DestroyCursor: ( -- ) ! \ *G Destroy the caret have-focus? cursor-on? and hWnd 0<> and --- 552,556 ---- :M DestroyCursor: ( -- ) ! \ *G Destroy the caret. have-focus? cursor-on? and hWnd 0<> and *************** *** 552,556 **** :M ShowCursor: ( -- ) ! \ *G Show the caret cursor-on? 0= if c-x c-y c-width c-height MakeCursor: self --- 562,566 ---- :M ShowCursor: ( -- ) ! \ *G Show the caret. cursor-on? 0= if c-x c-y c-width c-height MakeCursor: self *************** *** 559,563 **** :M HideCursor: ( -- ) ! \ *G Hide the caret cursor-on? if DestroyCursor: self --- 569,573 ---- :M HideCursor: ( -- ) ! \ *G Hide the caret. cursor-on? if DestroyCursor: self *************** *** 591,595 **** :M PushKey: ( c1 -- ) ! \ *G override to process keys yoruself pushkey ;M --- 601,605 ---- :M PushKey: ( c1 -- ) ! \ *G override to process keys yoruself. pushkey ;M *************** *** 789,794 **** :M CenterWindow: ( -- x y ) ! \ *G Calc the position of the window to center it in the middle of it's parent window. ! \ ** Whe the windows has no parent it will be placed in the middle of the primary display \ ** monitor. GetPositionParent --- 799,804 ---- :M CenterWindow: ( -- x y ) ! \ *G Calculate the position of the window to center it in the middle of it's parent window. ! \ ** When the windows has no parent it will be placed in the middle of the primary display \ ** monitor. GetPositionParent *************** *** 799,802 **** --- 809,814 ---- \ I (dbu) think the methods should be in the base class, but... + \ the rectangle winrect was moved to after the ints width are height since their offsets + \ are hard-coded in the file lib\RegistrySupport.f (gah). The same applies to parent. :M Enable: ( f1 -- ) *************** *** 809,813 **** hWnd if EraseRect: WinRect ! AddrOf: WinRect hWnd Call GetWindowRect ?win-error Left: WinRect Top: WinRect Right: WinRect Bottom: WinRect --- 821,825 ---- hWnd if EraseRect: WinRect ! WinRect hWnd Call GetWindowRect ?win-error Left: WinRect Top: WinRect Right: WinRect Bottom: WinRect *************** *** 816,820 **** :M SetTitle: { adr len \ temp$ -- } ! \ *G Set the window title MAXSTRING LocalAlloc: temp$ adr len "CLIP" temp$ place --- 828,832 ---- :M SetTitle: { adr len \ temp$ -- } ! \ *G Set the window title. MAXSTRING LocalAlloc: temp$ adr len "CLIP" temp$ place *************** *** 840,855 **** ;CLASS ! \ *G End of window class : find-window ( z"a1 -- hWnd ) \ w32f ! \ *G Find a window 0 swap Call FindWindow ; : send-window ( lParam wParam Message_ID hWnd -- ) \ w32f ! \ *G Send a message to a window Call SendMessage drop ; : LoadIconFile ( adr len -- hIcon ) \ w32f ! \ *G load an icon from a icon file asciiz >r LR_LOADFROMFILE 0 0 IMAGE_ICON r> NULL call LoadImage ; --- 852,867 ---- ;CLASS ! \ *G End of window class. : find-window ( z"a1 -- hWnd ) \ w32f ! \ *G Find a window. 0 swap Call FindWindow ; : send-window ( lParam wParam Message_ID hWnd -- ) \ w32f ! \ *G Send a message to a window. Call SendMessage drop ; : LoadIconFile ( adr len -- hIcon ) \ w32f ! \ *G Load an icon from a icon file. asciiz >r LR_LOADFROMFILE 0 0 IMAGE_ICON r> NULL call LoadImage ; Index: Class.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/Class.f,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Class.f 24 Jan 2006 09:13:22 -0000 1.13 --- Class.f 25 Jan 2006 11:10:53 -0000 1.14 *************** *** 1213,1216 **** --- 1213,1217 ---- :Class Rectangle <Super Object + \ *G Class for rectangles for passing to the OS. Record: AddrOf *************** *** 1221,1237 **** ;Record - :M EraseRect: ( -- ) - 0 to Left - 0 to Top - 0 to Right - 0 to Bottom - ;M - - :M ClassInit: ( -- ) - ClassInit: super - EraseRect: self - ;M - :M SetRect: ( left top right bottom -- ) to Bottom to Right --- 1222,1227 ---- ;Record :M SetRect: ( left top right bottom -- ) + \ *G Set coordinates to Bottom to Right *************** *** 1240,1243 **** --- 1230,1242 ---- ;M + :M EraseRect: ( -- ) + \ *G Set all coordinates to zero. + 0 0 0 0 SetRect: self ;M + + :M ClassInit: ( -- ) + \ *G Initialise the object. The coordinates are set to zero. + ClassInit: super + EraseRect: self ;M + :M AddrOf: ( -- n1 ) AddrOf ;M :M Addr: ( -- n1 ) AddrOf ;M *************** *** 1247,1252 **** :M Bottom: ( -- n1 ) Bottom ;M ! :M Width: ( -- n1 ) right left - ;M ! :M Height: ( -- n1 ) bottom top - ;M :M .Rect: ( -- ) --- 1246,1253 ---- :M Bottom: ( -- n1 ) Bottom ;M ! :M Width: ( -- n1 ) ! right left - ;M ! :M Height: ( -- n1 ) ! bottom top - ;M \ cordinates are relative to the top of the screen. :M .Rect: ( -- ) *************** *** 1267,1270 **** --- 1268,1272 ---- : .CLASSES ( -- ) \ W32F Class \ *G Display all classes in the system. + \ Should really be in classdbg. cr \ classes are really vocabularies voc-link @ |
From: George H. <geo...@us...> - 2006-01-24 09:22:49
|
Update of /cvsroot/win32forth/win32forth/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26609/win32forth/doc Modified Files: p-float.htm Log Message: gah: Corrected typo. Index: p-float.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/p-float.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** p-float.htm 24 Jan 2006 09:13:21 -0000 1.1 --- p-float.htm 24 Jan 2006 09:22:39 -0000 1.2 *************** *** 112,116 **** </h3><pre><b><a name="0">code FLOOR ( fs: f1 -- fs: f2 ) \ ANSI Floating </a></b></pre><p>Set rounding mode to round to -infinity. ! </p><pre><b><a name="0">code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating wxtra </a></b></pre><p>Set rounding mode to round to +infinity. </p><pre><b><a name="0">code FTRUNC ( fs: f1 -- fs: f2 ) \ W32F Floating extra --- 112,116 ---- </h3><pre><b><a name="0">code FLOOR ( fs: f1 -- fs: f2 ) \ ANSI Floating </a></b></pre><p>Set rounding mode to round to -infinity. ! </p><pre><b><a name="0">code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating extra </a></b></pre><p>Set rounding mode to round to +infinity. </p><pre><b><a name="0">code FTRUNC ( fs: f1 -- fs: f2 ) \ W32F Floating extra |
From: George H. <geo...@us...> - 2006-01-24 09:22:49
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26609/win32forth/src Modified Files: FLOAT.F Log Message: gah: Corrected typo. Index: FLOAT.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/FLOAT.F,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** FLOAT.F 24 Jan 2006 09:13:24 -0000 1.25 --- FLOAT.F 24 Jan 2006 09:22:39 -0000 1.26 *************** *** 768,772 **** float; ! code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating wxtra \ *G Set rounding mode to round to +infinity. push ebx --- 768,772 ---- float; ! code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating extra \ *G Set rounding mode to round to +infinity. push ebx |
From: George H. <geo...@us...> - 2006-01-24 09:13:32
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23232/win32forth/src Modified Files: Class.f FLOAT.F Log Message: gah: Further documentation and dexing (work in progress) Index: Class.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/Class.f,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Class.f 14 Jan 2006 14:03:32 -0000 1.12 --- Class.f 24 Jan 2006 09:13:22 -0000 1.13 *************** *** 205,209 **** : ?isParen ( cfa -- f ) ! >name nfa-count drop c@ ascii [ = ; \ ERROR if not compiling a new class definition --- 205,209 ---- : ?isParen ( cfa -- f ) ! >name nfa-count drop c@ [char] [ = ; \ ERROR if not compiling a new class definition *************** *** 971,979 **** : ;Record ( -- ) \ W32F Class ! \ *G End a group of data fields that need to contiguous. 0 to contiguous-data? ; : ;RecordSize: ( -<name>- ) \ W32F Class ! \ *G End a group of data fields that need to contiguous and create a name with the \ ** size of the record. 0 to contiguous-data? --- 971,979 ---- : ;Record ( -- ) \ W32F Class ! \ *G End a group of data fields that need to be contiguous. 0 to contiguous-data? ; : ;RecordSize: ( -<name>- ) \ W32F Class ! \ *G End a group of data fields that need to be contiguous and create a name with the \ ** size of the record. 0 to contiguous-data? Index: FLOAT.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/FLOAT.F,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** FLOAT.F 16 Jan 2006 15:47:50 -0000 1.24 --- FLOAT.F 24 Jan 2006 09:13:24 -0000 1.25 *************** *** 463,477 **** float; ! code FSWAP ( fs: r1 r2 -- r2 r1 ) fstack-check_2 - \ TODO optimize 2>FPU ! fxch FPU> FPU> ! float; ! code FOVER ( fs: r1 r2 -- r1 r2 r3 ) fstack-check_2 fld FSIZE b/float 2* negate +FSTACK_MEMORY --- 463,479 ---- float; ! code FSWAP ( fs: r1 r2 -- r2 r1 ) \ ANSI Floating ! \ *G Exchange the top 2 FP numbers. fstack-check_2 2>FPU ! +fsp-adjust FPU> + -fsp-adjust -fsp-adjust FPU> ! +fsp-adjust float; ! code FOVER ( fs: r1 r2 -- r1 r2 r3 ) \ ANSI Floating ! \ *G Copy the 2nd FP stack number to the top of the FP stack. fstack-check_2 fld FSIZE b/float 2* negate +FSTACK_MEMORY *************** *** 480,484 **** float; ! code FROT ( fs: r1 r2 r3 -- r2 r3 r1 ) fstack-check_3 mov ecx, FSP_MEMORY --- 482,487 ---- float; ! code FROT ( fs: r1 r2 r3 -- r2 r3 r1 ) \ ANSI Floating ! \ *G Rotate the top 3 FP stack numbers. fstack-check_3 mov ecx, FSP_MEMORY *************** *** 498,502 **** float; ! code FPICK ( n -- ) ( fs: -- r ) \ W32F Floating extra \ *G Copy the n'th number from the FP stack. mov eax, ebx --- 501,505 ---- float; ! code FPICK ( n -- ) ( fs: -- r ) \ W32F Floating extra \ *G Copy the n'th number from the FP stack. mov eax, ebx *************** *** 516,528 **** float; ! : FNIP ( fs: r1 r2 -- r2 ) FSWAP FDROP ; ! code F2DROP ( fs: r1 r2 -- ) fstack-check_2 sub FSP_MEMORY , # B/FLOAT 2* float; ! : F2DUP ( fs: r1 r2 -- r1 r2 r3 r4 ) fover fover ; --- 519,539 ---- float; ! : FNIP ( fs: r1 r2 -- r2 ) \ W32F Floating extra ! \ *G Remove the 2nd FP stack entry. FSWAP FDROP ; ! \ *N FP Stack operations on pairs of entries ! ! \ *P The following words can be used for pairs of FP numbers and are useful for dealing ! \ ** with complex numbers or 2-dimensional vectors on the FP stack. ! ! code F2DROP ( fs: r1 r2 -- ) \ W32F Floating extra ! \ *G Remove the top 2 FP stack entries. fstack-check_2 sub FSP_MEMORY , # B/FLOAT 2* float; ! : F2DUP ( fs: r1 r2 -- r1 r2 r3 r4 ) \ W32F Floating extra ! \ *G Duplicate the top 2 FP stack entries. fover fover ; *************** *** 534,538 **** FROT ftemp f@ ; \ recover saved float ! : F2NIP ( fs: r1 r2 r3 r4 -- r3 r4 ) f2swap f2drop ; --- 545,550 ---- FROT ftemp f@ ; \ recover saved float ! : F2NIP ( fs: r1 r2 r3 r4 -- r3 r4 ) \ W32F Floating extra ! \ *G Remove the 2nd pair of FP stack entries. f2swap f2drop ; *************** *** 561,580 **** float; ! code fL2e ( fs: -- r ) \ log base 2 of e fldL2e FPU> - float; ! code fLog2 ( fs: -- r ) \ log base 10 of 2 fldLg2 FPU> - float; ! code fLn2 ( fs: -- r ) \ ln 2 natural logarithm fldLn2 FPU> - float; --- 573,592 ---- float; ! code fL2e ( fs: -- r ) \ W32F Floating extra ! \ *G Push the value of log base 2 of e. fldL2e FPU> float; ! code fLog2 ( fs: -- r ) \ W32F Floating extra ! \ *G Push the value of log base 10 of 2. fldLg2 FPU> float; ! code fLn2 ( fs: -- r ) \ W32F Floating extra ! \ *G Push the vlue of ln 2 (the natural logarithm). fldLn2 FPU> float; *************** *** 632,642 **** [ELSE] ( 8 byte mode ) stack-check ! f1.0 fconstant f0.0 ' f0.0 >body 0 over ! 0 swap cell+ ! ! f0.0 fconstant finf \ infinity ' finf >body 0 over ! 0x7ff00000 swap cell+ ! ! f1.0 fconstant f2.0 0x40000000 ' f2.0 >body cell+ ! --- 644,657 ---- [ELSE] ( 8 byte mode ) stack-check ! f1.0 fconstant f0.0 ( FS: -- r ) \ W32F Floating extra ! \ *G Push plus zero. ' f0.0 >body 0 over ! 0 swap cell+ ! ! f0.0 fconstant finf ( FS: -- r ) \ W32F Floating extra ! \ *G Push plus infinity. ' finf >body 0 over ! 0x7ff00000 swap cell+ ! ! f1.0 fconstant f2.0 ( FS: -- r ) \ W32F Floating extra ! \ *G Push 2.0 0x40000000 ' f2.0 >body cell+ ! *************** *** 896,909 **** external ! : F0= ( -- f ) ( fs: r -- ) ftstp FCOMP_EQUAL = ; ! : F0< ( -- f ) ( fs: r -- ) ftstp FCOMP_LESS = ; ! : f0> ( -- f ) ( fs: r -- ) ftstp 0= ; ! : f= ( -- f ) ( fs: r1 r2 -- ) fcomppx FCOMP_EQUAL = ; ! : F< ( -- f ) ( fs: r1 r2 -- ) fcomppx FCOMP_LESS = ; ! : f> ( -- f ) ( fs: r1 r2 -- ) fcomppx 0= ; ! : f<= ( -- f ) ( fs: r1 r2 -- ) f> not ; ! : f>= ( -- f ) ( fs: r1 r2 -- ) f< not ; : FMAX ( fs: r1 r2 -- r3 ) --- 911,934 ---- external ! \ *N Comparison operators ! : F0= ( -- f ) ( fs: r -- ) ! ftstp FCOMP_EQUAL = ; ! : F0< ( -- f ) ( fs: r -- ) ! ftstp FCOMP_LESS = ; ! : f0> ( -- f ) ( fs: r -- ) ! ftstp 0= ; ! : f= ( -- f ) ( fs: r1 r2 -- ) ! fcomppx FCOMP_EQUAL = ; ! : F< ( -- f ) ( fs: r1 r2 -- ) ! fcomppx FCOMP_LESS = ; ! : f> ( -- f ) ( fs: r1 r2 -- ) ! fcomppx 0= ; ! ! : f<= ( -- f ) ( fs: r1 r2 -- ) ! f> not ; ! : f>= ( -- f ) ( fs: r1 r2 -- ) ! f< not ; : FMAX ( fs: r1 r2 -- r3 ) *************** *** 917,921 **** \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! code F+ ( fs: r1 r2 -- r3 ) \ ? overflow errors ? fstack-check_2 --- 942,948 ---- \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ *N Maths operators ! ! code F+ ( fs: r1 r2 -- r3 ) \ ANSI Floating fstack-check_2 *************** *** 941,945 **** float; ! code F/ ( fs: r1 r2 -- r3 ) \ ? error for ofl or /0 ? fstack-check_2 2>FPU --- 968,972 ---- float; ! code F/ ( fs: r1 r2 -- r3 ) \ ANSI Floating fstack-check_2 2>FPU *************** *** 1824,1828 **** \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ Output conversion. \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ --- 1851,1855 ---- \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ *N Output conversion. \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ *************** *** 1831,1842 **** B/FLOAT 10 = [IF] 18 [ELSE] 16 [THEN] constant maxsig ! : PRECISION ( -- n ) sigdigits @ ; ! : SET-PRECISION ( n -- ) sigdigits ! ; ! : min-precision ( n -- ) ! precision max set-precision ; internal --- 1858,1875 ---- B/FLOAT 10 = [IF] 18 [ELSE] 16 [THEN] constant maxsig ! : PRECISION ( -- u ) \ ANSI Floating ext ! \ *G Return the number of significant digits currently used by (F.), (FE.), (FS.), F., ! \ ** FE., or FS. as u. sigdigits @ ; ! : SET-PRECISION ( u -- ) \ ANSI Floating ext ! \ *G Set the number of significant digits currently used by (F.), (FE.), (FS.), F., ! \ ** FE., or FS. to u. sigdigits ! ; ! : min-precision ( u -- ) \ W32F Floating extra ! \ *G Set the number of significant digits currently used by (F.), (FE.), (FS.), F., ! \ ** FE., or FS. to u if it is greater than the present setting. ! precision umax set-precision ; internal *************** *** 1855,1859 **** external ! : (F.) ( addr F: r -- ) \ convert fp # into a string { $buf -- } $buf off --- 1888,1900 ---- external ! \ *N Format FP number to a buffer ! ! \ *P The following words are for formatting floating point numbers as counted strings in ! \ ** the buffer whose address supplied so they can be used for purposes other than printing ! \ ** the numbers to the console. The string is not null terminated. ! ! : (F.) ( addr -- ) ( F: r -- ) \ W32F Floating extra ! \ *G Format the top number on the floating-point stack using fixed-point notation: ! \ *E [-] <digits>.<digits0> { $buf -- } $buf off |
From: George H. <geo...@us...> - 2006-01-24 09:13:30
|
Update of /cvsroot/win32forth/win32forth/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23232/win32forth/doc Modified Files: p-index.htm Added Files: p-float.htm Log Message: gah: Further documentation and dexing (work in progress) Index: p-index.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/p-index.htm,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** p-index.htm 15 Jan 2006 09:25:49 -0000 1.10 --- p-index.htm 24 Jan 2006 09:13:21 -0000 1.11 *************** *** 137,140 **** --- 137,141 ---- <li><a href="p-classes.htm">Win32Forth Classes</a></li> <li><a href="p-classdbg.htm">Class Debugging Words</a></li> + <li><a href="p-float.htm">Floating point words in Win32Forth</a></li> <li><a href="p-module.htm">Using the Module Wordset</a></li> <li><a href="p-task.htm">Using the Task Wordset</a></li> --- NEW FILE: p-float.htm --- <html> <head> <meta http-equiv="Content-Language" content="en-gb"> <meta name="GENERATOR" content="dexh00"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title> W32F float</title><style><!-- h1 { font-family: Tahoma; font-size: 24pt; font-weight: bold } h2 { font-family: Tahoma; font-size: 18pt; font-weight: bold } --> </style> </head> <body><h1 align="center"> <a href="mailto:win...@ya...?subject=DOC:Doc error in $Id: p-float.htm,v 1.1 2006/01/24 09:13:21 georgeahubert Exp $"> <img border="0" src="TELLUS.gif" align="left" width="32" height="32"></a> <img border="0" src="FORTHPRO.gif" width="32" height="32"> Win32Forth</h1> <hr /><h1>Floating point words in Win32Forth </h1><hr /><p>Win32Forth implements the full ANSI floating-point and floating-point extension wordsets as well as a number of useful extra words. It uses a separate floating-point stack (implemented in the USER area for task safety). </p><p>The floating-point words can be compiled as 8 bit (for speed) or 10 bit (for accuracy). The default when the system is built is 8 bit, but can be set to 10 bit (in src\extend.f) by altering the CONSTANT B/FLOAT and re-extending the system (using setup.exe). If the CONSTANT is not defined then the file automatically creates it and compiles the code for 10 bit floats. </p><p>The only error that is thrown is for FP stack Underflow (error code -45); arithmetic operations which produce values too large to be represented use infinity, while indeterminate results produce NANs. </p><h2>Glossary </h2><pre><b><a name="0">code finit ( -- ) \ W32F Floating extra </a></b></pre><p>Clears the floating-point stack & sets the appropriate byte mode. It is executed by the system on start-up and by the default exception handler. Users generally don't need to call this word in a single-task program. Tasks in a multi-task program should execute this word before executing any other floating-point words. </p><h3>Memory Access </h3><pre><b><a name="0">code F@ ( addr -- ) ( FS: -- r ) \ ANSI Floating </a></b></pre><p>Fetch a float. </p><pre><b><a name="0">code SF@ ( addr -- ) ( FS: -- r ) \ ANSI Floating ext </a></b></pre><p>Fetch a 32 bit (short) float. </p><pre><b><a name="0">code DF@ ( addr -- ) ( FS: -- r ) \ ANSI Floating ext </a></b></pre><p>Fetch a 64 bit (double) float. </p><pre><b><a name="0">code F! ( addr -- ) ( fs: r -- ) \ ANSI Floating </a></b></pre><p>Store a float. </p><pre><b><a name="0">code SF! ( addr -- ) ( fs: r -- ) \ ANSI Floating ext </a></b></pre><p>Store a 32 bit (short) float. </p><pre><b><a name="0">code DF! ( addr -- ) ( fs: r -- ) \ ANSI Floating ext </a></b></pre><p>Store a 64 bit (double) float. </p><pre><b><a name="0">code F+! ( addr -- ) ( fs: r -- ) \ W32F Floating extra </a></b></pre><p>Add the value to a float. </p><pre><b><a name="0">: FVARIABLE ( compiling -<name>- -- ; run-time -- addr) \ ANSI Floating </a></b></pre><p>Define a floating-point variable in the dictionary. The contents are undefined. </p><pre><b><a name="0">: FVALUE ( compiling -<name>- -- FS: r -- ; run-time FS: -- r ) \ W32F Floating extra </a></b></pre><p>Define a floating point value initialised from the FP stack. </p><pre><b><a name="0">: FTO \ W32F Floating extra </a></b></pre><p><b> Interpreting: ( -<fvalue>- -- FS: r -- ) <br /> Compiling: ( -<fvalue>- -- Run-time: FS: r -- ) </b> </p><p>Store r into -<fvalue>-. If -<fvalue>- is not defined with fvalue then memory may be corrupted; no checks are made so the user should take care. FTO should not be POSTPONEd. </p><pre><b><a name="0">: FCONSTANT \ ANSI Floating </a></b></pre><p><b> Compiling: ( -<name>- ) ( F: r -- ) <br /> </b><b> Run-time: ( F: -- r ) </b> <br /> </p><p>Define an FP constant. </p><h3>Stack operations </h3><pre><b><a name="0">code FDROP ( fs: r -- ) \ ANSI Floating </a></b></pre><p>Remove r from the floating-point stack. </p><pre><b><a name="0">code FDUP ( fs: r -- r r ) \ ANSI Floating </a></b></pre><p>Duplicate the top entry on the floating-point stack. </p><pre><b><a name="0">code FSWAP ( fs: r1 r2 -- r2 r1 ) \ ANSI Floating </a></b></pre><p>Exchange the top 2 FP numbers. </p><pre><b><a name="0">code FOVER ( fs: r1 r2 -- r1 r2 r3 ) \ ANSI Floating </a></b></pre><p>Copy the 2nd FP stack number to the top of the FP stack. </p><pre><b><a name="0">code FROT ( fs: r1 r2 r3 -- r2 r3 r1 ) \ ANSI Floating </a></b></pre><p>Rotate the top 3 FP stack numbers. </p><pre><b><a name="0">code FPICK ( n -- ) ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Copy the n'th number from the FP stack. </p><pre><b><a name="0">: FNIP ( fs: r1 r2 -- r2 ) \ W32F Floating extra </a></b></pre><p>Remove the 2nd FP stack entry. </p><h3>FP Stack operations on pairs of entries </h3><p>The following words can be used for pairs of FP numbers and are useful for dealing with complex numbers or 2-dimensional vectors on the FP stack. </p><pre><b><a name="0">code F2DROP ( fs: r1 r2 -- ) \ W32F Floating extra </a></b></pre><p>Remove the top 2 FP stack entries. </p><pre><b><a name="0">: F2DUP ( fs: r1 r2 -- r1 r2 r3 r4 ) \ W32F Floating extra </a></b></pre><p>Duplicate the top 2 FP stack entries. </p><pre><b><a name="0">: F2SWAP ( fs: r1 r2 r3 r4 -- r3 r4 r2 r1 ) \ W32F Floating extra </a></b></pre><p>Swap the top pair of floating-point numbers with the second pair. </p><pre><b><a name="0">: F2NIP ( fs: r1 r2 r3 r4 -- r3 r4 ) \ W32F Floating extra </a></b></pre><p>Remove the 2nd pair of FP stack entries. </p><h3>Constants </h3><pre><b><a name="0">code fpi ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 3.141596... on to the FP stack. </p><pre><b><a name="0">code f1.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 1.0 on to the FP stack. </p><pre><b><a name="0">code fL2t ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of 10. </p><pre><b><a name="0">code fL2e ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of e. </p><pre><b><a name="0">code fLog2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 10 of 2. </p><pre><b><a name="0">code fLn2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the vlue of ln 2 (the natural logarithm). </p><pre><b><a name="0"> f1.0 fconstant f0.0 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus zero. </p><pre><b><a name="0"> f0.0 fconstant finf ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus infinity. </p><pre><b><a name="0"> f1.0 fconstant f2.0 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push 2.0 </p><h3>Rounding Modes </h3><pre><b><a name="0">code FLOOR ( fs: f1 -- fs: f2 ) \ ANSI Floating </a></b></pre><p>Set rounding mode to round to -infinity. </p><pre><b><a name="0">code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating wxtra </a></b></pre><p>Set rounding mode to round to +infinity. </p><pre><b><a name="0">code FTRUNC ( fs: f1 -- fs: f2 ) \ W32F Floating extra </a></b></pre><p>Set rounding mode to truncate. </p><pre><b><a name="0">code FROUND ( fs: f1 -- fs: f2 ) \ ANSI Floating </a></b></pre><p>Set rounding mode to round to nearest. </p><h3>Integer to float coversion </h3><h3>Comparison operators </h3><h3>Maths operators </h3><h3>Output conversion. </h3><pre><b><a name="0">: PRECISION ( -- u ) \ ANSI Floating ext </a></b></pre><p>Return the number of significant digits currently used by (F.), (FE.), (FS.), F., FE., or FS. as u. </p><pre><b><a name="0">: SET-PRECISION ( u -- ) \ ANSI Floating ext </a></b></pre><p>Set the number of significant digits currently used by (F.), (FE.), (FS.), F., FE., or FS. to u. </p><pre><b><a name="0">: min-precision ( u -- ) \ W32F Floating extra </a></b></pre><p>Set the number of significant digits currently used by (F.), (FE.), (FS.), F., FE., or FS. to u if it is greater than the present setting. </p><h3>Format FP number to a buffer </h3><p>The following words are for formatting floating point numbers as counted strings in the buffer whose address supplied so they can be used for purposes other than printing the numbers to the console. The string is not null terminated. </p><pre><b><a name="0">: (F.) ( addr -- ) ( F: r -- ) \ W32F Floating extra </a></b></pre><p>Format the top number on the floating-point stack using fixed-point notation: </p><pre> [-] <digits>.<digits0> </pre><hr><p>Document $Id: p-float.htm,v 1.1 2006/01/24 09:13:21 georgeahubert Exp $</p> </body></html> |
From: Dirk B. <db...@us...> - 2006-01-22 10:51:54
|
Update of /cvsroot/win32forth/win32forth/src/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11268/src/lib Modified Files: excontrols.f Log Message: - Some more documenting of ExControls.f (still work in progress). Index: excontrols.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/lib/excontrols.f,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** excontrols.f 22 Jan 2006 10:44:16 -0000 1.8 --- excontrols.f 22 Jan 2006 10:51:15 -0000 1.9 *************** *** 386,391 **** \ *G Add a string to the list box of a combo box. If the combo box does not have the \ ** CBS_SORT style, the string is added to the end of the list. Otherwise, the string ! \ ** is inserted into the list, and the list is sorted. :Self drop ;M ! 0 CB_ADDSTRING SendMessage :M SetSelection: ( n -- ) --- 386,391 ---- \ *G Add a string to the list box of a combo box. If the combo box does not have the \ ** CBS_SORT style, the string is added to the end of the list. Otherwise, the string ! \ ** is inserted into the list, and the list is sorted. ! 0 CB_ADDSTRING SendMessage:Self drop ;M :M SetSelection: ( n -- ) |
From: Dirk B. <db...@us...> - 2006-01-22 10:44:25
|
Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9229/doc/classes Modified Files: Controls.htm Log Message: - Some more documenting of ExControls.f (still work in progress). Index: Controls.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Controls.htm,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Controls.htm 21 Jan 2006 09:01:47 -0000 1.4 --- Controls.htm 22 Jan 2006 10:44:14 -0000 1.5 *************** *** 1,19 **** ! <html> <head> ! <meta http-equiv="Content-Language" content="en-gb"> ! <meta name="GENERATOR" content="dexh00"> ! <meta name="ProgId" content="FrontPage.Editor.Document"> ! <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> ! <title> ! </title><style><!-- ! h1 { font-family: Tahoma; font-size: 24pt; font-weight: bold } ! h2 { font-family: Tahoma; font-size: 18pt; font-weight: bold } --> </style> </head> ! <body><h1 align="center"> ! <a href="mailto:win...@ya...?subject=DOC:Doc error in $Id$"> ! <img border="0" src="../TELLUS.gif" align="left" width="32" height="32"></a> ! <img border="0" src="../FORTHPRO.gif" ! width="32" height="32"> Win32Forth</h1> <hr /><h1>Controls -- Classes for standard windows controls. </h1><hr /><a name="EditControl"></a> --- 1,15 ---- ! <?xml version="1.0"?> ! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ! "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> ! <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> ! <meta http-equiv="Content-Type" content="text/xml; charset=iso-8859-1" /> ! <meta name="GENERATOR" content="DexH v03" /> ! <style type="text/css"> </style> + <title> + </title> </head> ! <body> <hr /><h1>Controls -- Classes for standard windows controls. </h1><hr /><a name="EditControl"></a> *************** *** 134,138 **** <h2>Dialog Window Class </h2><pre><b><a name="0">:CLASS DialogWindow <Super Window ! </a></b></pre><p>Base class for windows that contains controls. </p><pre><b><a name="0">;Class </a></b></pre><p>End of DialogWindow class --- 130,134 ---- <h2>Dialog Window Class </h2><pre><b><a name="0">:CLASS DialogWindow <Super Window ! </a></b></pre><p>Base class for windows that contain controls. </p><pre><b><a name="0">;Class </a></b></pre><p>End of DialogWindow class *************** *** 149,155 **** is created. </p><pre><b><a name="0">:M Enable: ( f -- ) ! </a></b></pre><p>Enable the control </p><pre><b><a name="0">:M Disable: ( -- ) ! </a></b></pre><p>Disable the control </p><pre><b><a name="0">:M ReadOnly: ( f -- ) </a></b></pre><p>Set or remove the read-only style of the edit control. --- 145,151 ---- is created. </p><pre><b><a name="0">:M Enable: ( f -- ) ! </a></b></pre><p>Enable the control. </p><pre><b><a name="0">:M Disable: ( -- ) ! </a></b></pre><p>Disable the control. </p><pre><b><a name="0">:M ReadOnly: ( f -- ) </a></b></pre><p>Set or remove the read-only style of the edit control. *************** *** 183,188 **** --- 179,188 ---- </p><pre><b><a name="0">:M NotModified: ( -- ) </a></b></pre><p>Depreacted method. Use <i> SetModify: </i> instead. + </p><pre><b><a name="0">:M Undo?: ( -- f ) + </a></b></pre><p>Check is there is an operation in the control's undo queue. </p><pre><b><a name="0">:M Undo: ( -- ) </a></b></pre><p>Undoes the last edit control operation in the control's undo queue. + </p><pre><b><a name="0">:M Redo?: ( -- f ) + </a></b></pre><p>Check is there is an operation in the control's redo queue. </p><pre><b><a name="0">:M Redo: ( -- ) </a></b></pre><p>Redoes the last edit control operation in the control's redo queue. *************** *** 199,203 **** </a></b></pre><p>Delete selected text. </p><pre><b><a name="0">:M SetFont: ( handle -- ) ! </a></b></pre><p>Set the font in the edit control. </p><pre><b><a name="0">:M SetTextLimit: ( n -- ) </a></b></pre><p>Set the text limit of an edit control. --- 199,203 ---- </a></b></pre><p>Delete selected text. </p><pre><b><a name="0">:M SetFont: ( handle -- ) ! </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">:M SetTextLimit: ( n -- ) </a></b></pre><p>Set the text limit of an edit control. *************** *** 243,247 **** <h2>MultiLineTextBox class </h2><pre><b><a name="0">:Class MultiLineTextBox <super TextBox ! </a></b></pre><p>MultiLineTextBox class </p><pre><b><a name="0">:M SetMargins: ( left right -- ) </a></b></pre><p>Sets the widths of the left and right margins for an edit control. --- 243,247 ---- <h2>MultiLineTextBox class </h2><pre><b><a name="0">:Class MultiLineTextBox <super TextBox ! </a></b></pre><p>Class for multi line text edit controls. </p><pre><b><a name="0">:M SetMargins: ( left right -- ) </a></b></pre><p>Sets the widths of the left and right margins for an edit control. *************** *** 274,278 **** <h2>RichEditControl class </h2><pre><b><a name="0">:Class RichEditControl <Super MultiLineTextBox ! </a></b></pre><p>RichEditControl class </p><pre><b><a name="0">:M GetSelText: ( addr -- n ) </a></b></pre><p>Retrieves the currently selected text from the edit control. --- 274,278 ---- <h2>RichEditControl class </h2><pre><b><a name="0">:Class RichEditControl <Super MultiLineTextBox ! </a></b></pre><p>Class for rich edit controls. </p><pre><b><a name="0">:M GetSelText: ( addr -- n ) </a></b></pre><p>Retrieves the currently selected text from the edit control. *************** *** 289,310 **** </a></b></pre><p>ComboBox control (enhanced Version of the ComboControl class) </p><pre><b><a name="0">:M InsertStringAt: ( lpszString posn -- ) ! </a></b></pre><p>insert string in specified position (0 based) </p><pre><b><a name="0">:M DeleteString: ( index -- ) ! </a></b></pre><p>delete string in specified position (0 based) </p><pre><b><a name="0">:M Clear: ( -- ) ! </a></b></pre><p>clears all strings from combo box </p><pre><b><a name="0">:M Find: ( lpszString -- index ) ! </a></b></pre><p>search the list for an item beginning with the string (case-insensitive) </p><pre><b><a name="0">:M FindExact: ( lpszString -- index ) ! </a></b></pre><p>find the first item that matches the string exactly (case-insensitive) </p><pre><b><a name="0">:M GetCount: ( -- n ) ! </a></b></pre><p>return count of items in list </p><pre><b><a name="0">:M SelectString: ( lpszString -- index ) ! </a></b></pre><p>select item beginning with string </p><pre><b><a name="0">:M GetStringAt: ( index -- a n ) ! </a></b></pre><p>return string of specified item ! </p><pre><b><a name="0">:M GetCurrent: ( -- index) </a></b></pre><p>return current selection item </p><pre><b><a name="0">;Class </a></b></pre><p>End of ComboBox class --- 289,384 ---- </a></b></pre><p>ComboBox control (enhanced Version of the ComboControl class) + </p><pre><b><a name="0">:M AddStyle: ( n -- ) + </a></b></pre><p>Set the style of the control. Must be done before the control + is created. + </p><pre><b><a name="0">:M SetDir: ( dirz$ attrib -- ) + </a></b></pre><p>Add the names of directories and files that match a specified string and + set of file attributes. CB_DIR can also add mapped drive letters to the list. + </p><p><i> attrib </i> Specifies the attributes of the files or directories to be added to + the combo box. This parameter can be one or more of the following values: + </p><table border="1"><tr><td>DDL_ARCHIVE + </td> + <td>Includes archived files. + </td> + </tr> + <tr><td>DDL_DIRECTORY + </td> + <td>Includes subdirectories, which are enclosed in square brackets ([ ]). + </td> + </tr> + <tr><td>DDL_DRIVES All + </td> + <td>mapped drives are added to the list. Drives are listed in the form [-x-], where x is the drive letter. + </td> + </tr> + <tr><td>DDL_EXCLUSIVE + </td> + <td>Includes only files with the specified attributes. By default, read-write files are listed even if DDL_READWRITE is not specified. + </td> + </tr> + <tr><td>DDL_HIDDEN + </td> + <td>Includes hidden files. + </td> + </tr> + <tr><td>DDL_READONLY + </td> + <td>Includes read-only files. + </td> + </tr> + <tr><td>DDL_READWRITE + </td> + <td>Includes read-write files with no additional attributes. This is the default. + </td> + </tr> + <tr><td>DDL_SYSTEM + </td> + <td>Includes system files. + </td> + </tr> + </table><p><i> dirz$ </i> specifies an absolute path, relative path, or file name. An absolute path + can begin with a drive letter (for example, d:\) or a UNC name (for example, \machinename\sharename). + If the string specifies a file name or directory that has the attributes specified by + the wParam parameter, the file name or directory is added to the list. If the file name + or directory name contains wildcard characters (? or *), all files or directories that + match the wildcard expression and have the attributes specified by the wParam parameter + are added to the list displayed in the combo box. + </p><pre><b><a name="0">:M AddStringTo: ( z"string" -- ) + </a></b></pre><p>Add a string to the list box of a combo box. If the combo box does not have the + CBS_SORT style, the string is added to the end of the list. Otherwise, the string + is inserted into the list, and the list is sorted. :Self drop ;M + </p><pre><b><a name="0">:M SetSelection: ( n -- ) + </a></b></pre><p>Select a string in the list of a combo box. + </p><pre><b><a name="0">:M GetSelectedString: ( -- addr cnt ) + </a></b></pre><p>Get the selected from the combo box. + Note: The string is returned in the global <i> NEW$ </i>. + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">:M InsertStringAt: ( lpszString posn -- ) ! </a></b></pre><p>Insert string at the specified position. ! </p><p><i> posn </i> specifies the zero-based index of the position at which to insert ! the string. If this parameter is -1, the string is added to the end of the list. ! </p><p><i> lpszString </i> is a null-terminated string to be inserted. </p><pre><b><a name="0">:M DeleteString: ( index -- ) ! </a></b></pre><p>Delete a string. ! </p><p><i> index </i> specifies the zero-based index of the string to delete. </p><pre><b><a name="0">:M Clear: ( -- ) ! </a></b></pre><p>Remove all strings from the combo box </p><pre><b><a name="0">:M Find: ( lpszString -- index ) ! </a></b></pre><p>Search the list for an item beginning with the string (case-insensitive) </p><pre><b><a name="0">:M FindExact: ( lpszString -- index ) ! </a></b></pre><p>Find the first item that matches the string exactly (case-insensitive) </p><pre><b><a name="0">:M GetCount: ( -- n ) ! </a></b></pre><p>Return count of items in list </p><pre><b><a name="0">:M SelectString: ( lpszString -- index ) ! </a></b></pre><p>Select item beginning with string </p><pre><b><a name="0">:M GetStringAt: ( index -- a n ) ! </a></b></pre><p>Return string of specified item. ! </p><pre><b><a name="0">:M GetCurrent: ( -- index ) </a></b></pre><p>return current selection item + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of ComboBox class *************** *** 323,326 **** --- 397,402 ---- </a></b></pre><p>ListBox control (single selection) (enhanced Version of the ListControl class) + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">:M AddString: ( lpszString -- ) </a></b></pre><p>add a new string to the list box list *************** *** 341,344 **** --- 417,424 ---- </p><pre><b><a name="0">:M GetState: ( index -- f) </a></b></pre><p>returns selection state of list item, tf=selected + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of ListBox class *************** *** 404,407 **** --- 484,491 ---- </p><pre><b><a name="0">:M GetRange: ( -- lower upper ) </a></b></pre><p>retrieve min & max limits + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of UpDownControl control *************** *** 413,416 **** --- 497,506 ---- </p><pre><b><a name="0">:M IsButtonChecked?: ( -- f ) </a></b></pre><p>send message to self through parent + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of CheckBox class *************** *** 420,423 **** --- 510,519 ---- </a></b></pre><p>Class for radio buttons (enhanced Version of the RadioControl class) + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of RadioButton class *************** *** 427,430 **** --- 523,532 ---- </a></b></pre><p>Class for push buttons (enhanced Version of the ButtonControl class) + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of PushButton class *************** *** 439,442 **** --- 541,550 ---- </h2><pre><b><a name="0">:Class Label <super StaticControl </a></b></pre><p>Class for static controls + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of Label class *************** *** 446,449 **** --- 554,559 ---- </a></b></pre><p>Base class for static control showing an image. This is an intern class; don't use it directly. + </p><pre><b><a name="0">:M SetFont: ( fhndl -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of StaticImage class *************** *** 488,494 **** </p><pre><b><a name="0">;Class </a></b></pre><p>End of StaticFrame class ! </p><hr><p>Document $Id$</p> ! </body></html> ! <pre><b><a name="0">:M +Value: ( n -- ) </a></b></pre><p>increases the value of progress bar by specified increment </p><pre><b><a name="0">:M GetValue: ( -- n ) --- 598,619 ---- </p><pre><b><a name="0">;Class </a></b></pre><p>End of StaticFrame class ! </p><a name="GroupBox"></a> ! <h2>GroupBox class ! </h2><pre><b><a name="0">:Class GroupBox <super GroupControl ! </a></b></pre><p>GroupBox control ! (enhanced Version of the GroupControl class) ! </p><pre><b><a name="0">:M Setfont: ( handle -- ) ! </a></b></pre><p>Set the font in the control. ! </p><pre><b><a name="0">:M Enable: ( f -- ) ! </a></b></pre><p>Enable the control. ! </p><pre><b><a name="0">:M Disable: ( -- ) ! </a></b></pre><p>Disable the control. ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of GroupBox class ! </p><a name="Progressbar"></a> ! <h2>Progressbar class ! </h2><pre><b><a name="0">:Class Progressbar <Super Control ! </a></b></pre><p>Progressbar control ! </p><pre><b><a name="0">:M +Value: ( n -- ) </a></b></pre><p>increases the value of progress bar by specified increment </p><pre><b><a name="0">:M GetValue: ( -- n ) *************** *** 504,507 **** --- 629,644 ---- </p><pre><b><a name="0">:M StepIt: ( -- ) </a></b></pre><p>advances the current position by the step increment + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of Progressbar class + </p><a name="SmoothProgressbar"></a> + <h2>SmoothProgressbar class + </h2><pre><b><a name="0">:Class SmoothProgressbar <Super Progressbar + </a></b></pre><p>SmoothProgressbar control + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of SmoothProgressbar class + </p><a name="Trackbar"></a> + <h2>Trackbar class + </h2><pre><b><a name="0">:Class Trackbar <Super Control + </a></b></pre><p>Trackbar control (horizontal) </p><pre><b><a name="0">:M GetLineSize: ( -- n ) </a></b></pre><p>how much the value changes for "line" up/down *************** *** 526,529 **** --- 663,670 ---- </p><pre><b><a name="0">:M GetThumbLength: ( -- n ) </a></b></pre><p>retrieves the length of the slider in a trackbar + </p><pre><b><a name="0">:M SetThumbLength: ( n -- ) + </a></b></pre><p>sets the length of the slider in a trackbar + </p><pre><b><a name="0">:M GetChannelRect: ( lpRect) + </a></b></pre><p>retrieves the bounding rectangle for the trackbar's channel </p><pre><b><a name="0">:M GetThumbRect: ( lpRect) </a></b></pre><p>retrieves the bounding rectangle for the slider *************** *** 540,543 **** --- 681,700 ---- </p><pre><b><a name="0">:M ClearSel: ( f -- ) </a></b></pre><p>clears the current selection in a trackbar, tf=redraw + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of Trackbar class + </p><a name="VTrackBar"></a> + <h2>VTrackBar class + </h2><pre><b><a name="0">:Class VTrackBar <super TrackBar + </a></b></pre><p>Trackbar control (vertical) + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of VTrackBar class + </p><a name="Statusbar"></a> + <h2>Statusbar class + </h2><pre><b><a name="0">:Class Statusbar <Super Control + </a></b></pre><p>Statusbar control </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>override if another style is needed *************** *** 550,553 **** --- 707,711 ---- </p><pre><b><a name="0">:M MinHeight: ( #pixels -- ) </a></b></pre><p>set minimum height of text region (not including borders) + </p><p>NULL MinHeight: self appears to reset to the default height statusbar </p><pre><b><a name="0">:M GetBorders: ( -- hWidth vWidth divWidth) </a></b></pre><p>returns the border widths in pixels *************** *** 558,561 **** --- 716,727 ---- </p><pre><b><a name="0">:M Clear: ( -- ) </a></b></pre><p>clears text from status window + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of Statusbar class + </p><a name="MultiStatusbar"></a> + <h2>MultiStatusbar class + </h2><pre><b><a name="0">:Class MultiStatusbar <Super Statusbar + </a></b></pre><p>Multipart Statusbar control </p><pre><b><a name="0">:M SetParts: ( aWidths nParts -- ) </a></b></pre><p>width table address and count *************** *** 568,579 **** </p><pre><b><a name="0">:M SetText: ( szText n -- ) </a></b></pre><p>set text in n'th part </p><pre><b><a name="0">:M SetIcon: ( hIcon -- ) </a></b></pre><p>set the icon image to use with the button </p><pre><b><a name="0">:M GetIcon: ( -- hIcon) </a></b></pre><p>get the icon image used with the button </p><pre><b><a name="0">:M SetFont: ( hndl -- ) ! </a></b></pre><p>dummy for ForthForm </p><pre><b><a name="0">:M MinSize: ( -- x y) </a></b></pre><p>return minimum size required to display a month </p><pre><b><a name="0">:M SetCustomFormat: ( z"format" -- ) </a></b></pre><p>set the display format for time or date --- 734,817 ---- </p><pre><b><a name="0">:M SetText: ( szText n -- ) </a></b></pre><p>set text in n'th part + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of MultiStatusbar class + </p><a name="VertButtonBar"></a> + <h2>VertButtonBar class + </h2><pre><b><a name="0">:Class VertButtonBar <super VButtonBar + </a></b></pre><p>VertButtonBar control + </p><pre><b><a name="0">:M SetFont: { fonthndl \ hb1 -- } + </a></b></pre><p>Set the font in the control. + </p><pre><b><a name="0">:M Enable: { flag \ hb1 -- } + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of VertButtonBar class + </p><a name="HorizButtonBar"></a> + <h2>HorizButtonBar class + </h2><pre><b><a name="0">:Class HorizButtonBar <super HButtonBar + </a></b></pre><p>HorizButtonBar control + </p><pre><b><a name="0">:M SetFont: { fonthndl \ hb1 -- } + </a></b></pre><p>Set the font in the control. + </p><pre><b><a name="0">:M Enable: { flag \ hb1 -- } + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of HorizButtonBar class + </p><a name="BitmapButton"></a> + <h2>BitmapButton class + </h2><pre><b><a name="0">:Class BitmapButton <Super PushButton + </a></b></pre><p>BitmapButton control + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of BitmapButton class + </p><a name="IconButton"></a> + <h2>IconButton class + </h2><pre><b><a name="0">:Class IconButton <Super PushButton + </a></b></pre><p>IconButton control </p><pre><b><a name="0">:M SetIcon: ( hIcon -- ) </a></b></pre><p>set the icon image to use with the button </p><pre><b><a name="0">:M GetIcon: ( -- hIcon) </a></b></pre><p>get the icon image used with the button + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of IconButton class + </p><a name="ScrollBar"></a> + <h2>ScrollBar class + </h2><pre><b><a name="0">|Class ScrollBar <Super Control + </a></b></pre><p>Scrollbar control + Note: this is an internal class. Don't use it directly. </p><pre><b><a name="0">:M SetFont: ( hndl -- ) ! </a></b></pre><p>Set the font in the control. ! Note that this is a dummy method in this class. ! </p><pre><b><a name="0">:M Enable: ( f -- ) ! </a></b></pre><p>Enable the control. ! </p><pre><b><a name="0">:M Disable: ( -- ) ! </a></b></pre><p>Disable the control. ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of ScrollBar class ! </p><a name="VertScroll"></a> ! <h2>VertScroll class ! </h2><pre><b><a name="0">:Class VertScroll <Super ScrollBar ! </a></b></pre><p>Scrollbar control (vertical) ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of VertScroll class ! </p><a name="SizeBox"></a> ! <h2>SizeBox class ! </h2><pre><b><a name="0">:Class SizeBox <Super ScrollBar ! </a></b></pre><p>Size box control ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of SizeBox class ! </p><a name="MonthCalendar"></a> ! <h2>MonthCalendar class ! </h2><pre><b><a name="0">:Class MonthCalendar <Super Control ! </a></b></pre><p>Month Calendar control </p><pre><b><a name="0">:M MinSize: ( -- x y) </a></b></pre><p>return minimum size required to display a month + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of MonthCalendar class + </p><a name="DateTimePicker"></a> + <h2>DateTimePicker class + </h2><pre><b><a name="0">:Class DateTimePicker <Super Control + </a></b></pre><p>Date and Time Picker control </p><pre><b><a name="0">:M SetCustomFormat: ( z"format" -- ) </a></b></pre><p>set the display format for time or date *************** *** 584,587 **** --- 822,831 ---- </p><pre><b><a name="0">:M GetDate: ( -- day month year ) </a></b></pre><p>get user selected date + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of DateTimePicker class + </p><a name="TabControlr"></a> + <h2>TabControl class + </h2><pre><b><a name="0">:Class TabControl <Super Control + </a></b></pre><p>Tab control </p><pre><b><a name="0">:M InsertTab: ( index -- ) </a></b></pre><p>tc_item mask and other members must be set *************** *** 594,599 **** </p><pre><b><a name="0">:M WindowSize: ( 0 0 width height -- x y w h ) </a></b></pre><p>given display area return window size required </p><pre><b><a name="0">:M WindowTitle: ( -- null$ ) </a></b></pre><p>SintillaControl asks for window title of parent ! </p><hr><p>Document $Id$</p> </body></html> --- 838,851 ---- </p><pre><b><a name="0">:M WindowSize: ( 0 0 width height -- x y w h ) </a></b></pre><p>given display area return window size required + </p><pre><b><a name="0">:M Enable: ( f -- ) + </a></b></pre><p>Enable the control. + </p><pre><b><a name="0">:M Disable: ( -- ) + </a></b></pre><p>Disable the control. + </p><pre><b><a name="0">:M Setfont: ( handle -- ) + </a></b></pre><p>Set the font in the control. </p><pre><b><a name="0">:M WindowTitle: ( -- null$ ) </a></b></pre><p>SintillaControl asks for window title of parent ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of TabControl class ! </p><hr /> </body></html> |
From: Dirk B. <db...@us...> - 2006-01-22 10:44:25
|
Update of /cvsroot/win32forth/win32forth/src/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9229/src/lib Modified Files: excontrols.f Log Message: - Some more documenting of ExControls.f (still work in progress). Index: excontrols.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/lib/excontrols.f,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** excontrols.f 21 Jan 2006 09:01:47 -0000 1.7 --- excontrols.f 22 Jan 2006 10:44:16 -0000 1.8 *************** *** 57,65 **** :M Enable: ( f -- ) ! \ *G Enable the control ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! \ *G Disable the control false Enable: self ;M --- 57,65 ---- :M Enable: ( f -- ) ! \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! \ *G Disable the control. false Enable: self ;M *************** *** 96,100 **** :M RemoveSelection: ( -- ) \ *G Remove any selection. ! 0 -1 SetSelection: self DROP ;M :M GetCursor: ( -- n ) --- 96,100 ---- :M RemoveSelection: ( -- ) \ *G Remove any selection. ! 0 -1 SetSelection: self ;M :M GetCursor: ( -- n ) *************** *** 121,145 **** 0 0 EM_SETMODIFY SendMessage:Self drop ;M DEPRECATED :M Undo: ( -- ) \ *G Undoes the last edit control operation in the control's undo queue. ! 0 0 EM_CANUNDO SendMessage:Self ! IF 0 0 EM_UNDO SendMessage:Self drop ! ELSE MB_OK ! Z" Undo notification" ! Z" Nothing to undo." ! GetHandle: self Call MessageBox DROP ! THEN ! ;M :M Redo: ( -- ) \ *G Redoes the last edit control operation in the control's redo queue. ! 0 0 EM_CANREDO SendMessage:Self ! IF 0 0 EM_REDO SendMessage:Self drop ! ELSE MB_OK ! Z" Redo notification" ! Z" Nothing to redo." ! GetHandle: self Call MessageBox DROP ! THEN ! ;M :M Cut: ( -- ) --- 121,151 ---- 0 0 EM_SETMODIFY SendMessage:Self drop ;M DEPRECATED + :M Undo?: ( -- f ) + \ *G Check is there is an operation in the control's undo queue. + 0 0 EM_CANUNDO SendMessage:Self ;M + :M Undo: ( -- ) \ *G Undoes the last edit control operation in the control's undo queue. ! Undo?: self ! IF 0 0 EM_UNDO SendMessage:Self drop ! ELSE MB_OK ! Z" Undo notification" ! Z" Nothing to undo." ! GetHandle: self Call MessageBox DROP ! THEN ;M ! ! :M Redo?: ( -- f ) ! \ *G Check is there is an operation in the control's redo queue. ! 0 0 EM_CANREDO SendMessage:Self ;M :M Redo: ( -- ) \ *G Redoes the last edit control operation in the control's redo queue. ! Redo?: self ! IF 0 0 EM_REDO SendMessage:Self drop ! ELSE MB_OK ! Z" Redo notification" ! Z" Nothing to redo." ! GetHandle: self Call MessageBox DROP ! THEN ;M :M Cut: ( -- ) *************** *** 163,167 **** :M SetFont: ( handle -- ) ! \ *G Set the font in the edit control. 1 swap WM_SETFONT SendMessage:Self drop ;M --- 169,173 ---- :M SetFont: ( handle -- ) ! \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 228,232 **** \ ------------------------------------------------------------------------ :Class MultiLineTextBox <super TextBox ! \ *G MultiLineTextBox class CREATE 'tabs 16 , \ tabstops in dialog-box units (32 default) --- 234,238 ---- \ ------------------------------------------------------------------------ :Class MultiLineTextBox <super TextBox ! \ *G Class for multi line text edit controls. CREATE 'tabs 16 , \ tabstops in dialog-box units (32 default) *************** *** 255,259 **** :M SelectAll: ( -- ) \ *G Select all the text in the multiline edit control. ! -1 0 SetSelection: self DROP ;M :M GetLine: ( -- n ) --- 261,265 ---- :M SelectAll: ( -- ) \ *G Select all the text in the multiline edit control. ! -1 0 SetSelection: self ;M :M GetLine: ( -- n ) *************** *** 311,315 **** \ ------------------------------------------------------------------------ :Class RichEditControl <Super MultiLineTextBox ! \ *G RichEditControl class :M Start: ( Parent -- ) --- 317,321 ---- \ ------------------------------------------------------------------------ :Class RichEditControl <Super MultiLineTextBox ! \ *G Class for rich edit controls. :M Start: ( Parent -- ) *************** *** 350,365 **** :M AddStyle: ( n -- ) to style ;M ! :M SetDir: { dirz$ attrib -- } ! dirz$ attrib CB_DIR SendMessage:Self drop ;M :M AddStringTo: ( z"string" -- ) ! 0 CB_ADDSTRING SendMessage:Self drop ;M :M SetSelection: ( n -- ) 0 swap CB_SETCURSEL SendMessage:Self drop ;M :M GetSelectedString: ( -- addr cnt ) 0 0 CB_GETCURSEL SendMessage:Self new$ dup rot CB_GETLBTEXT SendMessage:Self --- 356,399 ---- :M AddStyle: ( n -- ) + \ *G Set the style of the control. Must be done before the control + \ ** is created. to style ;M ! :M SetDir: ( dirz$ attrib -- ) ! \ *G Add the names of directories and files that match a specified string and ! \ ** set of file attributes. CB_DIR can also add mapped drive letters to the list. ! \ *P \i attrib \d Specifies the attributes of the files or directories to be added to ! \ ** the combo box. This parameter can be one or more of the following values: ! \ *L ! \ *| DDL_ARCHIVE | Includes archived files. | ! \ *| DDL_DIRECTORY | Includes subdirectories, which are enclosed in square brackets ([ ]). | ! \ *| DDL_DRIVES All | mapped drives are added to the list. Drives are listed in the form [-x-], where x is the drive letter. | ! \ *| DDL_EXCLUSIVE | Includes only files with the specified attributes. By default, read-write files are listed even if DDL_READWRITE is not specified. | ! \ *| DDL_HIDDEN | Includes hidden files. | ! \ *| DDL_READONLY | Includes read-only files. | ! \ *| DDL_READWRITE | Includes read-write files with no additional attributes. This is the default. | ! \ *| DDL_SYSTEM | Includes system files. | ! \ *P \i dirz$ \d specifies an absolute path, relative path, or file name. An absolute path ! \ ** can begin with a drive letter (for example, d:\) or a UNC name (for example, \\machinename\sharename). ! \ ** If the string specifies a file name or directory that has the attributes specified by ! \ ** the wParam parameter, the file name or directory is added to the list. If the file name ! \ ** or directory name contains wildcard characters (? or *), all files or directories that ! \ ** match the wildcard expression and have the attributes specified by the wParam parameter ! \ ** are added to the list displayed in the combo box. ! CB_DIR SendMessage:Self drop ;M :M AddStringTo: ( z"string" -- ) ! \ *G Add a string to the list box of a combo box. If the combo box does not have the ! \ ** CBS_SORT style, the string is added to the end of the list. Otherwise, the string ! \ ** is inserted into the list, and the list is sorted. :Self drop ;M ! 0 CB_ADDSTRING SendMessage :M SetSelection: ( n -- ) + \ *G Select a string in the list of a combo box. 0 swap CB_SETCURSEL SendMessage:Self drop ;M :M GetSelectedString: ( -- addr cnt ) + \ *G Get the selected from the combo box. + \ ** Note: The string is returned in the global \i NEW$ \d. 0 0 CB_GETCURSEL SendMessage:Self new$ dup rot CB_GETLBTEXT SendMessage:Self *************** *** 367,374 **** :M Setfont: ( handle -- ) 1 swap WM_SETFONT SendMessage:Self drop ;M :M InsertStringAt: ( lpszString posn -- ) ! \ *G insert string in specified position (0 based) CB_INSERTSTRING SendMessage:Self CB_ERR OVER = SWAP CB_ERRSPACE = OR --- 401,412 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M :M InsertStringAt: ( lpszString posn -- ) ! \ *G Insert string at the specified position. ! \ *P \i posn \d specifies the zero-based index of the position at which to insert ! \ ** the string. If this parameter is -1, the string is added to the end of the list. ! \ *P \i lpszString \d is a null-terminated string to be inserted. CB_INSERTSTRING SendMessage:Self CB_ERR OVER = SWAP CB_ERRSPACE = OR *************** *** 376,416 **** :M DeleteString: ( index -- ) ! \ *G delete string in specified position (0 based) 0 SWAP CB_DELETESTRING SendMessage:Self DROP ;M :M Clear: ( -- ) ! \ *G clears all strings from combo box 0 0 CB_RESETCONTENT SendMessage:Self DROP ;M :M Find: ( lpszString -- index ) ! \ *G search the list for an item beginning with the string (case-insensitive) -1 CB_FINDSTRING SendMessage:Self ;M :M FindExact: ( lpszString -- index ) ! \ *G find the first item that matches the string exactly (case-insensitive) -1 CB_FINDSTRINGEXACT SendMessage:Self ;M :M GetCount: ( -- n ) ! \ *G return count of items in list 0 0 CB_GETCOUNT SendMessage:Self ;M :M SelectString: ( lpszString -- index ) ! \ *G select item beginning with string -1 CB_SELECTSTRING SendMessage:Self ;M :M GetStringAt: ( index -- a n ) ! \ *G return string of specified item \ TODO: Don't use HERE here !!! HERE SWAP CB_GETLBTEXT SendMessage:Self HERE SWAP ;M ! :M GetCurrent: ( -- index) \ *G return current selection item 0 0 CB_GETCURSEL SendMessage:Self ;M :M Enable: ( f -- ) ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) false Enable: self ;M --- 414,457 ---- :M DeleteString: ( index -- ) ! \ *G Delete a string. ! \ *P \i index \d specifies the zero-based index of the string to delete. 0 SWAP CB_DELETESTRING SendMessage:Self DROP ;M :M Clear: ( -- ) ! \ *G Remove all strings from the combo box 0 0 CB_RESETCONTENT SendMessage:Self DROP ;M :M Find: ( lpszString -- index ) ! \ *G Search the list for an item beginning with the string (case-insensitive) -1 CB_FINDSTRING SendMessage:Self ;M :M FindExact: ( lpszString -- index ) ! \ *G Find the first item that matches the string exactly (case-insensitive) -1 CB_FINDSTRINGEXACT SendMessage:Self ;M :M GetCount: ( -- n ) ! \ *G Return count of items in list 0 0 CB_GETCOUNT SendMessage:Self ;M :M SelectString: ( lpszString -- index ) ! \ *G Select item beginning with string -1 CB_SELECTSTRING SendMessage:Self ;M :M GetStringAt: ( index -- a n ) ! \ *G Return string of specified item. \ TODO: Don't use HERE here !!! HERE SWAP CB_GETLBTEXT SendMessage:Self HERE SWAP ;M ! :M GetCurrent: ( -- index ) \ *G return current selection item 0 0 CB_GETCURSEL SendMessage:Self ;M :M Enable: ( f -- ) ! \ *G Enable the control. ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 480,483 **** --- 521,525 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 528,534 **** --- 570,578 ---- :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 687,693 **** --- 731,739 ---- :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 733,743 **** :M Enable: ( f -- ) ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! false Enable: self ! ;M :M Setfont: ( handle -- ) 1 swap WM_SETFONT SendMessage:Self drop ;M --- 779,791 ---- :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! \ *G Disable the control. ! false Enable: self ;M :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 781,790 **** --- 829,841 ---- :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 814,823 **** --- 865,877 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 859,868 **** --- 913,925 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 891,894 **** --- 948,952 ---- :M SetFont: ( fhndl -- ) + \ *G Set the font in the control. drop ;M *************** *** 983,991 **** \ *G End of StaticFrame class - \ *Z - \ ------------------------------------------------------------------------ \ ------------------------------------------------------------------------ :Class GroupBox <super GroupControl int style --- 1041,1051 ---- \ *G End of StaticFrame class \ ------------------------------------------------------------------------ + \ *W <a name="GroupBox"></a> + \ *S GroupBox class \ ------------------------------------------------------------------------ :Class GroupBox <super GroupControl + \ *G GroupBox control + \ ** (enhanced Version of the GroupControl class) int style *************** *** 1003,1019 **** --- 1063,1086 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M ;Class + \ *G End of GroupBox class \ ------------------------------------------------------------------------ + \ *W <a name="Progressbar"></a> + \ *S Progressbar class \ ------------------------------------------------------------------------ :Class Progressbar <Super Control + \ *G Progressbar control int style *************** *** 1067,1074 **** --- 1134,1145 ---- ;Class + \ *G End of Progressbar class \ ------------------------------------------------------------------------ + \ *W <a name="SmoothProgressbar"></a> + \ *S SmoothProgressbar class \ ------------------------------------------------------------------------ :Class SmoothProgressbar <Super Progressbar + \ *G SmoothProgressbar control :M WindowStyle: ( -- style) *************** *** 1079,1086 **** ;Class \ ------------------------------------------------------------------------ \ ------------------------------------------------------------------------ ! :Class Trackbar <Super Control \ horizontal int style --- 1150,1161 ---- ;Class + \ *G End of SmoothProgressbar class \ ------------------------------------------------------------------------ + \ *W <a name="Trackbar"></a> + \ *S Trackbar class \ ------------------------------------------------------------------------ ! :Class Trackbar <Super Control ! \ *G Trackbar control (horizontal) int style *************** *** 1156,1168 **** 0 0 TBM_GETTHUMBLENGTH SendMessage:Self ;M - \ sets the length of the slider in a trackbar :M SetThumbLength: ( n -- ) 0 SWAP TBM_SETTHUMBLENGTH SendMessage:Self DROP ;M - \ retrieves the bounding rectangle for the trackbar's channel :M GetChannelRect: ( lpRect) 0 TBM_GETCHANNELRECT SendMessage:Self DROP ;M - \ retrieves the bounding rectangle for the slider :M GetThumbRect: ( lpRect) \ *G retrieves the bounding rectangle for the slider --- 1231,1242 ---- 0 0 TBM_GETTHUMBLENGTH SendMessage:Self ;M :M SetThumbLength: ( n -- ) + \ *G sets the length of the slider in a trackbar 0 SWAP TBM_SETTHUMBLENGTH SendMessage:Self DROP ;M :M GetChannelRect: ( lpRect) + \ *G retrieves the bounding rectangle for the trackbar's channel 0 TBM_GETCHANNELRECT SendMessage:Self DROP ;M :M GetThumbRect: ( lpRect) \ *G retrieves the bounding rectangle for the slider *************** *** 1206,1219 **** :M Enable: ( f -- ) ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! false Enable: self ;M ;Class \ ------------------------------------------------------------------------ \ ------------------------------------------------------------------------ :Class VTrackBar <super TrackBar :M WindowStyle: ( -- style ) --- 1280,1299 ---- :M Enable: ( f -- ) ! \ *G Enable the control. ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) ! \ *G Disable the control. ! false Enable: self ;M ;Class + \ *G End of Trackbar class \ ------------------------------------------------------------------------ + \ *W <a name="VTrackBar"></a> + \ *S VTrackBar class \ ------------------------------------------------------------------------ :Class VTrackBar <super TrackBar + \ *G Trackbar control (vertical) :M WindowStyle: ( -- style ) *************** *** 1221,1229 **** --- 1301,1314 ---- ;Class + \ *G End of VTrackBar class warning off + \ ------------------------------------------------------------------------ + \ *W <a name="Statusbar"></a> + \ *S Statusbar class \ ------------------------------------------------------------------------ :Class Statusbar <Super Control + \ *G Statusbar control INT BorderStyle \ style of border to use *************** *** 1266,1270 **** :M MinHeight: ( #pixels -- ) \ *G set minimum height of text region (not including borders) ! \ +p NULL MinHeight: self appears to reset to the default height statusbar 0 SWAP SB_SETMINHEIGHT SendMessage:Self DROP ;M --- 1351,1355 ---- :M MinHeight: ( #pixels -- ) \ *G set minimum height of text region (not including borders) ! \ *P NULL MinHeight: self appears to reset to the default height statusbar 0 SWAP SB_SETMINHEIGHT SendMessage:Self DROP ;M *************** *** 1290,1293 **** --- 1375,1379 ---- :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 1296,1304 **** nip swap - nip ;M ;Class \ ------------------------------------------------------------------------ ! \ Multipart Statusbar Class \ ------------------------------------------------------------------------ :Class MultiStatusbar <Super Statusbar INT nParts \ number of parts in statusbar --- 1382,1393 ---- nip swap - nip ;M ;Class + \ *G End of Statusbar class \ ------------------------------------------------------------------------ ! \ *W <a name="MultiStatusbar"></a> ! \ *S MultiStatusbar class \ ------------------------------------------------------------------------ :Class MultiStatusbar <Super Statusbar + \ *G Multipart Statusbar control INT nParts \ number of parts in statusbar *************** *** 1334,1344 **** --- 1423,1439 ---- ;Class + \ *G End of MultiStatusbar class + warning on \ ------------------------------------------------------------------------ + \ *W <a name="VertButtonBar"></a> + \ *S VertButtonBar class \ ------------------------------------------------------------------------ :Class VertButtonBar <super VButtonBar + \ *G VertButtonBar control :M SetFont: { fonthndl \ hb1 -- } + \ *G Set the font in the control. hbb to hb1 begin hb1 *************** *** 1348,1351 **** --- 1443,1447 ---- :M Enable: { flag \ hb1 -- } + \ *G Enable the control. hbb to hb1 begin hb1 *************** *** 1354,1362 **** --- 1450,1469 ---- repeat ;M + :M Disable: ( -- ) + \ *G Disable the control. + false Enable: self ;M + ;Class + \ *G End of VertButtonBar class + \ ------------------------------------------------------------------------ + \ *W <a name="HorizButtonBar"></a> + \ *S HorizButtonBar class + \ ------------------------------------------------------------------------ :Class HorizButtonBar <super HButtonBar + \ *G HorizButtonBar control :M SetFont: { fonthndl \ hb1 -- } + \ *G Set the font in the control. hbb to hb1 begin hb1 *************** *** 1366,1369 **** --- 1473,1477 ---- :M Enable: { flag \ hb1 -- } + \ *G Enable the control. hbb to hb1 begin hb1 *************** *** 1372,1380 **** --- 1480,1496 ---- repeat ;M + :M Disable: ( -- ) + \ *G Disable the control. + false Enable: self ;M + ;Class + \ *G End of HorizButtonBar class \ ------------------------------------------------------------------------ + \ *W <a name="BitmapButton"></a> + \ *S BitmapButton class \ ------------------------------------------------------------------------ :Class BitmapButton <Super PushButton + \ *G BitmapButton control int hbitmap \ bitmap handle for button *************** *** 1427,1434 **** --- 1543,1554 ---- ;Class + \ *G End of BitmapButton class \ ------------------------------------------------------------------------ + \ *W <a name="IconButton"></a> + \ *S IconButton class \ ------------------------------------------------------------------------ :Class IconButton <Super PushButton + \ *G IconButton control int hicon *************** *** 1483,1490 **** --- 1603,1615 ---- ;Class + \ *G End of IconButton class \ ------------------------------------------------------------------------ + \ *W <a name="ScrollBar"></a> + \ *S ScrollBar class \ ------------------------------------------------------------------------ |Class ScrollBar <Super Control + \ *G Scrollbar control + \ ** Note: this is an internal class. Don't use it directly. int style *************** *** 1552,1562 **** :M SetFont: ( hndl -- ) ! \ *G dummy for ForthForm drop ;M :M Enable: ( f -- ) ID EnableDlgItem: parent ;M :M Disable: ( -- ) false Enable: self ;M --- 1677,1690 ---- :M SetFont: ( hndl -- ) ! \ *G Set the font in the control. ! \ ** Note that this is a dummy method in this class. drop ;M :M Enable: ( f -- ) + \ *G Enable the control. ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M *************** *** 1569,1576 **** --- 1697,1708 ---- ;Class + \ *G End of ScrollBar class \ ------------------------------------------------------------------------ + \ *W <a name="VertScroll"></a> + \ *S VertScroll class \ ------------------------------------------------------------------------ :Class VertScroll <Super ScrollBar + \ *G Scrollbar control (vertical) :M WindowStyle: ( -- style ) *************** *** 1578,1585 **** --- 1710,1721 ---- ;Class + \ *G End of VertScroll class \ ------------------------------------------------------------------------ + \ *W <a name="SizeBox"></a> + \ *S SizeBox class \ ------------------------------------------------------------------------ :Class SizeBox <Super ScrollBar + \ *G Size box control :M WindowStyle: ( -- style ) *************** *** 1587,1590 **** --- 1723,1727 ---- ;Class + \ *G End of SizeBox class #IFNDEF wYear *************** *** 1616,1621 **** --- 1753,1761 ---- \ ------------------------------------------------------------------------ + \ *W <a name="MonthCalendar"></a> + \ *S MonthCalendar class \ ------------------------------------------------------------------------ :Class MonthCalendar <Super Control + \ *G Month Calendar control Comment: *************** *** 1700,1707 **** --- 1840,1851 ---- wday w@ wmonth w@ wyear w@ ;M ;Class + \ *G End of MonthCalendar class \ ------------------------------------------------------------------------ + \ *W <a name="DateTimePicker"></a> + \ *S DateTimePicker class \ ------------------------------------------------------------------------ :Class DateTimePicker <Super Control + \ *G Date and Time Picker control int style *************** *** 1848,1855 **** --- 1992,2003 ---- ;Class + \ *G End of DateTimePicker class \ ------------------------------------------------------------------------ + \ *W <a name="TabControlr"></a> + \ *S TabControl class \ ------------------------------------------------------------------------ :Class TabControl <Super Control + \ *G Tab control Record: tc_Item *************** *** 2032,2041 **** :M Enable: ( f -- ) ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) false Enable: self ;M :M Setfont: ( handle -- ) 1 swap WM_SETFONT SendMessage:Self drop ;M --- 2180,2192 ---- :M Enable: ( f -- ) ! \ *G Enable the control. ! ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control. false Enable: self ;M :M Setfont: ( handle -- ) + \ *G Set the font in the control. 1 swap WM_SETFONT SendMessage:Self drop ;M *************** *** 2045,2048 **** --- 2196,2200 ---- ;Class + \ *G End of TabControl class MODULE |
From: Dirk B. <db...@us...> - 2006-01-22 10:44:25
|
Update of /cvsroot/win32forth/win32forth/src/tools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9229/src/tools Modified Files: DexH.f Log Message: - Some more documenting of ExControls.f (still work in progress). Index: DexH.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/tools/DexH.f,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DexH.f 24 Dec 2005 11:53:35 -0000 1.2 --- DexH.f 22 Jan 2006 10:44:16 -0000 1.3 *************** *** 253,257 **** end closeout line BL _parse \ get folder ! Prepend<home>\ "chdir \ set current directory 2drop ; --- 253,257 ---- end closeout line BL _parse \ get folder ! \in-system-ok Prepend<home>\ "chdir \ set current directory 2drop ; |
From: Dirk B. <db...@us...> - 2006-01-22 10:44:24
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9229/src Modified Files: CONTROLS.F Log Message: - Some more documenting of ExControls.f (still work in progress). Index: CONTROLS.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/CONTROLS.F,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** CONTROLS.F 17 Jan 2006 17:52:00 -0000 1.6 --- CONTROLS.F 22 Jan 2006 10:44:16 -0000 1.7 *************** *** 356,360 **** \ *S Dialog Window Class :CLASS DialogWindow <Super Window ! \ *G Base class for windows that contains controls. :M ClassInit: ( -- ) --- 356,360 ---- \ *S Dialog Window Class :CLASS DialogWindow <Super Window ! \ *G Base class for windows that contain controls. :M ClassInit: ( -- ) |
From: Dirk B. <db...@us...> - 2006-01-22 10:44:24
|
Update of /cvsroot/win32forth/win32forth/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9229/doc Modified Files: p-classes.htm Log Message: - Some more documenting of ExControls.f (still work in progress). Index: p-classes.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/p-classes.htm,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** p-classes.htm 15 Jan 2006 09:25:49 -0000 1.9 --- p-classes.htm 22 Jan 2006 10:44:16 -0000 1.10 *************** *** 42,58 **** <h2>Controls</h2> <ul> ! <li><a href="./classes/Control.htm">Control</a> Base class for standard window controls.</li> ! <li><a href="./classes/Controls.htm#EditControl">EditControl</a> Class for text edit controls.</li> ! <li><a href="./classes/Controls.htm#ComboControl">ComboControl</a> Class for editable combo box controls.</li> ! <li><a href="./classes/Controls.htm#ListControl">ListControl</a> Class for select only combo box controls.</li> ! <li><a href="./classes/Controls.htm#GroupControl">GroupControl</a> Class for group controls.</li> ! <li><a href="./classes/Controls.htm#StaticControl">StaticControl</a> Class for static controls.</li> ! <li><a href="./classes/Controls.htm#CheckControl">CheckControl</a> Class for check box controls.</li> ! <li><a href="./classes/Controls.htm#RadioControl">RadioControl</a> Class for radio button controls.</li> ! <li><a href="./classes/Controls.htm#ButtonControl">ButtonControl</a> Class for push button controls.</li> </ul> <ul> ! <li><a href="./classes/AXControl.htm">AXControl</a> Base class for ActiveX controls.</li> ! <li><a href="./classes/HTMLControl.htm">HTMLControl</a> HTML control class.</li> </ul> --- 42,101 ---- <h2>Controls</h2> <ul> ! <li><a href="./classes/Control.htm">Control</a> Base class for standard window controls.</li> ! <h3>Edit controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#EditControl">EditControl</a> Class for text edit controls.</li> ! <li><a href="./classes/Controls.htm#TextBox">TextBox</a> Enhanced Version of the EditControl class.</li> ! <li><a href="./classes/Controls.htm#PassWordBox">PassWordBox</a> Class for text edit controls. All characters ! in the control are displayed as an asterisk *.</li> ! <li><a href="./classes/Controls.htm#MultiLineTextBox">MultiLineTextBox</a> Class for multi line text edit controls.</li> ! <li><a href="./classes/Controls.htm#RichEditControl">RichEditControl</a> Class for rich edit controls.</li> ! </ul> ! ! <h3>Combo box controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#ComboControl">ComboControl</a> Class for combo box controls.</li> ! <li><a href="./classes/Controls.htm#ComboBox">ComboBox</a> Enhanced Version of the ComboControl class.</li> ! <li><a href="./classes/Controls.htm#ComboListBox">ComboListBox</a> Class for read only combo box controls.</li> ! </ul> ! ! <h3>List box controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#ListControl">ListControl</a> Class for list box controls.</li> ! <li><a href="./classes/Controls.htm#ListBox">ListBox</a> Enhanced Version of the ListControl class.</li> ! </ul> ! ! <h3>Group controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#GroupControl">GroupControl</a> Class for group controls.</li> ! </ul> ! ! <h3>Static controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#StaticControl">StaticControl</a> Class for static controls.</li> ! </ul> ! ! <h3>Check box controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#CheckControl">CheckControl</a> Class for check box controls.</li> ! </ul> ! ! <h3>Radio button controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#RadioControl">RadioControl</a> Class for radio button controls.</li> ! </ul> ! ! <h3>Push button controls</h3> ! <ul> ! <li><a href="./classes/Controls.htm#ButtonControl">ButtonControl</a> Class for push button controls.</li> ! </ul> </ul> + + <h2>ActiveX controls</h2> <ul> ! <li><a href="./classes/AXControl.htm">AXControl</a> Base class for ActiveX controls.</li> ! <ul> ! <li><a href="./classes/HTMLControl.htm">HTMLControl</a> HTML control class.</li> ! </ul> </ul> |
From: Jos v.d.V. <jo...@us...> - 2006-01-21 18:24:09
|
Update of /cvsroot/win32forth/win32forth/apps/Player4 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32047/apps/Player4 Modified Files: Catalog.f PLAYER4.F Log Message: Jos: The catalog can now be exported to a CSV file (player4.csv). Note: the TAB is the separator. Index: PLAYER4.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/Player4/PLAYER4.F,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** PLAYER4.F 15 Jan 2006 09:30:14 -0000 1.35 --- PLAYER4.F 21 Jan 2006 18:23:54 -0000 1.36 *************** *** 84,87 **** --- 84,88 ---- MENUITEM "&Add file(s)...\tCtrl+M" 'M' +k_control pushkey ; MENUITEM "&Import directory tree...\tCtrl+I" 'I' +k_control pushkey ; + MENUITEM "&Export the catalog to Player.csv" csv-catalog ; MENUITEM "S&earch and make a collection..." SearchCatalog ; MENUSEPARATOR Index: Catalog.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/Player4/Catalog.f,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** Catalog.f 31 Dec 2005 20:48:13 -0000 1.23 --- Catalog.f 21 Jan 2006 18:23:54 -0000 1.24 *************** *** 342,353 **** ; - - : record-not-played ( n - ) n>record 0 swap RecordDef Played- c! ; - : set-all-not-played ( - ) for-all-records record-not-played ; - : list-record ( n - ) n>record _list-record ; : list-records ( - ) for-all-records list-record cr ; : list-database ( - ) map-database list-records unmap-database ; : change-randomlevel ( level n - ) n>record over random swap RecordDef RandomLevel ! --- 342,395 ---- ; : list-record ( n - ) n>record _list-record ; : list-records ( - ) for-all-records list-record cr ; : list-database ( - ) map-database list-records unmap-database ; + K_TAB variable separator separator c! + 0 value fid + + : +inlineRecord ( adr cnt - ) InlineRecord +place ; + : type-separator ( adr cnt - ) +inlineRecord separator 1 +inlineRecord ; + : .csv ( n - adr cnt ) s>d (d.) ; + : fwrite ( adr cnt - ) fid write-line abort" Can't write to file" ; + + : _csv-record ( n - ) + dup >record + dup>r not-deleted? + if .csv type-separator + r@ RecordDef DriveType c@ .csv type-separator + r@ RecordDef MediaLabel r@ RecordDef Cnt_MediaLabel c@ type-separator + r@ RecordDef Artist r@ Cnt_Artist c@ type-separator + r@ RecordDef Album r@ Cnt_Album c@ type-separator + r@ RecordDef Title r@ Cnt_Title c@ type-separator + r@ RecordDef #played @ .csv type-separator + r@ RecordDef FileSize @ .csv +inlineRecord + InlineRecord count fwrite + else drop + then + r>drop + ; + + : csv-record ( n - ) InlineRecord off _csv-record ; + + : csv-catalog ( - ) + wait-cursor + s" Player4.csv" r/w create-file abort" Can't create file" to fid + + InlineRecord off + s" Id" type-separator s" Drivetype" type-separator + s" Label" type-separator s" Artist" type-separator + s" Album " type-separator s" Title" type-separator + s" #played" type-separator s" Size" +inlineRecord + InlineRecord count fwrite + + for-all-records csv-record + fid close-file abort" close error" + arrow-cursor + ; + + : record-not-played ( n - ) n>record 0 swap RecordDef Played- c! ; + : set-all-not-played ( - ) for-all-records record-not-played ; + : change-randomlevel ( level n - ) n>record over random swap RecordDef RandomLevel ! |
From: Dirk B. <db...@us...> - 2006-01-21 09:05:32
|
Update of /cvsroot/win32forth/win32forth/src/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16941/src/lib Modified Files: ScintillaHyperEdit.f Log Message: Smal bugfix in the Hyper>: method. Index: ScintillaHyperEdit.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/lib/ScintillaHyperEdit.f,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ScintillaHyperEdit.f 21 Dec 2004 00:19:10 -0000 1.1 --- ScintillaHyperEdit.f 21 Jan 2006 09:05:22 -0000 1.2 *************** *** 134,138 **** :M Hyper>: { \ SelBuf$ -- } \ Hyperlink to selected word ! 2048 LocalAlloc: SelBuf$ SelBuf$ GetSelText: self if SelBuf$ HyperWord --- 134,138 ---- :M Hyper>: { \ SelBuf$ -- } \ Hyperlink to selected word ! 0 GetSelText: self LocalAlloc: SelBuf$ SelBuf$ GetSelText: self if SelBuf$ HyperWord *************** *** 168,170 **** MODULE - |
From: Dirk B. <db...@us...> - 2006-01-21 09:01:55
|
Update of /cvsroot/win32forth/win32forth/src/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15604/src/lib Modified Files: excontrols.f Log Message: - Moved some methods from the MultiLineTextBox class into it's TextBox super class. - Some more documenting of ExControls.f (still work in progress). Index: excontrols.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/lib/excontrols.f,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** excontrols.f 17 Jan 2006 17:52:00 -0000 1.6 --- excontrols.f 21 Jan 2006 09:01:47 -0000 1.7 *************** *** 21,29 **** external \ *W <a name="TextBox"></a> \ *S TextBox class :Class TextBox <Super EditControl \ *G Class for text edit controls ! \ ** (enhaced Version of the EditControl class) int style --- 21,31 ---- external + \ ------------------------------------------------------------------------ \ *W <a name="TextBox"></a> \ *S TextBox class + \ ------------------------------------------------------------------------ :Class TextBox <Super EditControl \ *G Class for text edit controls ! \ ** (enhanced Version of the EditControl class) int style *************** *** 35,39 **** 0 to pWmSetFocus ;M ! :M SetWmSetFocus: ( pWmSetFocus -- ) to pWmSetFocus ;M --- 37,42 ---- 0 to pWmSetFocus ;M ! :M SetWmSetFocus: ( xt -- ) ! \ *G Set handler for WM_SETFOCUS messages. to pWmSetFocus ;M *************** *** 49,87 **** :M AddStyle: ( n -- ) to style ;M :M Enable: ( f -- ) ID EnableDlgItem: parent ;M :M Disable: ( -- ) false Enable: self ;M :M ReadOnly: ( f -- ) 0 SWAP EM_SETREADONLY SendMessage:Self ?Win-error ;M ! :M SetSelection: ( nEnd nStart -- ) \ Set selection range. EM_SETSEL SendMessage:self drop ;M :M SelectAll: ( -- ) ! \ *G Select all the text in control. SetFocus: Self \ Change the focus for deselecting. -1 0 SetSelection: self ;M ! :M Setfont: ( handle -- ) ! 1 swap WM_SETFONT SendMessage:Self drop ! ;M ! :M SetTextLimit: ( n -- ) ! 0 swap EM_SETLIMITTEXT SendMessage:Self drop ;M ! :M GetTextEx: { buffer$ maxlen -- buffer$ len } \ greater than 255 bytes ! maxlen buffer$ hwnd Call GetWindowText buffer$ swap ;M ! :M SetTextZ: { addrz -- } hwnd ! if addrz hwnd Call SetWindowText ?win-error then ;M --- 52,207 ---- :M AddStyle: ( n -- ) + \ *G Set the style of the control. Must be done before the control + \ ** is created. to style ;M :M Enable: ( f -- ) + \ *G Enable the control ID EnableDlgItem: parent ;M :M Disable: ( -- ) + \ *G Disable the control false Enable: self ;M :M ReadOnly: ( f -- ) + \ *G Set or remove the read-only style of the edit control. + \ ** A value of TRUE sets the read-only style; a value of FALSE removes it. 0 SWAP EM_SETREADONLY SendMessage:Self ?Win-error ;M ! :M SetSelection: ( nEnd nStart -- ) ! \ *G Selects a range of characters in the edit control. \i nEnd \d specifies the ! \ ** ending character position of the selection. \i nStart \d specifies the ! \ ** starting character position of the selection. ! \ *P The start value can be greater than the end value. The lower of the two values ! \ ** specifies the character position of the first character in the selection. The ! \ ** higher value specifies the position of the first character beyond the selection. ! \ *P The start value is the anchor point of the selection, and the end value is the ! \ ** active end. If the user uses the SHIFT key to adjust the size of the selection, ! \ ** the active end can move but the anchor point remains the same. ! \ *P The control displays a flashing caret at the end position regardless of the relative ! \ ** values of start and end. EM_SETSEL SendMessage:self drop ;M + :M GetSelection: ( -- nEnd nStart ) + \ *G Get the starting and ending character positions of the current selection in the edit control + NULL NULL EM_GETSEL SendMessage:Self + DUP HIWORD SWAP LOWORD ;M + :M SelectAll: ( -- ) ! \ *G Set the focus to the edit control and select all the text in the control. SetFocus: Self \ Change the focus for deselecting. -1 0 SetSelection: self ;M ! :M RemoveSelection: ( -- ) ! \ *G Remove any selection. ! 0 -1 SetSelection: self DROP ;M ! :M GetCursor: ( -- n ) ! \ *G Get location of cursor (chars from start) ! GetSelection: self ! RemoveSelection: self ! GetSelection: self >R ! SetSelection: self R> ;M ! :M IsModified?: ( -- f ) ! \ *G Get the state of an edit control's modification flag. The flag indicates whether ! \ ** the contents of the edit control have been modified. ! 0 0 EM_GETMODIFY SendMessage:Self ;M ! :M SetModify: ( f -- ) ! \ *G Sets or clears the modification flag for an edit control. The modification flag ! \ ** indicates whether the text within the edit control has been modified. ! swap 0 EM_SETMODIFY SendMessage:Self drop ;M ! ! :M NotModified: ( -- ) ! \ *G Depreacted method. Use \i SetModify: \d instead. ! 0 0 EM_SETMODIFY SendMessage:Self drop ;M DEPRECATED ! ! :M Undo: ( -- ) ! \ *G Undoes the last edit control operation in the control's undo queue. ! 0 0 EM_CANUNDO SendMessage:Self ! IF 0 0 EM_UNDO SendMessage:Self drop ! ELSE MB_OK ! Z" Undo notification" ! Z" Nothing to undo." ! GetHandle: self Call MessageBox DROP ! THEN ! ;M ! ! :M Redo: ( -- ) ! \ *G Redoes the last edit control operation in the control's redo queue. ! 0 0 EM_CANREDO SendMessage:Self ! IF 0 0 EM_REDO SendMessage:Self drop ! ELSE MB_OK ! Z" Redo notification" ! Z" Nothing to redo." ! GetHandle: self Call MessageBox DROP ! THEN ! ;M ! ! :M Cut: ( -- ) ! \ *G Delete (cut) the current selection, if any, in the edit control and ! \ ** copy the deleted text to the clipboard in CF_TEXT format. ! 0 0 WM_CUT SendMessage:Self DROP ;M ! ! :M Copy: ( -- ) ! \ *G Copy the current selection to the clipboard in CF_TEXT format. ! 0 0 WM_COPY SendMessage:Self DROP ;M ! ! :M Paste: ( -- ) ! \ *G Copy the current content of the clipboard to the edit control at the current ! \ ** caret position. Data is inserted only if the clipboard contains data in CF_TEXT ! \ ** format. ! 0 0 WM_PASTE SendMessage:Self DROP ;M ! ! :M Clear: ( -- ) ! \ *G Delete selected text. ! 0 0 WM_CLEAR SendMessage:Self DROP ;M ! ! :M SetFont: ( handle -- ) ! \ *G Set the font in the edit control. ! 1 swap WM_SETFONT SendMessage:Self drop ;M ! ! :M SetTextLimit: ( n -- ) ! \ *G Set the text limit of an edit control. ! \ *P \i n \d Specifies the maximum number of characters the user can enter. This number does ! \ ** not include the null terminator. \n ! \ ** Edit controls on Windows NT/ 2000: If this parameter is zero, the text length is set ! \ ** to 0x7FFFFFFE characters for single-line edit controls or -1 for multiline edit controls. \n ! \ ** Edit controls on Windows 95/98: If this parameter is zero, the text length is set to 0x7FFE ! \ ** characters for single-line edit controls or 0xFFFF for multiline edit controls. ! \ *P The SetTextLimit: method limits only the text the user can enter. It does not affect any text ! \ ** already in the edit control when the message is sent, nor does it affect the length of the text ! \ ** copied to the edit control by the SetText: method. If an application uses the SetText: method ! \ ** to place more text into an edit control than is specified in the SetTextLimit: method, the user can ! \ ** edit the entire contents of the edit control. ! \ *P Before the SetTextLimit: method is called, the default limit for the amount of text a user can enter ! \ ** in an edit control is 32,767 characters. ! \ *P Edit controls on Windows NT/ 2000: For single-line edit controls, the text limit is either 0x7FFFFFFE bytes ! \ ** or the value of \i n \d, whichever is smaller. For multiline edit controls, this value is either ! \ ** -1 bytes or the value of \i n \d, whichever is smaller. ! \ *P Edit controls on Windows 95/98: For single-line edit controls, the text limit is either 0x7FFE bytes or ! \ ** the value of \i n \d, whichever is smaller. For multiline edit controls, this value is either 0xFFFF bytes ! \ ** or the value of \i n \d, whichever is smaller. ! 0 swap EM_SETLIMITTEXT SendMessage:Self drop ;M ! ! :M GetTextEx: { buffer$ maxlen -- buffer$ len } ! \ *G Copies the text of the edit control into a buffer. ! \ *P \i buffer$ \d is the address of the buffer that will receive the text. ! \ *P \i maxlen \d Specifies the maximum number of characters to copy to the ! \ ** buffer, including the NULL character. If the text exceeds this limit, it ! \ ** is truncated. ! \ *P If the method succeeds, \i len \d is the length, in characters, of the copied ! \ ** string, not including the terminating null character. ! maxlen buffer$ hwnd Call GetWindowText buffer$ swap ;M ! ! :M SetTextZ: ( addrz -- ) ! \ *G Copy the text from the 0 terminated string \i addrz \d into the edit control. hwnd ! if hwnd swap Call SetWindowText ?win-error ! else drop then ;M *************** *** 89,96 **** \ *G End of TextBox class \ *W <a name="PassWordBox"></a> \ *S PassWordBox class :Class PassWordBox <super TextBox ! \ *G Editcontrol for entering Passwords. :M WindowStyle: ( -- style ) --- 209,219 ---- \ *G End of TextBox class + \ ------------------------------------------------------------------------ \ *W <a name="PassWordBox"></a> \ *S PassWordBox class + \ ------------------------------------------------------------------------ :Class PassWordBox <super TextBox ! \ *G Class for text edit controls. All characters in the control are displayed ! \ ** as an asterisk \b * \d. :M WindowStyle: ( -- style ) *************** *** 100,105 **** --- 223,230 ---- \ *G End of PassWordBox class + \ ------------------------------------------------------------------------ \ *W <a name="MultiLineTextBox"></a> \ *S MultiLineTextBox class + \ ------------------------------------------------------------------------ :Class MultiLineTextBox <super TextBox \ *G MultiLineTextBox class *************** *** 109,116 **** :M WindowStyle: ( -- style ) WindowStyle: super ! ES_AUTOVSCROLL OR ! ES_MULTILINE OR ! ES_WANTRETURN OR ! ES_NOHIDESEL OR ;M --- 234,238 ---- :M WindowStyle: ( -- style ) WindowStyle: super ! [ ES_AUTOVSCROLL ES_MULTILINE OR ES_WANTRETURN OR ES_NOHIDESEL OR ] literal or ;M *************** *** 125,207 **** :M SetMargins: ( left right -- ) ! \ *G set margins for window word-join ! EC_LEFTMARGIN EC_RIGHTMARGIN OR EM_SETMARGINS SendMessage:self DROP ;M - :M IsModified?: ( -- f ) - 0 0 EM_GETMODIFY SendMessage:Self - ;M - - :M NotModified: ( -- ) - 0 0 EM_SETMODIFY SendMessage:Self drop - ;M - - :M Undo: ( -- ) - \ Send WM_UNDO only if there is something to be undone - 0 0 EM_CANUNDO SendMessage:Self - IF 0 0 WM_UNDO SendMessage:Self ?Win-error - ELSE MB_OK - Z" Undo notification" - Z" Nothing to undo." - GetHandle: self Call MessageBox DROP - THEN - ;M - - :M Cut: ( -- ) - \ *G cut selected text to clipboard - 0 0 WM_CUT SendMessage:Self DROP ;M - - :M Copy: ( -- ) - \ *G copy selected text to clipboard - 0 0 WM_COPY SendMessage:Self DROP ;M - - :M Paste: ( -- ) - \ *G paste clipboard text to control - 0 0 WM_PASTE SendMessage:Self DROP ;M - - :M Clear: ( -- ) - \ *G delete selected text (not to clipboard!) - 0 0 WM_CLEAR SendMessage:Self DROP ;M - - :M SetSelection: ( nEnd nStart -- ) - \ *G set selection range - EM_SETSEL SendMessage:Self DROP ;M - - :M GetSelection: ( -- nEnd nStart) - \ *G return selection range - NULL NULL EM_GETSEL SendMessage:Self - DUP HIWORD SWAP LOWORD ;M - :M SelectAll: ( -- ) ! \ *G select all the text in control -1 0 SetSelection: self DROP ;M - :M RemoveSelection: ( -- ) - \ *G remove any selection - 0 -1 SetSelection: self DROP ;M - - :M GetCursor: ( -- n ) - \ *G return location of cursor (chars from start) - GetSelection: self - RemoveSelection: self - GetSelection: self >R - SetSelection: self R> - ;M - :M GetLine: ( -- n ) ! \ *G return location of cursor (lines from start) 0 -1 EM_LINEFROMCHAR SendMessage:self ;M :M Wrap: ( -- ) ! \ *G set control to wrap text ;M :M Unwrap: ( -- ) ! \ *G set control to scroll instead of wrap text ;M :M GetLineCount: ( -- n ) 0 0 EM_GETLINECOUNT SendMessage:self ;M --- 247,279 ---- :M SetMargins: ( left right -- ) ! \ *G Sets the widths of the left and right margins for an edit control. word-join ! [ EC_LEFTMARGIN EC_RIGHTMARGIN OR ] literal EM_SETMARGINS SendMessage:self DROP ;M :M SelectAll: ( -- ) ! \ *G Select all the text in the multiline edit control. -1 0 SetSelection: self DROP ;M :M GetLine: ( -- n ) ! \ *G Return location of the cursor (lines from start). 0 -1 EM_LINEFROMCHAR SendMessage:self ;M :M Wrap: ( -- ) ! \ *G Set control to wrap text. ! \ ** Note this method does nothing! ;M :M Unwrap: ( -- ) ! \ *G Set control to scroll instead of wrap text. ! \ ** Note this method does nothing! ;M :M GetLineCount: ( -- n ) + \ *G Retrieves the number of lines in the multiline edit control. + \ *P The return value is an integer specifying the total number of + \ ** text lines in the multiline edit control. If the control has no text, + \ ** the return value is 1. The return value will never be less than 1. 0 0 EM_GETLINECOUNT SendMessage:self ;M *************** *** 217,229 **** then ; ! :M GetSelText: ( addr -- n ) \ get the selected text from the edit control ! ! \ for some reason this doesn't work on my system, so ! \ I do it a little bizarre by using the clipboard... ! \ Samstag, Juni 05 2004 - 10:41 dbu ! \ 0 EM_GETSELTEXT GetID: self SendDlgItemMessage: parent ! ! Copy: self \ copy the selected text into the clipboard ! GetClipboardText \ and copy it back from there into our buffer ;M --- 289,300 ---- then ; ! :M GetSelText: ( addr -- n ) ! \ *G Retrieves the currently selected text from the edit control. ! \ *P \i addr \d is the address of the a buffer that receives the selected text. ! \ ** The calling application must ensure that the buffer is large enough to hold ! \ ** the selected text. ! \ *P Note: The text is copyied to the clipboard, too! ! Copy: self \ copy the selected text into the clipboard ! GetClipboardText \ and copy it from there into the buffer ;M *************** *** 235,240 **** --- 306,313 ---- \ *G End of MultiLineTextBox class + \ ------------------------------------------------------------------------ \ *W <a name="RichEditControl"></a> \ *S RichEditControl class + \ ------------------------------------------------------------------------ :Class RichEditControl <Super MultiLineTextBox \ *G RichEditControl class *************** *** 245,260 **** ;M :M GetLines: ( -- nr ) ! \ *G how many lines in control ! 0 0 EM_GETLINECOUNT GetID: self SendDlgItemMessage: parent ! ;M ;Class \ *G End of RichEditControl class \ *W <a name="ComboBox"></a> \ *S ComboBox class :Class ComboBox <super ComboControl \ *G ComboBox control ! \ ** (enhaced Version of the ComboControl class) int style --- 318,341 ---- ;M + :M GetSelText: ( addr -- n ) + \ *G Retrieves the currently selected text from the edit control. + \ *P \i addr \d is the address of the a buffer that receives the selected text. + \ ** The calling application must ensure that the buffer is large enough to hold + \ ** the selected text. + 0 EM_GETSELTEXT SendMessage:self ;M + :M GetLines: ( -- nr ) ! \ *G Depreacted method. Use \i GetLineCount: \d instead. ! GetLineCount: super ;M DEPRECATED ;Class \ *G End of RichEditControl class + \ ------------------------------------------------------------------------ \ *W <a name="ComboBox"></a> \ *S ComboBox class + \ ------------------------------------------------------------------------ :Class ComboBox <super ComboControl \ *G ComboBox control ! \ ** (enhanced Version of the ComboControl class) int style *************** *** 337,342 **** --- 418,425 ---- \ *G End of ComboBox class + \ ------------------------------------------------------------------------ \ *W <a name="ComboListBox"></a> \ *S ComboListBox class + \ ------------------------------------------------------------------------ :Class ComboListBox <super ComboBox \ *G ComboBox list control *************** *** 356,364 **** \ *G End of ComboListBox class \ *W <a name="ListBox"></a> \ *S ListBox class :Class ListBox <super ListControl \ *G ListBox control (single selection) ! \ ** (enhaced Version of the ListControl class) int style --- 439,449 ---- \ *G End of ComboListBox class + \ ------------------------------------------------------------------------ \ *W <a name="ListBox"></a> \ *S ListBox class + \ ------------------------------------------------------------------------ :Class ListBox <super ListControl \ *G ListBox control (single selection) ! \ ** (enhanced Version of the ListControl class) int style *************** *** 454,459 **** --- 539,546 ---- \ *G End of ListBox class + \ ------------------------------------------------------------------------ \ *W <a name="MultiListbox"></a> \ *S MultiListbox class + \ ------------------------------------------------------------------------ :Class MultiListbox <Super Listbox \ *G ListBox control *************** *** 505,510 **** --- 592,599 ---- \ *G End of MultiExListbox class + \ ------------------------------------------------------------------------ \ *W <a name="DragListbox"></a> \ *S DragListbox class + \ ------------------------------------------------------------------------ :Class DragListbox <Super Listbox \ *G ListBox control *************** *** 527,532 **** --- 616,623 ---- \ *G End of DragListbox class + \ ------------------------------------------------------------------------ \ *W <a name="UpDownControl"></a> \ *S UpDownControl class + \ ------------------------------------------------------------------------ :Class UpDownControl <Super Control \ *G UpDownControl control *************** *** 604,608 **** --- 695,705 ---- \ *G End of UpDownControl control + \ ------------------------------------------------------------------------ + \ *W <a name="CheckBox"></a> + \ *S CheckBox class + \ ------------------------------------------------------------------------ :Class CheckBox <super CheckControl + \ *G Class for check buttons + \ ** (enhanced Version of the CheckControl class) int style *************** *** 646,651 **** ;Class ! :Class RadioButton <super RadioControl int style --- 743,755 ---- ;Class + \ *G End of CheckBox class ! \ ------------------------------------------------------------------------ ! \ *W <a name="RadioButton"></a> ! \ *S RadioButton class ! \ ------------------------------------------------------------------------ ! :Class RadioButton <super RadioControl ! \ *G Class for radio buttons ! \ ** (enhanced Version of the RadioControl class) int style *************** *** 686,691 **** --- 790,802 ---- ;Class + \ *G End of RadioButton class + \ ------------------------------------------------------------------------ + \ *W <a name="PushButton"></a> + \ *S PushButton class + \ ------------------------------------------------------------------------ :Class PushButton <super ButtonControl + \ *G Class for push buttons + \ ** (enhanced Version of the ButtonControl class) int style *************** *** 712,726 **** ;Class :Class DefPushButton <Super PushButton :M WindowStyle: ( -- style) ! WindowStyle: super ! BS_DEFPUSHBUTTON OR ! ;M ;Class :Class Label <super StaticControl int style --- 823,847 ---- ;Class + \ *G End of PushButton class + \ ------------------------------------------------------------------------ + \ *W <a name="DefPushButton"></a> + \ *S DefPushButton class + \ ------------------------------------------------------------------------ :Class DefPushButton <Super PushButton + \ *G Class for the default push buttons :M WindowStyle: ( -- style) ! WindowStyle: super BS_DEFPUSHBUTTON OR ;M ;Class + \ *G End of DefPushButton class + \ ------------------------------------------------------------------------ + \ *W <a name="Label"></a> + \ *S Label class + \ ------------------------------------------------------------------------ :Class Label <super StaticControl + \ *G Class for static controls int style *************** *** 747,753 **** ;Class ! \ a static control showing an image |Class StaticImage <Super Label :M ImageType: ( -- ImageType ) --- 868,880 ---- ;Class + \ *G End of Label class ! \ ------------------------------------------------------------------------ ! \ *W <a name="StaticImage"></a> ! \ *S StaticImage class ! \ ------------------------------------------------------------------------ |Class StaticImage <Super Label + \ *G Base class for static control showing an image. + \ ** This is an intern class; don't use it directly. :M ImageType: ( -- ImageType ) *************** *** 767,773 **** ;Class ! \ a static control showing a bitmap :Class StaticBitmap <Super StaticImage :M WindowStyle: ( -- style ) --- 894,905 ---- ;Class + \ *G End of StaticImage class ! \ ------------------------------------------------------------------------ ! \ *W <a name="StaticBitmap"></a> ! \ *S StaticBitmap class ! \ ------------------------------------------------------------------------ :Class StaticBitmap <Super StaticImage + \ *G Static control showing a bitmap :M WindowStyle: ( -- style ) *************** *** 775,781 **** ;Class ! \ a static control showing an icon :Class StaticIcon <Super StaticImage :M WindowStyle: ( -- style) --- 907,918 ---- ;Class + \ *G End of StaticImage class ! \ ------------------------------------------------------------------------ ! \ *W <a name="StaticIcon"></a> ! \ *S StaticIcon class ! \ ------------------------------------------------------------------------ :Class StaticIcon <Super StaticImage + \ *G Static control showing an icon :M WindowStyle: ( -- style) *************** *** 786,792 **** ;Class ! \ a static control showing a metafile :Class StaticMetafile <Super StaticImage :M WindowStyle: ( -- style ) --- 923,934 ---- ;Class + \ *G End of StaticIcon class ! \ ------------------------------------------------------------------------ ! \ *W <a name="StaticMetafile"></a> ! \ *S StaticMetafile class ! \ ------------------------------------------------------------------------ :Class StaticMetafile <Super StaticImage + \ *G Static control showing an enhanced metafile :M WindowStyle: ( -- style ) *************** *** 797,803 **** ;Class ! \ a static control showing a frame :Class StaticFrame <Super Label :M BlackRect: ( -- ) --- 939,950 ---- ;Class + \ *G End of StaticMetafile class ! \ ------------------------------------------------------------------------ ! \ *W <a name="StaticFrame"></a> ! \ *S StaticFrame class ! \ ------------------------------------------------------------------------ :Class StaticFrame <Super Label + \ *G Static control showing a frame :M BlackRect: ( -- ) *************** *** 834,838 **** --- 981,990 ---- ;Class + \ *G End of StaticFrame class + \ *Z + + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class GroupBox <super GroupControl *************** *** 861,864 **** --- 1013,1018 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class Progressbar <Super Control *************** *** 914,917 **** --- 1068,1073 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class SmoothProgressbar <Super Progressbar *************** *** 924,927 **** --- 1080,1085 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class Trackbar <Super Control \ horizontal *************** *** 1055,1058 **** --- 1213,1218 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class VTrackBar <super TrackBar *************** *** 1063,1066 **** --- 1223,1228 ---- warning off + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class Statusbar <Super Control *************** *** 1135,1142 **** ;Class ! ! \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ \\\ Multipart Statusbar Class ! :Class MultiStatusbar <Super Statusbar --- 1297,1303 ---- ;Class ! \ ------------------------------------------------------------------------ ! \ Multipart Statusbar Class ! \ ------------------------------------------------------------------------ :Class MultiStatusbar <Super Statusbar *************** *** 1175,1178 **** --- 1336,1341 ---- warning on + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class VertButtonBar <super VButtonBar *************** *** 1211,1214 **** --- 1374,1379 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class BitmapButton <Super PushButton *************** *** 1263,1266 **** --- 1428,1433 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class IconButton <Super PushButton *************** *** 1317,1320 **** --- 1484,1489 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ |Class ScrollBar <Super Control *************** *** 1401,1404 **** --- 1570,1575 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class VertScroll <Super ScrollBar *************** *** 1408,1411 **** --- 1579,1584 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class SizeBox <Super ScrollBar *************** *** 1442,1445 **** --- 1615,1620 ---- #THEN + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class MonthCalendar <Super Control *************** *** 1526,1529 **** --- 1701,1706 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class DateTimePicker <Super Control *************** *** 1672,1675 **** --- 1849,1854 ---- ;Class + \ ------------------------------------------------------------------------ + \ ------------------------------------------------------------------------ :Class TabControl <Super Control |
From: Dirk B. <db...@us...> - 2006-01-21 09:01:55
|
Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15604/doc/classes Modified Files: Controls.htm Log Message: - Moved some methods from the MultiLineTextBox class into it's TextBox super class. - Some more documenting of ExControls.f (still work in progress). Index: Controls.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Controls.htm,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Controls.htm 17 Jan 2006 17:51:59 -0000 1.3 --- Controls.htm 21 Jan 2006 09:01:47 -0000 1.4 *************** *** 142,148 **** </h2><pre><b><a name="0">:Class TextBox <Super EditControl </a></b></pre><p>Class for text edit controls ! (enhaced Version of the EditControl class) </p><pre><b><a name="0">:M SelectAll: ( -- ) ! </a></b></pre><p>Select all the text in control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of TextBox class --- 142,234 ---- </h2><pre><b><a name="0">:Class TextBox <Super EditControl </a></b></pre><p>Class for text edit controls ! (enhanced Version of the EditControl class) ! </p><pre><b><a name="0">:M SetWmSetFocus: ( xt -- ) ! </a></b></pre><p>Set handler for WM_SETFOCUS messages. ! </p><pre><b><a name="0">:M AddStyle: ( n -- ) ! </a></b></pre><p>Set the style of the control. Must be done before the control ! is created. ! </p><pre><b><a name="0">:M Enable: ( f -- ) ! </a></b></pre><p>Enable the control ! </p><pre><b><a name="0">:M Disable: ( -- ) ! </a></b></pre><p>Disable the control ! </p><pre><b><a name="0">:M ReadOnly: ( f -- ) ! </a></b></pre><p>Set or remove the read-only style of the edit control. ! A value of TRUE sets the read-only style; a value of FALSE removes it. ! </p><pre><b><a name="0">:M SetSelection: ( nEnd nStart -- ) ! </a></b></pre><p>Selects a range of characters in the edit control. <i> nEnd </i> specifies the ! ending character position of the selection. <i> nStart </i> specifies the ! starting character position of the selection. ! </p><p>The start value can be greater than the end value. The lower of the two values ! specifies the character position of the first character in the selection. The ! higher value specifies the position of the first character beyond the selection. ! </p><p>The start value is the anchor point of the selection, and the end value is the ! active end. If the user uses the SHIFT key to adjust the size of the selection, ! the active end can move but the anchor point remains the same. ! </p><p>The control displays a flashing caret at the end position regardless of the relative ! values of start and end. ! </p><pre><b><a name="0">:M GetSelection: ( -- nEnd nStart ) ! </a></b></pre><p>Get the starting and ending character positions of the current selection in the edit control </p><pre><b><a name="0">:M SelectAll: ( -- ) ! </a></b></pre><p>Set the focus to the edit control and select all the text in the control. ! </p><pre><b><a name="0">:M RemoveSelection: ( -- ) ! </a></b></pre><p>Remove any selection. ! </p><pre><b><a name="0">:M GetCursor: ( -- n ) ! </a></b></pre><p>Get location of cursor (chars from start) ! </p><pre><b><a name="0">:M IsModified?: ( -- f ) ! </a></b></pre><p>Get the state of an edit control's modification flag. The flag indicates whether ! the contents of the edit control have been modified. ! </p><pre><b><a name="0">:M SetModify: ( f -- ) ! </a></b></pre><p>Sets or clears the modification flag for an edit control. The modification flag ! indicates whether the text within the edit control has been modified. ! </p><pre><b><a name="0">:M NotModified: ( -- ) ! </a></b></pre><p>Depreacted method. Use <i> SetModify: </i> instead. ! </p><pre><b><a name="0">:M Undo: ( -- ) ! </a></b></pre><p>Undoes the last edit control operation in the control's undo queue. ! </p><pre><b><a name="0">:M Redo: ( -- ) ! </a></b></pre><p>Redoes the last edit control operation in the control's redo queue. ! </p><pre><b><a name="0">:M Cut: ( -- ) ! </a></b></pre><p>Delete (cut) the current selection, if any, in the edit control and ! copy the deleted text to the clipboard in CF_TEXT format. ! </p><pre><b><a name="0">:M Copy: ( -- ) ! </a></b></pre><p>Copy the current selection to the clipboard in CF_TEXT format. ! </p><pre><b><a name="0">:M Paste: ( -- ) ! </a></b></pre><p>Copy the current content of the clipboard to the edit control at the current ! caret position. Data is inserted only if the clipboard contains data in CF_TEXT ! format. ! </p><pre><b><a name="0">:M Clear: ( -- ) ! </a></b></pre><p>Delete selected text. ! </p><pre><b><a name="0">:M SetFont: ( handle -- ) ! </a></b></pre><p>Set the font in the edit control. ! </p><pre><b><a name="0">:M SetTextLimit: ( n -- ) ! </a></b></pre><p>Set the text limit of an edit control. ! </p><p><i> n </i> Specifies the maximum number of characters the user can enter. This number does ! not include the null terminator. <br /> ! Edit controls on Windows NT/ 2000: If this parameter is zero, the text length is set ! to 0x7FFFFFFE characters for single-line edit controls or -1 for multiline edit controls. <br /> ! Edit controls on Windows 95/98: If this parameter is zero, the text length is set to 0x7FFE ! characters for single-line edit controls or 0xFFFF for multiline edit controls. ! </p><p>The SetTextLimit: method limits only the text the user can enter. It does not affect any text ! already in the edit control when the message is sent, nor does it affect the length of the text ! copied to the edit control by the SetText: method. If an application uses the SetText: method ! to place more text into an edit control than is specified in the SetTextLimit: method, the user can ! edit the entire contents of the edit control. ! </p><p>Before the SetTextLimit: method is called, the default limit for the amount of text a user can enter ! in an edit control is 32,767 characters. ! </p><p>Edit controls on Windows NT/ 2000: For single-line edit controls, the text limit is either 0x7FFFFFFE bytes ! or the value of <i> n </i>, whichever is smaller. For multiline edit controls, this value is either ! -1 bytes or the value of <i> n </i>, whichever is smaller. ! </p><p>Edit controls on Windows 95/98: For single-line edit controls, the text limit is either 0x7FFE bytes or ! the value of <i> n </i>, whichever is smaller. For multiline edit controls, this value is either 0xFFFF bytes ! or the value of <i> n </i>, whichever is smaller. ! </p><pre><b><a name="0">:M GetTextEx: { buffer$ maxlen -- buffer$ len } ! </a></b></pre><p>Copies the text of the edit control into a buffer. ! </p><p><i> buffer$ </i> is the address of the buffer that will receive the text. ! </p><p><i> maxlen </i> Specifies the maximum number of characters to copy to the ! buffer, including the NULL character. If the text exceeds this limit, it ! is truncated. ! </p><p>If the method succeeds, <i> len </i> is the length, in characters, of the copied ! string, not including the terminating null character. ! </p><pre><b><a name="0">:M SetTextZ: ( addrz -- ) ! </a></b></pre><p>Copy the text from the 0 terminated string <i> addrz </i> into the edit control. </p><pre><b><a name="0">;Class </a></b></pre><p>End of TextBox class *************** *** 150,154 **** <h2>PassWordBox class </h2><pre><b><a name="0">:Class PassWordBox <super TextBox ! </a></b></pre><p>Editcontrol for entering Passwords. </p><pre><b><a name="0">;Class </a></b></pre><p>End of PassWordBox class --- 236,241 ---- <h2>PassWordBox class </h2><pre><b><a name="0">:Class PassWordBox <super TextBox ! </a></b></pre><p>Class for text edit controls. All characters in the control are displayed ! as an asterisk <b> * </b>. </p><pre><b><a name="0">;Class </a></b></pre><p>End of PassWordBox class *************** *** 158,186 **** </a></b></pre><p>MultiLineTextBox class </p><pre><b><a name="0">:M SetMargins: ( left right -- ) ! </a></b></pre><p>set margins for window ! </p><pre><b><a name="0">:M Cut: ( -- ) ! </a></b></pre><p>cut selected text to clipboard ! </p><pre><b><a name="0">:M Copy: ( -- ) ! </a></b></pre><p>copy selected text to clipboard ! </p><pre><b><a name="0">:M Paste: ( -- ) ! </a></b></pre><p>paste clipboard text to control ! </p><pre><b><a name="0">:M Clear: ( -- ) ! </a></b></pre><p>delete selected text (not to clipboard!) ! </p><pre><b><a name="0">:M SetSelection: ( nEnd nStart -- ) ! </a></b></pre><p>set selection range ! </p><pre><b><a name="0">:M GetSelection: ( -- nEnd nStart) ! </a></b></pre><p>return selection range </p><pre><b><a name="0">:M SelectAll: ( -- ) ! </a></b></pre><p>select all the text in control ! </p><pre><b><a name="0">:M RemoveSelection: ( -- ) ! </a></b></pre><p>remove any selection ! </p><pre><b><a name="0">:M GetCursor: ( -- n ) ! </a></b></pre><p>return location of cursor (chars from start) </p><pre><b><a name="0">:M GetLine: ( -- n ) ! </a></b></pre><p>return location of cursor (lines from start) </p><pre><b><a name="0">:M Wrap: ( -- ) ! </a></b></pre><p>set control to wrap text </p><pre><b><a name="0">:M Unwrap: ( -- ) ! </a></b></pre><p>set control to scroll instead of wrap text </p><pre><b><a name="0">:M LineScroll: ( n -- ) </a></b></pre><p>scroll n lines --- 245,270 ---- </a></b></pre><p>MultiLineTextBox class </p><pre><b><a name="0">:M SetMargins: ( left right -- ) ! </a></b></pre><p>Sets the widths of the left and right margins for an edit control. </p><pre><b><a name="0">:M SelectAll: ( -- ) ! </a></b></pre><p>Select all the text in the multiline edit control. </p><pre><b><a name="0">:M GetLine: ( -- n ) ! </a></b></pre><p>Return location of the cursor (lines from start). </p><pre><b><a name="0">:M Wrap: ( -- ) ! </a></b></pre><p>Set control to wrap text. ! Note this method does nothing! </p><pre><b><a name="0">:M Unwrap: ( -- ) ! </a></b></pre><p>Set control to scroll instead of wrap text. ! Note this method does nothing! ! </p><pre><b><a name="0">:M GetLineCount: ( -- n ) ! </a></b></pre><p>Retrieves the number of lines in the multiline edit control. ! </p><p>The return value is an integer specifying the total number of ! text lines in the multiline edit control. If the control has no text, ! the return value is 1. The return value will never be less than 1. ! </p><pre><b><a name="0">:M GetSelText: ( addr -- n ) ! </a></b></pre><p>Retrieves the currently selected text from the edit control. ! </p><p><i> addr </i> is the address of the a buffer that receives the selected text. ! The calling application must ensure that the buffer is large enough to hold ! the selected text. ! </p><p>Note: The text is copyied to the clipboard, too! </p><pre><b><a name="0">:M LineScroll: ( n -- ) </a></b></pre><p>scroll n lines *************** *** 191,196 **** </h2><pre><b><a name="0">:Class RichEditControl <Super MultiLineTextBox </a></b></pre><p>RichEditControl class </p><pre><b><a name="0">:M GetLines: ( -- nr ) ! </a></b></pre><p>how many lines in control </p><pre><b><a name="0">;Class </a></b></pre><p>End of RichEditControl class --- 275,285 ---- </h2><pre><b><a name="0">:Class RichEditControl <Super MultiLineTextBox </a></b></pre><p>RichEditControl class + </p><pre><b><a name="0">:M GetSelText: ( addr -- n ) + </a></b></pre><p>Retrieves the currently selected text from the edit control. + </p><p><i> addr </i> is the address of the a buffer that receives the selected text. + The calling application must ensure that the buffer is large enough to hold + the selected text. </p><pre><b><a name="0">:M GetLines: ( -- nr ) ! </a></b></pre><p>Depreacted method. Use <i> GetLineCount: </i> instead. </p><pre><b><a name="0">;Class </a></b></pre><p>End of RichEditControl class *************** *** 199,203 **** </h2><pre><b><a name="0">:Class ComboBox <super ComboControl </a></b></pre><p>ComboBox control ! (enhaced Version of the ComboControl class) </p><pre><b><a name="0">:M InsertStringAt: ( lpszString posn -- ) </a></b></pre><p>insert string in specified position (0 based) --- 288,292 ---- </h2><pre><b><a name="0">:Class ComboBox <super ComboControl </a></b></pre><p>ComboBox control ! (enhanced Version of the ComboControl class) </p><pre><b><a name="0">:M InsertStringAt: ( lpszString posn -- ) </a></b></pre><p>insert string in specified position (0 based) *************** *** 233,237 **** </h2><pre><b><a name="0">:Class ListBox <super ListControl </a></b></pre><p>ListBox control (single selection) ! (enhaced Version of the ListControl class) </p><pre><b><a name="0">:M AddString: ( lpszString -- ) </a></b></pre><p>add a new string to the list box list --- 322,326 ---- </h2><pre><b><a name="0">:Class ListBox <super ListControl </a></b></pre><p>ListBox control (single selection) ! (enhanced Version of the ListControl class) </p><pre><b><a name="0">:M AddString: ( lpszString -- ) </a></b></pre><p>add a new string to the list box list *************** *** 317,322 **** --- 406,473 ---- </p><pre><b><a name="0">;Class </a></b></pre><p>End of UpDownControl control + </p><a name="CheckBox"></a> + <h2>CheckBox class + </h2><pre><b><a name="0">:Class CheckBox <super CheckControl + </a></b></pre><p>Class for check buttons + (enhanced Version of the CheckControl class) </p><pre><b><a name="0">:M IsButtonChecked?: ( -- f ) </a></b></pre><p>send message to self through parent + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of CheckBox class + </p><a name="RadioButton"></a> + <h2>RadioButton class + </h2><pre><b><a name="0">:Class RadioButton <super RadioControl + </a></b></pre><p>Class for radio buttons + (enhanced Version of the RadioControl class) + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of RadioButton class + </p><a name="PushButton"></a> + <h2>PushButton class + </h2><pre><b><a name="0">:Class PushButton <super ButtonControl + </a></b></pre><p>Class for push buttons + (enhanced Version of the ButtonControl class) + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of PushButton class + </p><a name="DefPushButton"></a> + <h2>DefPushButton class + </h2><pre><b><a name="0">:Class DefPushButton <Super PushButton + </a></b></pre><p>Class for the default push buttons + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of DefPushButton class + </p><a name="Label"></a> + <h2>Label class + </h2><pre><b><a name="0">:Class Label <super StaticControl + </a></b></pre><p>Class for static controls + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of Label class + </p><a name="StaticImage"></a> + <h2>StaticImage class + </h2><pre><b><a name="0">|Class StaticImage <Super Label + </a></b></pre><p>Base class for static control showing an image. + This is an intern class; don't use it directly. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of StaticImage class + </p><a name="StaticBitmap"></a> + <h2>StaticBitmap class + </h2><pre><b><a name="0">:Class StaticBitmap <Super StaticImage + </a></b></pre><p>Static control showing a bitmap + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of StaticImage class + </p><a name="StaticIcon"></a> + <h2>StaticIcon class + </h2><pre><b><a name="0">:Class StaticIcon <Super StaticImage + </a></b></pre><p>Static control showing an icon + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of StaticIcon class + </p><a name="StaticMetafile"></a> + <h2>StaticMetafile class + </h2><pre><b><a name="0">:Class StaticMetafile <Super StaticImage + </a></b></pre><p>Static control showing an enhanced metafile + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of StaticMetafile class + </p><a name="StaticFrame"></a> + <h2>StaticFrame class + </h2><pre><b><a name="0">:Class StaticFrame <Super Label + </a></b></pre><p>Static control showing a frame </p><pre><b><a name="0">:M BlackRect: ( -- ) </a></b></pre><p>rectangle in the window frame color (default is black) *************** *** 335,339 **** </p><pre><b><a name="0">:M SunkenFrame: ( -- ) </a></b></pre><p>draws frame with half-sunken border ! </p><pre><b><a name="0">:M +Value: ( n -- ) </a></b></pre><p>increases the value of progress bar by specified increment </p><pre><b><a name="0">:M GetValue: ( -- n ) --- 486,494 ---- </p><pre><b><a name="0">:M SunkenFrame: ( -- ) </a></b></pre><p>draws frame with half-sunken border ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of StaticFrame class ! </p><hr><p>Document $Id$</p> ! </body></html> ! <pre><b><a name="0">:M +Value: ( n -- ) </a></b></pre><p>increases the value of progress bar by specified increment </p><pre><b><a name="0">:M GetValue: ( -- n ) |
From: Dirk B. <db...@us...> - 2006-01-21 08:59:50
|
Update of /cvsroot/win32forth/win32forth/apps/SciEdit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14799/apps/SciEdit Modified Files: CommandID.f EdCommand.f EdMenu.f EdVersion.f Main.f ScintillaMDI.f Log Message: Some more commands added to the DexH menu. Index: EdVersion.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/EdVersion.f,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** EdVersion.f 8 Jan 2006 09:25:36 -0000 1.8 --- EdVersion.f 21 Jan 2006 08:59:41 -0000 1.9 *************** *** 1,5 **** \ $Id$ ! 10126 value sciedit_version# \ Version numbers: v.ww.rr --- 1,5 ---- \ $Id$ ! 10127 value sciedit_version# \ Version numbers: v.ww.rr *************** *** 217,221 **** - New "DexH" menu. - Moved "Glossary" command into the DexH menu. ! - New "Bold" command (ALT+B) that turns the selected text into bold style for DexH. ! - New "Italic" command (ALT+I) that turns the selected text into italic style for DexH. ! - Fixed some bugs --- 217,232 ---- - New "DexH" menu. - Moved "Glossary" command into the DexH menu. ! - New "Bold" command (ALT+B) that turns the selected text into bold style ! for DexH. ! - New "Italic" command (ALT+I) that turns the selected text into italic ! style for DexH. ! - Fixed some bugs. ! ! \ changes for Version 1.01.27 ! dbu Samstag, Januar 21 2006 ! - New "Paragraph" command (ALT+P), that turns the selected lines into ! a paragraph (for DexH) ! - New "Code paragraph" command (CTRL+ALT+C), that turns the selected lines ! into a paragraph that is a code example (for DexH). ! - New "Typewriter" command (CTRL+ALT+T) that turns the selected text into ! typwriter style for DexH. Index: EdMenu.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/EdMenu.f,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** EdMenu.f 8 Jan 2006 09:25:36 -0000 1.6 --- EdMenu.f 21 Jan 2006 08:59:41 -0000 1.7 *************** *** 72,78 **** Popup "&DexH" ! :MenuItem me_glossaryblock "&Glossary\tAlt+G" IDM_GLOSSARY_BLOCK DoCommand ; ! :MenuItem me_glossarybold "&Bold\tAlt+B" IDM_GLOSSARY_BOLD DoCommand ; ! :MenuItem me_glossaryitalic "&Italic\tAlt+I" IDM_GLOSSARY_ITALIC DoCommand ; Popup "&View" --- 72,82 ---- Popup "&DexH" ! :MenuItem me_dexGlossary "&Glossary\tAlt+G" IDM_DEX_GLOSSARY DoCommand ; ! :MenuItem me_dexParagraph "&Paragraph\tAlt+P" IDM_DEX_PARAGRAPH DoCommand ; ! :MenuItem me_dexCodeParagraph "&Code paragraph\tCtrl+Alt+C" IDM_DEX_CODE_PARAGRAPH DoCommand ; ! MenuSeparator ! :MenuItem me_dexStyleBold "&Bold\tAlt+B" IDM_DEX_STYLE_BOLD DoCommand ; ! :MenuItem me_dexStyleItalic "&Italic\tAlt+I" IDM_DEX_STYLE_ITALIC DoCommand ; ! :MenuItem me_dexStyleTypewriter "&Typewriter\tCtrl+Alt+T" IDM_DEX_STYLE_TYPEWRITER DoCommand ; Popup "&View" *************** *** 200,206 **** \ DexH menu ! dup Enable: me_glossaryblock ! dup Enable: me_glossarybold ! dup Enable: me_glossaryitalic \ View menu --- 204,213 ---- \ DexH menu ! dup Enable: me_dexGlossary ! dup Enable: me_dexParagraph ! dup Enable: me_dexCodeParagraph ! dup Enable: me_dexStyleBold ! dup Enable: me_dexStyleItalic ! dup Enable: me_dexStyleTypewriter \ View menu *************** *** 264,270 **** \ DexH menu ! ?Selection: ActiveChild Enable: me_glossaryblock ! ?Selection: ActiveChild Enable: me_glossarybold ! ?Selection: ActiveChild Enable: me_glossaryitalic \ View menu --- 271,280 ---- \ DexH menu ! ?Selection: ActiveChild Enable: me_dexGlossary ! ?Selection: ActiveChild Enable: me_dexParagraph ! ?Selection: ActiveChild Enable: me_dexCodeParagraph ! ?Selection: ActiveChild Enable: me_dexStyleBold ! ?Selection: ActiveChild Enable: me_dexStyleItalic ! ?Selection: ActiveChild Enable: me_dexStyleTypewriter \ View menu Index: EdCommand.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/EdCommand.f,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** EdCommand.f 8 Jan 2006 09:25:36 -0000 1.6 --- EdCommand.f 21 Jan 2006 08:59:41 -0000 1.7 *************** *** 193,205 **** \ DexH menu \ -------------------------------------------------------------------------- ! : GlossaryBlock ( -- ) ! GlossaryBlock: ActiveChild Update ; IDM_GLOSSARY_BLOCK SetCommand ! : GlossaryBold ( -- ) ! GlossaryBold: ActiveChild Update ; IDM_GLOSSARY_BOLD SetCommand ! : GlossaryItalic ( -- ) ! GlossaryItalic: ActiveChild Update ; IDM_GLOSSARY_ITALIC SetCommand \ -------------------------------------------------------------------------- --- 193,213 ---- \ DexH menu \ -------------------------------------------------------------------------- + : DexGlossary ( -- ) + DexGlossary: ActiveChild Update ; IDM_DEX_GLOSSARY SetCommand ! : DexParagraph ( -- ) ! DexParagraph: ActiveChild Update ; IDM_DEX_PARAGRAPH SetCommand ! : DexCodeParagraph ( -- ) ! DexCodeParagraph: ActiveChild Update ; IDM_DEX_CODE_PARAGRAPH SetCommand ! : DexStyleBold ( -- ) ! DexStyleBold: ActiveChild Update ; IDM_DEX_STYLE_BOLD SetCommand ! ! : DexStyleItalic ( -- ) ! DexStyleItalic: ActiveChild Update ; IDM_DEX_STYLE_ITALIC SetCommand ! ! : DexStyleTypewriter ( -- ) ! DexStyleTypewriter: ActiveChild Update ; IDM_DEX_STYLE_TYPEWRITER SetCommand \ -------------------------------------------------------------------------- Index: Main.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/Main.f,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Main.f 11 Jan 2006 17:45:19 -0000 1.15 --- Main.f 21 Jan 2006 08:59:41 -0000 1.16 *************** *** 622,628 **** \ DexH menu ! FALT 'G' IDM_GLOSSARY_BLOCK ACCELENTRY ! FALT 'B' IDM_GLOSSARY_BOLD ACCELENTRY ! FALT 'I' IDM_GLOSSARY_ITALIC ACCELENTRY \ Properties menu --- 622,631 ---- \ DexH menu ! FALT 'G' IDM_DEX_GLOSSARY ACCELENTRY ! FALT 'P' IDM_DEX_PARAGRAPH ACCELENTRY ! FALT FCONTROL or 'C' IDM_DEX_CODE_PARAGRAPH ACCELENTRY ! FALT 'B' IDM_DEX_STYLE_BOLD ACCELENTRY ! FALT 'I' IDM_DEX_STYLE_ITALIC ACCELENTRY ! FALT FCONTROL or 'T' IDM_DEX_STYLE_TYPEWRITER ACCELENTRY \ Properties menu Index: CommandID.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/CommandID.f,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** CommandID.f 8 Jan 2006 09:25:36 -0000 1.6 --- CommandID.f 21 Jan 2006 08:59:41 -0000 1.7 *************** *** 57,63 **** \ DexH menu ! NewID IDM_GLOSSARY_BLOCK ! NewID IDM_GLOSSARY_BOLD ! NewID IDM_GLOSSARY_ITALIC \ View menu --- 57,66 ---- \ DexH menu ! NewID IDM_DEX_GLOSSARY ! NewID IDM_DEX_PARAGRAPH ! NewID IDM_DEX_CODE_PARAGRAPH ! NewID IDM_DEX_STYLE_BOLD ! NewID IDM_DEX_STYLE_ITALIC ! NewID IDM_DEX_STYLE_TYPEWRITER \ View menu Index: ScintillaMDI.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/SciEdit/ScintillaMDI.f,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** ScintillaMDI.f 8 Jan 2006 09:25:36 -0000 1.7 --- ScintillaMDI.f 21 Jan 2006 08:59:41 -0000 1.8 *************** *** 475,479 **** \ ---------------------------------------------------------------------------- ! :M GlossaryBlock: { \ FirstLine? -- } \ Turn a block of lines into a glossary entry ?Selection: self if true to FirstLine? --- 475,479 ---- \ ---------------------------------------------------------------------------- ! : DexBlock { addr \ FirstLine? -- } ?Selection: self if true to FirstLine? *************** *** 487,497 **** i PositionFromLine: ChildWindow FirstLine? ! if z" \ *G " false to FirstLine? else z" \ ** " then InsertText: ChildWindow loop EndUndoAction: ChildWindow ! then ;M ! : GlossaryStyle { addr len \ slen $buf1 $buf2 -- } 0 GetSelText: ChildWindow dup to slen if slen LocalAlloc: $buf1 $buf1 GetSelText: ChildWindow --- 487,509 ---- i PositionFromLine: ChildWindow FirstLine? ! if addr false to FirstLine? else z" \ ** " then InsertText: ChildWindow loop EndUndoAction: ChildWindow ! then ; ! :M DexGlossary: ( -- ) ! \ *G Turn a block of lines into a Glossary entry. ! z" \ *G " DexBlock ;M ! ! :M DexParagraph: ( -- ) ! \ *G Turn a block of lines into a Paragraph. ! z" \ *P " DexBlock ;M ! ! :M DexCodeParagraph: ( -- ) ! \ *G Turn a block of lines into a Paragraph which is a code example. ! z" \ *E " DexBlock ;M ! ! : DexStyle { addr len \ slen $buf1 $buf2 -- } 0 GetSelText: ChildWindow dup to slen if slen LocalAlloc: $buf1 $buf1 GetSelText: ChildWindow *************** *** 503,511 **** then ; ! :M GlossaryBold: ( -- ) ! s" \b " GlossaryStyle ;M ! :M GlossaryItalic: ( -- ) ! s" \i " GlossaryStyle ;M \ ---------------------------------------------------------------------------- --- 515,529 ---- then ; ! :M DexStyleBold: ( -- ) ! \ *G Set \b bold \d text style for the selected text. ! s" \b " DexStyle ;M ! :M DexStyleItalic: ( -- ) ! \ *G Set \i italic \d text style for the selected text. ! s" \i " DexStyle ;M ! ! :M DexStyleTypewriter: ( -- ) ! \ *G Set \t typewriter \d text style for the selected text. ! s" \t " DexStyle ;M \ ---------------------------------------------------------------------------- |
From: Dirk B. <db...@us...> - 2006-01-17 17:52:21
|
Update of /cvsroot/win32forth/win32forth/src/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17801/src/lib Modified Files: excontrols.f Log Message: Started documenting ExControls.f (work in progress) Index: excontrols.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/lib/excontrols.f,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** excontrols.f 29 Aug 2005 15:56:28 -0000 1.5 --- excontrols.f 17 Jan 2006 17:52:00 -0000 1.6 *************** *** 5,8 **** --- 5,12 ---- \ Some classes based on Jeff Kelm's examples + \ *D doc\classes\ + \ *> Controls + \ *T ExControls -- More (enhanced) classes for standard windows controls. + anew -ExControls.f *************** [...2720 lines suppressed...] :M Disable: ( -- ) ! false Enable: self ;M :M Setfont: ( handle -- ) ! 1 swap WM_SETFONT SendMessage:Self drop ;M ! ! :M WindowTitle: ( -- null$ ) ! \ *G SintillaControl asks for window title of parent z" " ;M *************** *** 2004,2006 **** MODULE ! \S --- 1868,1871 ---- MODULE ! ! \ *Z |
From: Dirk B. <db...@us...> - 2006-01-17 17:52:16
|
Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17801/doc/classes Modified Files: Controls.htm Log Message: Started documenting ExControls.f (work in progress) Index: Controls.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Controls.htm,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Controls.htm 8 Jan 2006 09:28:07 -0000 1.2 --- Controls.htm 17 Jan 2006 17:51:59 -0000 1.3 *************** *** 16,20 **** <img border="0" src="../FORTHPRO.gif" width="32" height="32"> Win32Forth</h1> ! <hr /><h1>Controls -- Classes for standrad windows controls. </h1><hr /><a name="EditControl"></a> <h2>EditControl class --- 16,20 ---- <img border="0" src="../FORTHPRO.gif" width="32" height="32"> Win32Forth</h1> ! <hr /><h1>Controls -- Classes for standard windows controls. </h1><hr /><a name="EditControl"></a> <h2>EditControl class *************** *** 137,140 **** --- 137,444 ---- </p><pre><b><a name="0">;Class </a></b></pre><p>End of DialogWindow class + </p><hr /><h1>ExControls -- More (enhanced) classes for standard windows controls. + </h1><hr /><a name="TextBox"></a> + <h2>TextBox class + </h2><pre><b><a name="0">:Class TextBox <Super EditControl + </a></b></pre><p>Class for text edit controls + (enhaced Version of the EditControl class) + </p><pre><b><a name="0">:M SelectAll: ( -- ) + </a></b></pre><p>Select all the text in control. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of TextBox class + </p><a name="PassWordBox"></a> + <h2>PassWordBox class + </h2><pre><b><a name="0">:Class PassWordBox <super TextBox + </a></b></pre><p>Editcontrol for entering Passwords. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of PassWordBox class + </p><a name="MultiLineTextBox"></a> + <h2>MultiLineTextBox class + </h2><pre><b><a name="0">:Class MultiLineTextBox <super TextBox + </a></b></pre><p>MultiLineTextBox class + </p><pre><b><a name="0">:M SetMargins: ( left right -- ) + </a></b></pre><p>set margins for window + </p><pre><b><a name="0">:M Cut: ( -- ) + </a></b></pre><p>cut selected text to clipboard + </p><pre><b><a name="0">:M Copy: ( -- ) + </a></b></pre><p>copy selected text to clipboard + </p><pre><b><a name="0">:M Paste: ( -- ) + </a></b></pre><p>paste clipboard text to control + </p><pre><b><a name="0">:M Clear: ( -- ) + </a></b></pre><p>delete selected text (not to clipboard!) + </p><pre><b><a name="0">:M SetSelection: ( nEnd nStart -- ) + </a></b></pre><p>set selection range + </p><pre><b><a name="0">:M GetSelection: ( -- nEnd nStart) + </a></b></pre><p>return selection range + </p><pre><b><a name="0">:M SelectAll: ( -- ) + </a></b></pre><p>select all the text in control + </p><pre><b><a name="0">:M RemoveSelection: ( -- ) + </a></b></pre><p>remove any selection + </p><pre><b><a name="0">:M GetCursor: ( -- n ) + </a></b></pre><p>return location of cursor (chars from start) + </p><pre><b><a name="0">:M GetLine: ( -- n ) + </a></b></pre><p>return location of cursor (lines from start) + </p><pre><b><a name="0">:M Wrap: ( -- ) + </a></b></pre><p>set control to wrap text + </p><pre><b><a name="0">:M Unwrap: ( -- ) + </a></b></pre><p>set control to scroll instead of wrap text + </p><pre><b><a name="0">:M LineScroll: ( n -- ) + </a></b></pre><p>scroll n lines + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of MultiLineTextBox class + </p><a name="RichEditControl"></a> + <h2>RichEditControl class + </h2><pre><b><a name="0">:Class RichEditControl <Super MultiLineTextBox + </a></b></pre><p>RichEditControl class + </p><pre><b><a name="0">:M GetLines: ( -- nr ) + </a></b></pre><p>how many lines in control + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of RichEditControl class + </p><a name="ComboBox"></a> + <h2>ComboBox class + </h2><pre><b><a name="0">:Class ComboBox <super ComboControl + </a></b></pre><p>ComboBox control + (enhaced Version of the ComboControl class) + </p><pre><b><a name="0">:M InsertStringAt: ( lpszString posn -- ) + </a></b></pre><p>insert string in specified position (0 based) + </p><pre><b><a name="0">:M DeleteString: ( index -- ) + </a></b></pre><p>delete string in specified position (0 based) + </p><pre><b><a name="0">:M Clear: ( -- ) + </a></b></pre><p>clears all strings from combo box + </p><pre><b><a name="0">:M Find: ( lpszString -- index ) + </a></b></pre><p>search the list for an item beginning with the string (case-insensitive) + </p><pre><b><a name="0">:M FindExact: ( lpszString -- index ) + </a></b></pre><p>find the first item that matches the string exactly (case-insensitive) + </p><pre><b><a name="0">:M GetCount: ( -- n ) + </a></b></pre><p>return count of items in list + </p><pre><b><a name="0">:M SelectString: ( lpszString -- index ) + </a></b></pre><p>select item beginning with string + </p><pre><b><a name="0">:M GetStringAt: ( index -- a n ) + </a></b></pre><p>return string of specified item + </p><pre><b><a name="0">:M GetCurrent: ( -- index) + </a></b></pre><p>return current selection item + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of ComboBox class + </p><a name="ComboListBox"></a> + <h2>ComboListBox class + </h2><pre><b><a name="0">:Class ComboListBox <super ComboBox + </a></b></pre><p>ComboBox list control + </p><pre><b><a name="0">:M Start: ( Parent -- ) + </a></b></pre><p>we don't want the editcontrol in this control to be subclassed as with + super class. It shows the ibeam cursor so we override the start method + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of ComboListBox class + </p><a name="ListBox"></a> + <h2>ListBox class + </h2><pre><b><a name="0">:Class ListBox <super ListControl + </a></b></pre><p>ListBox control (single selection) + (enhaced Version of the ListControl class) + </p><pre><b><a name="0">:M AddString: ( lpszString -- ) + </a></b></pre><p>add a new string to the list box list + </p><pre><b><a name="0">:M InsertString: ( lpszString index -- ) + </a></b></pre><p>insert string in specified position (0 based) + </p><pre><b><a name="0">:M DeleteString: ( index -- ) + </a></b></pre><p>delete string in specified position (0 based) + </p><pre><b><a name="0">:M Find: ( lpszString -- index ) + </a></b></pre><p>search the list for an item beginning with the string (case-insensitive) + </p><pre><b><a name="0">:M FindExact: ( lpszString -- index ) + </a></b></pre><p>find the first item that matches the string exactly (case-insensitive) + </p><pre><b><a name="0">:M GetString: ( index -- a n ) + </a></b></pre><p>return string of specified item + </p><pre><b><a name="0">:M GetCurrent: ( -- index ) + </a></b></pre><p>return current selection item + </p><pre><b><a name="0">:M SelectString: ( lpszString -- index ) + </a></b></pre><p>select item beginning with string + </p><pre><b><a name="0">:M GetState: ( index -- f) + </a></b></pre><p>returns selection state of list item, tf=selected + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of ListBox class + </p><a name="MultiListbox"></a> + <h2>MultiListbox class + </h2><pre><b><a name="0">:Class MultiListbox <Super Listbox + </a></b></pre><p>ListBox control + MultiListbox allows multiple selections to be made. + Click once on an item to select it. Click again to deselect. + </p><pre><b><a name="0">:M Select: ( index -- ) + </a></b></pre><p>set selection of item + </p><pre><b><a name="0">:M Unselect: ( index -- ) + </a></b></pre><p>clear selection of item + </p><pre><b><a name="0">:M GetSelCount: ( -- n ) + </a></b></pre><p>returns number of selected items in list + </p><pre><b><a name="0">:M GetSelectedItems: { array cnt -- count } + </a></b></pre><p>return list of selected indices in array + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of MultiListbox class + </p><a name="MultiExListbox"></a> + <h2>MultiExListbox class + </h2><pre><b><a name="0">:Class MultiExListbox <Super MultiListbox + </a></b></pre><p>ListBox control + Also allows multiple selections to be made. + The difference is that Ctrl-Click selects and unselects + individual items and Shift-Click will select a range (as will + Shift-Drag. + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of MultiExListbox class + </p><a name="DragListbox"></a> + <h2>DragListbox class + </h2><pre><b><a name="0">:Class DragListbox <Super Listbox + </a></b></pre><p>ListBox control + Allows dragging of items in list box to re-order them + requires processing of drag list notification messages by the + application to actually do the dragging. + </p><pre><b><a name="0">:M Start: ( hParent -- ) + </a></b></pre><p>create an empty drag list box + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of DragListbox class + </p><a name="UpDownControl"></a> + <h2>UpDownControl class + </h2><pre><b><a name="0">:Class UpDownControl <Super Control + </a></b></pre><p>UpDownControl control + </p><pre><b><a name="0">:M StartSize: ( -- cx cy) + </a></b></pre><p>default window size + </p><pre><b><a name="0">:M StartPos: ( -- x y ) + </a></b></pre><p>default window position + </p><pre><b><a name="0">:M SetBuddy: ( hBuddy -- ) + </a></b></pre><p>assign buddy control + </p><pre><b><a name="0">:M GetValue: ( -- n ) + </a></b></pre><p>returns setting of up/down control + </p><pre><b><a name="0">:M SetValue: ( n -- ) + </a></b></pre><p>sets the up/down control position + </p><pre><b><a name="0">:M SetDecimal: ( -- ) + </a></b></pre><p>set display radix to decimal + </p><pre><b><a name="0">:M SetHex: ( -- ) + </a></b></pre><p>set display radix to hex + </p><pre><b><a name="0">:M GetBase: ( -- n ) + </a></b></pre><p>get current display radix + </p><pre><b><a name="0">:M SetRange: ( lower upper -- ) + </a></b></pre><p>set min & max limits + </p><pre><b><a name="0">:M GetRange: ( -- lower upper ) + </a></b></pre><p>retrieve min & max limits + </p><pre><b><a name="0">;Class + </a></b></pre><p>End of UpDownControl control + </p><pre><b><a name="0">:M IsButtonChecked?: ( -- f ) + </a></b></pre><p>send message to self through parent + </p><pre><b><a name="0">:M BlackRect: ( -- ) + </a></b></pre><p>rectangle in the window frame color (default is black) + </p><pre><b><a name="0">:M GrayRect: ( -- ) + </a></b></pre><p>rectangle in the screen background color (default is gray) + </p><pre><b><a name="0">:M WhiteRect: ( -- ) + </a></b></pre><p>rectangle in the window background color (default is white) + </p><pre><b><a name="0">:M BlackFrame: ( -- ) + </a></b></pre><p>frame in the window frame color (default is black) + </p><pre><b><a name="0">:M GrayFrame: ( -- ) + </a></b></pre><p>frame in the screen background color (default is gray) + </p><pre><b><a name="0">:M WhiteFrame: ( -- ) + </a></b></pre><p>frame in the window background color (default is white) + </p><pre><b><a name="0">:M EtchedFrame: ( -- ) + </a></b></pre><p>draws an etched frame (frame appears lower than background) + </p><pre><b><a name="0">:M SunkenFrame: ( -- ) + </a></b></pre><p>draws frame with half-sunken border + </p><pre><b><a name="0">:M +Value: ( n -- ) + </a></b></pre><p>increases the value of progress bar by specified increment + </p><pre><b><a name="0">:M GetValue: ( -- n ) + </a></b></pre><p>returns the current position value + </p><pre><b><a name="0">:M SetValue: ( n -- ) + </a></b></pre><p>sets the current position value + </p><pre><b><a name="0">:M SetRange: ( min max -- ) + </a></b></pre><p>sets the minimum and maximum values for progress bar + </p><pre><b><a name="0">:M SetStep: ( n -- ) + </a></b></pre><p>sets the step increment + </p><pre><b><a name="0">:M GetStep: ( -- n ) + </a></b></pre><p>returns the current step increment + </p><pre><b><a name="0">:M StepIt: ( -- ) + </a></b></pre><p>advances the current position by the step increment + </p><pre><b><a name="0">:M GetLineSize: ( -- n ) + </a></b></pre><p>how much the value changes for "line" up/down + </p><pre><b><a name="0">:M SetLineSize: ( n -- ) + </a></b></pre><p>sets how much the value changes for "line" up/down + </p><pre><b><a name="0">:M GetPageSize: ( -- n ) + </a></b></pre><p>how much the value changes for "page" up/down + </p><pre><b><a name="0">:M SetPageSize: ( n -- ) + </a></b></pre><p>sets how much the value changes for "page" up/down + </p><pre><b><a name="0">:M GetValue: ( -- n) + </a></b></pre><p>gets current slider value + </p><pre><b><a name="0">:M SetValue: ( n -- ) + </a></b></pre><p>sets slider to value + </p><pre><b><a name="0">:M SetRangeMax: ( max f -- ) + </a></b></pre><p>tf= redraw + </p><pre><b><a name="0">:M SetRangeMin: ( min f -- ) + </a></b></pre><p>tf= redraw + </p><pre><b><a name="0">:M SetSelEnd: ( end f -- ) + </a></b></pre><p>tf=redraw + </p><pre><b><a name="0">:M SetSelStart: ( start f -- ) + </a></b></pre><p>tf=redraw + </p><pre><b><a name="0">:M GetThumbLength: ( -- n ) + </a></b></pre><p>retrieves the length of the slider in a trackbar + </p><pre><b><a name="0">:M GetThumbRect: ( lpRect) + </a></b></pre><p>retrieves the bounding rectangle for the slider + </p><pre><b><a name="0">:M ClearTicks: ( f -- ) + </a></b></pre><p>removes the current tick marks, tf=redraw + </p><pre><b><a name="0">:M GetTickPos: ( iTic -- n) + </a></b></pre><p>in client coordinates + </p><pre><b><a name="0">:M SetTickFreq: ( pos freq -- ) + </a></b></pre><p>must have TBS_AUTOTICKS style set + </p><pre><b><a name="0">:M SetRange: ( min max f) + </a></b></pre><p>tf= redraw + </p><pre><b><a name="0">:M SetSel: ( min max f) + </a></b></pre><p>tf= redraw + </p><pre><b><a name="0">:M ClearSel: ( f -- ) + </a></b></pre><p>clears the current selection in a trackbar, tf=redraw + </p><pre><b><a name="0">:M WindowStyle: ( -- style ) + </a></b></pre><p>override if another style is needed + </p><pre><b><a name="0">:M RaisedBorder: ( -- ) + </a></b></pre><p>text drawn below border (default) + </p><pre><b><a name="0">:M NoBorder: ( -- ) + </a></b></pre><p>text drawn at border level (no border) + </p><pre><b><a name="0">:M SunkenBorder: ( -- ) + </a></b></pre><p>text drawn above border + </p><pre><b><a name="0">:M MinHeight: ( #pixels -- ) + </a></b></pre><p>set minimum height of text region (not including borders) + </p><pre><b><a name="0">:M GetBorders: ( -- hWidth vWidth divWidth) + </a></b></pre><p>returns the border widths in pixels + </p><pre><b><a name="0">:M Redraw: ( -- ) + </a></b></pre><p>redraw the statusbar after changes (e.g., size) + </p><pre><b><a name="0">:M SetText: ( szText -- ) + </a></b></pre><p>sets simple status bar text + </p><pre><b><a name="0">:M Clear: ( -- ) + </a></b></pre><p>clears text from status window + </p><pre><b><a name="0">:M SetParts: ( aWidths nParts -- ) + </a></b></pre><p>width table address and count + </p><pre><b><a name="0">:M GetParts: ( -- aWidths nParts ) + </a></b></pre><p>retrieve data structure info + </p><pre><b><a name="0">:M SetSimple: ( -- ) + </a></b></pre><p>sets status bar to show single-part + </p><pre><b><a name="0">:M SetMulti: ( -- ) + </a></b></pre><p>sets status bar to show multiparts + </p><pre><b><a name="0">:M SetText: ( szText n -- ) + </a></b></pre><p>set text in n'th part + </p><pre><b><a name="0">:M SetIcon: ( hIcon -- ) + </a></b></pre><p>set the icon image to use with the button + </p><pre><b><a name="0">:M GetIcon: ( -- hIcon) + </a></b></pre><p>get the icon image used with the button + </p><pre><b><a name="0">:M SetFont: ( hndl -- ) + </a></b></pre><p>dummy for ForthForm + </p><pre><b><a name="0">:M MinSize: ( -- x y) + </a></b></pre><p>return minimum size required to display a month + </p><pre><b><a name="0">:M SetCustomFormat: ( z"format" -- ) + </a></b></pre><p>set the display format for time or date + </p><pre><b><a name="0">:M GetTime: ( -- hrs min secs ) + </a></b></pre><p>get user selected time + </p><pre><b><a name="0">:M SetTime: ( hr min sec -- ) + </a></b></pre><p>set time for user to edit + </p><pre><b><a name="0">:M GetDate: ( -- day month year ) + </a></b></pre><p>get user selected date + </p><pre><b><a name="0">:M InsertTab: ( index -- ) + </a></b></pre><p>tc_item mask and other members must be set + </p><pre><b><a name="0">:M GetTabInfo: ( index -- ) + </a></b></pre><p>tc_item mask member must be set + </p><pre><b><a name="0">:M SetTabInfo: ( index -- ) + </a></b></pre><p>tc_item members must be set + </p><pre><b><a name="0">:M ClientSize: ( -- x y w h ) + </a></b></pre><p>return size of display area + </p><pre><b><a name="0">:M WindowSize: ( 0 0 width height -- x y w h ) + </a></b></pre><p>given display area return window size required + </p><pre><b><a name="0">:M WindowTitle: ( -- null$ ) + </a></b></pre><p>SintillaControl asks for window title of parent </p><hr><p>Document $Id$</p> </body></html> |
From: Dirk B. <db...@us...> - 2006-01-17 17:52:12
|
Update of /cvsroot/win32forth/win32forth/src/tools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17801/src/tools Modified Files: DexH-CreateDocs.f Log Message: Started documenting ExControls.f (work in progress) Index: DexH-CreateDocs.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/tools/DexH-CreateDocs.f,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** DexH-CreateDocs.f 15 Jan 2006 09:25:50 -0000 1.8 --- DexH-CreateDocs.f 17 Jan 2006 17:52:00 -0000 1.9 *************** *** 20,24 **** s" src\dialog.f" create-doc s" src\control.f" create-doc ! s" src\controls.f" create-doc s" src\lib\MdiDialog.f" create-doc s" src\lib\AXControl.F" create-doc --- 20,26 ---- s" src\dialog.f" create-doc s" src\control.f" create-doc ! -tr s" src\controls.f" create-doc ! +tr s" src\lib\excontrols.f" create-doc ! s" src\lib\MdiDialog.f" create-doc s" src\lib\AXControl.F" create-doc |
From: Dirk B. <db...@us...> - 2006-01-17 17:52:08
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17801/src Modified Files: CONTROLS.F Log Message: Started documenting ExControls.f (work in progress) Index: CONTROLS.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/CONTROLS.F,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** CONTROLS.F 31 Dec 2005 11:12:44 -0000 1.5 --- CONTROLS.F 17 Jan 2006 17:52:00 -0000 1.6 *************** *** 16,20 **** \ *D doc\classes\ \ *! Controls ! \ *T Controls -- Classes for standrad windows controls. cr .( Loading Low Level Controls...) --- 16,20 ---- \ *D doc\classes\ \ *! Controls ! \ *T Controls -- Classes for standard windows controls. cr .( Loading Low Level Controls...) |
From: George H. <geo...@us...> - 2006-01-16 15:47:58
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25551/win32forth/src Modified Files: FLOAT.F Log Message: gah: Further optimisations and some dexing (work in progress) Index: FLOAT.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/FLOAT.F,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** FLOAT.F 13 Jan 2006 12:05:01 -0000 1.23 --- FLOAT.F 16 Jan 2006 15:47:50 -0000 1.24 *************** *** 37,40 **** --- 37,59 ---- \ ------------------------------------------------------------------------- + \ *! doc\p-float W32F float + \ *T Floating point words in Win32Forth + + \ *P Win32Forth implements the full ANSI floating-point and floating-point extension + \ ** wordsets as well as a number of useful extra words. It uses a separate floating-point + \ ** stack (implemented in the USER area for task safety). + + \ *P The floating-point words can be compiled as 8 bit (for speed) or 10 bit (for accuracy). + \ ** The default when the system is built is 8 bit, but can be set to 10 bit (in src\extend.f) by + \ ** altering the CONSTANT B/FLOAT and re-extending the system (using setup.exe). + \ ** If the CONSTANT is not defined then the file automatically creates it and compiles + \ ** the code for 10 bit floats. + + \ *P The only error that is thrown is for FP stack Underflow (error code -45); + \ ** arithmetic operations which produce values too large to be represented use infinity, + \ ** while indeterminate results produce NANs. + + \ *S Glossary + cr .( Loading Floating Point...) *************** *** 172,176 **** end-code ! code finit ( -- ) \ W32F Float extra \ *G Clears the floating-point stack & sets the appropriate byte mode. \ ** It is executed by the system on start-up and by the default exception handler. --- 191,195 ---- end-code ! code finit ( -- ) \ W32F Floating extra \ *G Clears the floating-point stack & sets the appropriate byte mode. \ ** It is executed by the system on start-up and by the default exception handler. *************** *** 205,208 **** --- 224,235 ---- 0 value fsp-adjust + macro: +fsp-adjust + b/float +to fsp-adjust + endm + + macro: -fsp-adjust + b/float negate +to fsp-adjust + endm + \ makro to copy ST(0) on the seperate float stack macro: (FPU>) *************** *** 214,222 **** ! \ makro to move ST(0) on the seperate float stack macro: FPU> (FPU>) ! \ add ecx, # B/FLOAT ! B/FLOAT +to fsp-adjust endm --- 241,248 ---- ! \ macro to move ST(0) on the seperate float stack macro: FPU> (FPU>) ! +fsp-adjust endm *************** *** 226,231 **** mov ecx, FSP_MEMORY true to fsp-cached? then ! \ sub ecx, # B/FLOAT ! b/float negate +to fsp-adjust fld FSIZE fsp-adjust +FSTACK_MEMORY endm --- 252,256 ---- mov ecx, FSP_MEMORY true to fsp-cached? then ! -fsp-adjust fld FSIZE fsp-adjust +FSTACK_MEMORY endm *************** *** 234,239 **** macro: (>FPU) >FPU ! \ add ecx, # B/FLOAT ! b/float +to fsp-adjust endm --- 259,263 ---- macro: (>FPU) >FPU ! +fsp-adjust endm *************** *** 293,347 **** \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! code F@ ( addr -- ) ( FS: -- r ) \ fetch a float fld FSIZE DATASTACK_MEMORY FPU> - pop ebx float; ! code SF@ ( addr -- ) ( FS: -- r ) \ fetch a 32 bit (short) float fld float DATASTACK_MEMORY FPU> - pop ebx float; ! code DF@ ( addr -- ) ( FS: -- r ) \ fetch a 64 bit (double) float fld double DATASTACK_MEMORY FPU> - pop ebx float; ! code F! ( addr -- ) ( fs: r -- ) \ store a float fstack-check_1 - >FPU fstp FSIZE DATASTACK_MEMORY - pop ebx float; ! code SF! ( addr -- ) ( fs: r -- ) \ store a 32 bit (short) float fstack-check_1 - >FPU fstp float DATASTACK_MEMORY - pop ebx float; ! code DF! ( addr -- ) ( fs: r -- ) \ store a 64 bit (double) float fstack-check_1 - >FPU fstp double DATASTACK_MEMORY - pop ebx float; ! code F+! ( addr -- ) ( fs: r -- ) \ ? overflow error fstack-check_1 - >FPU fld FSIZE DATASTACK_MEMORY --- 317,370 ---- \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ *N Memory Access ! ! code F@ ( addr -- ) ( FS: -- r ) \ ANSI Floating ! \ *G Fetch a float. fld FSIZE DATASTACK_MEMORY FPU> pop ebx float; ! code SF@ ( addr -- ) ( FS: -- r ) \ ANSI Floating ext ! \ *G Fetch a 32 bit (short) float. fld float DATASTACK_MEMORY FPU> pop ebx float; ! code DF@ ( addr -- ) ( FS: -- r ) \ ANSI Floating ext ! \ *G Fetch a 64 bit (double) float. fld double DATASTACK_MEMORY FPU> pop ebx float; ! code F! ( addr -- ) ( fs: r -- ) \ ANSI Floating ! \ *G Store a float. fstack-check_1 >FPU fstp FSIZE DATASTACK_MEMORY pop ebx float; ! code SF! ( addr -- ) ( fs: r -- ) \ ANSI Floating ext ! \ *G Store a 32 bit (short) float. fstack-check_1 >FPU fstp float DATASTACK_MEMORY pop ebx float; ! code DF! ( addr -- ) ( fs: r -- ) \ ANSI Floating ext ! \ *G Store a 64 bit (double) float. fstack-check_1 >FPU fstp double DATASTACK_MEMORY pop ebx float; ! code F+! ( addr -- ) ( fs: r -- ) \ W32F Floating extra ! \ *G Add the value to a float. fstack-check_1 >FPU fld FSIZE DATASTACK_MEMORY *************** *** 365,375 **** in-system ! : FVARIABLE ( -<name>- ) \ compile time ! ( -- a1 ) \ runtime create B/FLOAT allot ; ! : FVALUE \ compiletime: ( FS: n - ) ( -<name>- ) create here B/FLOAT allot f! ! ;code \ runtime: ( FS: - n ) push ebx lea ebx, 4 [eax] --- 388,399 ---- in-system ! : FVARIABLE ( compiling -<name>- -- ; run-time -- addr) \ ANSI Floating ! \ *G Define a floating-point variable in the dictionary. The contents are undefined. create B/FLOAT allot ; ! : FVALUE ( compiling -<name>- -- FS: r -- ; run-time FS: -- r ) \ W32F Floating extra ! \ *G Define a floating point value initialised from the FP stack. create here B/FLOAT allot f! ! ;code push ebx lea ebx, 4 [eax] *************** *** 384,390 **** code _fto ( FS: n - ) ( 'fvalue - ) fstack-check_1 - >FPU ! add ebx, # 4 \ >body fstp FSIZE DATASTACK_MEMORY pop ebx --- 408,413 ---- code _fto ( FS: n - ) ( 'fvalue - ) fstack-check_1 >FPU ! add ebx, # cell \ >body fstp FSIZE DATASTACK_MEMORY pop ebx *************** *** 393,406 **** in-system ! : FTO ! state @ \ compiletime: ( FS: n - ) ( -<name_fvalue>- ) if postpone ['] postpone _fto ! else ' _fto \ runtime: ( FS: n - ) ( 'fvalue - ) then ; IMMEDIATE in-application ! : FCONSTANT ( -<name>- ) ( F: r -- ) \ compile time ! ( F: -- r ) \ runtime create here f! B/FLOAT allot does> f@ ; --- 416,436 ---- in-system ! : FTO \ W32F Floating extra ! \ *G \b Interpreting: ( -<fvalue>- -- FS: r -- ) \n ! \ ** Compiling: ( -<fvalue>- -- Run-time: FS: r -- ) \d ! \ *P Store r into -<fvalue>-. If -<fvalue>- is not defined with fvalue then memory may ! \ ** be corrupted; no checks are made so the user should take care. FTO should not be ! \ ** POSTPONEd. ! state @ if postpone ['] postpone _fto ! else ' _fto then ; IMMEDIATE in-application ! : FCONSTANT \ ANSI Floating ! \ *G \b Compiling: ( -<name>- ) ( F: r -- ) \n ! \ ** \b Run-time: ( F: -- r ) \d \n ! \ *P Define an FP constant. create here f! B/FLOAT allot does> f@ ; *************** *** 411,443 **** code fpush ( f: r -- ) ( fs: -- r ) \ move from FPU on simulated stack FPU> - float; DEPRECATED code fpop ( f: -- r ) ( fs: r -- ) \ move from simulated stack on FPU stack fstack-check_1 - >FPU - float; DEPRECATED ! code FDROP ( fs: r -- ) ! fstack-check_1 sub FSP_MEMORY , # B/FLOAT - float; ! code FDUP ( fs: r -- r r ) fstack-check_1 - - \ TODO optimize (>FPU) FPU> - float; code FSWAP ( fs: r1 r2 -- r2 r1 ) fstack-check_2 - \ TODO optimize 2>FPU --- 441,468 ---- code fpush ( f: r -- ) ( fs: -- r ) \ move from FPU on simulated stack FPU> float; DEPRECATED code fpop ( f: -- r ) ( fs: r -- ) \ move from simulated stack on FPU stack fstack-check_1 >FPU float; DEPRECATED ! \ *N Stack operations + code FDROP ( fs: r -- ) \ ANSI Floating + \ *G Remove r from the floating-point stack. + fstack-check_1 sub FSP_MEMORY , # B/FLOAT float; ! code FDUP ( fs: r -- r r ) \ ANSI Floating ! \ *G Duplicate the top entry on the floating-point stack. fstack-check_1 (>FPU) FPU> float; code FSWAP ( fs: r1 r2 -- r2 r1 ) fstack-check_2 \ TODO optimize 2>FPU *************** *** 450,486 **** code FOVER ( fs: r1 r2 -- r1 r2 r3 ) fstack-check_2 ! ! \ TODO optimize ! mov ecx, FSP_MEMORY ! sub ecx, # B/FLOAT 2* ! fld FSIZE FSTACK_MEMORY ! add ecx, # B/FLOAT 2* fstp FSIZE FSTACK_MEMORY ! add ecx, # B/FLOAT ! mov FSP_MEMORY , ecx ! float; code FROT ( fs: r1 r2 r3 -- r2 r3 r1 ) fstack-check_3 - - \ TODO optimize mov ecx, FSP_MEMORY ! sub ecx, # B/FLOAT ! fld FSIZE FSTACK_MEMORY ! sub ecx, # B/FLOAT ! fld FSIZE FSTACK_MEMORY ! sub ecx, # B/FLOAT ! fld FSIZE FSTACK_MEMORY ! add ecx, # B/FLOAT 2* ! fstp FSIZE FSTACK_MEMORY ! sub ecx, # B/FLOAT 2* ! fstp FSIZE FSTACK_MEMORY ! add ecx, # B/FLOAT ! fstp FSIZE FSTACK_MEMORY ! float; ! code FPICK ( n -- ) ( fs: -- r ) mov eax, ebx inc eax --- 475,503 ---- code FOVER ( fs: r1 r2 -- r1 r2 r3 ) fstack-check_2 ! fld FSIZE b/float 2* negate +FSTACK_MEMORY fstp FSIZE FSTACK_MEMORY ! +fsp-adjust float; code FROT ( fs: r1 r2 r3 -- r2 r3 r1 ) fstack-check_3 mov ecx, FSP_MEMORY ! -fsp-adjust ! fld FSIZE fsp-adjust +FSTACK_MEMORY ! -fsp-adjust ! fld FSIZE fsp-adjust +FSTACK_MEMORY ! -fsp-adjust ! fld FSIZE fsp-adjust +FSTACK_MEMORY ! +fsp-adjust +fsp-adjust ! fstp FSIZE fsp-adjust +FSTACK_MEMORY ! -fsp-adjust -fsp-adjust ! fstp FSIZE fsp-adjust +FSTACK_MEMORY ! +fsp-adjust ! fstp FSIZE fsp-adjust +FSTACK_MEMORY ! +fsp-adjust +fsp-adjust float; ! code FPICK ( n -- ) ( fs: -- r ) \ W32F Floating extra ! \ *G Copy the n'th number from the FP stack. mov eax, ebx inc eax *************** *** 491,511 **** [THEN] call fstack-check - - \ TODO optimize - push edx - mov eax, # B/FLOAT - mul eax, ebx - pop edx - mov ecx, FSP_MEMORY - mov ebx, ecx - sub ecx, # B/FLOAT sub ecx, eax fld FSIZE FSTACK_MEMORY ! mov ecx, ebx ! fstp FSIZE FSTACK_MEMORY ! add ecx, # B/FLOAT ! mov FSP_MEMORY , ecx ! pop ebx float; --- 508,517 ---- [THEN] call fstack-check sub ecx, eax fld FSIZE FSTACK_MEMORY ! add ecx, eax pop ebx + fstp FSIZE FSTACK_MEMORY + +fsp-adjust float; *************** *** 515,521 **** code F2DROP ( fs: r1 r2 -- ) fstack-check_2 - sub FSP_MEMORY , # B/FLOAT 2* - float; --- 521,525 ---- *************** *** 523,527 **** fover fover ; ! : F2SWAP ( fs: r1 r2 r3 r4 -- r3 r4 r2 r1 ) \ W32F Float extra \ *G Swap the top pair of floating-point numbers with the second pair. { \ ftemp -- } --- 527,531 ---- fover fover ; ! : F2SWAP ( fs: r1 r2 r3 r4 -- r3 r4 r2 r1 ) \ W32F Floating extra \ *G Swap the top pair of floating-point numbers with the second pair. { \ ftemp -- } *************** *** 537,557 **** \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! code fpi ( fs: -- r ) \ W32F Float extra ! \ *G Push the value 3.141596... on to the FP stack fldpi FPU> - float; ! code f1.0 ( fs: -- r ) fld1 FPU> - float; ! code fL2t ( fs: -- r ) \ log base 2 of 10 fldl2t FPU> - float; --- 541,562 ---- \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ! \ *N Constants ! ! code fpi ( fs: -- r ) \ W32F Floating extra ! \ *G Push the value 3.141596... on to the FP stack. fldpi FPU> float; ! code f1.0 ( fs: -- r ) \ W32F Floating extra ! \ *G Push the value 1.0 on to the FP stack. fld1 FPU> float; ! code fL2t ( fs: -- r ) \ W32F Floating extra ! \ *G Push the value of log base 2 of 10. fldl2t FPU> float; *************** *** 738,760 **** external ! code FLOOR ( fs: f1 -- fs: f2 ) push ebx ! mov bx, # 0x00400 \ Set rounding to -infinity (fround) pop ebx - float; ! code FCEIL ( fs: f1 -- fs: f2 ) \ Added 3/13/99 rls push ebx ! mov bx, # 0x00800 \ Set rounding to +infinity (fround) pop ebx - float; ! code FTRUNC ( fs: f1 -- fs: f2 ) \ Added 3/13/99 rls push ebx ! mov bx, # 0x00c00 \ Set rounding to truncate (fround) pop ebx --- 743,768 ---- external ! \ *N Rounding Modes ! ! code FLOOR ( fs: f1 -- fs: f2 ) \ ANSI Floating ! \ *G Set rounding mode to round to -infinity. push ebx ! mov bx, # 0x00400 (fround) pop ebx float; ! code FCEIL ( fs: f1 -- fs: f2 ) \ W32F Floating wxtra ! \ *G Set rounding mode to round to +infinity. push ebx ! mov bx, # 0x00800 (fround) pop ebx float; ! code FTRUNC ( fs: f1 -- fs: f2 ) \ W32F Floating extra ! \ *G Set rounding mode to truncate. push ebx ! mov bx, # 0x00c00 (fround) pop ebx *************** *** 762,771 **** float; ! code FROUND ( fs: f1 -- fs: f2 ) push ebx ! mov bx, # 0x00000 \ set rounding to nearest (fround) pop ebx - float; --- 770,779 ---- float; ! code FROUND ( fs: f1 -- fs: f2 ) \ ANSI Floating ! \ *G Set rounding mode to round to nearest. push ebx ! mov bx, # 0x00000 (fround) pop ebx float; *************** *** 775,778 **** --- 783,788 ---- \ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ + \ *N Integer to float coversion + code D>F ( d -- ) ( F: -- r ) lea esp, -4 [esp] *************** *** 794,798 **** >FPU push ebx ! mov bx, # 0x00c00 \ Set rounding to chop set-rounding-mode sub esp, # 8 --- 804,808 ---- >FPU push ebx ! mov bx, # 0x00c00 \ Set rounding to truncate set-rounding-mode sub esp, # 8 *************** *** 918,970 **** code F- ( fs: r1 r2 -- r3 ) \ ? overflow errors fstack-check_2 - 2>FPU ! fxch ! fsubp st(1), st FPU> - float; code F* ( fs: r1 r2 -- r3 ) \ ? overflow errors fstack-check_2 - 2>FPU fmulp st(1), st FPU> - float; code F/ ( fs: r1 r2 -- r3 ) \ ? error for ofl or /0 ? fstack-check_2 - 2>FPU fxch fdivp st(1), st FPU> - float; code FATAN2 ( fs: r1 r2 -- r3 ) \ OK for valid args fstack-check_2 - 2>FPU fxch fpatan FPU> - float; code FNEGATE ( fs: r1 -- r2 ) fstack-check_1 - >FPU fchs FPU> - float; code f2/ ( fs: r1 -- r2 ) fstack-check_1 - fld1 fchs --- 928,969 ---- code F- ( fs: r1 r2 -- r3 ) \ ? overflow errors fstack-check_2 2>FPU ! \ fxch ! fsubrp st(1), st FPU> float; code F* ( fs: r1 r2 -- r3 ) \ ? overflow errors fstack-check_2 2>FPU fmulp st(1), st FPU> float; code F/ ( fs: r1 r2 -- r3 ) \ ? error for ofl or /0 ? fstack-check_2 2>FPU fxch fdivp st(1), st FPU> float; code FATAN2 ( fs: r1 r2 -- r3 ) \ OK for valid args fstack-check_2 2>FPU fxch fpatan FPU> float; code FNEGATE ( fs: r1 -- r2 ) fstack-check_1 >FPU fchs FPU> float; code f2/ ( fs: r1 -- r2 ) fstack-check_1 fld1 fchs *************** *** 973,982 **** FPU> fstp st(0) - float; code f2* ( fs: r1 -- r2 ) \ ? overflow error fstack-check_1 - fld1 >FPU --- 972,979 ---- *************** *** 984,1012 **** FPU> fstp st(0) - float; code FABS ( fs: r1 -- r2 ) fstack-check_1 - >FPU fabs FPU> - float; code FSQRT ( fs: r1 -- r2 ) fstack-check_1 - >FPU fabs \ ? error for x < 0 ? fsqrt FPU> - float; code FLN ( fs: r1 -- r2 ) fstack-check_1 - fldln2 >FPU --- 981,1003 ---- *************** *** 1014,1023 **** fyl2x FPU> - float; code FACOSH ( fs: r1 -- r2 ) \ ? error for x < 1 fstack-check_1 - fldln2 >FPU --- 1005,1012 ---- *************** *** 1032,1036 **** fyl2x FPU> - float; --- 1021,1024 ---- *************** *** 2030,2036 **** \ <-- rbs ! \ ****************************************************************** \ Debugging tools ! \ ****************************************************************** create allregs 110 allot --- 2018,2024 ---- \ <-- rbs ! \ \****************************************************************** \ Debugging tools ! \ \****************************************************************** create allregs 110 allot *************** *** 2255,2256 **** --- 2243,2245 ---- )) + \ *Z |
From: Dirk B. <db...@us...> - 2006-01-15 11:07:38
|
Update of /cvsroot/win32forth/win32forth/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14226/doc Modified Files: p-relnotes.6.12.htm Log Message: Update to match Win32Forth release 6.11.08 Index: p-relnotes.6.12.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/p-relnotes.6.12.htm,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** p-relnotes.6.12.htm 8 Oct 2005 08:24:21 -0000 1.6 --- p-relnotes.6.12.htm 15 Jan 2006 11:07:27 -0000 1.7 *************** *** 28,34 **** <h2>Contributors (in alphabetical order) </h2> <dir> <li>Ezra Boyce</li> <li>Dirk Busch</li> ! <li>Thomas Dixon (COM and ActiveX support)</li> <li>Bruno Gauthier</li> <li>George Hubert</li> --- 28,35 ---- <h2>Contributors (in alphabetical order) </h2> <dir> + <li>Brad Eckert</li> <li>Ezra Boyce</li> <li>Dirk Busch</li> ! <li>Thomas Dixon</li> <li>Bruno Gauthier</li> <li>George Hubert</li> *************** *** 81,84 **** --- 82,86 ---- <h3>Documentation</h3> <p> + A lot of new documentation was added using Brad Eckert's <a href="p-dexh.htm">DexH - Document Extractor</a>. </p> <h3>Bug fixes</h3> *************** *** 107,111 **** <h2>New Controls</h2> <ul> ! <li><a href="../src/lib/HTMLControl.F">HTML browser control</a> This is a HTML browser control that can be used for all kinds of things. </li> --- 109,113 ---- <h2>New Controls</h2> <ul> ! <li><a href="./classes/HTMLControl.htm">HTML browser control</a> This is a HTML browser control that can be used for all kinds of things. </li> *************** *** 124,128 **** </li> ! <li><a href="../src/lib/AXControl.F">Generic Activex Control</a> <p><pre> AXControl is a class that can be treated like any other control in --- 126,130 ---- </li> ! <li><a href="./classes/AXControl.htm">Generic Activex Control</a> <p><pre> AXControl is a class that can be treated like any other control in *************** *** 161,164 **** --- 163,207 ---- </ul> + <h2>New GDI class library</h2> + <ul> + <li><a href="./classes/gdiStruct.htm#gdiPOINT">gdiPOINT</a> Wrapper class for a POINT struct.</li> + <li><a href="./classes/gdiStruct.htm#gdiCOLORREF">gdiCOLORREF</a> Wrapper class for a COLORREF struct.</li> + <li><a href="./classes/gdiStruct.htm#gdiRGBQUAD">gdiRGBQUAD</a> Wrapper class for a RGBQUAD struct.</li> + <li><a href="./classes/gdiStruct.htm#gdiSIZE">gdiSIZE</a> Wrapper class for a SIZE struct.</li> + <li><a href="./classes/gdiStruct.htm#gdiTEXTMETRIC">gdiTEXTMETRIC</a> Wrapper class for a TEXTMETRIC struct.</li> + </ul> + <ul> + <li><a href="./classes/gdiBase.htm">gdiBase</a> Base class for GDI objects.</li> + <li><a href="./classes/gdiPen.htm#gdiPen">gdiPen</a> Class for cosmetic pen's.</li> + <li><a href="./classes/gdiPen.htm#gdiGeometricPen">gdiGeometricPen</a> Class for geometric pen's.</li> + <li><a href="./classes/gdiBrush.htm#gdiBrush">gdiBrush</a> Base class for all brush objects.</li> + <li><a href="./classes/gdiBrush.htm#gdiSolidBrush">gdiSolidBrush</a> Solid brush class.</li> + <li><a href="./classes/gdiBrush.htm#gdiHatchBrush">gdiHatchBrush</a> Hatch brush class.</li> + <li><a href="./classes/gdiBrush.htm#gdiPatternBrush">gdiPatternBrush</a> Pattern brush class.</li> + <li><a href="./classes/gdiBrush.htm#gdiDIBPatternBrush">gdiDIBPatternBrush</a> DIB Pattern brush class.</li> + <li><a href="./classes/gdiFont.htm">gdiFont</a> Font class.</li> + <li><a href="./classes/gdiBitmap.htm">gdiBitmap</a> Bitmap class.</li> + <li><a href="./classes/gdiMetafile.htm">gdiMetafile</a> Enhanced metafile class.</li> + <li><a href="./classes/gdiDC.htm">gdiDC</a> Device context class.</li> + <li><a href="./classes/gdiWindowDC.htm">gdiWindowDC</a> Window device context class.</li> + <li><a href="./classes/gdiMetafileDC.htm">gdiMetafileDC</a> Metafile device context class.</li> + </ul> + <p> The 'old' classes in Win32Forth that are dealing with the GDI:</p> + <ul> + <li><b>ColorObject</b> Class for color objects.</li> + <li><b>ExtColorObject</b> Class for extended color objects.</li> + <li><b>HatchColorObject</b> Class for hatch color objects.</li> + <li><b>Font</b> Class for fonts.</li> + <li><b>WinDC</b> Device context class for windows.</li> + <li><b>WinPrinter</b> Device context class for printing.</li> + </ul> + <p>were rewritten to use the GDI class library.</p> + + <h2>Other new classes</h2> + <ul> + <li><a href="./classes/TrayWindow.htm">TrayWindow</a> Class for windows that hide themself in the TrayBar when + they are minimized.</li> + </ul> + <h2>New Demos</h2> <ul> *************** *** 167,170 **** --- 210,215 ---- <li><a href="../demos/FlashControlDemo.f">demos/FlashControlDemo.f - Shows how to use the FlashControl</a></li> <li>demos\COM\*.f - Various demos for the new COM interface.</li> + <li>demos\GdiDemo\*.f - Various demos for the new GDI class library. Most of them were original written by + David R. Pochin.</li> </ul> *************** *** 173,176 **** --- 218,222 ---- <li><a href="../src/tools/AxConList.f">src/tools/AxConList.f - Shows a list of all installed ActiveX controls</a></li> <li><a href="../src/tools/AxConInfo.f">src/tools/AxConInfo.f - Shows informations about an ActiveX control</a></li> + <li><a href="p-dexh.htm">DexH - Document Extractor</a></li> </ul> |
From: Dirk B. <db...@us...> - 2006-01-15 11:07:38
|
Update of /cvsroot/win32forth/win32forth/src/kernel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14226/src/kernel Modified Files: version.f Log Message: Update to match Win32Forth release 6.11.08 Index: version.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/kernel/version.f,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** version.f 12 Nov 2005 10:51:10 -0000 1.8 --- version.f 15 Jan 2006 11:07:27 -0000 1.9 *************** *** 3,7 **** cr .( Loading META version info) ! 61107 VALUE #VERSION# \ Change only the version number above; the build number is automatically assigned. --- 3,7 ---- cr .( Loading META version info) ! 61108 VALUE #VERSION# \ Change only the version number above; the build number is automatically assigned. |