dcl-Control-SetColumnHeader does not work for ListView?

Started by roy_043, May 27, 2014, 02:21:38 PM

Previous topic - Next topic

roy_043

I can't get dcl-Control-SetColumnHeader to work for a ListView control.
See attached .lsp and .odcl files. Am I missing something or is this a bug?

The image was created with the SetColumnHeader property set to true in the .odcl file. It is there to demonstrate a different issue: The ellipses (...) and the rightmost pixels of characters appear to be in a different column when a column is resized.

owenwengerd

Are you trying to change it at runtime? I'm pretty sure this is a design-time only property. How can I reproduce the column spillover problem?

roy_043

Quote from: owenwengerd on May 27, 2014, 07:17:34 PM
Are you trying to change it at runtime? I'm pretty sure this is a design-time only property.
Right. But according to the docs dcl-Control-SetColumnHeader applies to Grid and List View which is probably why the function is named dcl-Control-...

On that theme:
With so many similarities between Grid and List View why aren't more function named dcl-Control-...?
Examples:
dcl-Grid-GetColumnCount
dcl-ListView-GetColumnCount
dcl-Grid-DeleteColumn
dcl-ListView-DeleteColumn

Quote from: owenwengerd on May 27, 2014, 07:17:34 PMHow can I reproduce the column spillover problem?
Open the .odcl file and set the ColumnHeader property to true for the List View.
Call the _.Opendcl command (I accidentally stripped that from the .lsp file).
Load the .lsp file.
Start the c:SQLite_Viewer function and resize the 4th column.

owenwengerd

Quote from: roy_043 on May 28, 2014, 12:10:02 AM
But according to the docs dcl-Control-SetColumnHeader applies to Grid and List View which is probably why the function is named dcl-Control-...

The prefix is due to the fact it's a property. Methods are specific to the control type; properties are "owned" by the control base class.

The column spillover issue may be a graphics driver related problem. I am not able to reproduce it on Windows 7 64-bit with a NVIDIA GeForce GT 430.

roy_043

Quote from: owenwengerd on May 28, 2014, 07:31:43 AM
The prefix is due to the fact it's a property. Methods are specific to the control type; properties are "owned" by the control base class.
I didn't know that. Thanks for the clarification.

Quote from: owenwengerd on May 28, 2014, 07:31:43 AM
The column spillover issue may be a graphics driver related problem. I am not able to reproduce it on Windows 7 64-bit with a NVIDIA GeForce GT 430.
I understand. It's not a big issue anyway, I just happened to bump into it.

roy_043

Regarding the 'column spillover': I forgot to mention that I use BricsCAD. I don't know if that plays a role.

owenwengerd

Quote from: roy_043 on May 29, 2014, 01:40:54 AM
Regarding the 'column spillover': I forgot to mention that I use BricsCAD. I don't know if that plays a role.

There is no difference on my system whether testing in AutoCAD or Bricscad.

roy_043