Skip to main content

Workaround for setting tree widget panel size.

  • March 4, 2019
  • 6 replies
  • 0 views

Iain Sharp
Forum|alt.badge.img+5

We are unable to access the size of the left pane in the tree widget, either to get the size or to set it. Does anyone have/know of a windows UI function which would allow me to get/set this information even though Uniface cannot provide it? 

Regards, 

Iain

6 replies

  • March 4, 2019

We are unable to access the size of the left pane in the tree widget, either to get the size or to set it. Does anyone have/know of a windows UI function which would allow me to get/set this information even though Uniface cannot provide it? 

Regards, 

Iain

Hi Iain,

uniface uses (the largest) glyph to scale the size of the lefthand side.

So if you want to ENLARGE the tree, adding an artificial larger glyph may do the job,

Uli


Iain Sharp
Forum|alt.badge.img+5
  • Author
  • Inspiring
  • March 4, 2019

Hi Iain,

uniface uses (the largest) glyph to scale the size of the lefthand side.

So if you want to ENLARGE the tree, adding an artificial larger glyph may do the job,

Uli

I mean move the 'split bar' rather than size the text. The panel size is defined as a percentage of the (original?) size at compile time. 

Customer wants more room for his 'folders' automatically, and for it to remember where he left it. 


  • March 4, 2019

We are unable to access the size of the left pane in the tree widget, either to get the size or to set it. Does anyone have/know of a windows UI function which would allow me to get/set this information even though Uniface cannot provide it? 

Regards, 

Iain

Hi Iain, thanks for making it a little clearer.

As spyxx.exe shows the widget is just a standard "SysTreeView32", perhaps you can find some hint with

https://docs.microsoft.com/en-us/windows/desktop/controls/tree-view-control-reference

ok, it may be a lot of 3GL or just a little DLL and signature.


But as it looks like you have to find the handle of the widget in the first place:

in YRTL.DLL you find a routine to get the handle of the uniface app window as:

hApp = ugethwnd(); /* Get application window handle */



  • March 5, 2019

We are unable to access the size of the left pane in the tree widget, either to get the size or to set it. Does anyone have/know of a windows UI function which would allow me to get/set this information even though Uniface cannot provide it? 

Regards, 

Iain

Hi Iain,

with spyxx.exe I found that we have to look for instances of the class "OwiTreeList".

Perhaps we can analyse the messages, or someone from "theLab" who has access to the sources can give us a helpful function.


user32.dll provides a function GetActiveWindow() returning a handle to the active application,
then we have our starting point to traverse the tree of children ...


We are unable to access the size of the left pane in the tree widget, either to get the size or to set it. Does anyone have/know of a windows UI function which would allow me to get/set this information even though Uniface cannot provide it? 

Regards, 

Iain

Best thing you can do is raise a wish. There is currently no option to manipulate the splitterbar in the tree.

Success

Jasper


Iain Sharp
Forum|alt.badge.img+5
  • Author
  • Inspiring
  • March 14, 2019

Best thing you can do is raise a wish. There is currently no option to manipulate the splitterbar in the tree.

Success

Jasper

Except that it appears the wishlist is broken. I get an error followed by a suggestion to check jira.