HMG 2.6.6

HMG announcements; Latest HMG-related news, releases, fixes and updates.

Moderator: Rathinagiri

User avatar
mol
Posts: 2668
Joined: Thu Sep 11, 2008 5:31 am
Location: Myszków, Poland
Has thanked: 69 times
Been thanked: 24 times
Contact:

Re: HMG 2.6.6

Post by mol » Mon Oct 06, 2008 12:05 pm

I have a function, called from window OknoUstawienia, which opens new window in position related to row of grid

function ZmienPozycjePlatnosci
param lNowyRekord
local x,y
private ZapiszZmiany := .f.

load window OknoZmianPlatnosci

x:= OknoUstawienia.ROW+OknoUstawienia.B_KodyPlatnosci.Row+20
//-------^^^^^^^^^^^^
// this line I must change to:
//x := GetProperty("OknoUstawienia","ROW")+OknoUstawienia.B_KodyPlatnosci.Row + 20

y:=OknoUstawienia.COL+OknoUstawienia.B_KodyPlatnosci.Col+20
//-------^^^^^^^^^^^^
// this line I must change to:
// y := GetProperty("OknoUstawienia","COL")+OknoUstawienia.B_KodyPlatnosci.Col + 20

OknoZmianPlatnosci.Row := x
OknoZmianPlatnosci.Col := y
if !Nowyrekord
OknoZmianPlatnosci.T_Nazwa.Value := kody_pl->nazwa
OknoZmianPlatnosci.T_LiczbaDni.Value := kody_pl->liczba_dni
OknoZmianPlatnosci.C_Zaplacono.Value := kody_pl->zaplacono
endif

OknoZmianPlatnosci.title := if(lNowyRekord,"Nowa forma płatności","Popraw formę płatności")
activate window OknoZmianPlatnosci

set key K_ESC to

return


Error occurs during compilation time when I have changed hmg to ver 2.6.6

Regards, Marek

User avatar
gfilatov
Posts: 498
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 5 times
Been thanked: 25 times
Contact:

Post by gfilatov » Mon Oct 06, 2008 12:28 pm

mol wrote:I have a function, called from window OknoUstawienia, which opens new window in position related to row of grid

function ZmienPozycjePlatnosci
param lNowyRekord
local x,y
private ZapiszZmiany := .f.

load window OknoZmianPlatnosci

x:= OknoUstawienia.ROW+OknoUstawienia.B_KodyPlatnosci.Row+20
//-------^^^^^^^^^^^^
// this line I must change to:
//x := GetProperty("OknoUstawienia","ROW")+OknoUstawienia.B_KodyPlatnosci.Row + 20

y:=OknoUstawienia.COL+OknoUstawienia.B_KodyPlatnosci.Col+20
//-------^^^^^^^^^^^^
// this line I must change to:
// y := GetProperty("OknoUstawienia","COL")+OknoUstawienia.B_KodyPlatnosci.Col + 20

OknoZmianPlatnosci.Row := x
OknoZmianPlatnosci.Col := y
if !Nowyrekord
OknoZmianPlatnosci.T_Nazwa.Value := kody_pl->nazwa
OknoZmianPlatnosci.T_LiczbaDni.Value := kody_pl->liczba_dni
OknoZmianPlatnosci.C_Zaplacono.Value := kody_pl->zaplacono
endif

OknoZmianPlatnosci.title := if(lNowyRekord,"Nowa forma płatności","Popraw formę płatności")
activate window OknoZmianPlatnosci

set key K_ESC to

return


Error occurs during compilation time when I have changed hmg to ver 2.6.6
Marek,

Kindly try to change your function as follows
function ZmienPozycjePlatnosci
param lNowyRekord
local x := OknoUstawienia.ROW
local y := OknoUstawienia.COL
private ZapiszZmiany := .f.

load window OknoZmianPlatnosci

x += OknoUstawienia.B_KodyPlatnosci.Row+20

y += OknoUstawienia.B_KodyPlatnosci.Col+20
...
I hope that give you an idea :idea:
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

User avatar
Roberto Lopez
HMG Founder
Posts: 3875
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 11 times
Been thanked: 103 times

Post by Roberto Lopez » Mon Oct 06, 2008 8:48 pm

mol wrote:I have a function, called from window OknoUstawienia, which opens new window in position related to row of grid
<...>
Error occurs during compilation time when I have changed hmg to ver 2.6.6

Regards, Marek
Marek,

As I've said in a previous message, the changes I've made must be backwards compatible, if not, there are bugs that I must fix.

Could you be so kind to post a little (complete) sample to allow to me to analyze the problem ?

TIA.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
gfilatov
Posts: 498
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 5 times
Been thanked: 25 times
Contact:

Post by gfilatov » Tue Oct 07, 2008 11:07 am

Roberto Lopez wrote:...
Could you be so kind to post a little (complete) sample to allow to me to analyze the problem ?
Roberto,

Please take a look for the following sample:

Code: Select all

/*
* MiniGUI Hello World Demo
* (c) 2002 Andrea Migliazzi
*/

#include "minigui.ch"

Function Main

