Re: Keywords and Namesapces
- Posted by Vinoba Oct 09, 2011
- 40249 views
We have digressed from the main thrust of my argument. An extra parameter is not particularly time consuming nor difficult to implement. In Windows programming, most of the time the waiting is done by Bill Gates, not by me the programmer. Same philosophy applies to Windows under Limux and Mac, whatever you call it.
Here I have taken actual functions in wxEuphoria in CONTROL.HTML and changed to reflect what can be done.
-- New function -- client_transfer ( atom window , atom x , atom y , integer direction ) --(Link: #CLIENT_TRANSFER) -- integer direction = 1: client_to_window , -1: screen_to_client, 0: move -- -- the following could be deprecated -- client_to_screen (Link: #CLIENT_TO_SCREEN)( atom window, atom x, atom y ) -- screen_to_client (Link: #SCREEN_TO_CLIENT)( atom window, atom x, atom y ) -- move (Link: #MOVE)( atom win, integer x, integer y )
The following illustrates even further saving in the number of functions that a programmer has to struggle with.
-- New function get_winitems ( atom window , integer item ) --(Link: #GET_WINITEMS) -- integer item = 1: children, 2: parent, 3: rectangle, -- integer item 4: set focus, - 1: ?is_visible , 0: desktop window -- -- For get_desktop_window, one would ignore the atom window parameter in Euphria, -- before invoking the appropriate wxwidget dll item. -- -- -- the following could be deprecated -- get_children (Link: #GET_CHILDREN)( atom window ) -- get_parent (Link: #GET_PARENT)( atom window ) -- get_rect (Link: #GET_RECT)( atom win ) -- is_visible (Link: #IS_VISIBLE)( atom window ) -- set_focus (Link: #SET_FOCU)( atom window ) -- get_desktop_window (Link: #GET_DESKTOP_WINDOW)()
In the above examples, the time taken e.g. for client_to_screen or for get_rect in the second example, is far in excess of the extra time required for analysing (either in Euphoria or Assempler or C) integer direction and integer item respectively.