Harbour MiniGUI 2.7.1

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

Moderator: Rathinagiri

User avatar
Roberto Lopez
HMG Founder
Posts: 3919
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 15 times
Been thanked: 140 times

Harbour MiniGUI 2.7.1

Post by Roberto Lopez » Tue Mar 31, 2009 2:09 am

Harbour MiniGUI 2.7.1 Changelog:

English:

- New: DRAGITEMS property for LISTBOX control.
This property allows to user to reorder items in a ListBox
by dragging it. Samples:\hmg\samples\listbox

- Fixed: This.cellValue bug. Thanks to Grigory Filatov.

Español:

- Nuevo: Propiedad DRAGITEMS para el control LISTBOX.
Esta propiedad permite al usuario reordenar los items en un ListBox
arrastrándolos. Ejemplos:\hmg\samples\listbox

- Solucionado: Bug en This.CellValue. Gracias a Grigory Filatov.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
esgici
Posts: 4459
Joined: Wed Jul 30, 2008 9:17 pm
DBs Used: DBF
Location: iskenderun / Turkiye
Has thanked: 336 times
Been thanked: 103 times
Contact:

Post by esgici » Tue Mar 31, 2009 2:17 am

Wonderful !!! :D

Thanks a lot Roberto.

Best Regards

--

Esgici
Viva INTERNATIONAL HMG :D

User avatar
sudip
Posts: 1444
Joined: Sat Mar 07, 2009 11:52 am
Location: Kolkata, WB, India
Has thanked: 4 times

Post by sudip » Tue Mar 31, 2009 4:47 am

Hello Roberto,

Thank you for dragging facility in listbox.

I don't know whether it is a problem of my mouse or not. Suppose I have 10 items. I can drag any item upto 9th position easily. But I found some problem to drag any item to 10th position.

May be this is my system's problem or may be I am wrong - program is supposed to do it.

With best regards and thank you again for offering this dragging facility to us. :D

Sudip
With best regards,
Sudip

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

Post by gfilatov » Tue Mar 31, 2009 9:39 am

Roberto Lopez wrote:Harbour MiniGUI 2.7.1 Changelog:

...
- Fixed: This.cellValue bug. Thanks to Grigory Filatov.
Hi Roberto,

I'm sorry for a bugreport about This.cellValue bug again but you've missed an underline symbol in the function name at my correction of this problem.
...
If _IsControlDefined ( 'c' , "_hmg_grid_inplaceedit")

...
ElseIf _IsControlDefined ( 's' , "_hmg_grid_inplaceedit")
...

Please take a look for test sample below (problem in the validation for column 3):

Code: Select all

#include "minigui.ch"

Function Main

Local aRows [20] [3]

	Private fColor := { || if ( This.CellRowIndex/2 == int(This.CellRowIndex/2) , { 0,0,255 } , { 0,255,0 } ) }	

	DEFINE WINDOW Form_1 ;
		AT 0,0 ;
		WIDTH 640 ;
		HEIGHT 400 ;
		TITLE 'Mixed Data Type Grid Test' ;
		MAIN 

		DEFINE MAIN MENU
			DEFINE POPUP 'File'
				MENUITEM 'Set Item'	ACTION SetItem()
				MENUITEM 'Get Item'	ACTION GetItem()
			END POPUP
		END MENU

		aRows [1]	:= {113.12,date(),1,1 , .t. }
		aRows [2]	:= {123.12,date(),2,2 , .f. } 
		aRows [3]	:= {133.12,date(),3,3, .t. } 
		aRows [4]	:= {143.12,date(),1,4, .f. } 
		aRows [5]	:= {153.12,date(),2,5, .t. } 
		aRows [6]	:= {163.12,date(),3,6, .f. } 
		aRows [7]	:= {173.12,date(),1,7, .t. } 
		aRows [8]	:= {183.12,date(),2,8, .f. } 
		aRows [9]	:= {193.12,date(),3,9, .t. } 
		aRows [10]	:= {113.12,date(),1,10, .f. } 
		aRows [11]	:= {123.12,date(),2,11, .t. } 
		aRows [12]	:= {133.12,date(),3,12, .f. } 
		aRows [13]	:= {143.12,date(),1,13, .t. } 
		aRows [14]	:= {153.12,date(),2,14, .f. } 
		aRows [15]	:= {163.12,date(),3,15, .t. } 
		aRows [16]	:= {173.12,date(),1,16, .f. } 
		aRows [17]	:= {183.12,date(),2,17, .t. } 
		aRows [18]	:= {193.12,date(),3,18, .f. } 
		aRows [19]	:= {113.12,date(),1,19, .t. } 
		aRows [20]	:= {123.12,date(),2,20, .f. } 

		@ 10,10 GRID Grid_1 ;
			WIDTH 620 ;
			HEIGHT 330 ;
			HEADERS {'Column 1','Column 2','Column 3','Column 4','Column 5'} ;
			WIDTHS {140,140,140,140,140} ;
			ITEMS aRows ;
			EDIT ;
			COLUMNCONTROLS { {'TEXTBOX','NUMERIC','$ 999,999.99'} , {'DATEPICKER','DROPDOWN'} , {'COMBOBOX',{'One','Two','Three'}} , { 'SPINNER' , 1 , 20 } , { 'CHECKBOX' , 'Yes' , 'No' } } ;
			DYNAMICFORECOLOR { fColor , fColor, fColor, fColor, fColor } ;
         COLUMNVALID {, {|| If( !Empty (This.CellValue),This.CellValue := Date(),.t.)}, {|| If( !Empty (This.CellValue),This.CellValue := 3,.t.)},,}

	END WINDOW

	CENTER WINDOW Form_1

	ACTIVATE WINDOW Form_1

