The preferred size only if you pass SWT.DEFAULT as a hint! Tom
Am 11.05.12 09:00, schrieb Hallvard Trætteberg: > Well, some places say it should return the preferred size. In the case > of GeoMap, I think it is reasonable to at least ask for the size > corresponding to one map tile. > > Hallvard > > On 10.05.12 17.33, Matthew Hall wrote: >> The computeSize method should report the minimum size needed by the >> control. Expanding the control to fill available space is the >> responsibility of the container control, using layout data hints. >> >> -Matthew >> >> On May 10, 2012 8:25 AM, "Hallvard Trætteberg" <[email protected] >> <mailto:[email protected]>> wrote: >> >> Hi, >> >> I have been looking at implementing computeSize in GeoMap, so it >> "grabs" more space than the minimum when there are no constraints. I >> test it by creating an anonymous subclass in GeoMapViewer's >> constructor. First I tried >> >> public GeoMapViewer(Composite parent, int flags) { >> this(new GeoMap(parent, flags) { >> @Override >> public Point computeSize(int wHint, int >> hHint, boolean changed) { >> int w = (wHint != SWT.DEFAULT ? >> wHint : Integer.MAX_VALUE); >> int h = (hHint != SWT.DEFAULT ? >> hHint : Integer.MAX_VALUE); >> return new Point(w, h); >> } >> }); >> } >> >> The idea is to indicate that ideally GeoMap wants as much space as >> possible. I was pretty surprised that the wish for Integer.MAX_VALUE >> width and height was granted, in the sense that getSize() reported >> these dimensions not that the layout actually gave it that much >> space. This gave problems in the paint method, so I reduced the >> value from Integer.MAX_VALUE to 256 * 8. >> >> Two question: >> - (how) can the computeSize method say that it wants as much as >> possible, but can accept nothing? >> - why isn't the size returned by getSize() actually reduced to the >> visible size instead of the value asked for by computeSize? >> >> Hallvard >> _________________________________________________ >> nebula-dev mailing list >> [email protected] <mailto:[email protected]> >> https://dev.eclipse.org/__mailman/listinfo/nebula-dev >> <https://dev.eclipse.org/mailman/listinfo/nebula-dev> >> >> >> >> _______________________________________________ >> nebula-dev mailing list >> [email protected] >> https://dev.eclipse.org/mailman/listinfo/nebula-dev > _______________________________________________ > nebula-dev mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/nebula-dev -- B e s t S o l u t i o n . a t EDV Systemhaus GmbH ------------------------------------------------------------------------ tom schindl geschäftsführer/CEO ------------------------------------------------------------------------ eduard-bodem-gasse 5-7/1 A-6020 innsbruck fax ++43 512 935833 http://www.BestSolution.at phone ++43 512 935834 _______________________________________________ nebula-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/nebula-dev
