Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

QuickWin- treeview?

Ray_R_1
Beginner
815 Views
Does QuickWin have anything that can be used to make a tree view? If not can the hooks be added to the QuickWin interface and which files (is the source code included with the library) would need to be modified? Thanks
0 Kudos
7 Replies
onkelhotte
New Contributor II
815 Views

A tree view control is not available in QuickWin by default. But you still can use it with sendMessage.

Itsa little bit tricky, because you cannot catch user interaction with DlgSetSub like you do with buttons for example.

When you still want to do this,I will search through my old source codes and send you a little introduction.

Markus

0 Kudos
Ray_R_1
Beginner
815 Views
Thank you, the code would be a great help.

I was looking at the iflogm.f90 file in the "include" directory that came with the compiler. This files looks like it contains most of the quickwin interface routines, is this true? Is it possible for me to modify this file to add the tree-view or is there some underlying problem with doing this (besides compatiblity).

My reason for wanting to add the tree view to the existing quickwin routines is that I could really use that type of control and I have written a set of interface routines to quickwin that lets me very easily setup and manage dialogs. These interface routines allow me to update multiple dialogs in multiple windows all at once, specify and convert units for numerical inputs with a single line of code and a great deal more. I use these routines in many of my programs and they cuts my coding time by a factor of almost 10. I really don't not want to abandon them and go back to programming each control by hand.

Thank you.
0 Kudos
Steven_L_Intel1
Employee
815 Views
I think you are confusing QuickWin and the dialog support. Module IFLOGM has the dialog routines, that can be used in any project type (QuickWin included).

The dialog module could be extended to support additional control types if desired, or you could use standard Win32 programming.
0 Kudos
Ray_R_1
Beginner
815 Views
Thank you Steve. I have been taking a closer look at the IFLOGM file as well as a few of the other files. Not an easy job to add new controls, by the looks of it. Is there a reference for these routines (ie programmers guide), that is public. I can guess at most of what is there but it would be nice to know for sure what people were thinking when they wrote the routines.

Ray
0 Kudos
Steven_L_Intel1
Employee
815 Views
No documentation - this is not meant to be edited by users. My suggestion would be to not use the IFLOGM routines and code to the Win32 API directly. IFLOGM is just a convenience for the most common controls.
0 Kudos
DavidWhite
Valued Contributor II
815 Views

You may also be able to use Xeffort to access the Win API -- see xeffort.com. It doesn't have a treeview, but Jugoslav can advise whether it can be done.

David

0 Kudos
onkelhotte
New Contributor II
815 Views

Im short of time at the moment. Ive attached a sample code, maybe you have to correct some simple errors, but it should work...

Using

hItem(1,1) = newEntry(dlg,NULL,'root')
hItem(2,1) = newEntry(dlg,hItem(1,1),'First entry')
hItem(3,1) = newEntry(dlg,hItem(1,1),'Second entry')
hItem(3,2) = newEntry(dlg,hItem(3,1),'First subentry of second entry')
...

you can fill the tree view. In the programm you have to check, if the user has clicked on the tree view. You cannot createa callback like you do with a button. For that you use the subroutine getSelectedEntry. There you get the handle of the current selected entry. It will be compared to the last selected entry, so you can do something.

Markus

0 Kudos
Reply