AW: assign object properties in sub form

Rudolf Bargholz rudolf at bargholz.ch
Thu Nov 24 17:02:15 UTC 2022


Hi Martin,

This structure is a little brittle, in my opinion. If names of the fields change in the subwindow class, you will have to search all of your code that references fields in that subwindows class.

If possible, create a public method in your subwindow class, and then call that method from the parent. Pass parameters to tell the method what to do. 

If **pagedPaneGeneral** is a subwindow object, you would then call 

Do $cinst.$objs.pagedPaneGeneral.$repaintFields(kRed)

and then you could retrieve the color as the parameter in the subwindow class, and reference any fields in the subwindow itself using

Do $cinst.$objs.ef_name.$bordercolor.$assign(pColor)

This also makes it easier to debug, as you can test the subwindow independently of the parent, just by calling the public method, but it also makes it easier for you to call the correct notation of the subwindow object, as it is just the field in the parent window you are referencing.

When you make changes to the subwindow, all references to fields in the subwindow will be only in the subwindow class methods, so you do not have to start searching through all your code for references to fields in that window.

Regards

Rudolf

-----Ursprüngliche Nachricht-----
Von: omnisdev-en <omnisdev-en-bounces at lists.omnis-dev.com> Im Auftrag von Martin Obongita via omnisdev-en
Gesendet: Donnerstag, 24. November 2022 15:43
An: omnisdev-en at lists.omnis-dev.com
Cc: Martin Obongita <martin.obongita at yahoo.com>
Betreff: assign object properties in sub form

Hi @all,
I am trying to assign a property to an object in a subwindow with the command below in the method $construct:



Do $cinst.$objs.pagedPaneGeneral.$objs.ef_name.$bordercolor.$assign(kRed)



But the color of the object does not seem to change the border color.
What are the constrains with objects in a sub form when assigning properties?


RegardsMartin.
_____________________________________________________________
Manage your list subscriptions at https://lists.omnis-dev.com Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com 


More information about the omnisdev-en mailing list