+2006-12-07 Alexander Olk <alex.olk@googlemail.com>
+
+ * MimeIcon.cs: gdk_pixbuf_save_to_buffer is part of libgdk-pixbuf,
+ not libgdk (though it makes me wonder why I didn't have any
+ problems)
+
+2006-12-07 Chris Toshok <toshok@ximian.com>
+
+ [ you had to know this was coming after that last commit...]
+
+ * XplatUIX11.cs: implement the 3 Offscreen functions in terms of
+ XPixmaps (CreateOffscreenDrawable maps to XCreatePixmap,
+ DestroyOffscreenDrawable to FreePixmap, and BlitFromOffscreen to
+ XCopyArea).
+
+2006-12-07 Chris Toshok <toshok@ximian.com>
+
+ * XplatUI.cs: add 3 calls (CreateOffscreenDrawable,
+ DestroyOffscreenDrawable, and BlitFromOffscreen) that encompass
+ all the behavior we need for double buffering.
+
+ * XplatUIDriver.cs: implement the 3 double buffer methods using a
+ client side Bitmap, just like the old Control-based double buffer
+ code did. The methods are virtual, so each XplatUI driver
+ subclass can replace the implementation to use a faster, platform
+ specific approach.
+
+ * Control.cs: make use of the 3 Offscreen XplatUI calls in the
+ double buffer code, and clean things up a bit in the process.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: reindent WndProc.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ [ I wanna be like BenM when I grow up ]
+
+ * Hwnd.cs: create a single static Graphics object on the static
+ Bitmap we create. use this for our text measurements.
+
+ * Control.cs (DeviceContext): stop using the backbuffer's dc_mem.
+ This was causing us to allocate a backbuffer for every control,
+ even when it wasn't flagged as double buffered. Instead use the
+ single graphics instance. This might have implications for
+ multithreaded applications. If we run into problems we can switch
+ to creating 1 Graphics per control, on the static Hwnd bitmap.
+
+ this change nets us a 7M savings in private dirty mappings when
+ running FormsTest.exe.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * ToolTip.cs: use Visible instead of is_visible.
+
+ * TreeView.cs: same.
+
+ * ListBox.cs: same.
+
+ * ListView.cs: same.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * ListView.cs: the BackgroundImage override is just to set
+ attributes. chain up to base.BackgroundImage.
+
+ * RichTextBox.cs: same.
+
+ * ToolBar.cs: same, but we need to also redraw the toolbar when it
+ changes, so instead a handler for BackgroundImageChanged.
+
+ * Control.cs: make background_image private.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * ScrollBar.cs: change the assignment of cursor to Cursor. not
+ sure we even need this assignment, but roll with it for now.
+
+ * Control.cs: make the cursor field private.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Form.cs: we don't need to explicitly set ImeMode to
+ ImeMode.NoControl - that's a natural fallout of Control.ImeMode's
+ behavior in the face of ImeMode.Inherit.
+
+ * ButtonBase.cs: change DefaultImeMode to ImeMode.Disable, and
+ change the ctor's assignment to use ImeMode instead of ime_mode.
+
+ * Control.cs (get_ImeMode): don't assume DefaultImeMode ==
+ ImeModeInherit. Only check for the parent's imemode (and return
+ NoControl if there is no parent) if ime_Mode == ImeMode.Inherit.
+ This fixes the button unit test, which sets both ImeMode and
+ DefaultImeMode to ImeMode.Disable.
+
+ also make the ime_mode field private.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: make control_style private.
+
+ * TextBoxBase.cs: fix the HandleClick override. it was explicitly
+ setting the styles to true, then setting them to false instead of
+ reverting to their previous values.
+
+ also, call SetStyle on the scrollbars instead of using
+ control_style directly.
+
+2006-12-06 Jonathan Pobst <monkey@jpobst.com>
+
+ * FormCollection.cs: Implement. [2.0]
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: make tab_stop private.
+
+ * Label.cs: set TabStop, not tab_stop. reformat some event
+ add/remove methods to make them more compact.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * RadioButton.cs: fix TabStop handling.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * TextBox.cs: remove the explicit assignments to has_focus.
+ Control does that.
+
+ * ButtonBase.cs: remove the assignment to has_focus. Control will
+ manage that.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * ButtonBase.cs: remove all uses of is_enabled from this code.
+ it's always true when any of the code containing the checks is
+ executed.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * ImageList.cs: reinstate the ShouldSerialize*/Reset* methods,
+ with different semantics (some are present in both 1.1 and 2.0
+ profiles) so that we match MS's behavior in our unit tests.
+
+2006-12-06 Jackson Harper <jackson@ximian.com>
+
+ * TextControl.cs: Make this operation undoable.
+ * TextBoxBase.cs: Factor the border width into the preferred
+ height.
+ - implement Modified as per the spec.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Timer.cs, Control.cs, Menu.cs: make control_tag private.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs: make right_to_left and context_menu fields private.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * AccessibleObject.cs, Control.cs, XplatUIX11GTK.cs,
+ XplatUIX11.cs, Form.cs, RadioButton.cs, ScrollableControl.cs: make
+ Control.child_controls private. switch all uses over to
+ Control.Controls.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * System.Windows.Forms/GroupBox.cs,
+ System.Windows.Forms/AccessibleObject.cs,
+ System.Windows.Forms/ErrorProvider.cs,
+ System.Windows.Forms/Control.cs,
+ System.Windows.Forms/UpDownBase.cs,
+ System.Windows.Forms/ScrollBar.cs,
+ System.Windows.Forms/DateTimePicker.cs,
+ System.Windows.Forms/Form.cs, System.Windows.Forms/Label.cs,
+ System.Windows.Forms/ToolTip.cs,
+ System.Windows.Forms/RadioButton.cs,
+ System.Windows.Forms/LinkLabel.cs,
+ System.Windows.Forms/Splitter.cs,
+ System.Windows.Forms/TextBoxBase.cs,
+ System.Windows.Forms/ToolStripTextBox.cs,
+ System.Windows.Forms/ContainerControl.cs,
+ System.Windows.Forms/ThemeWin32Classic.cs,
+ System.Windows.Forms/SizeGrip.cs,
+ System.Windows.Forms/ToolStripDropDown.cs,
+ System.Windows.Forms/ScrollableControl.cs: Make Control.parent
+ private. switch all uses over to Control.Parent.
+
+2006-12-06 Chris Toshok <toshok@ximian.com>
+
+ * RichTextBox.cs: don't assign to has_focus in GotFocus/LostFocus.
+ Control does this before calling emitting these events.
+
+ * TabControl.cs: same.
+
+ * ThemeWin32Classic.cs: use Control.ClientRectangle instead of
+ Control.client_rect.
+
+ * ButtonBase.cs: use the ClientSize property instead of the
+ client_size field.
+
+ * ScrollableControl.cs: same.
+
+ * Control.cs: another pass at making properties private. also,
+ move the initialization of tab_stop to the ctor.
+
+2006-12-05 Andreia Gaita <avidigal@novell.com>
+
+ * TabControl.cs: Let the selected index be set freely if the
+ control handle is not yet created.
+
+2006-12-05 Jonathan Pobst <monkey@jpobst.com>
+
+ * Control.cs: Revert dist_top, dist_right, and dist_bottom to
+ internal until I can rewrite DefaultLayout.
+ * ToolStrip.cs: Fix build error and some general cleaning.
+ * ToolStripControlHost.cs, SplitterPanel.cs, DataGridView.cs:
+ Fix build errors caused by making some of Control's fields private.
+
+2006-12-05 Jackson Harper <jackson@ximian.com>
+
+ * TextControl.cs: Redo Insert a little so that it use IndexOf
+ instead of Split, this prevents it from messing up on things like
+ \n\n\n. Also more effecient since the split array doesn't need to
+ be created.
+ * TextBoxBase.cs: AppendText doesnt handle multiline and non
+ multiline text differently, this is the first of many fixes that
+ will make multiline/non-multiline the same thing as far as the
+ TextBoxBase is concerned.
+ - Don't split the text and insert lines, this can lose some line
+ endings (like is the last line a soft or hard break). Instead use
+ the new Insert.
+ - Fix an off by one when combining all the lines in the Text
+ getter.
+ - Remove separate multiline handling from the Text getter/setter.
+
+2006-12-05 Chris Toshok <toshok@ximian.com>
+
+ * ButtonBase.cs: a few changes:
+
+ - don't reinitialize internal Control fields in the ctor when they
+ have the same values as Control sets them.
+
+ - don't set has_focus in OnGotFocus/OnLostFocus. Control does
+ this before calling those methods.
+
+ - we don't need to call Refresh for anything. use Invalidate
+ instead.
+
+ - OnEnabledChanged doesn't need to redraw at all - Control.cs
+ calls Refresh in its OnEnabledChanged.
+
+ - several of the events we were registered for in the ctor to
+ redraw ourselves already include calls to Invalidate in the
+ property setters that raise the events. remove the extra
+ invalidation.
+
+ - reformat a switch statement that was 83274658 columns wide.
+
+2006-12-05 Mike Kestner <mkestner@novell.com>
+
+ * ComboBox.cs: fix a unit test regression from a TextBox
+ SelectionLength return of -1 when there's no selection.
+
+2006-12-05 Chris Toshok <toshok@ximian.com>
+
+ * Control.cs, Button.cs, ThemeGtk.cs, Form.cs, ListView.cs,
+ ThemeWin32Classic.cs, SizeGrip.cs, ToolBar.cs: first pass at
+ cleaning up some of the internal Control fields being used by
+ subclasses.
+
+2006-12-05 Mike Kestner <mkestner@novell.com>
+
+ * ComboBox.cs: fix some Simple mode regressions. Set Visible on the
+ listbox after AddImplicit calls since it defaults to hidden. Add a
+ hack to preserve requested heights across DropDownStyle changes.
+
+2006-12-05 Jonathan Pobst <monkey@jpobst.com>
+
+ * PropertyGrid.cs: Hide FindFirstItem method from public API.
+
+2006-12-05 Chris Toshok <toshok@ximian.com>
+
+ * DataGridView.cs: fix compiler warnings.
+
+ * PrintControllerWithStatusDialog.cs: same.
+
+ * ToolBar.cs: same.
+
+ * FolderBrowserDialog.cs: same.
+
+ * Splitter.cs: same.
+
+ * DataGridViewComboBoxCell.cs: same.
+
+ * XplatUIWin32.cs: same.
+
+ * PictureBox.cs: same.
+
+ * Win32DnD.cs: same.
+
+ * PageSetupDialog.cs: same.
+
+ * FileDialog.cs: same.
+
+ * PrintDialog.cs: same.
+
+ * DataGridTextBoxColumn.cs: same.
+
+ * DrawTreeNodeEventArgs.cs: same (and fix corcompare)
+
+2006-12-05 Chris Toshok <toshok@ximian.com>
+
+ * TextBox.cs, CheckedListBox.cs, MonthCalendar.cs, Menu.cs,
+ MainMenu.cs, ListView.cs, LabelEditTextBox.cs, ToolBar.cs: more
+ System.ComponentModel.EventHandlerList work.
+
+2006-12-05 Jonathan Chambers <joncham@gmail.com>
+
+ * DrawTreeNodeEventArgs.cs: Added.
+
+2006-12-05 Rolf Bjarne Kvinge <RKvinge@novell.com>
+
+ * InternalWindowManager.cs: Remove an unused field.
+
+2006-12-05 Rolf Bjarne Kvinge <RKvinge@novell.com>
+
+ * InternalWindowManager.cs:
+ - Save the point where the title bar is clicked.
+
+ * MdiWindowManager.cs:
+ - Only allow moving of the window as long as the
+ clicked point on the title bar does not get out of
+ MdiClient's rectangle. Fixes #79982.
+
+ * MdiClient.cs:
+ - Added Horizontal/VerticalScrollbarVisible.
+ - Simplified the scrollbar sizing algorithm.
+ - Cache the difference in scrolled value in
+ H/VBarValueChanged and move the calculation out
+ of the for loop.
+
+2006-12-05 Rolf Bjarne Kvinge <RKvinge@novell.com>
+
+ * Control.cs: Make the Console.WriteLine in WndProc
+ write more info.
+
+2006-12-05 Chris Toshok <toshok@ximian.com>
+
+ * ToolStripManager.cs, ToolStripButton.cs,
+ ToolStripContentPanel.cs, ToolStripComboBox.cs, ToolStrip.cs,
+ ToolStripMenuItem.cs, ToolStripItem.cs, ToolStripControlHost.cs,
+ ToolStripSplitButton.cs, ToolStripSeparator.cs,
+ ToolStripRenderer.cs, ToolStripDropDownItem.cs,
+ ToolStripProgressBar.cs, ToolStripContainer.cs,
+ ToolStripTextBox.cs, ToolStripPanel.cs, ToolStripDropDown.cs: move
+ to using System.ComponentModel.EventHandlerList.
+