* X11Dnd.cs: Early implementation to support winforms being a drag
[mono.git] / mcs / class / Managed.Windows.Forms / System.Windows.Forms / ChangeLog
index c7158aab53eaa68b2a7328087e7036f02b460bb0..fa306a1d3793df63e561560de7b75ae3cd818f4e 100644 (file)
@@ -1,3 +1,347 @@
+2005-10-28  Jackson Harper  <jackson@ximian.com>
+
+       * X11Dnd.cs: Early implementation to support winforms being a drag
+       source for data on X11. Also restructured the converters so they
+       can go both ways now.
+       * XplatUIX11.cs: Tie ins to the the Dnd stuff.
+       
+2005-10-27  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * XplatUIX11.cs: Fixed FIXME - implemented ASCII encoding for XA_STRING
+         clipboard requests
+
+2005-10-27  Jackson Harper  <jackson@ximian.com>
+
+       * TreeNode.cs: Implement serialization so my DnD examples will work.
+
+2005-10-24  Kornél Pál  <kornelpal@hotmail.com>
+
+       * ButtonBase.cs, ListView.cs, NotifyIcon.cs, PictureBox.cs, ToolBar.cs,
+         TreeView.cs: Don't dispose objects that are not owned.
+         
+2005-10-24  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * Cursor.cs: Defaulting the Current cursor to Cursors.Default. We
+         should retrieve the current cursor and report that, but XplatUI
+         doesn't (yet) have an interface for that (and I'm not sure I even
+         can, on X11)
+       * XplatUIWin32.cs: Fixed override behaviour. The override is temporary,
+         until any message loop processing is done (and the WM_SETCURSOR
+         replaces the cursor to the proper one)
+       * XplatUIX11.cs: 
+         - Fixed override behaviour, we can't set the cursor globally on X11, 
+           just for our windows.
+         - Invalidating the System.Drawing X11 display handle when we are
+           shutting down
+       * Control.cs: Fix to make csc happy
+
+2005-10-23  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * TextBoxBase.cs: 
+         - get_Text: Add last line (without trailing newline) to returned
+           value (Fixes 76212)
+         - get_TextLength: Count last line in returned length
+         - ToString: Call Text property instead of duplicating code
+
+2005-10-23  Kornél Pál  <kornelpal@hotmail.com>
+
+       * ImageList.cs: Dispose ImageAttributes objects.
+
+2005-10-22  Kornél Pál  <kornelpal@hotmail.com>
+
+       * ImageList.cs: Use attribute constructors with less arguments where
+         possible.
+
+2005-10-22  Kornél Pál  <kornelpal@hotmail.com>
+
+       * ImageList.cs: Added lastKeyIndex field and use in IndexOfKey.
+         Use typeof instead of strings when assembly is referenced. Added
+         some more comments.
+
+2005-10-21  Jackson Harper  <jackson@ximian.com>
+
+       * ListView.cs: Raise a double click event. Also tried to somewhat
+       fix when the selectedindexchanged event is raised. Its still
+       broken though.
+
+2005-10-21  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: New method to invalidate the plus minus area of a
+       node without invalidating the whole node (maybe this can be used
+       in some more places).
+       * TreeNodeCollection.cs: When adding to an empty node we need to
+       invalidate its plus minus area so the little block shows up.
+       
+2005-10-21  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: Make sure that when we invalidate a node the bounds
+       are big enough to cover the selected box and the focus
+       rectangle. Use a different colour for the lines connecting nodes
+       so they show up with all themes.
+
+2005-10-21  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * NativeWindow.cs: Don't call anything that could call into the driver,
+         we might be on a different thread.
+
+2005-10-21  Peter Dennis Bartok  <pbartok@novell.com> 
+
+       * Control.cs(Dispose): Since Dispose might run on a different thread,
+         make sure that we call methods that could call into the driver via
+         invoke, to avoid thread issues
+
+2005-10-21  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * XplatUI.cs: Removed finalizer
+       * XplatUIX11.cs: Removed Destructor, was causing crashes due to X11
+         not allowing to be called on the finalizer thread.
+
+2005-10-21  Kornél Pál  <kornelpal@hotmail.com>
+
+       * ImageList.cs:
+         - Reverted r51889 and r51891.
+         - Added ImageListItem class that stores unmodified image items and image
+           properties required to create list images until handle is created.
+         - Added AddItem and moved image creation logic to AddItemInternal.
+         - Added CreateHandle method that creates images based on unmodified items.
+         - Added DestroyHandle that changes state to store unmodified items.
+         - Add and AddStrip methods no more create handle.
+         - ReduceColorDepth has no return value.
+         - Dispose destroys handle.
+         - Modified other methods to reflect the above changes.
+         - Implemented key support.
+         - Added profile 2.0 members and attributes.
+         - Added private Reset and ShouldSerialize methods that provide the same
+           behavior as MS.NET but the Visual Studio .NET designer seems to ignore
+           them as they are private.
+         - Added some more comments about implementation details.
+
+2005-10-21  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * DataGrid.cs: Adds support for vertical scrolling using the mousewheel
+
+2005-10-21  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * Binding.cs: No PushData/PullData if there is no binding (fixes crash)
+
+2005-10-21  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * DataGridDrawingLogic.cs: Fixes column hit calcultation
+       * DataGridColumnStyle.cs: Remove debug message
+
+2005-10-20  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: We can always get input keys regardless of whether
+       or not editing is enabled. They are used for navigation.
+
+2005-10-20  Jackson Harper  <jackson@ximian.com>
+
+       * TreeNode.cs: Use the viewport rect for determining if a node
+       needs to be moved for visibility. Don't use Begin/End edit. This
+       calls a full refresh when its done.
+       * TreeView.cs: New SetBottom works correctly.  Make the viewport
+       rect property internal so the treenodes can see it. When clicking
+       on a node we need to ensure that its visible because it might just
+       be partly visible when clicked.
+
+2005-10-20  Jackson Harper  <jackson@ximian.com>
+
+       * TreeNodeCollection.cs: Remove debug code.
+
+2005-10-20  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * Datagrid.cs: Implements column sorting in Datagrid
+       * DataGridColumnStyle.cs: Implements column sorting in Datagrid
+
+2005-10-20  Jackson Harper  <jackson@ximian.com>
+
+       * TreeNodeCollection.cs: Remove items properly. Update the correct
+       area after removing them.
+
+2005-10-20  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * Datagrid.cs: Should not call base.OnPaintBackground
+
+2005-10-20  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * XplatUIX11.cs (GetMessage):
+         - Now properly calculates NC_xBUTTONDOWN coordinates off the whole
+           window instead of client window
+         - Now properly calculates NC_xBUTTONUP message coordinates
+         - ScreenToMenu now properly calculates it's coordinates of whole 
+           window, since menus are in the whole window, not in the client
+           window
+         - Added WholeToScreen coordinate translation method
+
+2005-10-20  Peter Dennis Bartok  <pbartok@novell.com> 
+
+       * XplatUIX11.cs (GetMessage): Don't return in situations where we don't
+         want to return a message, loop back to the beginning of the function
+         and grab the next real message to process instead.
+
+2005-10-20  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * Splitter.cs: Properly set limits if no filler control is used
+
+2005-10-19  Jackson Harper  <jackson@ximian.com>
+
+       * ColorDialog.cs: Don't show the help button if it is not enabled
+       instead of disabling it (this is what MS does). Don't create the
+       panel until the dialog is run, otherwise the vars (such as
+       ShowHelp) are not set yet.
+
+2005-10-19  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: Implement Begin/EndEdit more correctly so refreshes
+       are reduced when adding nodes.
+       * TreeNode.cs:
+       * TreeNodeCollection.cs: Use UpdateNode instead of refreshing the
+       tree.
+       
+2005-10-19  Jackson Harper  <jackson@ximian.com>
+
+       * FolderBrowserDialog.cs: End editing our treeview so the window
+       actually gets refreshed.
+
+2005-10-18  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * Control.cs: Fixed logic flip on when to call OnPaintBackground. 
+         Obsoleted handling of WM_ERASEBKGND, now always draws our background
+         inside of WM_PAINT
+
+2005-10-18  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * MenuAPI.cs: Returns after Hidding window
+       * XplatUIX11.cs: Added TODO found while debugging menu issues
+
+2005-10-18  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * XplatUIX11.cs: Do not re-map the whole window when it's size
+         becomes non-zero unless it's supposed to be actually visible
+
+2005-10-18  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: We don't need to keep a count anymore.
+       * TreeNodeCollection.cs: Fix off by one in RemoveAt, Insert can
+       use the Grow method.
+
+2005-10-18  Jackson Harper  <jackson@ximian.com>
+
+       * TreeNodeCollection.cs: Insert is not supported on arrays, so
+       implement it manually here.
+
+2005-10-18  Jackson Harper  <jackson@ximian.com>
+
+       * ImageList.cs: Dont kill the list when the colour depth is
+       changed, just change the colour depth of all the images.
+       - Same goes for setting the image size. Just resize them all
+       instead of killing the list softly.
+
+2005-10-18  Jackson Harper  <jackson@ximian.com>
+
+       * Control.cs: Don't invalidate empty rectangles.
+
+2005-10-18  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * ListViewItem.cs:
+         - Adds checked item to the Checked/Item lists (where empty before)
+         - Do not add items to the Selected lists if they are already present
+       * ListView.cs:
+         - Fixes IsFixedSize, SyncRoot, IsReadOnly in many collections
+         - When deleting items make sure that we delete them for the Selected
+         and Checked list also.
+
+2005-10-18  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * Label.cs: Dispose objects no longer used
+       * ThemeWin32Classic.cs: Dispose objects no longer used
+
+2005-10-18  Jackson Harper  <jackson@ximian.com>
+
+       * TabControl.cs: Don't refresh the whole control when the tabs are
+       scrolled, we just need to refresh the tab area.
+
+2005-10-17  Jackson Harper  <jackson@ximian.com>
+
+       * XplatUIX11.cs: Compress code a little bit. Only calculate the
+       after handle when we need it.
+
+2005-10-17  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * Control.cs: When the parent size changes, recalculate anchor 
+         positions. Partial fix for #76462
+
+2005-10-17  Peter Dennis Bartok  <pbartok@novell.com>
+
+       * ThemeWin32Classic.cs: Make sure the picturebox has it's background 
+         drawn. Fixes #76462
+
+2005-10-17  Jackson Harper  <jackson@ximian.com>
+
+       * MonthCalendar.cs: Don't create the numeric up down until our
+       handle is created. Otherwise our handle is created in the
+       constructor and we don't know if we are a WS_CHILD or WS_POPUP
+       yet.
+
+2005-10-17  Jackson Harper  <jackson@ximian.com>
+
+       * TreeView.cs: Merge in patch by Rafael Teixeira to align strings
+       correctly.
+
+2005-10-17  Rafael Teixeira <rafaelteixeirabr@hotmail.com> 
+       * TreeNode.cs : small logical fix (was using local var instead of field)
+       
+2005-10-17  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * ThemeWin32Classic.cs: Fixes vert/horz scrollbar colours
+
+2005-10-17  Jordi Mas i Hernandez <jordi@ximian.com>
+
+       * ThemeWin32Classic.cs: Fixes focus drawing in for non-flat/popup buttons
+
+2005-10-16  Peter Dennis Bartok  <pbartok@novell.com> 
+
+       * Control.cs: 
+         - Re-implemented anchoring code. My first version was really broken.
+           This fixes bug #76033. Unlike the previous implementation we will
+           no longer have round errors since all numbers are calculated from
+           scratch every time. Removed various anchor-related obsolete vars.
+         - InitLayout no longer causes layout event firing and layout to be 
+           performed
+
+2005-10-16  Jackson Harper  <jackson@ximian.com>
+
+       * Hwnd.cs: Compute invalid area correctly (fixes my last commit
+       which was broken).
+
+2005-10-16  Jackson Harper  <jackson@ximian.com>
+
+       * TabControl.cs: Remove debug code.
+
+2005-10-16  Jackson Harper  <jackson@ximian.com>
+
+       * XEventQueue.cs: Increase the default queue size (very simple
+       apps needed to grow the queue).
+       * Hwnd.cs: No finalizer so we don't need to suppress
+       finalization. Compute the invalid area manually so a new rectangle
+       does not newto be created.
+       * ScrollableControl.cs: Don't set any params (otherwise visibility
+       isn't set correctly).
+       * MdiChildContext.cs: New constructor takes the mdi parent so it
+       doesn't have to be computed and avoids a crash on windows. Draw
+       the window icon properly, and allow the text to be seen.
+       * Form.cs: Use new MdiChildContext constructor. Make sure the
+       child context isn't null in wndproc.
+       * TabControl.cs: Don't set focus, this is muddling keyboard
+       behavoir. Expand the tab rows when a window size increase will
+       allow extra tabs to be seen. Don't allow tabs smaller than the
+       width of a window to be scrolled out of view.
+       * TreeNode.cs:
+       * TreeView.cs: Use measure string to calculate a nodes width, the
+       width is cached and only updated when the text or the font is
+       changed. Don't check for expand/collapse clicks on the first level
+       nodes if root lines are disabled.
+       
 2005-10-16  Ritvik Mayank  <mritvik@novell.com>
 
        * TextBoxBase.cs: Fixes #76352 (passing tab key in a multiline textbox)