Return

PROCEDURE SETITEM()

	Form_1.Grid_1.Item (2) := { 123.45 , date() , 2 , 10 , .T. }

RETURN

PROCEDURE GETITEM()
local a

	a := Form_1.Grid_1.Item (2) 

	msginfo ( str ( a [1] )				, '1' )
	msginfo ( dtoc ( a [2] )			, '2' )
	msginfo ( str( a [3] )				, '3' )
	msginfo ( str ( a [4] )				, '4' )
	msginfo ( if ( a [5] == .t. , '.t.' , '.f.' )	, '5' )

RETURN
Kind Regards,
Grigory Filatov

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

User avatar
esgici
Posts: 4459
Joined: Wed Jul 30, 2008 9:17 pm
DBs Used: DBF
Location: iskenderun / Turkiye
Has thanked: 336 times
Been thanked: 103 times
Contact:

Post by esgici » Tue Mar 31, 2009 10:05 am

sudip wrote:
... problem to drag any item to 10th position.
Confirmed.

First and last items are out of dragging and inserting.

Regards

--

Esgici
Viva INTERNATIONAL HMG :D

User avatar
Roberto Lopez
HMG Founder
Posts: 3919
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 15 times
Been thanked: 140 times

Post by Roberto Lopez » Tue Mar 31, 2009 12:40 pm

sudip wrote:Hello Roberto,

Thank you for dragging facility in listbox.

I don't know whether it is a problem of my mouse or not. Suppose I have 10 items. I can drag any item upto 9th position easily. But I found some problem to drag any item to 10th position.

May be this is my system's problem or may be I am wrong - program is supposed to do it.

With best regards and thank you again for offering this dragging facility to us. :D

Sudip
The problem is that the WIN32 function that draws the insert indicator (DrawInsert) is not able to draw that indicator for the last item. So I've intentionally impede such situation.

Dragging to the end of the list could be allowed, but you'll not have the indicator for it (you only need to eliminate the lines: 307, 308 and 309 in h_windows.prg).

I'm open to suggestions.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3919
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 15 times
Been thanked: 140 times

Post by Roberto Lopez » Tue Mar 31, 2009 12:46 pm

gfilatov wrote: I'm sorry for a bugreport about This.cellValue bug again but you've missed an underline symbol in the function name at my correction of this problem.
...
If _IsControlDefined ( 'c' , "_hmg_grid_inplaceedit")

...
ElseIf _IsControlDefined ( 's' , "_hmg_grid_inplaceedit")
...
You are right again :)

I'm very busy and I've made both (2.7.0 and 2.7.1) releases as quick as possible, breaking my own rules about testing.

I'm sorry for that.

Thanks again for the report.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3919
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 15 times
Been thanked: 140 times

Post by Roberto Lopez » Tue Mar 31, 2009 12:48 pm

Roberto Lopez wrote: Dragging to the end of the list could be allowed, but you'll not have the indicator for it (you only need to eliminate the lines: 307, 308 and 309 in h_windows.prg).
And lines 330 and 338 (the other 'if' about that).

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
sudip
Posts: 1444
Joined: Sat Mar 07, 2009 11:52 am
Location: Kolkata, WB, India
Has thanked: 4 times

Post by sudip » Tue Mar 31, 2009 1:36 pm

Hello Roberto,

Thank for the explanation regarding dragging in listbox.

Some how the reason, I guessed it :-
From my previous message:
May be this is my system's problem or may be I am wrong - program is supposed to do it.
Roberto wrote:
The problem is that the WIN32 function that draws the insert indicator (DrawInsert) is not able to draw that indicator for the last item. So I've intentionally impede such situation.

Dragging to the end of the list could be allowed, but you'll not have the indicator for it (you only need to eliminate the lines: 307, 308 and 309 in h_windows.prg).
I know very little about win32 programming. So, I don't want to eliminate those lines for now.

Actually I want to learn to use MySql (with help from Rathi) as soon as possible. This is my first priority. :)

With best regards.

Sudip
With best regards,
Sudip

User avatar
Roberto Lopez
HMG Founder
Posts: 3919
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 15 times
Been thanked: 140 times

Post by Roberto Lopez » Tue Mar 31, 2009 3:16 pm

esgici wrote:
sudip wrote:
... problem to drag any item to 10th position.
Confirmed.

First and last items are out of dragging and inserting.

Regards

--

Esgici
I've re-tested prior to post this:

You can drag an item to the first position without problems.

And (as I've said to Sudip) If you eliminate the indicated lines in 'h_windows.prg' you'll be able to drag above the last item.

Please, test again.

Regards,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

Post Reply