+2006-04-14 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs: Fixed size grip drawing and updated StatusBar
+ drawing code to reflect the size grip changes
+
+2006-04-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ImageListStreamer.cs: fix handling of the mask that follows the main
+ bitmap when deserializing and serialize it properly. The generated mask
+ should better be a 1bpp image, but I'll do that later.
+
+2006-04-13 Alexander Olk <alex.olk@googlemail.com>
+
+ * FileDialog.cs: Show something in the DirComboBox on *nix if the
+ path doesn't fit into some of our Current.Places
+
+2006-04-13 Jackson Harper <jackson@ximian.com>
+
+ * ComboBox.cs: Use borders instead of drawing our own decorations,
+ try to obey correct rules for heights.
+ * Theme.cs:
+ * ThemeNice.cs:
+ * ThemeClearLooks.cs:
+ * ThemeWin32Classic.cs: Remove combobox decoration drawing code,
+ this is now handled by borders.
+ - Remove unused DrawListBoxDecorationSize method.
+
+2006-04-13 Mike Kestner <mkestner@novell.com>
+
+ * MenuAPI.cs: null guarding for the disbled click check fixes crash
+ reported by Alex.
+
+2006-04-13 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs:
+ - Fixed CPDrawStringDisabled
+ - Corrected drawing of disabled menu items
+ - Fixed drawing of disabled radio buttons (bug #78095)
+ - Draw check in a disabled CheckBox with color ControlDark
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Form.cs: Use the provided width when calculating the menu size;
+ when being maximized we get WM_NCCALCSIZE before WM_WINDOWPOSCHANGED
+ and ClientSize.Width won't be updated yet
+ * Application.cs: Use Visible instead of Show() to make form visible,
+ this way we create the handle later and menusize is considered
+
+2006-04-12 Mike Kestner <mkestner@novell.com>
+
+ * MenuAPI.cs: ignore clicks on disabled menu items. Thanks to Alex for
+ reporting.
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TextBox.cs: Implemented context menu
+
+2006-04-12 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs: implement box selection. fixes #77838.
+ * ThemeWin32Classic.cs: draw box select rect, remove a ResetClip.
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: Added setting of window type when transient window
+ is created (metacity would move it otherwise)
+ * X11Structs.cs: Added WINDOW_TYPE atoms
+ * LinkLabel.cs: Override OnPaintBackgroundInternal and draw the
+ background (the control is Opaque but still wants transparent
+ backgrounds)
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs: Added OnPaintBackgroundInternal to allow controls
+ that set Opaque but don't mean it (like all ButtonBase-derived
+ controls) to still draw their background
+ * ButtonBase.cs: Override OnPaintBackgroundInternal and draw
+ the background
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs (PaintControlBackground): Set the graphics object
+ on our PaintEvent to null to prevent it from being disposed
+ when the PaintEvent gets disposed
+
+2006-04-12 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs: Use even more SystemBrushes and SystemPens
+ * ThemeNice.cs, ThemeClearlooks.cs: fix typo
+
+2006-04-12 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Control.cs:
+ - Added transparency check to BackColor property. Transparent
+ backgrounds are only allowed if the control styles permit it
+ - Added recursive painting of parent control background and
+ foreground if a control with a transparent backcolor is drawn
+ (Thanks to Tim Ringenback for providing his 'hack' as a base
+ for this patch) Fixes #77985 and #78026.
+ - Added Opaque style check before calling OnPaintBackground, no
+ need to draw the background if the control is opaque
+ - Removed ControlAccessibleObject owner variable (inherited from
+ base, no need to define again)
+ - Added some documentation links explaining the drawing events
+ and styles
+
+2006-04-11 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Splitter.cs (CalculateSplitPosition): Corrected the bad assumption
+ that the affected control is the located at the left border of our
+ parent (Fixes #77936)
+
+2006-04-11 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TextBoxBase.cs: When rendering disabled or readonly controls,
+ draw the background with 'Control' instead of 'Window' color as
+ long as the user hasn't specifically set a color
+
+2006-04-11 Peter Dennis Bartok <pbartok@novell.com>
+
+ * TextBoxBase.cs: Don't try to shortcut by checking against base.Text
+ since that won't be updated if the user types text (only if it's
+ programatically set)
+
+2006-04-11 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ScrollableControl.cs: Calculate DisplayRect dynamically, so that
+ layout changes do to app-triggered resizes will have the proper
+ display rectangle for layout
+
+2006-04-11 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs:
+ - Make use of the SystemBrushes and SystemPens wherever possible
+ - Corrected some highlight colors
+ - Corrected RadioButton and CheckBox FlatStyle.Flat and Popup
+ drawing
+ * Theme.cs: Added Empty field to CPColor struct
+
+2006-04-11 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ScrollabeControl.cs: We need to consider whether or not a scrollbar
+ is displayed when calculating the display rectangle. Thanks to Mike
+ for teaching me the err of my ways.
+
+2006-04-10 Peter Dennis Bartok <pbartok@novell.com>
+
+ * ScrollableControl.cs:
+ - Rewrote DisplayRectangle code, now returning the proper x/y coords
+ (instead of 0,0) and we now return the real width/height instead of
+ just the clientrectangle, adjusted for padding. The rectangle is
+ now cached and created by the new CalculateDisplayRectangle method.
+ - Created new CalculateDisplayRectange method, which basically does
+ what get_DisplayRectangle() did originally, but now using the
+ right edge instead of DisplayRectangle to determine the size of
+ our scrollbars
+ - get_Canvas(): Fixed it to properly calculate canvas for
+ right/bottom controls which seem to be placed to the right/bottom
+ of any controls that have a fixed location
+ - Removed TODO that's taken care of
+ - Removed NotImplementeds and attempted to implement AdjustFormScrollBars
+ and SetDisplayRectLocation according to new MSDN2 docs
+ - Added call to PerformLayout in OnVisibleChanged, MS causes a layout
+ event when that is called, this is added for compatibility
+ - ScrollControlIntoView(): Implemented.
+ - Switched scrollbars to be implicit, they shouldn't be selectable
+ * ContainerControl: Now that ScrollControlIntoView is implemented, we
+ call it when the active control is set/changed
+ * ScrollBar.cs: Added support for generating Win32 scrollbar messages
+ * ImplicitHScrollBar.cs, ImplicitVScrollBar.cs: Now setting new base
+ implicit_control variable (used for native Win32 message generation)
+ * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs: Added new
+ HorizontalScrollBarHeight and VerticalScrollBarWidth properties
+ * ThemeWin32Classic.cs: Now calling the driver for the scrollbar sizes
+ * XplatUIStructs.cs: Added ScrollBarCommands enum
+
+2006-04-10 Jackson Harper <jackson@ximian.com>
+
+ * ButtonBase.cs:
+ * CheckedListBox.cs:
+ * ComboBox.cs:
+ * DataGrid.cs:
+ * DataGridView.cs:
+ * Form.cs:
+ * GroupBox.cs:
+ * ListBox.cs:
+ * PrintPreviewControl.cs:
+ * ProgressBar.cs:
+ * PropertyGrid.cs:
+ * Splitter.cs:
+ * StatusBar.cs:
+ * TrackBar.cs:
+ * UpDownBase.cs: Fixup base event overrides.
+
+2006-04-06 Mike Kestner <mkestner@novell.com>
+
+ * ScrollBar.cs: fix "new event" declarations (#76509) and bounds check
+ all user-initiated value changes to min <= value <= max-thumbsz+1.
+ (set_Value): check for vert/horiz when calculating new thumb position.
+ (LargeIncrement): bounds check to stop pos at max - thumb_size + 1
+ like MS does.
+ (OnMouseMoveSB): refactor the thumb dragging code and refine
+ invalidation logic to reduce flicker.
+ (SetEndPosition): bounds check to stop pos at max - thumb_size + 1
+ (SmallIncrement): bounds check to stop pos at max - thumb_size + 1
+ (UpdateThumbPosition): small code readability cleanup
+
+2006-04-10 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Small UI polishing. Draw borders a little bit
+ different
+
+2006-04-08 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Use a better graphics effect when a button is pressed
+
+2006-04-08 Alexander Olk <alex.olk@googlemail.com>
+
+ * Theme.cs: Added GetDashPen and GetSizedPen to SystemResPool
+ * ThemeWin32Classic.cs: Make use of the new SystemResPool methods.
+ This dramatically reduces the number of Pen.Dispose calls.
+ Where possible call ResPool methods only once instead of calling it
+ over and over again (for example for the same color).
+
+2006-04-06 Mike Kestner <mkestner@novell.com>
+
+ * TabControl.cs: fix for SelectedIndex updating on TabPage removals.
+ Also remove an unused private field on the collection. Fixes #77972.
+
+2006-04-06 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Added ToolBar drawing code
+
+2006-04-06 Mike Kestner <mkestner@novell.com>
+
+ * Form.cs (ShowDialog): MS allows IWin32Window param to be a non-form.
+ I'm assuming that means we need to look up the toplevel for the
+ provided control. Fixes the crash trace in #77911 but exposes another
+ crash in some strange reflection usage in NDocGui.
+
+2006-04-06 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Gave it a little silver touch and added Images
+ method
+ * FontDialog.cs: FontDialog is not resizable
+ * FileDialg.cs: Added SizeGripStyle.Show
+
+2006-04-05 Jackson Harper <jackson@ximian.com>
+
+ * KeyboardLayouts.cs: Remove warning.
+
+2006-04-05 Jackson Harper <jackson@ximian.com>
+
+ * Control.cs: Enable OnPaintInternal so we can use it for drawing
+ all of our controls instead of Paint +=.
+ * ListBox.cs:
+ * ListView.cs:
+ * MenuAPI.cs:
+ * MessageBox.cs:
+ * NotifyIcon.cs:
+ * ProgressBar.cs:
+ * ScrollBar.cs:
+ * Splitter.cs:
+ * StatusBar.cs:
+ * TabControl.cs:
+ * TextBoxBase.cs:
+ * ToolBar.cs:
+ * TrackBar.cs:
+ * UpDownBase.cs:
+ * ComboBox.cs: Remove handling of WM_PAINT and WM_ERASEBKGND and
+ use OnPaintInternal. Remove Width/Height and Visible checks in
+ paint handler, this is done at a higher level now.
+ * GroupBox.cs: Don't need to handle WM_ERASEBKGND anymore.
+ * PaintEventArgs.cs: Add a handled flag so controls that don't
+ want anymore painting after OnPaintInternal can make sure OnPaint
+ isn't called.
+
+2006-04-05 Mike Kestner <mkestner@novell.com>
+
+ * Form.cs: fix the menu WndProc hacks to respect the native enabled
+ state of the form, so that we don't process events when Modal dialogs
+ are up. Fixes #77922.
+
+2006-04-05 Alexander Olk <alex.olk@googlemail.com>
+
+ * Mime.cs: Default for range length is 1 not 0. If set to 0 no match
+ checking is done.
+
+2006-04-05 Mike Kestner <mkestner@novell.com>
+
+ * XplatUIX11.cs: fix typo in the EX_APPWINDOW transient patch.
+
+2006-04-05 Mike Kestner <mkestner@novell.com>
+
+ * ListView.cs (HeaderMouseMove): null guarding for the over column
+ when setting up the drag_to_index. Fixes #78015.
+
+2006-04-04 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: If WS_EX_APPWINDOW isn't set we don't want to show up
+ in the taskbar. Transient windows seem to accomplish that.
+
+2006-04-04 Peter Dennis Bartok <pbartok@novell.com>
+
+ * Form.cs:
+ - Re-enabled CreateParams.X/Y code for FormStartPosition
+ - Added code for manual placement when creating the Control
+ - Incomplete patch to treat MDI forms differently when
+ setting the ClientSizeCore. (Still need to figure out handling
+ x/y coords there)
+ * XplatUIX11.cs:
+ - When we're explicitly setting the X/Y position of a non-Child
+ window, let the WM know. Metacity really wants this.
+
+2006-04-04 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Added CPDrawButton
+
+2006-04-04 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeNice.cs: Changed the color for focused buttons and activated
+ the arrows for small scroll buttons.
+
+2006-04-04 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs: Removed DrawFlatStyleButton, not needed
+ anymore. Changed some method modifiers to protected (virtual)
+ * ThemeClearlooks.cs: Updated to reflect the ThemeWin32Classic
+ changes
+ * ThemeNice.cs: Updated to reflect the ThemeWin32Classic changes.
+ Updated drawing of menus, buttons and progressbars; added
+ CPDrawBorder3D
+
+2006-04-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ImageListStreamer.cs: implemented serialization/deserialization
+ of the images.
+
+2006-04-03 Alexander Olk <alex.olk@googlemail.com>
+
+ * ThemeWin32Classic.cs:
+ - Removed all the DrawFrameControl stuff; CPDrawButton,
+ CPDrawCheckBox and CPDrawRadioButton are now handled directly
+ inside the methods
+ - Updated and corrected the drawing code of CPDrawButton,
+ CPDrawCheckBox and CPDrawRadioButton to better match ms
+ - Updated theme checkbox and radiobutton code to use the CP*
+ methods
+
+2006-03-31 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs: Enable clipping again now that the libgdiplus
+ bug is fixed
+
+2006-03-31 Jackson Harper <jackson@ximian.com>
+
+ * XplatUIX11.cs: Somehow we get SETCURSORS for bad windows
+ sometimes.
+ * UpDownBase.cs: Don't CreateGraphics manually, use a
+ Refresh. Ideally we would invalidate the correct areas here.
+
+2006-03-31 Peter Dennis Bartok <pbartok@novell.com>
+
+ * XplatUIX11.cs:
+ - We now track the mapping state of windows. If a window (or
+ one of it's parents) is not mapped we no longer permit
+ WM_PAINT messages to be generated since we'd otherwise get
+ lots of BadMatch X errors. Jackson did all the work figuring
+ out the problem.
+ - Destroying the caret if the window it's contained in is
+ destroyed. Can't use regular DestroyCaret method since it
+ might fall into a drawing function (trying to remove the
+ caret) and with that generate new BadMatch errors. Again,
+ Jackson tracked this down.
+ - Changed DestroyChildWindows to SendWMDestroyMessages, we now
+ make sure we send the messages to all windows. (The old code
+ would send the WM_DESTROY to the window, and then all child
+ windows would be 'gone' because the WM_DESTROY handle lookup
+ would no longer find the destroyed window)
+ * Hwnd.cs: Added Mapping property to track mapping state of hwnd
+ * X11Structs.cs: Added WindowType enum for MapWindow/UnmapWindow
+
+2006-03-31 Jackson Harper <jackson@ximian.com>
+
+ * ScrollableControl.cs: Dont recalc if we are not visible.
+
2006-03-31 Mike Kestner <mkestner@novell.com>
* Control.cs (SetVisibleCore): move the CreateControl call up ahead of
- Making sure the active control is selected when the control is created
* CurrencyManager.cs: Removed obsolete TODO
->>>>>>> .r58862
2006-03-29 Mike Kestner <mkestner@novell.com>
* *.cs: fix remaining corcompare issues for 1.1 API with the exception
* ContextMenu.cs (Show): use the position parameter instead of just
showing at the MousePosition.
->>>>>>> .r58288
2006-03-21 Jackson Harper <jackson@ximian.com>
* TabControl.cs: Remove the call to ProcessKeyEventArgs and let