Local aRows [20] [3]

	DEFINE WINDOW Form_1 ;
		AT 0,0 ;
		WIDTH 450 ;
		HEIGHT 400 ;
		TITLE 'Hello World!' ;
		MAIN ;
		ON SIZE onsize()

		aRows [1]	:= {'Simpson','Homer','555-5555'}
		aRows [2]	:= {'Mulder','Fox','324-6432'} 
		aRows [3]	:= {'Smart','Max','432-5892'} 
		aRows [4]	:= {'Grillo','Pepe','894-2332'} 
		aRows [5]	:= {'Kirk','James','346-9873'} 
		aRows [6]	:= {'Barriga','Carlos','394-9654'} 
		aRows [7]	:= {'Flanders','Ned','435-3211'} 
		aRows [8]	:= {'Smith','John','123-1234'} 
		aRows [9]	:= {'Pedemonti','Flavio','000-0000'} 
		aRows [10]	:= {'Gomez','Juan','583-4832'} 
		aRows [11]	:= {'Fernandez','Raul','321-4332'} 
		aRows [12]	:= {'Borges','Javier','326-9430'} 
		aRows [13]	:= {'Alvarez','Alberto','543-7898'} 
		aRows [14]	:= {'Gonzalez','Ambo','437-8473'} 
		aRows [15]	:= {'Batistuta','Gol','485-2843'} 
		aRows [16]	:= {'Vinazzi','Amigo','394-5983'} 
		aRows [17]	:= {'Pedemonti','Flavio','534-7984'} 
		aRows [18]	:= {'Samarbide','Armando','854-7873'} 
		aRows [19]	:= {'Pradon','Alejandra','???-????'} 
		aRows [20]	:= {'Reyes','Monica','432-5836'} 

		@ 10,10 GRID Grid_1 ;
		WIDTH 400 ;
		HEIGHT 330 ;
		HEADERS {'Last Name','First Name','Phone'} ;
		WIDTHS {140,140,140};
		ITEMS aRows ;
		VALUE 1 ;
		TOOLTIP 'Editable Grid Control' ;
		EDIT ;
                JUSTIFY { BROWSE_JTFY_LEFT,BROWSE_JTFY_RIGHT, BROWSE_JTFY_RIGHT }

	END WINDOW

	CENTER WINDOW Form_1

	ACTIVATE WINDOW Form_1

Return Nil

procedure onsize()
	form_1.grid_1.width := form_1.width - 50
	form_1.grid_1.height:= form_1.height - form_1.grid_1.row - 60
return
You will got the error message below after resizing the form_1 in aboved sample:
Harbour MiniGui Errorlog File

------------------------------------
Date:10/07/08 Time: 13:39:10
Error BASE/1003 Variable does not exist: _FORM_1_HEIGHT
Called from GETCONTROLTYPE(871)
Called from GETPROPERTY(6864)
Called from ONSIZE(62)
Called from (b)MAIN(18)
Called from _DOWINDOWEVENTPROCEDURE(4418)
Called from EVENTS(1183)
Called from _DOMESSAGELOOP(0)
Called from _ACTIVATEWINDOW(4083)
Called from MAIN(56)
because there is a mistake in the preprocessing for procedure onsize():

Code: Select all

procedure onsize()
    SetProperty ( "Form_1", "grid_1" , "width" , GetProperty ( "Form_1", "width" ) - 50 )
    SetProperty ( "Form_1", "grid_1" , "height" , GetProperty ( "Form_1", "height - form_1" , "grid_1" , "row" ) - 60 )
return
BTW This sample works properly with hmg 2.6.4 :!:
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

User avatar
Roberto Lopez
HMG Founder
Posts: 3875
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 11 times
Been thanked: 103 times

Post by Roberto Lopez » Tue Oct 07, 2008 9:39 pm

gfilatov wrote:
Roberto Lopez wrote:...
Could you be so kind to post a little (complete) sample to allow to me to analyze the problem ?
Roberto,
Please take a look for the following sample:
<...>
Thanks a lot Grigory!

I'll review it (and try to fix) ASAP.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3875
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 11 times
Been thanked: 103 times

Post by Roberto Lopez » Tue Oct 07, 2008 11:04 pm

Roberto Lopez wrote:
I'll review it (and try to fix) ASAP.

Regards,

Roberto.
Well... I've fixed, but since the fix could have undesirable side effects
, I'm posting it here for testing prior to create a full new build.

Any reports are welcome.

You only must to replace i_windows.ch in 2.6.6 with this:

Code: Select all


/*----------------------------------------------------------------------------
 MINIGUI - Harbour Win32 GUI library source code

 Copyright 2002-2008 Roberto Lopez <harbourminigui@gmail.com>
 http://harbourminigui.googlepages.com/

 This program is free software; you can redistribute it and/or modify it under 
 the terms of the GNU General Public License as published by the Free Software 
 Foundation; either version 2 of the License, or (at your option) any later 
 version. 

 This program is distributed in the hope that it will be useful, but WITHOUT 
 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

 You should have received a copy of the GNU General Public License along with 
 this software; see the file COPYING. If not, write to the Free Software 
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA (or 
 visit the web site http://www.gnu.org/).

 As a special exception, you have permission for additional uses of the text 
 contained in this release of Harbour Minigui.

 The exception is that, if you link the Harbour Minigui library with other 
 files to produce an executable, this does not by itself cause the resulting 
 executable to be covered by the GNU General Public License.
 Your use of that executable is in no way restricted on account of linking the 
 Harbour-Minigui library code into it.

 Parts of this project are based upon:

	"Harbour GUI framework for Win32"
 	Copyright 2001 Alexander S.Kresin <alex@belacy.belgorod.su>
 	Copyright 2001 Antonio Linares <alinares@fivetech.com>
	www - http://www.harbour-project.org

	"Harbour Project"
	Copyright 1999-2003, http://www.harbour-project.org/

	"WHAT32"
	Copyright 2002 AJ Wos <andrwos@aust1.net> 

	"HWGUI"
  	Copyright 2001-2007 Alexander S.Kresin <alex@belacy.belgorod.su>

---------------------------------------------------------------------------*/

