Andrew Robinson
2017-01-08 17:16:42 UTC
Hello,
This is just feedback of user satisfaction. It is not a complaint, it is just
an opinion and requires no response. I'm hoping someone will understand what I
am saying here and will think of a way to improve the container functionality
to bring it up to a more state-of-the-art level.
With the following parameters:
MARGIN=5x5
GAPCOL=5
GAPLIN=5
I get the following rendering:
Note how GAPLIN has no effect. That's because IUP needs to be told which
component in the entire grid is the the tallest component in the entire grid,
so with that in mind, I used the following parameters,
SIZELIN=1
SIZECOL=2
MARGIN=5x5
GAPCOL=5
GAPLIN=5
and I get the following rendering:
So now GAPLIN is working, but I have a problem with the GAPCOL ignoring the
QUIT button's width because IUP hasn't been told that the QUIT button is the
widest button in that column, but I cannot convey that information to IUP
without screwing up the rest of the layout, since columns zero and one of line
2 are zero width and zero height:
To get this to work, I tried inserting the GridBox inside of a Vbox or Hbox,
but they too have no effect on the QUIT button margin. I could make this work
by overriding the fault main window width by using USERSIZE, but why have
containers if I typically will have to override them like this?
That was only for a simplified user interface. Just spelling out the labels
and flipping SRC with DST, I get this rendering,
which is awful and not very fixable.
Therefore the problem is this: I cannot choose a container that will let me
align components both vertically and horizontally. It is either one or the
other, but not both. GridBox comes close but it isn't very powerful, as you
can see. There is no point in having any of these containers, if they can only
do very simple "Hello World" interfaces and nothing beyond that, without
having to compile a confusing slew of Vboxes, Hboxes, and GridBoxes into your
user interface. As much as I hate JAVA, their version of the GridBox was very
useful. As it stands, I need to resort to the cumbersome CX and CY attributes
of each component to make anything more complicated than a "Hellow World" user
interface work.
What is really great about GridBox is that you only need to pass one parameter
to the function to load your entire interface.
Best Regards,
Andrew
This is just feedback of user satisfaction. It is not a complaint, it is just
an opinion and requires no response. I'm hoping someone will understand what I
am saying here and will think of a way to improve the container functionality
to bring it up to a more state-of-the-art level.
With the following parameters:
MARGIN=5x5
GAPCOL=5
GAPLIN=5
I get the following rendering:
Note how GAPLIN has no effect. That's because IUP needs to be told which
component in the entire grid is the the tallest component in the entire grid,
so with that in mind, I used the following parameters,
SIZELIN=1
SIZECOL=2
MARGIN=5x5
GAPCOL=5
GAPLIN=5
and I get the following rendering:
So now GAPLIN is working, but I have a problem with the GAPCOL ignoring the
QUIT button's width because IUP hasn't been told that the QUIT button is the
widest button in that column, but I cannot convey that information to IUP
without screwing up the rest of the layout, since columns zero and one of line
2 are zero width and zero height:
To get this to work, I tried inserting the GridBox inside of a Vbox or Hbox,
but they too have no effect on the QUIT button margin. I could make this work
by overriding the fault main window width by using USERSIZE, but why have
containers if I typically will have to override them like this?
That was only for a simplified user interface. Just spelling out the labels
and flipping SRC with DST, I get this rendering,
which is awful and not very fixable.
Therefore the problem is this: I cannot choose a container that will let me
align components both vertically and horizontally. It is either one or the
other, but not both. GridBox comes close but it isn't very powerful, as you
can see. There is no point in having any of these containers, if they can only
do very simple "Hello World" interfaces and nothing beyond that, without
having to compile a confusing slew of Vboxes, Hboxes, and GridBoxes into your
user interface. As much as I hate JAVA, their version of the GridBox was very
useful. As it stands, I need to resort to the cumbersome CX and CY attributes
of each component to make anything more complicated than a "Hellow World" user
interface work.
What is really great about GridBox is that you only need to pass one parameter
to the function to load your entire interface.
Best Regards,
Andrew