[comp.windows.x] restricting size of client windows

jac@comtst.UUCP (Jeff A. Copeland) (01/18/91)

I have a simple XmRowColumn widget containing (at run-time) many
XmToggleButton widgets as follows:

	XmRowColumn {
	    arguments {
		XmNorientation = XmVERTICAL;	! This is the default
		XmNpacking = XmPACK_TIGHT;
	    };
	    controls {
		XmToggleButton {
		    arguments {
			XmNlabelString = "Button One";
		    };
		};
		[ many more toggle buttons here ]
		XmToggleButton {
		    arguments {
			XmNlabelString = "Button Last";
		    };
		};
	    };
	};

I created a UIL file with this structure in it (to look at one variable at a
time), but for simplicity I manually threw in about 50 button widgets as above.

The problem: when bringing it up, I get a single column widget (window) that
continues off the bottom of my physical screen.  In other words, the widgets
didn't 'wrap' to accomodate all of them on the screen by making as many
columns as necessary to hold them all.  Upon examination, it appears that
what we wanted to do is to have the mwm restrict the client size by setting:

    Mwm*defaults*maximumClientSize	800x600

in the .Xdefaults file (reference MWM Programmer's Guide section 4.11.1).
However, when we do this, the window is still too 'tall' for the screen.  If you
'squish and move' the window (repeatedly resize the top border down and then
move the entire window up), you'll finally end up with the entire window on the
screen, and with the widgets wrapping as they should to create more columns to
fit them onto the screen.

However, I should not have to resize, the mwm should have done this for me.
I have also tried XmNpacking = XmPACK_NONE and this did not work.  I DO NOT
want to set XmNpacking to XmPACK_COLUMN because I do not want to have to
compute XmNnumColumns, again, the mwm should take care of this.  Suggestions?

Jeff Copeland		Domain Systems, Inc.	407-686-7911
jac@domain.com		West Palm Beach, Fl.