// DECLARE WINDOW Translate Map (Semi-OOP Properties/Methods Access)

// 01-01	->	Window Property Get
// 02-02	->	Window Property Set
// 03-03	->	Window Methods
// 04-18	->	Standard Controls
// 19-20	->	ToolBar Child Buttons
// 21-33	->	Tab Child COntrols
// 34-48	->	SplitBox Child Controls
// 49-50	->	SplitBox Child ToolBar Buttons

	#xcommand DECLARE WINDOW <w> ;
	=>;
	#xtranslate <w>	. \<p:Name,Title,Height,Width,Col,Row,NotifyIcon,NotifyToolTip,FocusedControl> => GetProperty ( <"w">, \<"p"\> )  ;;
	#xtranslate <w>	. \<p:Name,Title,Height,Width,Col,Row,NotifyIcon,NotifyToolTip,FocusedControl,Cursor> := \<n\> => SetProperty ( <"w">, \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<p:Activate,Center,Release,Maximize,Minimize,Restore,Show,Hide,SetFocus,Print,Capture> \[()\] => DoMethod ( <"w">, \<"p"\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor,AllowEdit,Object,InputItems,DisplayItems\> => GetProperty ( <"w">, \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor,AllowEdit,InputItems,DisplayItems\> := \<n\> => SetProperty ( <"w">, \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AllowAppend,AllowDelete,ReadOnly> => GetProperty ( <"w">, \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AllowAppend,AllowDelete,ReadOnly> := \<n\> => SetProperty ( <"w">, \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Caption,Header,Item,Icon,HeaderImages> (\<arg\>) => GetProperty ( <"w">, \<"c"\> , \<"p"\> , \<arg\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Caption,Header,Item,Icon,HeaderImages> (\<arg\>) := \<n\> => SetProperty ( <"w">, \<"c"\> , \<"p"\> , \<arg\> , \<n\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) => GetProperty ( <"w">, \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) := \<n\> => SetProperty ( <"w">, \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> , \<n\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Refresh,SetFocus,DeleteAllItems,Release,Show,Save,Hide,Play,Stop,Close,Pause,Eject,OpenDialog,Resume,Action,OnClick> \[()\] => Domethod ( <"w">, \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AddItem,DeleteItem,Open,DeletePage,DeleteColumn,Expand,Collapse,Seek> (\<a\>) => Domethod ( <"w">, \<"c"\> , \<"p"\> , \<a\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\>) => Domethod ( <"w">, \<"c"\> , \<"p"\> , \<a1\> , \<a2\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\> , \<a3\> ) => Domethod ( <"w">, \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:AddItem,AddColumn,AddControl\> (\<a1\> , \<a2\> , \<a3\> , \<a4\> ) => Domethod ( <"w">, \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> , \<a4\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:Name,Length\> => GetProperty ( <"w">, \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<c\> . \<p:ReadOnly,Speed,Volume,Zoom\> := \<n\> => SetProperty ( <"w">, \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<x\> . \<c\> . \<p:Caption,Enabled,Value> => GetProperty ( <"w"> , \<"x"\> , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<x\> . \<c\> . \<p:Caption,Enabled,Value> := \<n\> => SetProperty ( <"w"> , \<"x"\> , \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor\> => GetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor\> := \<n\> => SetProperty ( <"w"> , \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Caption,Header,Item,Icon> (\<arg\>) => GetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<arg\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Caption,Header,Item,Icon> (\<arg\>) := \<n\> => SetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<arg\> , \<n\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Refresh,SetFocus,DeleteAllItems,Release,Show,Save,Hide,Play,Stop,Close,Pause,Eject,OpenDialog,Resume,Action,OnClick\> \[()\] => Domethod ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:AddItem,DeleteItem,Open,DeletePage,DeleteColumn,Expand,Collapse,Seek\> (\<a\>) => Domethod ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<a\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\>) => Domethod ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<a1\> , \<a2\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\> , \<a3\> ) => Domethod ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:AddItem,AddColumn,AddControl> (\<a1\> , \<a2\> , \<a3\> , \<a4\> ) => Domethod ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> , \<a4\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Name,Length> => GetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:ReadOnly,Speed,Volume,Zoom> := \<n\> => SetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) =>          GetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> ) ;;
	#xtranslate <w>	. \<x\> (\<k\>) . \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) := \<n\> => SetProperty ( <"w">, \<"x"\> , \<k\> , \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor,AllowEdit,Object,InputItems,DisplayItems\> => GetProperty ( <"w">, "SplitBox" , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Value,Name,Value,Address,BackColor,FontColor,Picture,ToolTip,FontName,FontSize,FontBold,FontItalic,FontUnderline,FontStrikeOut,Caption,Row,DisplayValue,Col,Width,Height,Visible,Enabled,Checked,ItemCount,RangeMin,RangeMax,Position,CaretPos,ForeColor,AllowEdit,InputItems,DisplayItems\> := \<n\> => SetProperty ( <"w">, "SplitBox" , \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AllowAppend,AllowDelete,ReadOnly> => GetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AllowAppend,AllowDelete,ReadOnly> := \<n\> => SetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Caption,Header,Item,Icon,HeaderImages> (\<arg\>) => GetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<arg\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Caption,Header,Item,Icon,HeaderImages> (\<arg\>) := \<n\> => SetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<arg\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) => GetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Cell> (\<arg1\>,\<arg2\>) := \<n\> => SetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<arg1\> , \<arg2\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Refresh,SetFocus,DeleteAllItems,Release,Show,Save,Hide,Play,Stop,Close,Pause,Eject,OpenDialog,Resume,Action,OnClick> \[()\] => Domethod ( <"w">, "SplitBox", \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AddItem,DeleteItem,Open,DeletePage,DeleteColumn,Expand,Collapse,Seek> (\<a\>) => Domethod ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<a\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\>) => Domethod ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<a1\> , \<a2\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AddItem,AddPage> (\<a1\> , \<a2\> , \<a3\> ) => Domethod ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:AddItem,AddColumn,AddControl\> (\<a1\> , \<a2\> , \<a3\> , \<a4\> ) => Domethod ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<a1\> , \<a2\> , \<a3\> , \<a4\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:Name,Length\> => GetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. SplitBox . \<c\> . \<p:ReadOnly,Speed,Volume,Zoom\> := \<n\> => SetProperty ( <"w">, "SplitBox", \<"c"\> , \<"p"\> , \<n\> ) ;;
	#xtranslate <w>	. SplitBox . \<x\> . \<c\> . \<p:Caption,Enabled,Value> => GetProperty ( <"w"> , "SplitBox" , \<"x"\> , \<"c"\> , \<"p"\> ) ;;
	#xtranslate <w>	. SplitBox . \<x\> . \<c\> . \<p:Caption,Enabled,Value> := \<n\> => SetProperty ( <"w"> , "SplitBox", \<"x"\> , \<"c"\> , \<"p"\> , \<n\> ) 

	#xcommand DEFINE WINDOW <w> ;
			AT <row>,<col> ;
			WIDTH <wi> ;
			HEIGHT <h> ;
			[ VIRTUAL WIDTH <vWidth> ] ;                             
			[ VIRTUAL HEIGHT <vHeight> ] ;                             
			[ TITLE <title> ] ;
			[ ICON <icon> ] ;
			[ <main:  MAIN> ] ;
			[ <child: CHILD> ] ;
			[ <noshow: NOSHOW> ] ;
			[ <topmost: TOPMOST> ] ;
			[ <noautorelease: NOAUTORELEASE> ] ;
			[ <nominimize: NOMINIMIZE> ] ;
			[ <nomaximize: NOMAXIMIZE> ] ;
			[ <nosize: NOSIZE> ] ;
			[ <nosysmenu: NOSYSMENU> ] ;                             
			[ <nocaption: NOCAPTION> ] ;                             
			[ CURSOR <cursor> ] ;
			[ ON INIT <InitProcedure> ] ;
			[ ON RELEASE <ReleaseProcedure> ] ;
			[ ON INTERACTIVECLOSE <interactivecloseprocedure> ] ;
			[ ON MOUSECLICK <ClickProcedure> ] ;
			[ ON MOUSEDRAG <MouseDragProcedure> ] ;
			[ ON MOUSEMOVE <MouseMoveProcedure> ] ;
			[ ON SIZE <SizeProcedure> ] ;
			[ ON MAXIMIZE <MaximizeProcedure> ] ;
			[ ON MINIMIZE <MinimizeProcedure> ] ;
			[ ON PAINT <PaintProcedure> ] ;
		        [ BACKCOLOR <backcolor> ] ;
			[ FONT <FontName> SIZE <FontSize> ] ;
			[ NOTIFYICON <NotifyIcon> ] ;
			[ NOTIFYTOOLTIP <NotifyIconTooltip> ] ;
			[ ON NOTIFYCLICK <NotifyLeftClick> ] ;
			[ ON GOTFOCUS <GotFocusProcedure> ] ;
			[ ON LOSTFOCUS <LostFocusProcedure> ] ;
			[ ON SCROLLUP <scrollup> ] ;
			[ ON SCROLLDOWN <scrolldown> ] ;
			[ ON SCROLLLEFT <scrollleft> ] ;
			[ ON SCROLLRIGHT <scrollright> ] ;
			[ ON HSCROLLBOX <hScrollBox> ] ;
			[ ON VSCROLLBOX <vScrollBox> ] ;
			[ <helpbutton:  HELPBUTTON> ] ;
	=>;
	DECLARE WINDOW <w>  ;;
	DECLARE CUSTOM COMPONENTS <w> ;;
	_DefineWindow ( <"w">, <title>, <col>, <row>, <wi>, <h>, <.nominimize.>, <.nomaximize.>, <.nosize.>, <.nosysmenu.>, <.nocaption.>,.F., '',<{InitProcedure}>, <{ReleaseProcedure}> , <{MouseDragProcedure}>, <{SizeProcedure}> , <{ClickProcedure}> , <{MouseMoveProcedure}>, <backcolor> , <{PaintProcedure}> , <.noshow.> , <.topmost.> , <.main.> , <icon> , <.child.> , <FontName> , <FontSize>, <NotifyIcon> , <NotifyIconTooltip> , <{NotifyLeftClick}>  , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight> , <vWidth> , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}> , <.helpbutton.> , <{MaximizeProcedure}> , <{MinimizeProcedure}> , <cursor> , <.noautorelease.> , <{interactivecloseprocedure}> ) 

	#xcommand DEFINE WINDOW <w> ;
			AT <row>,<col> ;
			WIDTH <wi> ;
			HEIGHT <h> ;
			[ VIRTUAL WIDTH <vWidth> ] ;                             
			[ VIRTUAL HEIGHT <vHeight> ] ;                             
			[ TITLE <title> ] ;
			[ ICON <icon> ] ;
			MODAL ;
			[ <noshow: NOSHOW> ] ;
			[ <noautorelease: NOAUTORELEASE> ] ;
			[ <nosize: NOSIZE> ] ;
			[ <nosysmenu: NOSYSMENU> ] ;                             
			[ <nocaption: NOCAPTION> ] ;                             
			[ CURSOR <cursor> ] ;
			[ ON INIT <InitProcedure> ] ;
			[ ON RELEASE <ReleaseProcedure> ] ;
			[ ON INTERACTIVECLOSE <interactivecloseprocedure> ] ;
			[ ON MOUSECLICK <ClickProcedure> ] ;
			[ ON MOUSEDRAG <MouseDragProcedure> ] ;
			[ ON MOUSEMOVE <MouseMoveProcedure> ] ;
			[ ON SIZE <SizeProcedure> ] ;
			[ ON PAINT <PaintProcedure> ] ;
		        [ BACKCOLOR <backcolor> ] ;
			[ FONT <FontName> SIZE <FontSize> ] ;
			[ ON GOTFOCUS <GotFocusProcedure> ] ;
			[ ON LOSTFOCUS <LostFocusProcedure> ] ;
			[ ON SCROLLUP <scrollup> ] ;
			[ ON SCROLLDOWN <scrolldown> ] ;
			[ ON SCROLLLEFT <scrollleft> ] ;
			[ ON SCROLLRIGHT <scrollright> ] ;
			[ ON HSCROLLBOX <hScrollBox> ] ;
			[ ON VSCROLLBOX <vScrollBox> ] ;
			[ <helpbutton:  HELPBUTTON> ] ;
	=>;
	DECLARE WINDOW <w> ;;
       _DefineModalWindow ( <"w">, <title>, <col>, <row>, <wi>, <h>, "" , <.nosize.>, <.nosysmenu.>, <.nocaption.> ,.F., '',<{InitProcedure}>, <{ReleaseProcedure}> , <{MouseDragProcedure}> , <{SizeProcedure}> , <{ClickProcedure}> , <{MouseMoveProcedure}>, [<backcolor>]  , <{PaintProcedure}> , <icon> , <FontName> , <FontSize> , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight>  , <vWidth>  , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}>  , <.helpbutton.> , <cursor> , <.noshow.>  , <.noautorelease.>  , <{interactivecloseprocedure}> ) 

	#xcommand  DEFINE WINDOW <w> ;
		WIDTH <wi> ;
		HEIGHT <h> ;
		[ VIRTUAL WIDTH <vWidth> ] ;                             
		[ VIRTUAL HEIGHT <vHeight> ] ;                             
		[ TITLE <title> ] ;
		SPLITCHILD ;
		[ <nocaption: NOCAPTION> ] ;
		[ CURSOR <cursor> ] ;
		[ FONT <FontName> SIZE <FontSize> ] ;
		[ GRIPPERTEXT <grippertext> ] ;
		[ <break: BREAK> ] ;
		[ <focused: FOCUSED> ] ;
		[ ON GOTFOCUS <GotFocusProcedure> ] ;
		[ ON LOSTFOCUS <LostFocusProcedure> ] ;
		[ ON SCROLLUP <scrollup> ] ;
		[ ON SCROLLDOWN <scrolldown> ] ;
		[ ON SCROLLLEFT <scrollleft> ] ;
		[ ON SCROLLRIGHT <scrollright> ] ;
		[ ON HSCROLLBOX <hScrollBox> ] ;
		[ ON VSCROLLBOX <vScrollBox> ] ;
      => ;
	DECLARE WINDOW <w>  ;;
	_DefineSplitChildWindow ( <"w">, <wi>, <h> , <.break.> , <grippertext> , <.nocaption.> , <title> , <FontName> , <FontSize> , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight>  , <vWidth> , <.focused.>  , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}> , <cursor> ) ;;

	#xcommand LOAD WINDOW <w> ; 
	=> ;
	DECLARE WINDOW <w> ;;
	_HMG_SYSDATA \[ 214 \] := <"w"> ;;
	#include \<<w>.fmg\> 

	#xcommand LOAD WINDOW <ww> AS <w> ; 
	=> ;
	DECLARE WINDOW <w> ;;
	_HMG_SYSDATA \[ 214 \] := <"w"> ; #include \<<ww>.fmg\>


