[Mono-bugs] [Bug 354669] New: [PATCH] 2.0 style AutoScale doesn' t work with forms designed in VS2005
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Fri Jan 18 03:02:49 EST 2008
https://bugzilla.novell.com/show_bug.cgi?id=354669
Summary: [PATCH] 2.0 style AutoScale doesn't work with forms
designed in VS2005
Product: Mono: Class Libraries
Version: SVN
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Windows.Forms
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: jdpurcell2 at yahoo.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Created an attachment (id=190960)
--> (https://bugzilla.novell.com/attachment.cgi?id=190960)
patch
Mono is very picky about the order in which the AutoScale-related properties
are set. The VS2005 form designer sets the form's properties in alphabetical
order which ends up not working at all in Mono. For example,
AutoScaleDimensions is set first, then AutoScaleMode, but in Mono setting
AutoScaleMode causes AutoScaleDimensions to reset. Even if that is switched
around, it still doesn't do anything because PerformAutoScale is triggered
immediately, before the controls are even added or client size is set (it
should wait until ResumeLayout if layout is suspended).
I am submitting a patch (against CVS) to fix this. It includes the following
changes:
* Don't reset AutoScaleDimensions the first time AutoScaleMode is changed.
This is what MS.NET does, it only resets AutoScaleDimensions if it's the 2nd or
more change to AutoScaleMode. Also MS.NET resets AutoScaleDimensions to 0,0,
so I did too (it'll get set back to CurrentAutoScaleDimensions after
PerformAutoScale runs).
* Delay running PerformAutoScaleMode if layout is suspended. Again, this is
what MS.NET does with the exception of a bug where changing Font triggers an
immediate autoscale (even if AutoScaleMode isn't font). I chose not to
implement the bug :).
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list