Hi all

This is my attemt to make an advanced, yet easy to use custom grid control.

Full sources and 7 demos included.

KetilO

09-29-2003, 15 dl, Fixed a few bugs.
10-02-2003, 23 dl, Added more styles. Uses bitRAKE's QuickSort to sort columns.
10-04-2003, 19 dl, Added mouse wheel support.
10-12-2003, 29 dl, Fixed combobox bug. Added GM_CELLCONVERT message.
10-18-2003, 26 dl, Fixed a bug where columnheader text was lost on GM_RESETCONTENT.
10-21-2003, 18 dl, Added GM_RESETCOLUMNS. Added demo showing how to connect to access database.
11-03-2003, 42 dl, Fixed a button column paint bug.
11-13-2003, 48 dl, Fixed a bug where row and col was not set in notification messages.
11-21-2003, 19 dl, Also made a library of RAGrid and a demo on how to use the library.
02-20-2004, 156 dl, Fixed bugs. Added pictures in grid demo.
05-12-2004, 61 dl, Added row back and text colors.
06-02-2004, 55 dl, Fixed a bug that could cause a GPF when adding long integer cell.
06-05-2004, 8 dl, Speed optimized sorting. Added WM_COMPAREITEM to sort columns containing TYPE_USER data.
06-17-2004, 40 dl, Updated ODBC example to include add, delete and update.
Posted on 2003-09-29 06:21:59 by KetilO
:alright: great stuff
Posted on 2003-09-29 07:01:45 by Azrim
very good job!
any document on how to use the DLL?
Posted on 2003-09-29 08:09:30 by optimus
only GetDef is exported from DLL?


:stupid:
Posted on 2003-09-29 08:13:07 by Azrim
Hi optimus

The only documentation for now is in RAGrid.inc and the demos.

KetilO
Posted on 2003-09-29 08:41:47 by KetilO
Hi Azrim

only GetDef is exported from DLL?


Yes, and that function is only for RadASM so the grid can be used by the dialog editor.

The window class is created when the dll is loaded, and all communications with the grid control is done with messages to the grid window and notifications from the grid to the parent of the grid.

Just as any other windows control.

KetilO
Posted on 2003-09-29 08:47:51 by KetilO
Amazing :eek:

Thanks
Posted on 2003-09-29 10:53:39 by pelaillo
how to define the parent window of RAGrid then?


Hi Azrim

The window class is created when the dll is loaded, and all communications with the grid control is done with messages to the grid window and notifications from the grid to the parent of the grid.

Just as any other windows control.

KetilO
Posted on 2003-09-29 11:14:40 by optimus
Hi optimus

Have a look at CreateWindowEx.
If you put it on a dialog, then the dialog is the parent.
If you are doing weird stuff, have a look at SetParent.

KetilO
Posted on 2003-09-29 14:10:40 by KetilO
Hi all

New upload at the top.

- Fixed memory unlock bug.
- Fixed ownerdraw bug. (Win98 strips off high words in a DRAWITEMSTRUCT)

KetilO
Posted on 2003-09-29 14:14:15 by KetilO
KetilO,

You da' Viking!

Thanks for this tool/gift!

farrier
Posted on 2003-09-30 11:12:58 by farrier
Hi all

New upload at the top.

- Added more styles. (Grid options)
- Uses bitRAKE's recursive QuickSort algo to sort columns.

KetilO
Posted on 2003-10-02 16:52:19 by KetilO
Fantastic work!

Another gem! :alright:
Posted on 2003-10-02 21:51:09 by NaN
As a suggestion, you should add mouse wheel support if its not alot of trouble ;)
Posted on 2003-10-03 09:12:17 by NaN
Hi NaN

No trouble at all.

KetilO
Posted on 2003-10-03 09:28:27 by KetilO
Hi all

New upload at the top.

- Added mouse wheel support.

KetilO
Posted on 2003-10-04 03:34:39 by KetilO
Again, I just have to stress how deeply impressed I am with this control.

This is *very* good work KeltIO!
Thanks alot for sharing it freely with us ;)

:NaN:
Posted on 2003-10-04 15:06:39 by NaN
Hi Ketil

The more I work with this control, the more I like it!

I'm having a small problem right now because there is no example of how to set a check box checked from the program on an individual basis.

Please help.
Posted on 2003-10-11 16:20:41 by msmith
No problem, I figured it out.

The real problem was that I was trying to set a checkbox before I added the row containing the checkbox.
Posted on 2003-10-11 16:46:18 by msmith
Hi Ketil,

I think I might have found a problem.



invoke SendMessage,dword [edi+44],GM_DELROW,10,0


This does not delete row 10. Rather, it causes the grid to scroll to the last row (row 99).
Posted on 2003-10-11 20:17:41 by msmith