#command RELEASE WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Release' )

#command RELEASE WINDOW ALL  ;
	=>;
	ReleaseAllWindows()

#command RELEASE WINDOW MAIN  ;
	=>;
	ReleaseAllWindows()

#xtranslate EXIT PROGRAM  ;
	=>;
	ReleaseAllWindows()

#command ACTIVATE WINDOW <name, ...> ;
	=>;
    _ActivateWindow ( \{<"name">\} )

#command ACTIVATE WINDOW ALL ;
	=>;
    _ActivateAllWindows()

#command CENTER WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Center' )

#command MAXIMIZE WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Maximize' ) 

#command MINIMIZE WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Minimize' )

#command RESTORE WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Restore' )

#command SHOW WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Show' )

#command HIDE WINDOW <name> ;
	=>;
	DoMethod ( <"name"> , 'Hide' )

#command END WINDOW ;
	=>;
_EndWindow ()

#xcommand DO EVENTS => ProcessMessages()

#xtranslate FETCH [ PROPERTY ] [ WINDOW ] <Arg1> <Arg2> TO <Arg3> ;
=> ;
<Arg3> := GetProperty ( <"Arg1"> , <"Arg2"> )

#xtranslate MODIFY [ PROPERTY ] [ WINDOW ] <Arg1> <Arg2> <Arg3> ;
=> ;
SetProperty ( <"Arg1"> , <"Arg2"> , <Arg3> )


#command DEFINE WINDOW TEMPLATE ;
			AT <row>,<col> ;
			WIDTH <wi> ;
			HEIGHT <h> ;
			[ VIRTUAL WIDTH <vWidth> ] ;                             
			[ VIRTUAL HEIGHT <vHeight> ] ;                             
			[ TITLE <title> ] ;
			[ ICON <icon> ] ;
			[ <main:  MAIN> ] ;
			[ <child: CHILD> ] ;
			[ <noshow: NOSHOW> ] ;
			[ <topmost: TOPMOST> ] ;
			[ <noautorelease: NOAUTORELEASE> ] ;
			[ <nominimize: NOMINIMIZE> ] ;
			[ <nomaximize: NOMAXIMIZE> ] ;
			[ <nosize: NOSIZE> ] ;
			[ <nosysmenu: NOSYSMENU> ] ;                             
			[ <nocaption: NOCAPTION> ] ;                             
			[ CURSOR <cursor> ] ;
			[ ON INIT <InitProcedure> ] ;
			[ ON RELEASE <ReleaseProcedure> ] ;
			[ ON INTERACTIVECLOSE <interactivecloseprocedure> ] ;
			[ ON MOUSECLICK <ClickProcedure> ] ;
			[ ON MOUSEDRAG <MouseDragProcedure> ] ;
			[ ON MOUSEMOVE <MouseMoveProcedure> ] ;
			[ ON SIZE <SizeProcedure> ] ;
			[ ON MAXIMIZE <MaximizeProcedure> ] ;
			[ ON MINIMIZE <MinimizeProcedure> ] ;
			[ ON PAINT <PaintProcedure> ] ;
		        [ BACKCOLOR <backcolor> ] ;
			[ FONT <FontName> SIZE <FontSize> ] ;
			[ NOTIFYICON <NotifyIcon> ] ;
			[ NOTIFYTOOLTIP <NotifyIconTooltip> ] ;
			[ ON NOTIFYCLICK <NotifyLeftClick> ] ;
			[ ON GOTFOCUS <GotFocusProcedure> ] ;
			[ ON LOSTFOCUS <LostFocusProcedure> ] ;
			[ ON SCROLLUP <scrollup> ] ;
			[ ON SCROLLDOWN <scrolldown> ] ;
			[ ON SCROLLLEFT <scrollleft> ] ;
			[ ON SCROLLRIGHT <scrollright> ] ;
			[ ON HSCROLLBOX <hScrollBox> ] ;
			[ ON VSCROLLBOX <vScrollBox> ] ;
			[ <helpbutton:  HELPBUTTON> ] ;
	=>;
	_DefineWindow ( , <title>, <col>, <row>, <wi>, <h>, <.nominimize.>, <.nomaximize.>, <.nosize.>, <.nosysmenu.>, <.nocaption.>,.F., '',<{InitProcedure}>, <{ReleaseProcedure}> , <{MouseDragProcedure}>, <{SizeProcedure}> , <{ClickProcedure}> , <{MouseMoveProcedure}>, [<backcolor>] , <{PaintProcedure}> , <.noshow.> , <.topmost.> , <.main.> , <icon> , <.child.> , <FontName> , <FontSize>, <NotifyIcon> , <NotifyIconTooltip> , <{NotifyLeftClick}>  , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight> , <vWidth> , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}> , <.helpbutton.> , <{MaximizeProcedure}> , <{MinimizeProcedure}> , <cursor>  , <.noautorelease.>  , <{interactivecloseprocedure}> ) 

#command DEFINE WINDOW TEMPLATE ;
			AT <row>,<col> ;
			WIDTH <wi> ;
			HEIGHT <h> ;
			[ VIRTUAL WIDTH <vWidth> ] ;                             
			[ VIRTUAL HEIGHT <vHeight> ] ;                             
			[ TITLE <title> ] ;
			[ ICON <icon> ] ;
			MODAL ;
			[ <noshow: NOSHOW> ] ;
			[ <noautorelease: NOAUTORELEASE> ] ;
			[ <nosize: NOSIZE> ] ;
			[ <nosysmenu: NOSYSMENU> ] ;                             
			[ <nocaption: NOCAPTION> ] ;                             
			[ CURSOR <cursor> ] ;
			[ ON INIT <InitProcedure> ] ;
			[ ON RELEASE <ReleaseProcedure> ] ;
			[ ON INTERACTIVECLOSE <interactivecloseprocedure> ] ;
			[ ON MOUSECLICK <ClickProcedure> ] ;
			[ ON MOUSEDRAG <MouseDragProcedure> ] ;
			[ ON MOUSEMOVE <MouseMoveProcedure> ] ;
			[ ON SIZE <SizeProcedure> ] ;
			[ ON PAINT <PaintProcedure> ] ;
		        [ BACKCOLOR <backcolor> ] ;
			[ FONT <FontName> SIZE <FontSize> ] ;
			[ ON GOTFOCUS <GotFocusProcedure> ] ;
			[ ON LOSTFOCUS <LostFocusProcedure> ] ;
			[ ON SCROLLUP <scrollup> ] ;
			[ ON SCROLLDOWN <scrolldown> ] ;
			[ ON SCROLLLEFT <scrollleft> ] ;
			[ ON SCROLLRIGHT <scrollright> ] ;
			[ ON HSCROLLBOX <hScrollBox> ] ;
			[ ON VSCROLLBOX <vScrollBox> ] ;
			[ <helpbutton:  HELPBUTTON> ] ;
	=>;
	_DefineModalWindow ( , <title>, <col>, <row>, <wi>, <h>, "" , <.nosize.>, <.nosysmenu.>, <.nocaption.> ,.F., '',<{InitProcedure}>, <{ReleaseProcedure}> , <{MouseDragProcedure}> , <{SizeProcedure}> , <{ClickProcedure}> , <{MouseMoveProcedure}>, [<backcolor>]  , <{PaintProcedure}> , <icon> , <FontName> , <FontSize> , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight>  , <vWidth>  , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}> , <.helpbutton.> , <cursor> , <.noshow.>  , <.noautorelease.>  , <{interactivecloseprocedure}> )   


#xcommand  DEFINE WINDOW TEMPLATE ;
		WIDTH <wi> ;
		HEIGHT <h> ;
		[ VIRTUAL WIDTH <vWidth> ] ;                             
		[ VIRTUAL HEIGHT <vHeight> ] ;                             
		[ TITLE <title> ] ;
		SPLITCHILD ;
		[ <nocaption: NOCAPTION> ] ;
		[ CURSOR <cursor> ] ;
		[ FONT <FontName> SIZE <FontSize> ] ;
		[ GRIPPERTEXT <grippertext> ] ;
		[ <break: BREAK> ] ;
		[ <focused: FOCUSED> ] ;
		[ ON GOTFOCUS <GotFocusProcedure> ] ;
		[ ON LOSTFOCUS <LostFocusProcedure> ] ;
		[ ON SCROLLUP <scrollup> ] ;
		[ ON SCROLLDOWN <scrolldown> ] ;
		[ ON SCROLLLEFT <scrollleft> ] ;
		[ ON SCROLLRIGHT <scrollright> ] ;
		[ ON HSCROLLBOX <hScrollBox> ] ;
		[ ON VSCROLLBOX <vScrollBox> ] ;
      => ;
	_DefineSplitChildWindow ( , <wi>, <h> , <.break.> , <grippertext> , <.nocaption.> , <title> , <FontName> , <FontSize> , <{GotFocusProcedure}>, <{LostFocusProcedure}> , <vHeight>  , <vWidth> , <.focused.>  , <{scrollleft}> , <{scrollright}> , <{scrollup}> , <{scrolldown}> , <{hScrollBox}> , <{vScrollBox}> , <cursor> ) ;;

#xcommand  SET TOOLTIPSTYLE BALLOON ;
      => ;
	_HMG_SYSDATA \[55\] := .T.

#xcommand  SET TOOLTIPSTYLE STANDARD ;
      => ;
	_HMG_SYSDATA \[55\] := .F.

#xcommand  SET TOOLTIPBACKCOLOR <aColor> ;
      => ;
	_HMG_SYSDATA \[56\] := <aColor>

#xcommand  SET TOOLTIPFORECOLOR <aColor> ;
      => ;
	_HMG_SYSDATA \[57\] := <aColor>

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
gfilatov
Posts: 498
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 5 times
Been thanked: 25 times
Contact:

Post by gfilatov » Wed Oct 08, 2008 9:20 am

Roberto Lopez wrote:...
Any reports are welcome.
...
Roberto,

Thanks a lot for prompt fix!
It seems that all is OK now :!:

I have one more suggestion for backward compatibility of containers row/col with old behaviour.

Please be so kind to replace the following two functions as below

Code: Select all

*-----------------------------------------------------------------------------*
Function _GetControlRow ( ControlName, ParentForm )
*-----------------------------------------------------------------------------*
   Local mVar , i , nRet

   mVar := '_' + ParentForm + '_' + ControlName

   i := &mVar
   if i == 0 .Or. ( ValType ( _HMG_SYSDATA [ 18 ] [i] ) == 'U' .And. ValType ( _HMG_SYSDATA [ 19 ] [i] ) == 'U' )
      Return 0
   EndIf

   If _HMG_SYSDATA [ 23 ] [ i ] == - 1
      nRet := _HMG_SYSDATA [ 18 ] [ i ]
   Else
      nRet := _HMG_SYSDATA [ 18 ] [ i ] - _HMG_SYSDATA [ 23 ] [ i ]
   EndIf

Return nRet

*-----------------------------------------------------------------------------*
Function _GetControlCol ( ControlName, ParentForm )
*-----------------------------------------------------------------------------*
   Local mVar , i , nRet

   mVar := '_' + ParentForm + '_' + ControlName

   i := &mVar
   if i == 0 .Or. ( ValType ( _HMG_SYSDATA [ 18 ] [i] ) == 'U' .And. ValType ( _HMG_SYSDATA [ 19 ] [i] ) == 'U' )
      Return 0
   EndIf

   If _HMG_SYSDATA [ 24 ] [ i ] == - 1
      nRet := _HMG_SYSDATA [ 19 ] [ i ]
   Else
      nRet := _HMG_SYSDATA [ 19 ] [ i ] - _HMG_SYSDATA [ 24 ] [ i ]
   EndIf

Return nRet
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

User avatar
Roberto Lopez
HMG Founder
Posts: 3875
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 11 times
Been thanked: 103 times

Post by Roberto Lopez » Wed Oct 08, 2008 11:40 am

gfilatov wrote:
Roberto Lopez wrote:...
Any reports are welcome.
...
Roberto,

Thanks a lot for prompt fix!
It seems that all is OK now :!:

I have one more suggestion for backward compatibility of containers row/col with old behaviour.

Please be so kind to replace the following two functions as below

Code: Select all

*-----------------------------------------------------------------------------*
Function _GetControlRow ( ControlName, ParentForm )
*-----------------------------------------------------------------------------*
   Local mVar , i , nRet

   mVar := '_' + ParentForm + '_' + ControlName

   i := &mVar
   if i == 0 .Or. ( ValType ( _HMG_SYSDATA [ 18 ] [i] ) == 'U' .And. ValType ( _HMG_SYSDATA [ 19 ] [i] ) == 'U' )
      Return 0
   EndIf

   If _HMG_SYSDATA [ 23 ] [ i ] == - 1
      nRet := _HMG_SYSDATA [ 18 ] [ i ]
   Else
      nRet := _HMG_SYSDATA [ 18 ] [ i ] - _HMG_SYSDATA [ 23 ] [ i ]
   EndIf

Return nRet

*-----------------------------------------------------------------------------*
Function _GetControlCol ( ControlName, ParentForm )
*-----------------------------------------------------------------------------*
   Local mVar , i , nRet

   mVar := '_' + ParentForm + '_' + ControlName

   i := &mVar
   if i == 0 .Or. ( ValType ( _HMG_SYSDATA [ 18 ] [i] ) == 'U' .And. ValType ( _HMG_SYSDATA [ 19 ] [i] ) == 'U' )
      Return 0
   EndIf

   If _HMG_SYSDATA [ 24 ] [ i ] == - 1
      nRet := _HMG_SYSDATA [ 19 ] [ i ]
   Else
      nRet := _HMG_SYSDATA [ 19 ] [ i ] - _HMG_SYSDATA [ 24 ] [ i ]
   EndIf

Return nRet
Grigory,

At first thanks for the report and the sample.

Looking at your 'row/col' code I guess that there is problems returning
values for tab child controls when using new full container syntax.

I'll check it ASAP.

Any other (additional) info is welcome.

Thanks again.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
gfilatov
Posts: 498
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 5 times
Been thanked: 25 times
Contact:

Post by gfilatov » Wed Oct 08, 2008 12:09 pm

Roberto Lopez wrote:<...>
Looking at your 'row/col' code I guess that there is problems returning
values for tab child controls when using new full container syntax.

I'll check it ASAP.

Any other (additional) info is welcome.
Roberto,

Thanks for your kind words!

There are not a problems with values for tab child controls yet.
But an incompatibility exists for old codes which are used zero value of row/col for containers self.
:o
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

User avatar
Roberto Lopez
HMG Founder
Posts: 3875
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 11 times
Been thanked: 103 times

Post by Roberto Lopez » Wed Oct 08, 2008 1:17 pm

gfilatov wrote: There are not a problems with values for tab child controls yet.
But an incompatibility exists for old codes which are used zero value of row/col for containers self.
:o
Could you be so kind to post a little sample showing what exactly the problem is ? (I'm not sure of fully understand the situation).

Thanks in advance.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests