2005-01-31 Geoff Norton <gnorton@customerdna.com>
[mono-project.git] / mcs / class / Managed.Windows.Forms / System.Windows.Forms / ChangeLog
blob14a68a8ea6004a96c22aae1217d0f14d404c5ddb
1 2005-01-31  Geoff Norton  <gnorton@customerdna.com>
2         
3         * XplatUIOSX.cs: Call ExitToShell in our teardown to avoid a 
4         crash reporter log.
6 2005-01-31  Geoff Norton  <gnorton@customerdna.com>
8         * XplatUIOSX.cs: Allow applications to actually exit.
10 2005-01-31  Geoff Norton  <gnorton@customerdna.com>
12         * XplatUIOSX.cs: SetWindowStyle implemented.  Reposition views in 
13         their parent at creation time rather than lazily later.  Fixes a major
14         regression we were experiencing.
16 2005-01-31      John BouAntoun  <jba-mono@optusnet.com.au>
18         * ThemeWin32Classic.cs: more date time picker painting fixes
19         * DateTimePicker.cs: more monthcalendar drop down fixes
20         * MonthCalendar.cs: more CreateParams fixes to ensure correct drop down
22 2005-01-31  Jordi Mas i Hernandez <jordi@ximian.com>
24         * ScrollBar.cs:
25                 - When moving the thumb going outside the control should stop the moving
26                 - Adds the firing of missing events
27                 - Fixes no button show if Size is not specified
28                 - End / Home keys for keyboard navigation
30 2005-01-30  Peter Bartok  <pbartok@novell.com>
32         * NotifyIcon.cs (CalculateIconRect): Removed debug output and added
33           sanity check to prevent theoretical loop
34         * XplatUIWin32.cs (SetVisible): Removed debug output
35         * XplatUIX11.cs (SystrayChange): Added sanity check
36         * ScrollableControl.cs (OnVisibleChanged): Now calls base method
37         * Control.cs (OnVisibleChanged): Added workaround for ParentForm
38           behaviour, valid until the X11 client window rewrite is done
39         * TextBox.cs (ctor): Setting proper default foreground and background
40           colors
42 2005-01-30      John BouAntoun  <jba-mono@optusnet.com.au>
44         * Theme: Added DrawDateTimePicker to interface
45         * ThemeWin32Classic.cs: Added DrawDateTimePicker (incomplete)
46         * DateTimePicker.cs: Created (still needs keys and painting code)
47         * DateTimePickerFormat.cs: added
48         * MonthCalendar.cs: fixed CreateParams for popup window mode
49           
50 2005-01-29  Peter Bartok  <pbartok@novell.com>
52         * ControlPaint.cs: Fixed luminace value returned on achromatic colors,
53           this should also the calculations for ligher/darker
54         * Theme.cs: Fixed defaults for ScrollBar widths/heights
56 2005-01-29  Peter Bartok  <pbartok@novell.com>
58         * ArrangeDirection.cs: Added
59         * ArrangeStartingPositon.cs: Added
60         * SystemInformation.cs: Implemented
61         * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
62           XplatUIX11.cs, Theme.cs: Added/implemented new static properties 
63           used by SystemInformation class
64         * X11Strucs.cs: Added XSizeHints structure
65         * MenuAPI.cs:
66           - Fixed CreateParams to make sure the menu window is always visible
67           - TrackPopupMenu: Added check to make sure we don't draw the
68             menu offscreen
70 2005-01-29  Peter Bartok  <pbartok@novell.com>
72         * HandleData.cs: Added method for altering invalid area
73         * TextBoxBase.cs: Implemented TextLength
75 2005-01-28  Peter Bartok  <pbartok@novell.com>
77         * XplatUIX11.cs: Improvement over last patch, not sending
78           the WM_PAINT directly anymore, instead we scroll any pending
79           exposed areas and let the system pick out the WM_PAINT later
81 2005-01-28  Peter Bartok  <pbartok@novell.com>
83         * SWF.csproj: Deleted, no longer used. Instead,
84           Managed.Windows.Forms/SWF.csproj should be used
85         * XplatUIX11.cs: Instead of posting the WM_PAINT, we send it
86           directly, to avoid a potential race condition with the next
87           scroll
89 2005-01-28  Peter Bartok  <pbartok@novell.com>
91         * XplatUI.cs: Made class internal
93 2005-01-28  Jordi Mas i Hernandez <jordi@ximian.com>
95         * CheckedListBox.cs:
96                 - Draw focus 
97                 - Fixed Drawing
98                 - Missing methods and events
100 2005-01-27  Peter Bartok  <pbartok@novell.com>
102         * Application.cs (Run): Don't use form if we don't have one
104 2005-01-27  Peter Bartok  <pbartok@novell.com>
106         * TextBoxBase.cs (get_Lines): Fixed index off by one error
108 2005-01-27  Peter Bartok  <pbartok@novell.com>
110         * GridEntry.cs: Added; Patch by Jonathan S. Chambers
111         * GridItem.cs: Added; Patch by Jonathan S. Chambers
112         * GridItemCollection.cs: Added; Patch by Jonathan S. Chambers
113         * GridItemType.cs: Added; Patch by Jonathan S. Chambers
114         * PropertyGrid.cs: Added; Patch by Jonathan S. Chambers
115         * PropertySort.cs: Added; Patch by Jonathan S. Chambers
116         * PropertyTabChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
117         * PropertyTabChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
118         * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
119         * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
120         * SelectedGridItemChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
121         * SelectedGridItemChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
123 2005-01-27  Jordi Mas i Hernandez <jordi@ximian.com>
125         * Combobox.cs:
126                 - Draw focus on Simple Combobox
127                 - Fixes drawing issues
128                 - fixes 71834
130 2005-01-27  Peter Bartok  <pbartok@novell.com>
132         * Form.cs:
133           - Place window in default location, instead of hardcoded 0/0
134           - Send initial LocationChanged event
135         * Control.cs:
136           - UpdateBounds after creation to find out where the WM placed us
137           - Make sure that if the ParentForm changes location the Form
138             is notified
139         * XplatUIX11.cs: XGetGeometry will not return the coords relative 
140             to the root, but to whatever the WM placed around us. 
141             Translate to root coordinates before returning toplevel 
142             coordinates
143         * XplatUIWin32.cs: Removed debug output
144         * XplatUIOSX.cs, XplatUI.cs, XplatUIDriver.cs: Added toplevel
145           flag to GetWindowPos, to allow translation of coordinates on X11
147 2005-01-27  Jordi Mas i Hernandez <jordi@ximian.com>
149         * ListBox.cs: connect LostFocus Event
151 2005-01-27  Peter Bartok  <pbartok@novell.com>
153         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
154           XplatUIX11.cs: Extended the Systray API
155         * Form.cs: Removed debug output
156         * Application.cs: Fixed focus assignment, always need to call
157           XplatUI.Activate() since Form.Activate() has rules that may
158           prevent activation
159         * NotifyIcon.cs: Should be complete now
160         * ToolTip.cs: Worked around possible timer bug
162 2005-01-27  Jackson Harper  <jackson@ximian.com>
164         * TabControl.cs:
165         - Only invalidate the effected tabs when the
166         selected index changes. This reduces drawing and gets rid of some
167         flicker.
168         - Only refresh if the tabs need to be shifted, otherwise only
169         invalidate the slider button.
170         - On windows the tabs are not filled to right if the slider is
171         visible.
172         
173 2005-01-27  Jackson Harper  <jackson@ximian.com>
175         * TabControl.cs: Only refresh on mouseup if we are showing the
176         slider. Also only invalidate the button whose state has changed.
178 2005-01-26  Peter Bartok  <pbartok@novell.com>
180         * XplatUI.cs, XplatUIDriver.cs: Added Systray methods
181         * XplatUIWin32.cs: Implemented SystrayAdd(), SystrayChange() 
182           and SystrayRemove() methods
183         * XplatUIOSX.cs: Stubbed Systray methods
184         * XplatUIX11.cs:
185           - Implemented SystrayAdd(), SystrayChange() and SystrayRemove() 
186             methods
187           - Fixed broken XChangeProperty calls (marshalling messed up things)
188         * X11Structs.cs: Added enums and structs required for Size hinting
189         * NotifyIcon.cs: Added & implemented
191 2005-01-26  Jackson Harper  <jackson@ximian.com>
193         * TabControl.cs: Space vertically layed out tabs properly.
195 2005-01-26  Peter Bartok  <pbartok@novell.com>
197         * Form.cs (CreateClientParams): Always set the location to 0,0
198           since we're a child window.
200         * Control.cs (SetVisibleCore): Always explicitly setting the location
201           of a toplevel window, apparently X11 doesn't like to move windows
202           while they're not mapped.
204 2005-01-26  Jackson Harper  <jackson@ximian.com>
206         * TabControl.cs: Implement FillToRight size mode with vertically
207         rendered tabs.
209 2005-01-26  Jordi Mas i Hernandez <jordi@ximian.com>
211         * ControlPaint.cs, ThemeWin32Classic.cs
212                 - Fixes DrawFocusRectangle
214 2005-01-26  Jordi Mas i Hernandez <jordi@ximian.com>
216         * MenuAPI.cs: 
217                 - MenuBar tracking only starts when item is first clicked 
218                 - Fixes menu hidding for multiple subitems
219                 - Unselect item in MenuBar when item Executed
220                 - Fixes bug 71495
222 2005-01-25  Jordi Mas i Hernandez <jordi@ximian.com>
224         * ListControl.cs: 
225                 - IsInputKey for ListBox
226         * ListBox.cs:
227                 - Focus item 
228                 - Shift and Control item selection
229                 - Implement SelectionMode.MultiExtended
230                 - Fixes RightToLeft
231         * ComboBox.cs:
232                 - IsInputKey implemented
233                 - Do not generate OnTextChangedEdit on internal txt changes             
234                 
235 2005-01-23  Peter Bartok  <pbartok@novell.com>
237         * AccessibleObject.cs: Partially implemented Select()
238         * MonthCalendar.cs: Added missing attributes and events
239         * Form.cs: Fixed CreateParams behaviour, now controls derived from
240           form can properly override CreateParams.
241         * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
242           XplatUIX11.cs: Dropped RefreshWindow method, not needed if
243           Control performs Invalidate & Update
244         * NativeWindow (CreateHandle): Added special handling for Form
245           and Form.FormParent classes to allow overriding of From.CreateParams
246         * Control.cs:
247           - ControlNativeWindow: Renamed 'control' variable to more intuitive
248             name 'owner'
249           - ControlNativeWindow: Added Owner property
250           - Removed usage of Refresh() on property changes, changed into 
251             Invalidate(), we need to wait until the queue is processed for 
252             updates, direct calls might cause problems if not all vars for 
253             Paint are initialized
254           - Added call to UpdateStyles() when creating the window, to set any
255             styles that CreateWindow might have ignored.
256           - Added support for Form CreateParent overrides to UpdateStyles()
257         * MessageBox.cs: Removed no longer needed FormParent override stuff,
258           CreateParams are now properly overridable
259         * CommonDialog.cs: Removed no longer needed FormParent override stuff,
260           CreateParams are now properly overridable
262 2005-01-23  Miguel de Icaza  <miguel@ximian.com>
264         * UpDownBase.cs (ctor): Connect TextChanged in the entry to the
265         OnTextBoxChanged.
267         Capture LostFocus and OnTextBoxChanged.  The later introduces a
268         recursive invocation that I have not figured out yet.
270         Reset the timer when not using (it was accumulating).
273         (OnTextBoxChanged): Set UserEdit to true here to track whether the
274         user has made changes that require validation.  
276         Reset changing to avoid loops.
278 2005-01-22  Miguel de Icaza  <miguel@ximian.com>
280         * NumericUpDown.cs: Display value at startup.
282         * UpDownBase.cs (Text): Do not call UpdateEditText here, only call
283         ValidateEditText. 
285         * NumericUpDown.cs: Minimum, Maximum, Text, Value properties
286         filled in.  Added some basic parsing of text.  
288         Still missing the OnXXX method overrides, and figuring out the
289         events that must be emitted.
291         * UpDownBase.cs: Handle UserEdit on the Text property.
292         
293 2005-01-22  Jordi Mas i Hernandez <jordi@ximian.com>
295         * ComboBox.cs:
296           - Fixes IntegralHeight
297           - ToString method
299 2005-01-21  Jackson Harper  <jackson@ximian.com>
301         * TabControl.cs: Set the SelectedIndex property when SelectedTab
302         is set so that the page visibility is updated and the tabs are
303         sized correctly.
305 2005-01-21  Jackson Harper  <jackson@ximian.com>
307         * TabControl.cs: Use cliping rectangle for blitting. Give the
308         theme the clipping rect so we can do clipping while
309         drawing. Remove some debug code.
311 2005-01-21  Jackson Harper  <jackson@ximian.com>
313         * TabPage.cs: Add a new method so tab pages can force the tab
314         control to recalculate the tab page sizes.
315         * TabControl.cs: UpdateOwner needs to make the tab control recalc
316         sizes.
318 2005-01-20  Jackson Harper  <jackson@ximian.com>
320         * ThemeWin32Classic.cs: Clip text to the staus bar panels rects.
322 2005-01-20  Jackson Harper  <jackson@ximian.com>
324         * TreeView.cs: Set the bounds for nodes properly. They were
325         getting screwed up when checkboxes were not enabled, but images
326         were.
328 2005-01-20  Jordi Mas i Hernandez <jordi@ximian.com>
330         * ListBox.cs:
331                 - Owner draw support
332                 - Fixes         
333                 
334 2005-01-20  Jackson Harper  <jackson@ximian.com>
336         * XplatUIStructs.cs: More misc keys
337         * X11Keyboard.cs: Ignore some control keys.
339 2005-01-20  Jackson Harper  <jackson@ximian.com>
341         * X11Structs.cs: Add the modmaps to the keymask struct and tabify.
342         * X11Keyboard.cs: Set the AltGr mask when we get a key event.
344 2005-01-19  Peter Bartok  <pbartok@novell.com>
346         * Control.cs: Un-selecting the control when it is loosing focus
348 2005-01-19  Jackson Harper  <jackson@ximian.com>
350         * TreeView.cs: Hook up to the text controls leave event so we can
351         end editing when the users clicks outside the text box.
352         
353 2005-01-19  Jackson Harper  <jackson@ximian.com>
355         * X11Keyboard.cs: Fix typo that was causing the wrong keycodes to
356         get set in the conversion array.
358 2005-01-19  Peter Bartok  <pbartok@novell.com>
360         * Application.cs (ModalRun): Added a call to CreateControl to ensure
361           focus is properly set
362         * Button.cs:
363           - Added missing attributes
364           - removed styles, those are already set in the base class
365         * ButtonBase.cs:
366           - Added missing attributes
367           - Added clip window styles
368         * CheckBox.cs: Added missing attributes
369         * CommonDialog.cs: 
370           - FormParentWindow.CreateParams: Added required clip styles
371         * Form.cs (ProcessDialogKey): Fixed handling of Escape key, now
372           also filters modifier keys 
373         * MessageBox.cs:
374           - Added assignment of Accept and Cancel button to enable Enter 
375             and Esc keys in MessageBox dialogs
376           - FormParentWindow.CreateParams: Added required clip styles
377         * RadioButton.cs: Added missing attributes
378         * TextControl.cs: No longer draws selection if control does not
379           have focus
380         * TextBoxBase.cs: 
381           - Now draws simple rectangle around test area to make it obvious 
382             there's a control. This is a hack until we properly support borders
383           - A few simple fixes to support selections better, now erases selected
384             text when typing, and resets selection when using movement keys
386 2005-01-19  Miguel de Icaza  <miguel@ximian.com>
388         * UpDownBase.cs: Added some new properties.
390         * DomainUpDown.cs: Implement a lot to get my test working. 
392 2005-01-19  Geoff Norton  <gnorton@customerdna.com>
394         * XplatUIOSX.cs: Fix a minor bug to bring the close box back
396 2005-01-19  Geoff Norton  <gnorton@customerdna.com>
398         * OSXStructs (WindowAttributes): Fixed csc complaints
400 2005-01-19  Geoff Norton  <gnorton@customerdna.com>
402         * XplayUIOSX.cs:
403           OSXStructs.cs: Initial refactor to move enums and consts into
404           OSXStructs and use them in the driver for greater readability.
406 2005-01-19  Geoff Norton  <gnorton@customerdna.com>
408         * XplatUIOSX.cs: Initial support for Standard Cursors.
409         * OSXStructs.cs: Move our structs here; added ThemeCursor enum
411 2005-01-19  Jordi Mas i Hernandez <jordi@ximian.com>
413         * ComboBox.cs: ability to change style when the ctrl is already
414         created, missing methods and events, bug fixes, signature fixes
416 2005-01-19  Peter Bartok  <pbartok@novell.com>
418         * Cursors.cs (ctor): Added ctor to fix signature
420 2005-01-18  Peter Bartok  <pbartok@novell.com>
422         * Button.cs: Implemented DoubleClick event
423         * ButtonBase.cs:
424           - Fixed keyboard handling to behave like MS, where the press of 
425             Spacebar is equivalent to a mousedown, and the key release is 
426             equivalent to mouseup. Now a spacebar push will give the same
427             visual feedback like a mouse click.
428           - Added missing attributes
429           - Added ImeModeChanged event
430           - Added support for generating DoubleClick event for derived classes
431         * CheckBox.cs:
432           - Implemented DoubleClick event
433           - Added missing attributes
434         * CommonDialog.cs: Added missing attribute
435         * ContextMenu.cs: Added missing attributes
436         * RadioButton.cs:
437           - AutoChecked buttons do not allow to be unselected when clicked 
438             (otherwise we might end up with no selected buttons in a group)
439           - Added missing attributes
440           - Implemented DoubleClickEvent
441         * ThreadExceptionDialog.cs: Enabled TextBox code
443 2005-01-18  Peter Bartok  <pbartok@novell.com>
445         * Form.cs: Removed debug output
446         * Button.cs: Added support for DoubleClick method
448 2005-01-18  Peter Bartok  <pbartok@novell.com>
450         * Form.cs: 
451           - Added method to parent window that allows triggering size
452             calculations when a menu is added/removed
453           - set_Menu: Cleaned up mess from early days of Form and Control,
454             now properly triggers a recalc when a menu is added/removed
455           - Added case to select form itself as focused form if no child
456             controls exist
457           - Added PerformLayout call when showing dialog, to ensure properly
458             placed controls
459         * Control.cs:
460           - Select(): Made internal so Form can access it
461           - Focus(): Only call Xplat layer if required (avoids loop), and sets
462             status
463         * Application.cs (Run): Removed hack and calls PerformLayout instead
464           to trigger calculation when Form becomes visible
466 2005-01-18  Jordi Mas i Hernandez <jordi@ximian.com>
468         * ComboBox.cs: fixes for ownerdraw
470 2005-01-18  Peter Bartok  <pbartok@novell.com>
472         * TextControl.cs: 
473           - Sentinel is no longer static, each Document gets it's own, this 
474             avoids locking or alternatively overwrite problems when more 
475             than one text control is used simultaneously.
476           - Switched to use Hilight and HilightText brushes for text selection
478         * TextBoxBase.cs (PaintControl): Disabled AntiAliasing to improve looks
480 2005-01-18  Peter Bartok  <pbartok@novell.com>
482         * Control.cs:
483           - Hooked up the following events:
484                 o ControlAdded
485                 o ControlRemoved
486                 o HandleDestroyed
487                 o ImeModeChanged
488                 o ParentChanged
489                 o TabStopChanged
490                 o Invalidated
491                 o SystemColorsChanged
492                 o ParentFontChanged
493                 o Move
494           - Removed debug output
495           - Added a call to the current theme's ResetDefaults when a color change
496             is detected
497         * Form.cs: Now setting the proper ImeMode
498         * Theme.cs: Defined a method to force recreation of cached resources
499           and rereading of system defaults (ResetDefaults())
500         * ThemeWin32Classic.cs: Added ResetDefaults() stub
502 2005-01-17  Peter Bartok  <pbartok@novell.com>
504         * Control.cs: Added missing attributes
506 2005-01-17  Jackson Harper  <jackson@ximian.com>
508         * TreeNode.cs: Implement editing. Add missing properties selected
509         and visible.
510         * TreeView.cs: Implement node editing. Also some fixes to use
511         Invalidate (invalid area) instead of Refresh when selecting.
513 2005-01-17  Peter Bartok  <pbartok@novell.com>
515         * Control.cs: 
516           - Implemented InvokeGotFocus() method
517           - Implemented InvokeLostFocus() method
518           - Implemented InvokePaint() method
519           - Implemented InvokePaintBackground() method
520           - Implemented InvokeClick() method
521           - Implemented FindForm() method
522           - Implemented RectangleToClient() method
523           - Implemented ClientToRectangle() method
524           - Implemented ResetBackColor() method
525           - Implemented ResetCursor() method
526           - Implemented ResetFont() method
527           - Implemented ResteForeColor() method
528           - Implemented ResetImeMode() method
529           - Implemented ResetLeftToRight() method
530           - Implemented ResetText() method
531           - Implemented Scale() methods
532           - Implemented ScaleCore() method
533           - Implemented Update() method
534           - Removed unused variables
535           - Stubbed AccessibilityNotifyClients and 
536             ControlAccessibleObject.NotifyClients() methods (dunno what to do 
537             with those yet)
538           - Now setting proper default for RightToLeft property
539           - Fixed bug in SetClientSizeCore that would cause windows to get 
540             really big
541           - Now sending Click/DoubleClick events
542           - Now selecting controls when left mouse button is clicked on
543             selectable control
544         * AccessibleEvents.cs: Added
545         * XplatUI.cs, XplatUIDriver.cs: Added UpdateWindow() method
546         * XplatUIOSX.cs: Stubbed UpdateWindow() method
547         * XplatUIWin32.cs: Implemented UpdateWindow() method
548         * XplatUIX11.cs: Implemented UpdateWindow() method
549         * Form.cs: Removed stray semicolon causing CS0162 warning
550         * ThemeWin32Classic.cs: Fixed unused variable warnings
551         * ScrollableControl.cs: Now calls base method for ScaleCore
552         * ButtonBase.cs: Now disabling StandardClick and StandardDoubleClick
553           style to avoid interference with internal click handler (which is
554           different than standard Control click handling)
555         * RadioButton.cs:
556           - Now unchecks all sibling radio buttons when control is 
557             selected (Fixes #68756)
558           - Removed internal tabstop variable, using the one inherited from
559             Control
561 2005-01-17  Jackson Harper  <jackson@ximian.com>
563         * NavigateEventArgs.cs: Fix base type.
564         * LinkLabel.cs: Sig fix
565         
566 2005-01-17  Jackson Harper  <jackson@ximian.com>
568         * TreeView.cs: Only invalidate the effected nodes bounds when
569         selecting nodes.
571 2005-01-13  Jordi Mas i Hernandez <jordi@ximian.com>
573         * XplatUIWin32.cs: fixes Win32 marshaling
574         * XplatUIX11.cs: fixes method signature
576 2005-01-17  Peter Bartok  <pbartok@novell.com>
578         * XplatUIX11.cs: Clean up resources when we no longer need them
580 2005-01-17  Peter Bartok  <pbartok@novell.com>
582         * XplatUI.cs, XplatUIDriver.cs: Added SetCursor(), ShowCursor(),
583           OverrideCursor(), DefineCursor(), DefineStdCursor(), GetCursorInfo()
584           and DestroyCursor() methods.
585         * Cursor.cs: Partially implemented, now supports standard cursors;
586           still contains some debug code
587         * Cursors.cs: Implemented class
588         * Control.cs:
589           - WndProc(): Added handling of WM_SETCURSOR message, setting the
590             appropriate cursor
591           - Implemented Cursor property
592           - Replaced break; with return; more straightforwar and possibly
593             faster
594           - Now properly setting the result for WM_HELP
595         * X11Structs.cs: Added CursorFontShape enum
596         * XplatUIStructs.cs:
597           - Added StdCursor enum (to support DefineStdCursor() method)
598           - Added HitTest enum (to support sending WM_SETCURSOR message)
599         * XplatUIX11.cs:
600           - Now sends the WM_SETCURSOR message
601           - Implemented new cursor methods
602         * XplatUIOSX.cs: Stubbed new cursor methods
603         * XplatUIWin32.cs:
604           - Implemented new cursor methods
605           - Added GetSystemMetrics function and associated enumeration
607 2005-01-15  Peter Bartok  <pbartok@novell.com>
609         * Control.cs:
610           - WndProc(): Now handles EnableNotifyMessage
611           - SelectNextControl(): Fixed bug where if no child or sibling 
612             controls exist we looped endlessly
614 2005-01-14  Jackson Harper  <jackson@ximian.com>
616         * TreeView.cs: Recalculate the tab pages when a new one is added
617         so that the proper bounding rects are created.
619 2005-01-14  Jackson Harper  <jackson@ximian.com>
621         * TreeView.cs: Draw a gray box instead of a grip in the lower
622         right hand corner when there are both horizontal and vertical
623         scroll bars.
625 2005-01-14  Jackson Harper  <jackson@ximian.com>
627         * Control.cs: When erasing backgrounds use FromHwnd instead of
628         FromHdc when there is a NULL wparam. This occurs on the X driver.
629         * XplatUIX11.cs: Set the wparam to NULL.
631 2005-01-13  Jackson Harper  <jackson@ximian.com>
633         * PictureBox.cs: Implement missing methods (except ToString, need
634         to test that on windows) and events. When visibility is changed we
635         need to redraw the image because the buffers are killed. When size
636         is changed refresh if the sizemode needs it.    
638 2005-01-13  Peter Bartok  <pbartok@novell.com>
640         * Control.cs (SelectNextControl): Was using wrong method to select
641           a control
643 2005-01-13  Jordi Mas i Hernandez <jordi@ximian.com>
645         * ComboBox.cs: fixes dropstyle
647 2005-01-13  Peter Bartok  <pbartok@novell.com>
649         * Form.cs:
650           - Implemented Select() override
651           - Now handles WM_SETFOCUS/WM_KILLFOCUS messages
652           - Now sets keyboard focus on startup
653         * Control.cs (SelectNextControl): Now properly handles directed=true
654         * TextBoxBase.cs:
655           - WndProc: Now passes tab key on to base if AcceptTabChar=false
656           - Added (really bad) focus rectangle (mostly for testing)
657         * TextBox.cs: Added code to handle getting/loosing focus and invalidating
658           to enforce redraw on focus changes
659         * ContainerControl.cs:
660           - Fixed detection of Shift-Tab key presses
661           - Fixed traversal with arrow keys
662         * XplatUIX11.cs: Implemented simulated keyboard focus; not sure if we're
663           gonna keep this or if it's complete yet
664         
665 2005-01-13  Jordi Mas i Hernandez <jordi@ximian.com>
667         * ComboBox.cs: missing properties, fixes
669 2005-01-13  Peter Bartok  <pbartok@novell.com>
671         * Panel.cs (ctor): Setting Selectable window style to off
672         * Splitter.cs (ctor): Setting Selectable window style to off
673         * GroupBox.cs (ctor): Setting Selectable window style to off
674         * Label.cs (ctor): Setting Selectable window style to off
676 2005-01-12  Miguel de Icaza  <miguel@ximian.com>
678         * UpDownBase.cs (InitTimer): If the timer has been already
679         created, enable it.
681         Use a TextBox instead of a Label.
683 2005-01-12  Jackson Harper  <jackson@ximian.com>
685         * TreeView.cs: Refresh the tree after sorting the nodes. Always
686         draw the connecting node lines (when ShowLines is true).
687         * TreeNode.cs: The nodes index can now be updated. This is used
688         when a node collection is sorted.
689         * TreeNodeCollection.cs: Implement sorting. Nodes can be sorted on
690         insert or an existing unsorted node collection can be sorted.
691         
692 2005-01-12  Peter Bartok  <pbartok@novell.com>
694         * ContainerControl.cs: Implemented ProcessDialogKeys()
696 2005-01-12  Peter Bartok  <pbartok@novell.com>
698         * Control.cs:
699           - Implemented SelectNextControl() method
700           - Several focus related bug fixes
701           - Fixed Docking calculations to match MS documentation and
702             behaviour
704 2005-01-12  Jordi Mas i Hernandez <jordi@ximian.com>
706         * ContainerControl.cs, ListControl.cs, ListBox.cs: keyboard navigation and
707         bug fixes
709 2005-01-12  Peter Bartok  <pbartok@novell.com>
711         * Control.cs:
712           - Fixed broken Contains() method
713           - Implemented GetNextControl() method. Finally. This is the pre-
714             requisite for focus handling.
716 2005-01-12  Peter Bartok  <pbartok@novell.com>
718         * OSXStrucs.cs: Added
720 2005-01-12  Peter Bartok  <pbartok@novell.com>
722         * XplatUIWin32.cs:
723           - Removed PeekMessageFlags
724           - Implemented SetWindowStyle() method
725         * XplatUIStructs.cs: Added PeekMessageFlags
726         * X11Structs: Added missing border_width field to XWindowChanges struct
727         * XplatUIX11.cs:
728           - PeekMessage: Now throws exception if flags which are not yet 
729             supported are passed
730           - Implemented SetWindowStyle() method
731           - Fixed SetZOrder to handle AfterHwnd properly
732         * XplatUI.cs: Added SetWindowStyle() method
733         * XplatUIDriver.cs: Added SetWindowStyle() abstract
734         * Control.cs:
735           - Implemented UpdateStyles() method
736           - Implemented UpdateZOrder() method
737         * XplatUIOSX.cs: Added SetWindowStyle() stub
739 2005-01-12  Geoff Norton  <gnorton@customerdna.com>
741         * XplatUIOSX.cs: Fix SetZOrder (this needs more testing with a 3 
742         button mouse).
745 2005-01-11  Jackson Harper  <jackson@ximian.com>
747         * TreeView.cs: Still need to draw lines to siblings even if out of
748         the current node is out of the clip.
750 2005-01-11  Jackson Harper  <jackson@ximian.com>
752         * TreeView.cs: When setting the hbar/vbar/grip position use
753         SetBounds so that perform layout is only called once. Also suspend
754         and resume layout so layout is only done once for all controls.
755         - Removed some debug fluff
756         * SizeGrip.cs: Call base implmentation in overriding methods.
757         - When visibility is changed the drawing buffers are killed so we
758         need to redraw.
760 2005-01-11  Jackson Harper  <jackson@ximian.com>
762         * TreeView.cs: Calculate the open node count while drawing. This
763         saves us an entire tree traversal for every paint operation. Use
764         a member var for the open node count so less vars are passed around.
766 2005-01-11  John BouAntoun  <jba-mono@optusnet.com.au>
768         * MonthCalendar.cs:
769         - fixed selection to use mousemove, not mouse polling on timer
770         * ThemeWin32Classic.cs
771         - removed redundant unused variable "no_more_content"
772         
773 2005-01-11  Peter Bartok  <pbartok@novell.com>
775         * XplatUIX11.cs (DoEvents): Needs to return when no more events
776           are pending, so it now calls PeekMessage instead of GetMessage;
777           implemented a incomplete version of PeekMessage
778         
779 2005-01-11  Peter Bartok  <pbartok@novell.com>
781         * XplatUIWin32.cs: Switched P/Invokes to unicode charset to avoid
782           I18n issues
783         * TextBoxBase.cs: Added sending of TextChanged event
785 2005-01-10  Jackson Harper  <jackson@ximian.com>
787         * TreeView.cs: Try not to draw outside the clipping rectangle on
788         each node element.
790 2005-01-10  Jordi Mas i Hernandez <jordi@ximian.com>
792         * ComboBox.cs: keyboard navigation, item navigation, bug fixes
794 2005-01-10  Jackson Harper  <jackson@ximian.com>
796         * TreeView.cs:
797         - Implement fast scrolling. Now only the newly
798         exposed nodes are drawn and the old image is moved using the
799         XplatUI::ScrollWindow method.
800         - Factor in height of nodes when calculating whether or not the
801         node is in the clipping rect.
803 2005-01-10  Jackson Harper  <jackson@ximian.com>
805         * TreeNodeCollection.cs: Refresh the tree when a new node is added.
807 2005-01-10  Peter Bartok  <pbartok@novell.com>
809         * Application.cs: Added temporary hack to resolve all our resize
810           required issues on startup. This will get fixed properly at
811           some point in the future
813 2005-01-10  Jackson Harper  <jackson@ximian.com>
815         * SizeGrip.cs: New internal class that is used as a sizing
816         grip control...hence the name.
818 2005-01-10  Peter Bartok  <pbartok@novell.com>
820         * Control.cs: Implemented proper TabIndex handling, now assigning
821           a tabindex when a control is added to a container
822         * GroupBox.cs (ctor): Now sets the Container style bit, required
823           for Control.GetNextControl()
825 2005-01-09  Jackson Harper  <jackson@ximian.com>
827         * TextBoxBase.cs: Clear window when scrolling (fixes build).
829 2005-01-09  Peter Bartok <pbartok@novell.com>
831         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
832           XplatUIX11.cs: Added ability to control ScrollWindow expose and 
833           an overload for ScrollWindow to allow only scrolling a rectangle
835 2005-01-09  Peter Bartok <pbartok@novell.com>
837         * Form.cs:
838           - Implemented SetDesktopBounds method
839           - Implemented SetDesktopLocation method
841 2005-01-08  Jackson Harper  <jackson@ximian.com>
843         * TreeView.cs: Only set the vbar's Maximum and LargeChange when
844         the node count has changed, this removes to VScroll::Refresh calls
845         when drawing.
847 2005-01-08  Geoff Norton  <gnorton@customerdna.com>
849         * XplatUIOSX.cs: Fix GetWindowState & SetWindowState
851 2005-01-07  Jackson Harper  <jackson@ximian.com>
853         * TreeNode.cs: Just update the single node when it is
854         checked. Don't refresh after toggling, the Expand/Collapse already
855         handles this.
856         * TreeView.cs: Respect clipping a little more when drawing. Try
857         not to redraw things that don't need to be redrawn. Just hide the
858         scrollbars when they are no longer needed instead of removing
859         them, so they don't have to be created again and again.
860         
861 2005-01-07  Geoff Norton  <gnorton@customerdna.com>
863         * XplatUIOSX.cs (SetCaretPos):  We need to translate the view
864         coordinates to window space to place the caret properly, FIXED.
865         Implement GetWindowState & SetWindowState
867 2005-01-06  Peter Bartok <pbartok@novell.com>
869         * Form.cs:
870           - Implemented ClientSize property
871           - Implemented DesktopBounds property
872           - Implemented DesktopLocation property
873           - Implemented IsRestrictedWindow property
874           - Implemented Size property
875           - Implemented TopLevel property
876           - Implemented FormWindowState property
877         * Control.cs:
878           - Implemented GetTopLevel() method
879           - Implemented SetTopLevel() method
880         * X11Structs.cs (Atom):
881           - Added AnyPropertyType definition
882           - Added MapState definiton and updated XWindowAttribute struct
883         * XplatUI.cs: Added GetWindowState() and SetWindowState() methods
884         * XplatUIDriver.cs: Added GetWindowState() and SetWindowState() methods
885         * XplatUIOSX.cs: Stubbed GetWindowState() and SetWindowState() methods
886         * XplatUIWin32.cs:
887           - Implemented GetWindowState() and SetWindowState() methods
888           - Fixed Win32GetWindowLong return type
889         * XplatUIX11.cs:
890           - Introduced central function for sending NET_WM messages
891           - Implemented GetWindowState() and SetWindowState() methods
892         * TextBoxBase.cs (set_Lines):
893           - Now uses Foreground color for text added via Text property (Duh!)
894           - Added code to remember programmatically requested size (fixes 
895             behaviour when Multiline is set after Size)
896           - Added AutoSize logic
898 2005-01-06  Jackson Harper  <jackson@ximian.com>
900         * TreeView.cs: Draw the image after the checkbox if checkboxes are enabled.
902 2005-01-06  Jackson Harper  <jackson@ximian.com>
904         * ListBox.cs: Don't allow the horizontal scrollbars maximum to be
905         set to less then 0.
907 2005-01-06  Jackson Harper  <jackson@ximian.com>
909         * ScrollableControl.cs: Lazy init the scrollbars.
910         
911 2005-01-06  Jackson Harper  <jackson@ximian.com>
913         * Theme.cs: Speed up getting pens and solid brushes, by using
914         their ARGB as a hash instead of tostring and not calling Contains.
916 2005-01-06  Peter Bartok <pbartok@novell.com>
918         * Form.cs:
919           - Implemented OnActivated and OnDeactivate event trigger
920           - Implemented Activate() method
921           - Fixed ShowDialog() to activate the form that was active before
922             the dialog was shown
923         * XplatUIX11.cs:
924           - Added global active_window var that tracks the currently active
925             X11 window
926           - Now always grabs Property changes from the root window to always
927             catch changes on the active window property
928           - Added code to PropertyNotify handler to send Active/Inactive
929             messages when state changes. This puts X11 and Win32 en par on
930             WM_ACTIVATE notifications (except for double notifications when
931             the user clicks away from our modal window to another one of our
932             windows)
934 2005-01-05  Jackson Harper  <jackson@ximian.com>
936         * ImageList.cs: Implment ctor
938 2005-01-05  Geoff Norton  <gnorton@customerdna.com>
940         * XplatUIOSX.cs: Implement Activate/SetTopmost
942 2005-01-05  Geoff Norton  <gnorton@customerdna.com>
944         * XplatUIOSX.cs: Implement SetZOrder, minor cleanup
946 2005-01-05  Geoff Norton  <gnorton@customerdna.com>
948         * XplatUIOSX.cs: Implement GetActive/SetFocus.
950 2005-01-05  Peter Bartok <pbartok@novell.com>
952         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs,
953           XplatUIOSX.cs: Added GetActive method to return the currently
954           active window for the application (or null, if none is active)
955         * Form.cs:
956           - Implemented ActiveForm
957           - Commented out owner assignment for modal dialogs (causes problems
958             on Win32, since the owner will be disabled)
959           - Reworked some Active/Focus handling (still incomplete)
960         * CommonDialog.cs: Commented out owner assignment for modal dialogs 
961           (causes problems on Win32, since the owner will be disabled)
962         * IWin32Window: Added ComVisible attribute
964 2005-01-05  Peter Bartok <pbartok@novell.com>
966         * ToolTip.cs (WndProc): Enable setting focus now that we have the
967           required XplatUI functions.
969 2005-01-05  Peter Bartok <pbartok@novell.com>
971         * XplatUI.cs, XplatUIOSX.cs, XplatUIWin32.cs, XplatUIDriver.cs,
972           XplatUIX11.cs, X11Structs.cs, Form.cs: Framework code required 
973           to implement focus and activation handling; still incomplete and
974           with debug output
976 2005-01-04  Peter Bartok <pbartok@novell.com>
978         * TextBoxBase.cs: Changed access level for Document property to
979           match switch to internal for TextControl
981 2005-01-04  Peter Bartok <pbartok@novell.com>
983         * AccessibleObject: Added ComVisible attribute
985 2005-01-04  Jackson Harper  <jackson@ximian.com>
987         * X11Keyboard.cs: Remove unneeded var.
989 2005-01-04  Jackson Harper  <jackson@ximian.com>
991         * XplatUIX11.cs (DoEvents): Implement, Just cast aside all events
992         but PAINT.
993         * XplatUIX11.cs (GetMessage): Call Exit when we get an unknown
994         ClientMessage. This makes apps exit cleanly (more often).
995         
996 2005-01-04  Jackson Harper  <jackson@ximian.com>
998         * TreeNode.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) for
999         handling focus, return correct colors and fonts, 
1000         * TreeView.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) to
1001         handle selection, horizontal scrolling, and mouse interaction.
1003 2005-01-04  Peter Bartok <pbartok@novell.com>
1005         * ICommandExecutor.cs: Added
1006         * IDataGridColumnStyleEditingNotificationService.cs: Added
1007         * IFeatureSupport.cs: Added
1008         * IFileReaderService.cs: Added
1009         * IDataObject.cs: Added ComVisible attribute
1010         * AmbientProperties.cs: Added
1011         * BaseCollection.cs: Added missing attributes
1012         * ListBindingConverter.cs: Added (stubbed, required for certain attributes)
1013         * BaseCollection.cs: Added missing attributes
1014         * Binding.cs: Added TypeConverter attribute
1015         * BindingContext.cs: Added DefaultEvent attribute
1016         * BindingsCollection.cs: Added DefaultEvent attribute
1017         * Button.cs: Added DefaultValue attribute
1018         * DragEventArgs.cs: Added ComVisible attribute
1019         * GiveFeedbackEventArgs.cs: Added ComVisible attribute
1020         * KeyEventArgs.cs: Added ComVisible attribute
1021         * KeyPressEventArgs.cs: Added ComVisible attribute
1022         * MouseEventArgs.cs: Added ComVisible attribute
1023         * NavigateEventArgs.cs: Added
1024         * NavigateEventHandler.cs: Added
1025         * FeatureSupport.cs: Added
1026         * OSFeature.cs: Added
1027         * Theme.cs: Added abstract Version property to support OSFeature
1028         * ThemeWin32Classic.cs: Added Version property to 
1029           support OSFeature.Themes
1030         * ProgressBar.cs: Removed OnPaintBackground override, not required since
1031           the proper styles to avoid background drawing are set, also doesn't
1032           match MS signature
1033         * QueryAccessibilityHelpEventArgs.cs: Added ComVisible attribute
1034         * QueryContinueDragEventArgs.cs: Added ComVisible attribute
1035         * ScrollEventArgs.cs: Added ComVisible attribute
1036         * SplitterEventArgs.cs: Added ComVisible attribute
1037         * AccessibleSelection.cs: Added Flags attribute
1038         * Appearance.cs: Added ComVisible attribute
1039         * Border3DSide.cs: Added ComVisible attribute
1040         * Border3DStyle.cs: Added ComVisible attribute
1041         * BorderStyle.cs: Added ComVisible attribute
1042         * DragAction.cs: Added ComVisible attribute
1043         * ErrorBlinkStyle.cs: Added
1044         * ScrollEventType.cs: Added ComVisible attribute
1045         * AnchorStyles.cs: Added Editor attribute
1046         * DockStyle.cs: Added Editor attribute
1047         * HorizontalAlignment.cs: Added ComVisible attribute
1048         * HelpEventArgs.cs: Added ComVisible attribute
1049         * PaintEventArgs.cs: Added IDisposable
1051 2005-01-04  Peter Bartok <pbartok@novell.com>
1053         * TextControl.cs: Switched Line, LineTag and Document classes to 
1054           internal
1056 2005-01-04  Jordi Mas i Hernandez <jordi@ximian.com>
1058         * ComboBox.cs, ThemeWin32Classic.cs, ListBox.cs, Theme.cs:
1059         Simple mode, fixes, IntegralHeight, etc.
1061 2005-01-04  Peter Bartok <pbartok@novell.com>
1063         * TextBoxBase.cs: Using proper font variable now
1065 2005-01-04  Peter Bartok <pbartok@novell.com>
1067         * Form.cs (ShowDialog): Set parent to owner, if provided
1068         * GroupBox.cs: Removed unused vars
1069         * TextControl.cs: 
1070           - Added GetHashCode() for Document and LineTag classes
1071           - Removed unused variables
1072           - Added CharIndexToLineTag() and LineTagToCharIndex() methods
1073             to allow translation between continuous char position and line/pos
1074         * CheckBox.cs: Removed vars that are provided by base class
1075         * RadioButton.cs: Removed vars that are provided by base class, added
1076           new keyword where required
1077         * LinkLabel.cs: Added new keyword where required
1078         * Control.cs (WndProc): Removed unused variable
1079         * TextBoxBase.cs: 
1080           - Finished SelectionLength property
1081           - Implemented SelectionStart property
1082           - Implemented Text property
1083           - Removed unused vars
1084         * MessageBox.cs: Added new keyword where required
1085         * TextBox.cs: Removed Text property code (now in TextBoxBase), fixed
1086           WndProc signature
1087         * MenuAPI.cs: Added new keyword where required
1088         * ButtonBase.cs: Removed vars that are provided by base class, added
1089           new keyword where required
1090         * ThemeWin32Classic.cs (DrawMonthCalendarDate): Now cast Math.Floor
1091           argument to double, to allow compiling with csc 2.0 (Atsushi ran
1092           into this)
1093         * Application.cs (Run): Now triggers the ThreadExit event
1094         * CommonDialog.cs: Added new keyword where required; now properly sets
1095           parent (owner) for dialog
1096         * XplatUIX11.cs: Commented out unused vars
1097         * StatusBar.cs: Fixed signature for Text property
1098         * TabPage.cs: Undid Jordi's removal of unused var, now using the var
1100 2005-01-04  Jordi Mas i Hernandez <jordi@ximian.com>
1102         * ComboBox.cs, TabPage.cs, MenuAPI.cs, ThemeWin32Classic.cs,
1103         TrackBar.cs, MonthCalendar.cs: remove unused vars
1105 2005-01-03  Jackson Harper  <jackson@ximian.com>
1107         * ThemeWin32Classic.cs:
1108         * X11Keyboard.cs: Remove unused vars.
1110 2005-01-03  Peter Bartok  <pbartok@novell.com>
1112         * TextBox.cs:
1113           - set_Text: Tied into TextControl
1114           - set_TextAlignment: Tied into TextControl
1115         * TextControl.cs: 
1116           - Added alignment properties and implemented alignment handling
1117             and drawing (still has a bug, not generating proper expose events)
1118           - Added new Line() constructor to allow passing the line alignment
1119           - Fixed selection setting, properly handling end<start now
1120           - Added aligment considerations to RecalculateDocument()
1121         * TextBoxBase.cs:
1122           - Now properly enforces control height for single line controls
1123           - Added support for CharacterCasing
1124           - Added IsInputKey override
1125           - Fixed Keys.Enter logic
1126           - Added SetBoundsCore override
1127           - Fixed mouse selection handling
1129 2005-01-03  Jackson Harper  <jackson@ximian.com>
1131         * TreeView.cs:
1132           - Collapse and uncheck all nodes when CheckBoxes is disabled.
1133           - Checkboxes are always aligned to the bottom of the node,
1134           regardless of item height.
1135           - Use the node bounds to draw the text so we can center it when
1136           the item height is greater then the font height.
1137           - Node::Bounds are only the text part of the node.
1138         * TreeNode.cs: New method to combine collapsing and unchecking all
1139           nodes recursively.
1141 2005-01-02  Jackson Harper  <jackson@ximian.com>
1143         * TreeView.cs: Draw checkmarks, handle detecting check mark clicks
1144         * TreeNode.cs: Add a bounding box for the checkbox, refresh the
1145         tree when a check is changed. TODO: Only refresh the checked node.
1147 2004-12-30  Jackson Harper  <jackson@ximian.com>
1149         * TreeView.cs: Draw checkbox boxes when checkboxes are enabled.
1150         * TreeNode.cs: When collapsing make sure to never collapse the
1151         root node.
1153 2004-12-29  Jackson Harper  <jackson@ximian.com>
1155         * TreeView.cs: Align lines to the bottom of plus minus boxes properly.
1156         
1157 2004-12-28  Zoltan Varga  <vargaz@freemail.hu>
1159         * X11Structs.cs X11Keyboard.cs XplatUIX11.cs: Fix 64 bit issues.
1161 2004-12-28  Peter Bartok  <pbartok@novell.com>
1163         * MessageBox.cs (get_CreateParams): Don't use owner var if it's
1164           not yet assigned
1166 2004-12-28  Peter Bartok  <pbartok@novell.com>
1168         * Control.cs (WndProc): Added WM_HELP handler, now generates 
1169           HelpRequested event
1170         * Form.cs: Added HelpButton property and required support code
1171         * XplatUIStructs.cs: Added HELPINFO structure for WM_HELP handling
1173 2004-12-28  Peter Bartok  <pbartok@novell.com>
1175         * CommonDialog.cs: 
1176           - Made DialogForm.owner variable internal
1177           - Added check to ensure owner form is set before setting 
1178             owner properties in CreateParams
1180 2004-12-28  Geoff Norton  <gnorton@customerdna.com>
1182         * XplatUIOSX.cs: Implement mouse hovering.  Fix QDPoint struct to avoid
1183           swizzling.  Implement ClientToScreen and ScreenToClient.  Implement
1184           GetCursorPos.  Fix major visibility issues.  Rework the windowing
1185           system to support borderless/titleless windows (implements menus).
1186           Fix GetWindowPos.  Implement initial background color support for
1187           views.
1189 2004-12-28  Peter Bartok  <pbartok@novell.com>
1191         * Form.cs (get_CreateParams): Make sure we have an owner before using
1192           the owner variable. Implement proper default if no owner exists
1194 2004-12-28  Peter Bartok  <pbartok@novell.com>
1196         * In preparation for making Managed.Windows.Forms the default build target
1197           for System.Windows.Forms, the following stubbed files were added.
1198           Dialogs are currently being implemented by contributors and are only 
1199           short-term place holders.
1200         * ColorDialog.cs: Initial check-in (minmal stub)
1201         * DataGrid.cs: Initial check-in (minimal stub)
1202         * DataGridLineStyle.cs: Initial check-in (minimal stub)
1203         * DataGridParentRowsLabelStyle.cs: Initial check-in (minimal stub)
1204         * DataGridTableStyle.cs: Initial check-in (minimal stub)
1205         * FontDialog.cs: Initial check-in (minimal stub)
1206         * FileDialog.cs: Initial check-in (minimal stub)
1207         * GridColumnStylesCollection.cs: Initial check-in (minimal stub)
1208         * GridTableStylesCollection.cs: Initial check-in (minimal stub)
1209         * OpenFileDialog: Initial check-in (minimal stub)
1210         * IComponentEditorPageSite.cs: Initial check-in
1211         * Splitter.cs: Initial check-in (for Jackson)
1212         * SplitterEventArgs.cs: Initial check-in (for Jackson)
1213         * SplitterEventHandler.cs: Initial check-in (for Jackson)
1214         * TextBox.cs: Initial check-in; still needs some wiring to 
1215           TextControl backend
1216         * Form.cs: Implemented ControlBox property
1217         * MessageBox.cs: Added proper coding for Minimize/Maximize/ControlBox
1218         * CommonDialog.cs: Added proper coding for Minimize/Maximize/ControlBox
1219         * TextControl.cs: Added selection functionality; added todo header
1220         * TextBoxBase.cs:
1221           - Implemented Lines property
1222           - Implemented TextHeight property
1223           - Implemented SelectedText property
1224           - Implemented SelectionLength property
1225           - Implemented SelectAll method
1226           - Implemented ToString method
1227           - Removed and cleaned up some debug code
1228           - Implemented (still buggy) mouse text selection
1230 2004-12-27  Jordi Mas i Hernandez <jordi@ximian.com>
1232         * ComboBox.cs: Complete DropDownList implementation, fixes.
1234 2004-12-26  Jordi Mas i Hernandez <jordi@ximian.com>
1236         * ThemeWin32Classic, Theme.cs: ComboBox drawing methods
1237         * ComboBoxStyle.cs: ComboBoxStyle enum
1238         * ComboBox.cs: Initial work on ComboBox control
1240 2004-12-21  Peter Bartok  <pbartok@novell.com>
1242         * Control.cs (ctor, CreateParams): Moved setting of is_visible
1243           forward so that anything that creates a window gets the default,
1244           also no longer uses Visible property in CreateParams to avoid
1245           walking up the parent chain and possibly get the wrong visible
1246           status. Fixed IsVisible to no longer walk up to the parent.
1248 2004-12-21  Peter Bartok  <pbartok@novell.com>
1250         * Form.cs (ShowDialog): Unset modality for the proper window
1252 2004-12-20  Peter Bartok  <pbartok@novell.com>
1254         * CommonDialog.cs: Initial check-in
1256 2004-12-20  Peter Bartok  <pbartok@novell.com>
1258         * Control.cs (Visible): Now uses the parent window instead of the
1259           client area window for the property
1261         * Form.cs
1262           - ShowDialog(): Now uses the proper window for modality
1263           - The default visibility state for the form parent is now false. This
1264             will prevent the user from seeing all the changes to the form and
1265             its controls before the application hits Application.Run()
1266           - Removed some stale commented out code
1268         * NativeWindow.cs:
1269           - Added FindWindow() method to have a method to check for existence
1270             of a window handle
1271           - Added ability to override default exception handling (for example
1272             when debugging with VS.Net; to do this the ExternalExceptionHandler
1273             define must be set
1274           - Removed some useless debug output
1276         * XplatUIX11.cs: 
1277           - Removed r37929 (SetModal patch from Ashwin Bharambe), was 
1278             not working as expected
1279           - Implemented modal_window stack and checking for _WM_ACTIVE_WINDOW
1280             property to allow switching back to the modal window if focus is
1281             given to another one of our windows (Application Modal)
1282           - Now only sets override_redirect if we create a window 
1283             without WS_CAPTION
1284           - Moved EventMask selection before mapping of newly created window
1285             so we can catch the map event as well
1286           - Implemented Activate() method via the _WM_ACTIVE_WINDOW property
1287           - Added various Atom related DllImports
1288           - Implemented Exit() method
1289           - .ctor() : No longer shows window if WS_VISIBLE is not defined
1290             in the CreateParams
1292         * MessageBox.cs: Now properly deals with the FormParent window by
1293           providing an override the FormParent CreateParams property to
1294           set as POPUP instead of OVERLAPPED window.
1296 2004-12-19  Geoff Norton  <gnorton@customerdna.com>
1298         * XplatUIOSX.cs: Implement DestroyWindow.  Implement ScrollWindow
1299         Minor code cleanup.
1301 2004-12-19  Geoff Norton  <gnorton@customerdna.com>
1302         
1303         * XplatUIOSX.cs (SetModal): Implement this method on OSX.
1305 2004-12-18  Peter Bartok  <pbartok@novell.com>
1307         * XplatUIX11.cs (SetModal): Applied patch from Ashwin Bharambe, 
1308           implementing SetModal() method
1310 2004-12-18  Peter Bartok  <pbartok@novell.com>
1312         * X11Structs.cs (XGCValues): Fixed type of function element
1313         * XplatUI.cs: Added ScrollWindow() method
1314         * XplatUIDriver.cs: Added ScrollWindow() abstract
1315         * XplatUIWin32.cs: Implemented ScrollWindow() method
1316         * XplatUIX11.cs: Implemented ScrollWindow() method
1317         * XplatUIOSX.cs: Stubbed out ScrollWindow() method
1319 2004-12-17  Geoff Norton  <gnorton@customerdna.com>
1321         * XplatUIOSX.cs:  Fix cursor to use an Invert instead of drawing it
1322         Some more keyboard support (INCOMPLETE)
1324 2004-12-17  Peter Bartok  <pbartok@novell.com>
1326         * TextControl.cs:
1327         - Added color attribute to line tags.
1328         - Added color argument to all functions dealing with tags
1329         - Added color argument support to various functions
1330         - Fixed miss-calculation of baseline/shift in certain circumstances
1332         * TextBoxBase.cs: Added new color option to test code
1334 2004-12-17  Jackson Harper  <jackson@ximian.com>
1336         * TreeNode.cs:
1337         * MonthCalendar.cs: Signature fixes
1339 2004-12-17  Geoff Norton  <gnorton@customerdna.com>
1341         * XplatUIOSX.cs: Find the missing caret; caret was dissappearing after a 
1342         keyboard event moved it.  Create a new graphics context for each paint resolves this
1344 2004-12-17  Geoff Norton  <gnorton@customerdna.com>
1346         * XplatUIOSX.cs: Fix hard cpu eat on loop with existing timers,
1347         Make caret exist and go blink blink.  Initial keyboard support.
1348         Fix exception handler, Add Invalidate support.  Change way RefreshWindow
1349         works.  
1351 2004-12-17  Jackson Harper  <jackson@ximian.com>
1353         * XplatUIStructs.cs: Updated set of virtual keycodes.
1354         * KeyboardLayouts.cs: SCROLL_LOCK is now SCROLL
1356 2004-12-17  Jackson Harper  <jackson@ximian.com>
1358         * XplatUIX11.cs: Prune old keyboard code.
1360 2004-12-17  Jackson Harper  <jackson@ximian.com>
1362         * XplatUIX11.cs: When generating mouse wparams get the modifier
1363         keys from the ModifierKeys property.
1365 2004-12-17  Jackson Harper  <jackson@ximian.com>
1367         * X11Keyboard.cs: Send up/down input when generating
1368         messages. Remove some unused vars.
1370 2004-12-17  Jackson Harper  <jackson@ximian.com>
1372         * TabControl.cs:
1373         * TreeView.cs: get rid of warnings.
1375 2004-12-17  Jackson Harper  <jackson@ximian.com>
1377         * XplatUIStructs.cs: Fix a couple wrong virtual keycodes.
1379 2004-12-17  Jordi Mas i Hernandez <jordi@ximian.com>
1381         * ListBox.cs: bug fixes, changes for CheckedListBox.cs
1382           CheckedListBox.cs: Implementation
1384 2004-12-17  Peter Bartok  <pbartok@novell.com>
1386         * TextControl.cs (RecalculateLine): Fixed baseline aligning calcs
1388 2004-12-16  Peter Bartok  <pbartok@novell.com>
1390         * TextControl.cs:
1391           - InsertCharAtCaret(): Fixed start pos fixup
1392           - CaretLine_get: No longer derives the line from the tag, the tag
1393             could be stale if lines in the document have been added or deleted
1394           - RebalanceAfterDelete(): Fixed bug in balancing code
1395           - RebalanceAfterAdd(): Fixed really stupid bug in balancing code
1396           - Line.Streamline(): Now can also elminate leading empty tags
1397           - DumpTree(): Added a few more tests and prevented exception on
1398             uninitialized data
1399           - Added Debug section for Combining lines
1400           - Delete(): Now copies all remaining properties of a line
1401           
1402         * TextBoxBase.cs: 
1403           - Left mousebutton now sets the caret (and middle button still acts 
1404             as formatting tester, which must go away soon)
1405           - Added Debug section for Deleting/Combining lines
1406           - Fixed calculations for UpdateView after Combining lines
1408 2004-12-16  Peter Bartok  <pbartok@novell.com>
1410         * TextControl.cs: Now properly aligns text on a baseline, using the
1411           new XplatUI.GetFontMetrics() method. Simplified several calculations
1412         * TextBoxBase.cs: Moved #endif to allow compiling if Debug is not 
1413           defined
1415 2004-12-16  Peter Bartok  <pbartok@novell.com>
1417         * XplatUI.cs: Added GetFontMetrics() method
1418         * XplatUIDriver.cs: Added GetFontMetrics() abstract
1419         * XplatUIX11.cs: Implemented GetFontMetrics() method, now calls
1420           into libgdiplus, our private GetFontMetrics function
1421         * XplatUIOSX.cs: Implemented GetFontMetrics() method, same as X11
1422         * XplatUIWin32.cs: Implemented GetFontMetrics() method
1424 2004-12-16  Jackson Harper  <jackson@ximain.com>
1426         * XplatUIStruct.cs: Add enum for dead keys
1427         * X11Keyboard.cs: Map and unmap dead keys.
1429 2004-12-16  Jackson Harper  <jackson@ximian.com>
1431         * X11Keyboard.cs: Detect and use the num lock mask.
1433 2004-12-16  Peter Bartok  <pbartok@novell.com>
1435         * Control.cs (CreateGraphics): Added check to make sure the
1436           handle of the window exists before calling Graphics.FromHwnd()
1438 2004-12-16  Peter Bartok  <pbartok@novell.com>
1440         * TextBoxBase.cs: Initial check-in. DO NOT TRY TO USE THIS YET. It
1441           contains a lot of code that's not supposed to be there for the
1442           real thing, but required for developing/testing the textbox
1443           backend.
1445 2004-12-16  Peter Bartok  <pbartok@novell.com>
1447         * TextControl.cs:
1448         - Fixed Streamline method
1449         - Added FindTag method to Line
1450         - Added DumpTree method for debugging
1451         - Added DecrementLines() method for deleting lines
1452         - Fixed UpdateView to update the cursor to end-of-line on single-line
1453           updates
1454         - Added PositionCaret() method
1455         - Fixed MoveCaret(LineDown) to move into the last line, too
1456         - Added InsertChar overload
1457         - Fixed InsertChar tag offset calculations
1458         - Added DeleteChar() method
1459         - Added Combine() method for folding lines
1460         - Fixed Delete() method, no longer allocates wasted Line object and
1461           now copies all properties when swapping nodes
1462         - Delete() method now updates document line counter
1464 2004-12-15  Jackson Harper  <jackson@ximian.com>
1466         * XplatUIX11.cs: Get the modifier keys from the keyboard driver
1467         * X11Keyboard.cs: Expose the currently selected modifier keys
1468         through a property.
1470 2004-12-15  Peter Bartok  <pbartok@novell.com>
1472         * TextControl.cs: Initial check-in. Still incomplete
1474 2004-12-15  Jackson Harper  <jackson@ximian.com>
1476         * TreeNode.cs:
1477         * TreeView.cs: Fix build on csc (second time today ;-))
1479 2004-12-15  Jackson Harper  <jackson@ximian.com>
1481         * TreeView.cs: Store the treenodes plus/minus box bounds when it
1482         is calculated and use this for click testing.
1483         * TreeNode.cs: Add functionality to store the nodes plus minus box bounds.
1485 2004-12-15  Jackson Harper  <jackson@ximian.com>
1487         * TreeView.cs: Pass the nodes image index to the image list when
1488         drawing that image.
1490 2004-12-15  Jackson Harper  <jackson@ximian.com>
1492         * X11Keyboard.cs: Set messages hwnd.
1493         * XplatUIX11.cs: Pass proper hwnd wot keyboard driver. Set hwnd on
1494         post_message calls.
1496 2004-12-15  Jackson Harper  <jackson@ximian.com>
1498         * X11Keyboard.cs: Fix to compile with csc.
1499         
1500 2004-12-15  Jackson Harper  <jackson@ximian.com>
1502         * X11Structs.cs: Add key mask values
1503         * XplatUIStruct.cs: Add keyboard event flags, and keyboard definitions
1504         * X11Keyboard.cs: New file - Extrapolates and interpolates key
1505         down/up foo into WM_CHAR foo
1506         * KeyboardLayouts.cs: Common keyboard layouts
1507         * XplatUIX11.cs: Add the keyboard driver. Add functionality to
1508         post messages into the main queue.
1510 2004-12-13  Jordi Mas i Hernandez <jordi@ximian.com>
1512         * Button.cs: implement ProcessMnemonic
1513         * ThemeWin32Classic.cs: use ResPool (caching) instead of creating
1514           brushes everytime
1515         * Control.cs: fixes IsMnemonic (support for &&, case insensitive, etc)
1516         * ButtonBase.cs: Show HotkeyPrefix (not the &)  
1518 2004-12-12  John BouAntoun  <jba-mon@optusnet.com.au>
1519         
1520         * MonthCalendar.cs: Implemented click-hold for next/previous month
1521           and date selection
1522           
1523 2004-12-11  Peter Bartok  <pbartok@novell.com>
1525         * X11Structs.cs:
1526           - Added XKeyboardState (moved from XplatUIX11.cs)
1527           - Added XCreateGC related enums and structures
1528           - Added GXFunction for XSetFunction
1530         * XplatUIStructs.cs: Added missing WS_EX_xxx definitions
1532         * XplatUI.cs: Added CreateCaret(), DestroyCaret(), SetCaretPos() and
1533           CaretVisible() calls
1535         * ToolTip.cs: Added code to prevent stealing focus from app windows
1537         * XplatUIDriver.cs: Added abstracts for caret functions (CreateCaret,
1538           DestroyCaret, SetCaretPos and CaretVisible)
1540         * XplatUIX11.cs:
1541           - Added implementation for caret functions
1542           - Moved hover variables into a struct, to make it a bit easier
1543             on the eyes and to debug
1544           - Removed XKeyboardState (moved to XplatUIX11.cs)
1545           - Moved Keyboard properties into the properties region
1547         * Control.cs (get_Region): Control.CreateGraphics is the appropriate
1548           call to get a graphics context for our control
1550         * XplatUIOSX.cs: Added empty overrides for the new caret functions
1552         * TreeView.cs: Fixed bug. No matter what color was set it would always
1553           return SystemColors.Window
1555         * XplatUIWin32.cs: Implemented caret overrides
1557 2004-12-10  Jordi Mas i Hernandez <jordi@ximian.com>
1559         * ListBox.cs: fire events, implement missing methods and properties,
1560         sorting. 
1562 2004-12-10  John BouAntoun <jba-mono@optusnet.com.au>
1564         * MonthCalendar.cs: invalidation bug fixing 
1565         * ThemeWin32Classic.cs: paint fixing
1567 2004-12-09  Geoff Norton  <gnorton@customerdna.com>
1569         * XplatUIOSX.cs: Refactor to pass the real hwnd into Graphics.FromHwnd, we 
1570         prepare the CGContextRef there now.
1572 2004-12-09  John BouAntoun <jba-mono@optusnet.com.au>
1574         * MonthCalendar.cs: 
1575           - optimisationL only invalidate areas that have changed 
1576         * ThemeWin32Classic.cs:
1577           - only paint parts that intersect with clip_area
1579 2004-12-09  Peter Bartok  <pbartok@novell.com>
1581         * Application.cs: Undid changes from r37004 which cause problems 
1582         on X11
1584 2004-12-09  Ravindra  <rkumar@novell.com>
1586         * ToolBar.cs: Added support for displaying ContextMenu
1587         attached to a button on ToolBar.
1588         * ToolBarButton.cs: Uncomment/fixed the DropDownMenu
1589         property.
1591 2004-12-09  Jordi Mas i Hernandez <jordi@ximian.com>
1593         * Label.cs: autosize works in text change and removes unnecessary
1594         invalidate
1596 2004-12-09  Jordi Mas i Hernandez <jordi@ximian.com>
1598         * ThemeWin32Classic.cs, XplatUIOSX.cs, XplatUIWin32.cs:
1599         remove warnings
1601 2004-12-08  Geoff Norton  <gnorton@customerdna.com>
1603         * XplatUIOSX.cs: Added mouse move/click/grab support
1604         Remove some debugging WriteLines not needed anymore.
1605         Add window resizing/positioning.
1606         Fix visibility on reparenting.
1608 2004-12-08  Peter Bartok  <pbartok@novell.com>
1610         * XplatUIOSX.cs: Added Idle event, now compiles on VS.Net
1612 2004-12-07  Geoff Norton  <gnorton@customerdna.com>
1614         * XplatUIOSX.cs: Initial checkin
1615         * XplatUI.cs: Use the Quartz driver if the environment is set to use it
1617 2004-12-03  Ravindra <rkumar@novell.com>
1619         * ListView.cs: Added some keybindings and fixed scrolling.
1620         ScrollBars listen to ValueChanged event instead of Scroll
1621         Event. This would let us take care of all changes being
1622         done in the scrollbars' values programmatically or manually.
1623         * ListView.cs (CanMultiselect): Added a check for shift key.
1624         * ListView.cs (EnsureVisible): Fixed. Do proper scrolling.
1625         * ListViewItem.cs (Clone): Fixed. We need to make a copy
1626         of ListViewSubItemCollection as well.
1628 2004-12-06  Peter Bartok <pbartok@novell.com>
1630         * Control.cs (Parent): Added check and exception to prevent 
1631         circular parenting
1633 2004-12-03  Jordi Mas i Hernandez <jordi@ximian.com>
1635         * ListBox.cs: implemented clipping, selection single and multiple,
1636         bug fixing
1638 2004-12-03  Ravindra <rkumar@novell.com>
1640         * ListView.cs (ListView_KeyDown):
1641         * ListView.cs (ListView_KeyUp): Fixed multiple selection handling
1642         when CTRL key is pressed.
1643         * ListViewItem.cs (Selected): Fixed setting the property.
1645 2004-12-03  Marek Safar  <marek.safar@seznam.cz>
1647         * Application.cs (OnThreadException): Use ThreadExceptionDialog.\r
1649         * Form.cs: Add ActiveForm, FormBorderStyle, MaximizeBox,\r
1650         MinimizeBox, ShowInTaskbar, TopMost properties.\r
1652         * ThreadExceptionDialog.cs: Implemented (disabled TextBox until\r
1653         will be implemented).
1655 2004-12-03  Marek Safar  <marek.safar@seznam.cz>
1657         * OwnerDrawPropertyBag.cs: New internal parameterless ctor.
1659         * TreeNode.cs: Implemented ICloneable, Fixed to pass my simple
1660         tests.
1661         
1662         * TreeNodeCollection.cs: Add exception throwing for Add,AddRange.
1663         
1664         * TreeView.cs: BackColor is Colors.Window.
1666 2004-12-01  Jackson Harper  <jackson@ximian.com>
1668         * TreeView.cs: When resizing the tree if the user is making it
1669         smaller we don't get expose events, so we need to handle adding
1670         the horizontal scrollbar in the size changed handler as well as
1671         the expose handler.
1673 2004-12-02  Jordi Mas i Hernandez <jordi@ximian.com>
1675         * DrawItemState.cs: fixes wrong enum values
1677 2004-12-01  Jackson Harper  <jackson@ximian.com>
1679         * TreeView.cs: Resize the hbar as well as the vbar on resize.
1681 2004-12-01  Jackson Harper  <jackson@ximian.com>
1683         * NodeLabelEditEventArgs.cs:
1684         * NodeLabelEditEventHandler.cs:
1685         * OpenTreeNodeEnumerator.cs:
1686         * TreeNode.cs:
1687         * TreeNodeCollection.cs:
1688         * TreeView.cs:
1689         * TreeViewAction.cs:
1690         * TreeViewCancelEventArgs.cs:
1691         * TreeViewCancelEventHandler.cs:
1692         * TreeViewEventArgs.cs:
1693         * TreeViewEventHandler.cs: Initial implementation.
1695 2004-12-01  Ravindra <rkumar@novell.com>
1697         * ListView.cs (CalculateListView): Fixed scrolling related
1698         calculations. Also, removed some debug statements from other
1699         places.
1700         * ListViewItem.cs: Changed access to 'selected' instance variable
1701         from private to internal.
1702         * ThemeWin32Classic.cs (DrawListViewItem): Fixed SubItem drawing.
1704 2004-12-01  Jordi Mas i Hernandez <jordi@ximian.com>
1706         * ThemeWin32Classic.cs: remove cache of brush and pens for 
1707         specific controls and use the global system, fixes scrollbutton
1708         bugs (for small sizes, disabled, etc)
1709         
1710         * ScrollBar.cs: does not show the thumb for very small controls
1711         (as MS) and allow smaller buttons that the regular size
1713 2004-12-01  Miguel de Icaza  <miguel@ximian.com>
1715         * UpDownBase.cs: Add abstract methods for the interface.
1716         Add new virtual methods (need to be hooked up to TextEntry when it
1717         exists).
1718         Add override methods for most features.
1719         Computes the size, forces the height of the text entry.
1721         * NumericUpDown.cs: Put here the current testing code.
1723         * Set eol-style property on all files that do not have mixed line
1724         endings, to minimize the future problems.  There are still a few
1725         files with mixed endings, and someone should choose whether they
1726         want to move it or not.
1728 2004-11-30  Jordi Mas i Hernandez <jordi@ximian.com>
1730         * MonthCalendar.cs, ListView.cs: use Theme colours instead of 
1731         System.Colors
1732         
1733 2004-11-30  Ravindra <rkumar@novell.com>
1735         * ThemeWin32Classic.cs (DrawListViewItem): Fixed selected item
1736         drawing and replaced use of SystemColors by theme colors.
1737         * ListView.cs (ListView_Paint): Fixed painting done during scrolling.
1738         * ListView.cs (ListViewItemCollection.Add): Throw exception when
1739         same ListViewItem is being added more than once.
1741 2004-11-30  John BouAntoun <jba-mono@optusnet.com.au>
1743         * MonthCalendar.cs:
1744           - ControlStyles love to make the control not flicker
1745           
1746 2004-11-30  Peter Bartok  <pbartok@novell.com>
1748         * CharacterCasing.cs: Added
1750 2004-11-29  Peter Bartok  <pbartok@novell.com>
1752         * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
1753           TreeViewAction.cs, TreeViewEventArgs.cs: Removed new files.
1754           I am removing these files as they conflict with already completed 
1755           work. While it is fantastic to get contributions to MWF, I 
1756           respectfully ask that everyone please coordinate their contributions 
1757           through mono-winforms-list or #mono-winforms at this time. We're 
1758           explicitly avoiding stubbing and don't want controls that don't have 
1759           their basic functionality implemented in svn. Please also see 
1760           http://www.mono-project.com/contributing/winforms.html
1763 2004-11-29  Marek Safar  <marek.safar@seznam.cz>
1765         * Application.cs (ModalRun): Don't hang after exit.
1767         * Theme.cs: New TreeViewDefaultSize property.
1769         * ThemeWin32Classic.cs: Replaced hardcoded defaultWindowBackColor
1770         with less hardcoded SystemColors constant.
1771         Implemented TreeViewDefaultSize.
1773         * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
1774         TreeViewAction.cs, TreeViewEventArgs.cs: New files.
1777 2004-11-29  John BouAntoun <jba-mono@optusnet.com.au>
1779         * MonthCalendar.cs: 
1780           - Fix NextMonthDate and PrevMonthDate click moving calendar
1782 2004-11-26  John BouAntoun <jba-mono@optusnet.com.au>
1784         * MonthCalendar.cs: 
1785           - Fix usage of ScrollChange Property when scrolling months
1787 2004-11-26  Jordi Mas i Hernandez <jordi@ximian.com>
1789         * Menu.cs, MainMenu.cs, MenuItem.cs, MenuAPI.cs
1790          - Fixes menu destroying
1791          - Support adding and removing items on already created menus           
1793 2004-11-26  John BouAntoun <jba-mono@optusnet.com.au>
1795         * MonthCalendar.cs: 
1796           - Re-worked all bolded dates handling to match win32
1797         * ThemeWin32Classic.cs:
1798           - Fixed rendering with bolded dates
1800 2004-11-25  Jordi Mas i Hernandez <jordi@ximian.com>
1802         * ListBox.cs, Theme.cs, ThemeWin32Classic.cs:   
1803         - Horizontal scroolbar  
1804         - Multicolumn
1805         - Fixes
1808 2004-11-25  John BouAntoun <jba-mono@optusnet.com.au>
1810         * MonthCalendar.cs: 
1811           - Fix Usage of MaxSelectionCount from SelectionRange
1812           - Fixed Shift + Cursor Selection
1813           - Fixed Shift + (Pg up/Pg dn, Home/End) selection
1814           - Fixed normal cursor selection to be compat with win32
1815           - Fixed Shift + Mouse Click selection
1817 2004-11-24  Peter Bartok <pbartok@novell.com>
1819         * XplatUI.cs (DispatchMessage): Switched to return IntPtr
1820         * XplatUIDriver.cs (DispatchMessage): Switched to return IntPtr
1821         * XplatUIX11.cs: 
1822           - CreatedKeyBoardMsg now updates keystate with Alt key
1823           - Added workaround for timer crash to CheckTimers, Jackson will
1824             develop a proper fix and check in later
1825           - Implemented DispatchMessage
1826           - Removed calling the native window proc from GetMessage (call
1827             now moved to DispatchMessage)
1829         * KeyEventArgs.cs (Constructor): Now combines modifierkeys into
1830           the keydata (Fixes bug #69831)
1832         * XplatUIWin32.cs:
1833           - (DispatchMessage): Switched to return IntPtr
1834           - Added DllImport for SetFocus
1836 2004-11-24  Ravindra <rkumar@novell.com>
1838         * ThemeWin32Classic.cs: Fixed ListView border and checkbox
1839         background drawing.
1840         * ListViewItem.cs: Fixed various properties, calculations
1841         and Clone() method. Fixed ListViewSubItemCollection.Clear() method.
1842         * ListView.cs: Fixed calculations, BackColor, ForeColor properties
1843         and some internal properties. Fixed MouseDown handler and Paint
1844         method.
1846 2004-11-24  John BouAntoun <jba-mono@optusnet.com.au>
1848         * MonthCalendar.cs: Add TitleMonth ContextMenu handling
1850 2004-11-24  John BouAntoun <jba-mono@optusnet.com.au>
1852         * ContainerControl.cs: correct accidental check in of local changes
1854 2004-11-24  John BouAntoun <jba-mono@optusnet.com.au>
1856         * ThemeWin32Classic.cs: 
1857                 - Fixed Drawing Last month in grid (sometimes not showing)
1858         * MonthCalendar.cs:
1859                 - Fixed title width calculation bug (makeing title small)
1861 2004-11-23  Peter Bartok <pbartok@novell.com>
1863         * XplatUIX11.cs: 
1864           - Added generation of WM_MOUSEHOVER event
1865           - Added missing assignment of async_method atom
1866           - Fixed WM_ERASEBKGND; now only redraws the exposed area
1868 2004-11-23  John BouAntoun <jba-mono@optusnet.com.au>
1870         * ThemeWin32Classic.cs: 
1871                 - Fixed Drawing of today circle when showtodaycircle not set
1872                 - fixed drawing of first and last month in the grid (gay dates)
1873         * MonthCalendar.cs:
1874                 - Fixed Drawing of today circle
1875                 - Fixed drawing of grady dates
1876                 - Fixed HitTest for today link when ShowToday set to false
1877                 - Fixed DefaultSize to obey ShowToday
1879 2004-11-23  John BouAntoun <jba-mono@optusnet.com.au>
1881         * ThemeWin32Classic.cs: Fixed DrawMonthCalendar and private support methods
1882         * System.Windows.Forms/Theme.cs
1883         * MonthCalendar.cs: added for MonthCalendar
1884         * SelectionRange.cs: added for MonthCalendar
1885         * Day.cs: added for MonthCalendar: added for MonthCalendar
1886         * DateRangeEventArgs.cs: added for MonthCalendar
1887         * DateRangeEventHandler.cs: added for MonthCalendar
1889 2004-11-22  Ravindra <rkumar@novell.com>
1891         * ThemeWin32Classic.cs: Fixed ListViewDrawing with 'UseItemStyleForSubItems'
1892         property.
1894 2004-11-22  Miguel de Icaza  <miguel@ximian.com>
1896         * UpDownBase.cs (InitTimer): Use prehistoric C# 1.0 notation for
1897         event handler.
1898         
1899         * NumericUpDown.cs: Added new implementation.
1900         * UpDownBase.cs: Added new implementation.
1902         * XplatUIWin32.cs (KeyboardSpeed, KeyboardDelay): added default
1903         implementations. 
1904         
1905         * XplatUIX11.cs (KeyboardSpeed, KeyboardDelay): added default
1906         implementations. 
1908         * XplatUIDriver.cs ((KeyboardSpeed, KeyboardDelay): added new
1909         methods. 
1911 2004-11-21  Miguel de Icaza  <miguel@ximian.com>
1913         * Timer.cs  (Dispose): Should call the base dispose when
1914         overriding. 
1916 2004-11-19  Jordi Mas i Hernandez <jordi@ximian.com>
1918         * ScrollBar.cs: updates thumb position when max, min or increment
1919         is changed
1921 2004-11-21  Ravindra <rkumar@novell.com>
1923         * ListView.cs: Implemented item selection, activation and
1924         column header style. Fixed properties to do a redraw, if
1925         required. Added support for MouseHover, DoubleClick, KeyDown
1926         and KeyUp event handling and some minor fixes.
1927         * ListViewItem.cs: Fixed constructor.
1928         * ThemeWin32Classic.cs: Improved drawing for ListView.
1930 2004-11-19  Jordi Mas i Hernandez <jordi@ximian.com>
1932         * ThemeWin32Classic.cs: initial listbox drawing code\r
1933         * DrawMode.cs: new enumerator\r
1934         * ListControl.cs: stubbed class\r
1935         * ListBox.cs: initial implementation\r
1936         * Theme.cs: new methods definitions\r
1937         * SelectionMode.cs: new enumerator
1939 2004-11-17  Peter Bartok  <pbartok@novell.com>
1941         * XplatUIWin32.cs: Added double-click events to the class style
1942         * Control.cs (WndProc): 
1943           - Added handling of click-count to MouseDown/ MouseUp events. 
1944           - Added handling of middle and right mouse buttons
1945           - Removed old debug code
1947 2004-11-17  Jackson Harper  <jackson@ximian.com>
1949         * XplatUIX11.cs: Use the new Mono.Unix namespace.
1951 2004-11-17  Ravindra <rkumar@novell.com>
1953         * ListView.cs: Added event handling for MouseMove/Up/Down.
1954         * ColumnHeader.cs: Added a read-only internal property 'Pressed'.
1955         * ThemeWin32Classic.cs: We need to clear the graphics context and
1956         draw column header in a proper state.
1959 2004-11-17  Jordi Mas i Hernandez <jordi@ximian.com>
1961         *  Menu.cs: fixes signature
1963 2004-11-16  Peter Bartok  <pbartok@novell.com>
1965         * XplatUIX11.cs (GetMessage): Implemented generation of
1966           double click mouse messages
1968 2004-11-12  Jordi Mas i Hernandez <jordi@ximian.com>
1970         *  Form.cs, MainMenu.cs, MenuAPI.cs: tracker should be for tracking session
1971         not by menu
1973 2004-11-11  Peter Bartok  <pbartok@novell.com>
1975         * HandleData.cs: Added Visible property
1976         * XplatUIX11.cs (IsVisible): Now uses Visible property from
1977           HandleData
1978         * XplatUIX11.cs: Removed old debug leftovers
1979         * XplatUIX11.cs (DefWndProc): Added WM_ERASEBKGND handler
1980         * Control.cs (WndProc): Removed old debug leftovers,
1981           streamlined handling of WM_WINDOWPOSCHANGED, removed un-
1982           needed WM_SIZE handling
1984 2004-11-11  Jackson Harper  <jackson@ximian.com>
1986         * OwnerDrawPropertyBag.cs:
1987         * TreeViewImageIndexConverter.cs: Initial implementation
1989 2004-11-10  Jackson Harper  <jackson@ximian.com>
1991         * ThemeWin32Classic.cs:
1992         * TabControl.cs: instead of moving tabs by the slider pos just
1993         start drawing at the tab that is offset by the slider. This way
1994         scrolling always moves by exactly one tab.
1996 2004-11-10  Jackson Harper  <jackson@ximian.com>
1998         * TabControl.cs: You can only scroll left when the slider has
1999         already ben moved right.
2000         
2001 2004-11-10  Jackson Harper  <jackson@ximian.com>
2003         * ThemeWin32Classic.cs: Do not draw the selected tab if its not in
2004         the clip area.
2005         
2006 2004-11-10  Jackson Harper  <jackson@ximian.com>
2008         * ThemeWin32Classic.cs: Don't bother drawing tabs outside of the
2009         clip area.
2010         
2011 2004-11-09  Jackson Harper  <jackson@ximian.com>
2013         * TabControl.cs (CalcXPos): New helper method so we can determine
2014         the proper place to start drawing vertical tabs.
2015         * ThemeWin32Classic.cs (DrawTab): Draw right aligned tabs.
2016         
2017 2004-11-09  Jackson Harper  <jackson@ximian.com>
2019         * TabControl.cs: Calculate sizing and rects for left aligned tabs.
2020         * ThemeWin32Classic.cs (GetTabControl*ScrollRect): Only handle Top
2021         and Bottom, left and right are illegal values for this and
2022         multiline is enabled when the alignment is set to left or right.
2023         (DrawTab): Each alignment block should draw the text itself now
2024         because Left requires special love. Also add rendering for Left
2025         aligned tabs.
2026         
2027 2004-11-09  Jordi Mas i Hernandez <jordi@ximian.com>
2029         *  Form.cs, MainMenu.cs, MenuAPI.cs: fixes menu navigation, fixes popups,
2030         does not destroy the windows, removes debugging messages
2032 2004-11-09  jba  <jba-mono@optusnet.com.au>
2034         * ThemeWin32Classic.cs 
2035         (DrawButtonBase): Fix verticle text rect clipping in windows
2036         (DrawCheckBox): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
2037         rendering and incorrect text rect clipping 
2038         (DrawRadioButton): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
2039         rendering and incorrect text rect clipping 
2040         
2041 2004-11-08  Jackson Harper  <jackson@ximian.com>
2043         * ThemeWin32Classic.cs (DrawTabControl): Render tabs from top to
2044         bottom when they are bottom aligned so the bottoms of the tabs get
2045         displayed.
2046         * TabControl.cs (DropRow): Move rows up instead of down when the
2047         tab control is bottom aligned.
2049 2004-11-08 13:59  pbartok
2051         * XplatUIX11.cs:
2052           - Added handling for various window styles
2053           - Added handling for popup windows
2054           - Added SetTopmost handling
2056 2004-11-08 13:55  pbartok
2058         * XplatUIWin32.cs:
2059           - Added argument to SetTopmost method
2060           - Fixed broken ClientToScreen function
2062 2004-11-08 13:53  pbartok
2064         * XplatUIStructs.cs:
2065           - Added missing WS_EX styles
2067 2004-11-08 13:53  pbartok
2069         * XplatUI.cs, XplatUIDriver.cs:
2070           - Added argument to SetTopmost
2072 2004-11-08 13:52  pbartok
2074         * X11Structs.cs:
2075           - Added XSetWindowAttributes structure
2076           - Improved XWindowAttributes structure
2077           - Added SetWindowValuemask enum
2078           - Added window creation arguments enum
2079           - Added gravity enum
2080           - Added Motif hints structure
2081           - Added various Motif flags and enums
2082           - Added PropertyMode enum for property functions
2084 2004-11-08 13:50  pbartok
2086         * Form.cs:
2087           - Fixed arguments for updated SetTopmost method
2089 2004-11-08 13:49  pbartok
2091         * ToolTip.cs:
2092           - Fixed arguments for updated SetTopmost function
2093           - Fixed usage of PointToClient
2095 2004-11-08 13:44  pbartok
2097         * MenuAPI.cs:
2098           - Added Clipping of children and siblings
2100 2004-11-08 13:41  pbartok
2102         * MainMenu.cs:
2103           - Removed SetMenuBarWindow call. We do this in Form.cs
2105 2004-11-08 13:40  jackson
2107         * TabControl.cs, Theme.cs, ThemeWin32Classic.cs: Render the little
2108           scrolling jimmi in the correct location with bottom aligned tabs
2110 2004-11-08 13:36  pbartok
2112         * ContainerControl.cs:
2113           - Implemented BindingContext
2114           - Implemented ParentForm
2116 2004-11-08 12:46  jackson
2118         * TabControl.cs: Put bottom rendered tabs in the right location
2120 2004-11-08 07:15  jordi
2122         * ScrollBar.cs, ThemeWin32Classic.cs: fixes vertical scrollbar and
2123           removes dead code
2125 2004-11-05 17:30  jackson
2127         * TabControl.cs: When selected tabs are expanded make sure they
2128           don't go beyond the edges of the tab control
2130 2004-11-05 14:57  jackson
2132         * TabControl.cs: Reset show_slider so if the control is resized to
2133           a size where it is no longer needed it's not displayed anymore
2135 2004-11-05 13:16  jackson
2137         * TabControl.cs: Make tab pages non visible when added to the
2138           control
2140 2004-11-05 12:42  jackson
2142         * TabControl.cs: Implement SizeMode.FillToRight
2144 2004-11-05 12:16  jackson
2146         * Control.cs: Do not call CreateHandle if the handle is already
2147           created
2149 2004-11-05 11:46  jackson
2151         * TabControl.cs: Remove superflous call to CalcTabRows
2153 2004-11-05 09:07  jackson
2155         * XplatUIX11.cs: Update for Mono.Posix changes
2157 2004-11-05 07:00  ravindra
2159         * ListView.cs, ListViewItem.cs: Implemented some methods and fixed
2160           scrolling.
2162 2004-11-04 22:47  jba
2164         * ThemeWin32Classic.cs:
2165           - Fix Button rendering for FlatStyle = Flat or Popup
2166           - Fix RadioButton and CheckBox rendering when Appearance = Button
2167             (normal and flatstyle).
2168           - Correct outer rectangle color when drawing focus rectangle
2169           - Adjust button bounds to be 1 px smaller when focused
2170           - Make button not draw sunken 3d border when pushed (windows compat)
2171           - Fix CPDrawBorder3D to not make bottom right hand corner rounded
2172           - Offset the text in RadioButton and Checkbox when being rendered as
2173           a button.
2174           - Hover and Click behaviour for Colored FlatStyle.Flat and Popup
2175           radiobuttons
2176           - Fixed disabled rendering for colored flatstyle radiobuttons (both)
2177           - Fixed disabled text rendering for normally rendered radiobuttons
2179 2004-11-04 10:26  jackson
2181         * TabControl.cs: Recalculate tab rows when resizing
2183 2004-11-04 07:47  jordi
2185         * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs:
2186           collection completion, drawing issues, missing features
2188 2004-11-04 05:03  ravindra
2190         * ScrollBar.cs:
2191                 - We need to recalculate the Thumb area when
2192                 LargeChange/maximum/minimum values are changed.
2193           - We set the 'pos' in UpdatePos() method to minimum, if it's less
2194                 than minimum. This is required to handle the case if large_change is
2195                 more than max, and use LargeChange property instead of large_change
2196                 variable.
2197           - We return max+1 when large_change is more than max, like MS does.
2199 2004-11-04 04:29  ravindra
2201         * ColumnHeader.cs, ListView.cs, ListViewItem.cs:
2202                 - Changed default value signatures (prefixed all with ListView).
2203                 - Fixed/implemented layout LargeIcon, SmallIcon and List views for
2204                 ListView.
2205           - Fixed calculations for ListViewItem and implemented Clone()
2206           method.
2208 2004-11-04 04:26  ravindra
2210         * Theme.cs, ThemeWin32Classic.cs:
2211                 - Changed default ListView values signatures (prefixed all with
2212                 ListView).
2213           - Fixed default size values for VScrollBar and HScrollBar.
2214                 - Fixed DrawListViewItem method.
2216 2004-11-04 04:05  ravindra
2218         * ColumnHeaderStyle.cs: Typo. It should be Nonclickable.
2220 2004-11-04 04:04  ravindra
2222         * ImageList.cs: Implemented the missing overload for Draw method.
2224 2004-11-03 19:29  jackson
2226         * TabControl.cs: Handle dropping rows on selection properly
2228 2004-11-03 11:59  jackson
2230         * TabControl.cs: remove debug code
2232 2004-11-03 11:52  jackson
2234         * TabControl.cs, ThemeWin32Classic.cs: Initial implementation of
2235           the scrolly widgerywoo
2237 2004-11-02 13:52  jackson
2239         * TabControl.cs: Resize the tab pages and tabs when the tab control
2240           is resized
2242 2004-11-02 13:40  jackson
2244         * TabControl.cs, ThemeWin32Classic.cs: Move the row with the
2245           selected tab to the bottom
2247 2004-11-02 13:39  jackson
2249         * TabPage.cs: Store the tab pages row
2251 2004-11-02 12:33  jordi
2253         * MenuItem.cs: fixes handle creation
2255 2004-11-02 11:42  jackson
2257         * TabControl.cs: signature fix
2259 2004-11-02 08:56  jackson
2261         * TabControl.cs: Calculate whether the tab is on an edge properly.
2262           Remove top secret debugging code
2264 2004-11-01 19:57  jackson
2266         * TabControl.cs: Add click handling, and proper sizing
2268 2004-11-01 19:47  jackson
2270         * Theme.cs, ThemeWin32Classic.cs: New rendering and sizing code for
2271           tab controls
2273 2004-11-01 19:39  jackson
2275         * TabPage.cs: add internal property to store the bounds of a tab
2276           page
2278 2004-10-30 04:23  ravindra
2280         * Theme.cs, ThemeWin32Classic.cs: Drawing ListView and some default
2281           values.
2283 2004-10-30 04:21  ravindra
2285         * ListView.cs, ListViewItem.cs: Added support for scrolling and
2286           fixed calculations.
2288 2004-10-30 03:06  pbartok
2290         * XplatUIX11.cs:
2291           - Removed extension of DllImported libs
2293 2004-10-29 09:55  jordi
2295         * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: Menu key
2296           navigation, itemcollection completion, menu fixes
2298 2004-10-27 22:58  pbartok
2300         * XplatUIX11.cs:
2301           - Now throws a nice error message when no X display could be opened
2303 2004-10-26 13:51  jordi
2305         * ListView.cs: removes warning
2307 2004-10-26 03:55  ravindra
2309         * ColumnHeader.cs, ListView.cs, ListViewItem.cs,
2310           ThemeWin32Classic.cs: Some formatting for my last checkins.
2312 2004-10-26 03:36  ravindra
2314         * ThemeWin32Classic.cs: Implemented DetailView drawing for ListView
2315           control and default values.
2317 2004-10-26 03:35  ravindra
2319         * Theme.cs: Added some default values for ListView control.
2321 2004-10-26 03:33  ravindra
2323         * ToolBar.cs: ToolBar should use the user specified button size, if
2324           there is any. Added a size_specified flag for the same.
2326 2004-10-26 03:33  ravindra
2328         * ColumnHeader.cs: Added some internal members and calculations for
2329           ColumnHeader.
2331 2004-10-26 03:32  ravindra
2333         * ListViewItem.cs: Calculations for ListViewItem.
2335 2004-10-26 03:31  ravindra
2337         * ListView.cs: Added some internal members and calculations for
2338           ListView.
2340 2004-10-22 13:31  jordi
2342         * MenuAPI.cs: speedup menus drawing
2344 2004-10-22 13:16  jackson
2346         * XplatUIX11.cs: Make sure to update exposed regions when adding an
2347           expose event
2349 2004-10-22 11:49  jackson
2351         * Control.cs: oops
2353 2004-10-22 11:41  jackson
2355         * Control.cs: Check to see if the window should have its background
2356           repainted by X when drawing.
2358 2004-10-22 11:31  jackson
2360         * XplatUIX11.cs: When invalidating areas only use XClearArea if
2361           clear is true, this way we do not get flicker from X repainting the
2362           background
2364 2004-10-22 11:28  jackson
2366         * XEventQueue.cs: Queue properly
2368 2004-10-21 09:38  jackson
2370         * XEventQueue.cs: Fix access modifier
2372 2004-10-21 09:36  jackson
2374         * XEventQueue.cs: Don't loose messages
2376 2004-10-21 09:22  jackson
2378         * XEventQueue.cs: Don't loose messages
2380 2004-10-20 04:15  jordi
2382         * BootMode.cs: enum need it by SystemInfo
2384 2004-10-19 21:58  pbartok
2386         * XplatUIWin32.cs:
2387           - Small sanity check
2389 2004-10-19 21:56  pbartok
2391         * Form.cs:
2392           - Added private FormParentWindow class which acts as the container
2393             for our form and as the non-client area where menus are drawn
2394           - Added/Moved required tie-ins to Jordi's menus
2395           - Fixed/Implemented the FormStartPosition functionality
2397 2004-10-19 21:52  pbartok
2399         * Control.cs:
2400           - Removed unneeded locals
2401           - Added code to all size and location properties to understand and
2402             deal with the parent container of Form
2404 2004-10-19 21:33  pbartok
2406         * Application.cs:
2407           - Fixed to deal with new Form subclasses for menus
2409 2004-10-19 17:48  jackson
2411         * XEventQueue.cs: commit correct version of file
2413 2004-10-19 16:50  jackson
2415         * XEventQueue.cs, XplatUIX11.cs: New optimized event queue
2417 2004-10-19 16:15  jordi
2419         * MenuAPI.cs: MenuBarCalcSize returns the height
2421 2004-10-19 08:31  pbartok
2423         * Control.cs:
2424           - Added missing call to PreProcessMessage before calling OnXXXKey
2425           methods
2427 2004-10-19 00:04  ravindra
2429         * ToolTip.cs: Fixed constructor.
2431 2004-10-18 09:31  jordi
2433         * MenuAPI.cs: menuitems in menubars do not have shortcuts
2435 2004-10-18 09:26  jordi
2437         * MenuItem.cs: fixes MenuItem class signature
2439 2004-10-18 08:56  jordi
2441         * MenuAPI.cs: prevents windows from showing in the taskbar
2443 2004-10-18 00:28  ravindra
2445         * ToolTip.cs: Suppressed a warning message.
2447 2004-10-18 00:27  ravindra
2449         * Control.cs: Default value of visible property must be true.
2451 2004-10-17 23:19  pbartok
2453         * ToolTip.cs:
2454           - Complete implementation
2456 2004-10-17 23:19  pbartok
2458         * XplatUIX11.cs:
2459           - Added EnableWindow method
2460           - Added SetModal stub
2461           - Added generation of WM_ACTIVATE message (still needs testing)
2462           - Added SetTopMost stub
2463           - Changes to deal with VirtualKeys being moved to XplatUIStructs.cs
2465 2004-10-17 23:17  pbartok
2467         * XplatUIWin32.cs:
2468           - Removed VirtualKeys to XplatUIStructs
2469           - Implemented SetTopMost method
2470           - Implemented EnableWindow method
2471           - Bugfix in ScreenToClient()
2472           - Bugfixes in ClientToScreen()
2474 2004-10-17 22:51  pbartok
2476         * XplatUIStructs.cs:
2477           - Added WS_EX styles to WindowStyles enumeration
2479 2004-10-17 22:50  pbartok
2481         * XplatUI.cs, XplatUIDriver.cs:
2482           - Added method for enabling/disabling windows
2483           - Added method for setting window modality
2484           - Added method for setting topmost window
2486 2004-10-17 22:49  pbartok
2488         * ThemeWin32Classic.cs:
2489           - Added ToolTip drawing code
2491 2004-10-17 22:49  pbartok
2493         * Theme.cs:
2494           - Added ToolTip abstracts
2496 2004-10-17 22:47  pbartok
2498         * Form.cs:
2499           - Fixed Form.ControlCollection to handle owner relations
2500           - Added Owner/OwnedForms handling
2501           - Implemented Z-Ordering for owned forms
2502           - Removed unneeded private overload of ShowDialog
2503           - Fixed ShowDialog, added the X11 incarnation of modal handling (or
2504             so I hope)
2505           - Fixed Close(), had wrong default
2506           - Added firing of OnLoad event
2507           - Added some commented out debug code for Ownership handling
2509 2004-10-17 22:16  pbartok
2511         * Control.cs:
2512           - Fixed/implemented flat list of controls
2514 2004-10-17 22:14  pbartok
2516         * Application.cs:
2517           - Added code to simulate modal dialogs on Win32
2519 2004-10-17 16:11  jordi
2521         * ScrollBar.cs: disabled scrollbar should not honor any keyboard or
2522           mouse event
2524 2004-10-17 13:39  jordi
2526         * MenuAPI.cs: menu drawing fixes
2528 2004-10-15 09:10  ravindra
2530         * StructFormat.cs: General Enum.
2532 2004-10-15 09:09  ravindra
2534         * SizeGripStyle.cs: Enum for Form.
2536 2004-10-15 09:08  ravindra
2538         * Theme.cs, ThemeWin32Classic.cs: Added ColumnHeaderHeight property
2539           in Theme for ListView.
2541 2004-10-15 09:06  ravindra
2543         * ColumnHeader.cs: Flushing some formatting changes.
2545 2004-10-15 09:05  ravindra
2547         * ListViewItem.cs: Implemented GetBounds method and fixed coding
2548           style.
2550 2004-10-15 09:03  ravindra
2552         * ListView.cs: Implemented Paint method and fixed coding style.
2554 2004-10-15 07:34  jordi
2556         * MenuAPI.cs: fix for X11
2558 2004-10-15 07:32  ravindra
2560         * ButtonBase.cs, CheckBox.cs, RadioButton.cs:
2561                 - Renamed Paint() method to Draw() for clarity. Also, moved
2562                 DrawImage() to OnPaint().
2564 2004-10-15 07:25  ravindra
2566         * CheckBox.cs, RadioButton.cs:
2567                 - Removed Redraw (), we get it from ButtonBase.
2568                 - Implemented Paint (), to do class specific painting.
2570 2004-10-15 07:16  ravindra
2572         * ButtonBase.cs:
2573                 - Redraw () is not virtual now.
2574                 - Added an internal virtual method Paint (), so that
2575                 derived classes can do their painting on their own.
2576                 - Modified OnPaint () to call Paint ().
2578 2004-10-15 06:43  jordi
2580         * ContextMenu.cs, DrawItemEventHandler.cs, Form.cs, MainMenu.cs,
2581           MenuAPI.cs, MenuItem.cs: menu work, mainmenu, subitems, etc
2583 2004-10-15 00:30  ravindra
2585         * MessageBox.cs:
2586                 - MessageBox on windows does not have min/max buttons.
2587                 This change in CreateParams fixes this on Windows. We
2588                 still need to implement this windowstyle behavior in
2589                 our X11 driver.
2591 2004-10-14 05:14  ravindra
2593         * ToolBar.cs:
2594                 - Changed Redraw () to do a Refresh () always.
2595                 - Fixed the MouseMove event handling when mouse is pressed,
2596                 ie drag event handling.
2597                 - Replaced the usage of ToolBarButton.Pressed property to
2598                 ToolBarButton.pressed internal variable.
2600 2004-10-14 05:10  ravindra
2602         * ToolBarButton.cs:
2603                 - Added an internal member 'inside' to handle mouse move
2604                 with mouse pressed ie mouse drag event.
2605                 - Changed 'Pressed' property to return true only when
2606                 'inside' and 'pressed' are both true.
2607                 - Some coding style love.
2609 2004-10-14 00:17  ravindra
2611         * Form.cs: Fixed class signature. ShowDialog (Control) is not a
2612           public method.
2614 2004-10-14 00:15  ravindra
2616         * ButtonBase.cs: Redraw () related improvements.
2618 2004-10-14 00:14  ravindra
2620         * MessageBox.cs: Moved InitFormSize () out of Paint method and
2621           removed unnecessary calls to Button.Show () method.
2623 2004-10-13 17:50  pbartok
2625         * XplatUIX11.cs:
2626           - Formatting fix
2627           - Removed destroying of window until we solve the problem of X
2628             destroying the window before us on shutdown
2630 2004-10-13 16:32  pbartok
2632         * ButtonBase.cs:
2633           - Now Redraws on MouseUp for FlatStyle Flat and Popup
2635 2004-10-13 14:18  pbartok
2637         * XplatUIX11.cs:
2638           - Added code to destroy the X window
2640 2004-10-13 14:18  pbartok
2642         * XplatUIWin32.cs:
2643           - Added code to destroy a window
2645 2004-10-13 14:12  pbartok
2647         * ButtonBase.cs:
2648           - Added the Redraw on Resize that got dropped in the last rev
2650 2004-10-13 09:06  pbartok
2652         * ThemeWin32Classic.cs:
2653           - Path from John BouAntoun:
2654             * Fix check rendering (centre correctly for normal style, offset
2655               correctly for FlatStyle).
2656             * Fix border color usage (use backcolor) for FlatStyle.Popup
2657             * Use checkbox.Capture instead of checkbox.is_pressed when
2658               rendering flatstyle states.
2660 2004-10-12 21:48  pbartok
2662         * ThemeWin32Classic.cs:
2663           - Removed all occurences of SystemColors and replaced them with the
2664             matching theme color
2666 2004-10-12 21:41  pbartok
2668         * ThemeWin32Classic.cs:
2669           - From John BouAntoun: Added an overload to CPDrawBorder3D to allow
2670             him using the function for flatstyle drawing
2671           - Changed functions to use the new version of CPDrawBorder3D
2673 2004-10-12 21:15  pbartok
2675         * ControlPaint.cs:
2676           - Fixed Dark(), DarkDark(), Light() and LightLight() methods to
2677             match MS documentation. They need to return defined colors if the
2678             passed color matches the configured control color. Thanks to John
2679             BouAntoun for pointing this out.
2681 2004-10-12 20:57  pbartok
2683         * Control.cs:
2684           - Fix from John BouAntoun: Raise ForeColorChanged event when text
2685             color is changed
2687 2004-10-12 20:46  pbartok
2689         * CheckBox.cs:
2690           - Fix from John BouAntoun: Now properly sets the Appearance property
2692 2004-10-12 20:45  pbartok
2694         * ThemeWin32Classic.cs:
2695           - Fixes from John BouAntoun: now handles forecolors and backcolors
2696             for flatstyle rendered controls much better; It also fixes normal
2697             checkbox rendering when pushed or disabled.
2699 2004-10-08 02:50  jordi
2701         * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: more menu
2702           work
2704 2004-10-07 08:56  jordi
2706         * ThemeWin32Classic.cs: Removes deletion of cached brushes
2708 2004-10-06 03:59  jordi
2710         * Control.cs, StatusBar.cs, ThemeWin32Classic.cs, ToolBar.cs,
2711           XplatUIWin32.cs: removes warnings from compilation
2713 2004-10-05 12:23  jackson
2715         * RadioButton.cs: Fix ctor
2717 2004-10-05 11:10  pbartok
2719         * MessageBox.cs:
2720           - Partial implementation by Benjamin Dasnois
2722 2004-10-05 10:15  jackson
2724         * ThemeWin32Classic.cs: Improve rendering of the radio button patch
2725           by John BouAntoun
2727 2004-10-05 03:07  ravindra
2729         * ToolBar.cs:
2730                 - Removed a private method, Draw ().
2731                 - Fixed the ButtonDropDown event handling.
2732                 - Fixed MouseMove event handling.
2734 2004-10-05 03:04  ravindra
2736         * ThemeWin32Classic.cs:
2737                 - Added DrawListView method and ListViewDefaultSize property.
2738                 - Changed ControlPaint method calls to CPDrawXXX wherever possible.
2739                 - Changed DOS style CRLF to Unix format (dos2unix).
2741 2004-10-05 03:03  ravindra
2743         * Theme.cs:
2744                 - Added DrawListView method and ListViewDefaultSize property.
2746 2004-10-05 02:42  ravindra
2748         * ToolBarButton.cs: Added an internal member dd_pressed to handle
2749           clicks on DropDown arrow.
2751 2004-10-04 22:56  jackson
2753         * ButtonBase.cs, Label.cs, MenuAPI.cs, ProgressBar.cs,
2754           ScrollBar.cs, StatusBar.cs, ToolBar.cs, TrackBar.cs: Let the base
2755           Control handle the buffers, derived classes should not have to
2756           CreateBuffers themselves.
2758 2004-10-04 21:20  jackson
2760         * StatusBar.cs: The control handles resizing the buffers now.
2762 2004-10-04 21:18  jackson
2764         * Control.cs: When resizing the buffers should be invalidated. This
2765           should be handled in Control not in derived classes.
2767 2004-10-04 14:45  jackson
2769         * TabPage.cs: oops
2771 2004-10-04 02:14  pbartok
2773         * LeftRightAlignment.cs:
2774           - Initial check-in
2776 2004-10-04 01:09  jordi
2778         * ThemeWin32Classic.cs: fixes right button position causing right
2779           button not showing on horizontal scrollbars
2781 2004-10-02 13:12  pbartok
2783         * XplatUIX11.cs:
2784           - Simplified the Invalidate method by using an X call instead of
2785             generating the expose ourselves
2786           - Added an expose when the window background is changed
2787           - Implemented ClientToScreen method
2789 2004-10-02 13:08  pbartok
2791         * XplatUIWin32.cs:
2792           - Added Win32EnableWindow method (test for implementing modal
2793           dialogs)
2794           - Added ClientToScreen method and imports
2796 2004-10-02 13:07  pbartok
2798         * XplatUI.cs, XplatUIDriver.cs:
2799           - Added ClientToScreen coordinate translation method
2801 2004-10-02 13:06  pbartok
2803         * KeyPressEventArgs.cs:
2804           - Fixed access level for constructor
2806 2004-10-02 13:06  pbartok
2808         * NativeWindow.cs:
2809           - Changed access level for the window_collection hash table
2811 2004-10-02 13:05  pbartok
2813         * Form.cs:
2814           - Added KeyPreview property
2815           - Added Menu property (still incomplete, pending Jordi's menu work)
2816           - Implemented ProcessCmdKey
2817           - Implemented ProcessDialogKey
2818           - Implemented ProcessKeyPreview
2820 2004-10-02 13:02  pbartok
2822         * Control.cs:
2823           - Added private method to get the Control object from the window
2824           handle
2825           - Implemented ContextMenu property
2826           - Implemented PointToScreen
2827           - Implemented PreProcessMessage
2828           - Implemented IsInputChar
2829           - Implemented IsInputKey
2830           - Implemented ProcessCmdKey
2831           - Completed ProcessKeyEventArgs
2832           - Fixed message loop to call the proper chain of functions on key
2833           events
2834           - Implemented ProcessDialogChar
2835           - Implemented ProcessDialogKey
2836           - Implemented ProcessKeyMessage
2837           - Implemented ProcessKeyPreview
2838           - Added RaiseDragEvent stub (MS internal method)
2839           - Added RaiseKeyEvent stub (MS internal method)
2840           - Added RaiseMouseEvent stub (MS Internal method)
2841           - Added RaisePaintEvent stub (MS Internal method)
2842           - Added ResetMouseEventArgs stub (MS Internal method)
2843           - Implemented RtlTranslateAlignment
2844           - Implemented RtlTranslateContent
2845           - Implemented RtlTranslateHorizontal
2846           - Implemented RtlTranslateLeftRight
2847           - Added generation of KeyPress event
2849 2004-10-02 05:57  ravindra
2851         * ListViewItem.cs: Added attributes.
2853 2004-10-02 05:32  ravindra
2855         * ListView.cs: Added attributes.
2857 2004-10-01 11:53  jackson
2859         * Form.cs: Implement the Close method so work on MessageBox can
2860           continue.
2862 2004-09-30 14:06  pbartok
2864         * XplatUIX11.cs:
2865           - Bug fixes
2867 2004-09-30 11:34  jackson
2869         * RadioButton.cs: Fix typo. Patch by John BouAntoun.
2871 2004-09-30 07:26  ravindra
2873         * ListViewItemConverter.cs: Converter for ListViewItem.
2875 2004-09-30 07:26  ravindra
2877         * SortOrder.cs: Enum for ListView control.
2879 2004-09-30 07:25  ravindra
2881         * ColumnHeader.cs: Supporting class for ListView control.
2883 2004-09-30 07:24  ravindra
2885         * ListView.cs, ListViewItem.cs: Initial implementation.
2887 2004-09-30 07:20  ravindra
2889         * ItemActivation.cs: Enum for ListView Control.
2891 2004-09-29 20:29  pbartok
2893         * XplatUIX11.cs:
2894           - Added lookup of pixel value for background color; tries to get a
2895             color 'close' to the requested color, it avoids having to create a
2896             colormap.  Depending on the display this could mean the used color
2897             is slightly off the desired color. Might have to change it to a more
2898             resource intensive colormap approach, but it will work as a
2899           workaround to avoid red screens.
2901 2004-09-29 14:27  jackson
2903         * XplatUIX11.cs: Set the X DisplayHandle in System.Drawing
2905 2004-09-28 12:44  pbartok
2907         * ButtonBase.cs, CheckBox.cs, ControlPaint.cs, GroupBox.cs,
2908           HScrollBar.cs, Label.cs, LinkLabel.cs, Panel.cs, PictureBox.cs,
2909           ProgressBar.cs, RadioButton.cs, ScrollBar.cs, StatusBar.cs,
2910           Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs, ToolBar.cs,
2911           TrackBar.cs, VScrollBar.cs:
2912           - Streamlined Theme interfaces:
2913             * Each DrawXXX method for a control now is passed the object for
2914               the control to be drawn in order to allow accessing any state the
2915               theme might require
2917             * ControlPaint methods for the theme now have a CP prefix to avoid
2918               name clashes with the Draw methods for controls
2920             * Every control now retrieves it's DefaultSize from the current
2921             theme
2923 2004-09-28 12:17  jackson
2925         * Button.cs: Do not redraw OnClick MouseUp/Down will handle the
2926           drawing
2928 2004-09-24 14:57  jackson
2930         * XplatUIX11.cs: Don't lock/enqueue/dequeue for unhandled messages.
2931           Gives us a nice little performance boost.
2933 2004-09-24 12:02  jackson
2935         * TabAlignment.cs, TabAppearance.cs, TabControl.cs, TabDrawMode.cs,
2936           TabPage.cs, TabSizeMode.cs: Partial implementation of the Tab
2937           Control and supporting classes. Initial checkin
2939 2004-09-23 13:08  jackson
2941         * Form.cs: Temp build fixage
2943 2004-09-23 01:39  ravindra
2945         * ItemChangedEventArgs.cs, ItemChangedEventHandler.cs,
2946           ItemCheckEventArgs.cs, ItemCheckEventHandler.cs,
2947           ItemDragEventArgs.cs, ItemDragEventHandler.cs,
2948           LabelEditEventArgs.cs, LabelEditEventHandler.cs: EventArgs and
2949           EventHandlers needed by ListView Control.
2951 2004-09-22 14:12  pbartok
2953         * ScrollableControl.cs:
2954           - Implemented DockPadding property
2955           - Implemented AutoScroll property
2956           - Implemented AutoScrollMargin property
2957           - Implemented AutoScrollMinSize property
2958           - Implemented AutoScrollPosition property
2959           - Implemented DisplayRectangle property (still incomplete)
2960           - Implemented CreateParams property
2961           - Implemented HScroll property
2962           - Implemented VScroll property
2963           - Implemented OnVisibleChanged property
2965 2004-09-22 14:09  pbartok
2967         * Form.cs:
2968           - Added Form.ControllCollection class
2969           - Added handling for Form owners: Owner, OwnedForms, AddOwnedForm,
2970             RemoveOwnedForm (still incomplete, missing on-top and common
2971             minimize/maximize behaviour)
2972           - Added StartPosition property (still incomplete, does not use when
2973             creating the form)
2974           - Added ShowDialog() methods (still incomplete, missing forcing the
2975             dialog modal)
2977 2004-09-22 14:05  pbartok
2979         * Application.cs:
2980           - Added message loop for modal dialogs
2982 2004-09-22 14:02  pbartok
2984         * GroupBox.cs:
2985           - Fixed wrong types for events
2987 2004-09-22 14:00  pbartok
2989         * Shortcut.cs, FormWindowState.cs:
2990           - Fixed wrong values
2992 2004-09-22 12:01  jackson
2994         * Control.cs: Text is never null
2996 2004-09-20 22:14  pbartok
2998         * XplatUIWin32.cs:
2999           - Fixed accessibility level for Idle handler
3001 2004-09-20 18:54  jackson
3003         * Application.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
3004           XplatUIX11.cs: New message loop that uses poll so we don't get a
3005           busy loop
3007 2004-09-17 10:43  pbartok
3009         * ScrollBar.cs:
3010           - Fixed behaviour of arrow buttons. Now properly behaves like
3011             Buttons (and like Microsoft's scrollbar arrow buttons)
3013 2004-09-17 10:14  pbartok
3015         * ScrollBar.cs:
3016           - Added missing release of keyboard/mouse capture
3018 2004-09-17 06:18  jordi
3020         * ContextMenu.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs,
3021           Theme.cs: Very early menu support
3023 2004-09-16 17:45  pbartok
3025         * XplatUIWin32.cs:
3026           - Fixed sending a window to the front
3027           - Added overload for SetWindowPos to avoid casting
3029 2004-09-16 17:44  pbartok
3031         * Control.cs:
3032           - Added SendToBack and BringToFront methods
3034 2004-09-16 07:00  ravindra
3036         * Copyright: Added Novell URL.
3038 2004-09-16 07:00  ravindra
3040         * ToolBar.cs: Invalidate should be done before redrawing.
3042 2004-09-15 21:19  ravindra
3044         * ColumnHeaderStyle.cs: Enum for ListView Control.
3046 2004-09-15 21:18  ravindra
3048         * ColumnClickEventArgs.cs, ColumnClickEventHandler.cs: Event for
3049           ListView Control.
3051 2004-09-13 18:26  jackson
3053         * Timer.cs, XplatUIX11.cs: Remove test code so timers are updated
3054           properly
3056 2004-09-13 18:13  jackson
3058         * Timer.cs, X11Structs.cs, XplatUIX11.cs: Timers are now handled in
3059           a second thread and post messages into the main threads message
3060           queue. This makes timing much more consistent. Both win2K and XP
3061           have a minimum timer value of 15 milliseconds, so we now do this
3062           too.
3064 2004-09-13 15:18  pbartok
3066         * X11Structs.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
3067           XplatUIX11.cs:
3068           - Added Z-Ordering methods
3070 2004-09-13 10:56  pbartok
3072         * Form.cs:
3073           - Fixed #region names
3074           - Moved properties and methods into their proper #regions
3076 2004-09-13 10:51  pbartok
3078         * Form.cs:
3079           - Added Accept and CancelButton properties
3080           - Added ProcessDialogKey() method
3082 2004-09-13 08:18  pbartok
3084         * IWindowTarget.cs:
3085           - Initial check-in
3087 2004-09-10 21:50  pbartok
3089         * Control.cs:
3090           - Added DoDragDrop() [incomplete]
3091           - Properly implemented 'Visible' handling
3092           - Added SetVisibleCore()
3093           - Implemented FindChildAtPoint()
3094           - Implemented GetContainerControl()
3095           - Implemented Hide()
3097 2004-09-10 19:28  pbartok
3099         * Control.cs:
3100           - Moved methods into their appropriate #regions
3101           - Reordered methods within regions alphabetically
3103 2004-09-10 18:57  pbartok
3105         * XplatUIX11.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
3106           - Added method to retrieve text from window
3108 2004-09-10 18:56  pbartok
3110         * Control.cs:
3111           - Moved some internal functions into the internal region
3112           - Implemented FontHeight
3113           - Implemented RenderRightToLeft
3114           - Implemented ResizeRedraw
3115           - Implemented ShowFocusCues
3116           - Implemented ShowKeyboardCues
3117           - Implemented FromChildHandle
3118           - Implemented FromHandle
3119           - Implemented IsMnemonic
3120           - Implemented ReflectMessage
3121           - All public and protected Static Methods are now complete
3123 2004-09-10 16:54  pbartok
3125         * Control.cs:
3126           - Implemented remaining missing public instance properties
3127           - Alphabetized some out of order properties
3129 2004-09-10 05:51  ravindra
3131         * PictureBox.cs: Added a check for null image.
3133 2004-09-10 00:59  jordi
3135         * GroupBox.cs: remove cvs tag
3137 2004-09-09 05:25  ravindra
3139         * ToolBar.cs: Make redraw accessible from ToolBarButton.
3141 2004-09-09 05:23  ravindra
3143         * ToolBarButton.cs: Changes in ToolBarButton need to make it's
3144           parent redraw.
3146 2004-09-09 02:28  pbartok
3148         * ThemeWin32Classic.cs:
3149           - Improve disabled string look
3151 2004-09-09 01:15  jordi
3153         * MeasureItemEventArgs.cs, MeasureItemEventHandler.cs: measureitem
3154           args and handler
3156 2004-09-08 23:56  ravindra
3158         * ItemBoundsPortion.cs: It's enum, not a class!
3160 2004-09-08 23:47  ravindra
3162         * FormBorderStyle.cs, FormStartPosition.cs, FormWindowState.cs:
3163           Enums for Form.
3165 2004-09-08 21:13  ravindra
3167         * ItemBoundsPortion.cs, ListViewAlignment.cs, View.cs: Enums for
3168           ListView control.
3170 2004-09-08 21:03  ravindra
3172         * ThemeWin32Classic.cs: PictureBox would not draw a null image to
3173           avoid crash.
3175 2004-09-08 21:01  ravindra
3177         * ScrollableControl.cs: Removed unreachable code.
3179 2004-09-08 06:45  jordi
3181         * MenuMerge.cs, Shortcut.cs: enumerations need it by menus
3183 2004-09-08 01:00  jackson
3185         * XplatUIX11.cs: Only run the timers when updating the message
3186           queue. This effectively gives X messages a higher priority then
3187           timer messages. Timers still need love though
3189 2004-09-07 14:01  jackson
3191         * XplatUIX11.cs: Do not call XDestroyWindow, X has already done
3192           this for us and the handle is no longer valid.
3194 2004-09-07 13:59  jackson
3196         * HandleData.cs, XplatUIX11.cs: First steps towards a new X event
3197           loop that manages to not crash. TODO: Add poll and cleanup timers
3199 2004-09-07 11:12  jordi
3201         * GroupBox.cs, Theme.cs, ThemeWin32Classic.cs: GroupBox control
3203 2004-09-07 03:40  jordi
3205         * Label.cs, LinkLabel.cs, Theme.cs, ThemeWin32Classic.cs: LinkLabel
3206           fixes, methods, multiple links
3208 2004-09-06 06:55  jordi
3210         * Control.cs: Caches ClientRectangle rectangle value
3212 2004-09-05 02:03  jordi
3214         * ScrollBar.cs, ThemeWin32Classic.cs: fixes bugs, adds flashing on
3215           certain situations
3217 2004-09-04 11:10  jordi
3219         * Label.cs: Refresh when font changed
3221 2004-09-02 16:24  pbartok
3223         * Control.cs:
3224           - Added sanity check to creation of double buffer bitmap
3226 2004-09-02 16:24  pbartok
3228         * ButtonBase.cs:
3229           - Fixed selection of text color
3230           - Fixed handling of resize event; now properly recreates double
3231             buffering bitmap
3232           - Added missing assignment of TextAlignment
3233           - Added proper default for TextAlignment
3235 2004-09-02 14:26  pbartok
3237         * RadioButton.cs:
3238           - Added missing RadioButton.RadioButtonAccessibleObject class
3240 2004-09-02 14:26  pbartok
3242         * Control.cs:
3243           - Added missing Control.ControlAccessibleObject class
3244           - Started to implement Select()ion mechanisms, still very incomplete
3246 2004-09-02 14:25  pbartok
3248         * AccessibleObject.cs:
3249           - Added missing methods
3251 2004-09-02 14:23  pbartok
3253         * AccessibleNavigation.cs, AccessibleSelection.cs:
3254           - Initial check-in
3256 2004-09-02 10:32  jordi
3258         * Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: implements resource
3259           pool for pens, brushes, and hatchbruses
3261 2004-09-01 15:30  jackson
3263         * StatusBar.cs: Fix typo
3265 2004-09-01 14:44  pbartok
3267         * RadioButton.cs:
3268           - Fixed state
3270 2004-09-01 14:39  pbartok
3272         * Button.cs, RadioButton.cs:
3273           - Functional initial check-in
3275 2004-09-01 14:01  pbartok
3277         * CheckBox.cs:
3278           - Added missing default
3279           - Added missing region mark
3281 2004-09-01 09:10  jordi
3283         * Label.cs: fixes method signatures, new methods, events, fixes
3284           autosize
3286 2004-09-01 07:19  jordi
3288         * Control.cs: Init string variables with an empty object
3290 2004-09-01 04:20  jordi
3292         * Control.cs: fires OnFontChanged event
3294 2004-08-31 20:07  pbartok
3296         * ButtonBase.cs:
3297           - Enabled display of strings
3299 2004-08-31 20:05  pbartok
3301         * Form.cs:
3302           - Added (partial) implementation of DialogResult; rest needs to be
3303             implemented when the modal loop code is done
3305 2004-08-31 19:55  pbartok
3307         * CheckBox.cs:
3308           - Fixed to match the removal of the needs_redraw concept
3310 2004-08-31 19:55  pbartok
3312         * ButtonBase.cs:
3313           - Removed the rather odd split between 'needs redraw' and redrawing
3314           - Now handles the events that require regeneration (ambient
3315             properties and size)
3317 2004-08-31 19:41  pbartok
3319         * Control.cs:
3320           - Added firing of BackColorChanged event
3321           - Added TopLevelControl property
3322           - Fixed handling of WM_ERASEBKGRND message
3324 2004-08-31 12:49  pbartok
3326         * ButtonBase.cs:
3327           - Removed debug
3328           - Minor fixes
3330 2004-08-31 12:48  pbartok
3332         * CheckBox.cs:
3333           - Finished (famous last words)
3335 2004-08-31 04:35  jordi
3337         * ScrollBar.cs: adds autorepeat timer, uses a single timer, fixes
3338           scrolling bugs, adds new methods
3340 2004-08-30 14:42  pbartok
3342         * CheckBox.cs:
3343           - Implemented CheckBox drawing code
3345 2004-08-30 14:42  pbartok
3347         * ButtonBase.cs:
3348           - Made Redraw() and CheckRedraw() virtual
3349           - Improved mouse up/down/move logic to properly track buttons
3351 2004-08-30 09:44  pbartok
3353         * CheckBox.cs:
3354           - Updated to fix broken build. Not complete yet.
3356 2004-08-30 09:28  pbartok
3358         * CheckState.cs:
3359           - Initial checkin
3361 2004-08-30 09:17  pbartok
3363         * Appearance.cs:
3364           - Initial check-in
3366 2004-08-27 16:12  ravindra
3368         * ToolBarButton.cs: Added TypeConverter attribute.
3370 2004-08-27 16:07  ravindra
3372         * ImageIndexConverter.cs: Implemented.
3374 2004-08-27 14:17  pbartok
3376         * Control.cs:
3377           - Removed unneeded stack vars
3378           - First attempt to fix sizing issues when layout is suspended
3380 2004-08-25 15:35  jordi
3382         * ScrollBar.cs: more fixes to scrollbar
3384 2004-08-25 14:04  ravindra
3386         * Theme.cs, ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs:
3387           Added the missing divider code and grip for ToolBar Control.
3389 2004-08-25 13:20  pbartok
3391         * Control.cs:
3392           - Control now properly passes the ambient background color to child
3393             controls
3395 2004-08-25 13:20  jordi
3397         * ScrollBar.cs: small bug fix regarding bar position
3399 2004-08-25 12:33  pbartok
3401         * Timer.cs:
3402           - Now only calls SetTimer or KillTimer if the enabled state has
3403           changed
3405 2004-08-25 12:33  pbartok
3407         * XplatUIWin32.cs:
3408           - Fixed timer handling, now seems to work
3409           - Improved error message for window creation
3411 2004-08-25 12:32  pbartok
3413         * Control.cs:
3414           - Fixed generation of MouseUp message
3416 2004-08-25 12:29  jordi
3418         * ProgressBar.cs, ThemeWin32Classic.cs: new methods, properties,
3419           and fixes for progressbar
3421 2004-08-24 18:43  ravindra
3423         * ThemeWin32Classic.cs, ToolBar.cs: Fixed wrapping related issues
3424           in ToolBar control.
3426 2004-08-24 17:15  pbartok
3428         * Panel.cs:
3429           - Added #region
3430           - Added missing events
3431           - Alphabetized
3433 2004-08-24 17:14  pbartok
3435         * StatusBar.cs, PictureBox.cs:
3436           - Now uses Control's CreateParams
3438 2004-08-24 16:36  pbartok
3440         * XplatUIX11.cs:
3441           - Fixed background color handling
3442           - Fixed sending of enter/leave events on a grab
3444 2004-08-24 16:35  pbartok
3446         * X11Structs.cs:
3447           - Refined definitions for CrossingEvent
3449 2004-08-24 12:37  jordi
3451         * ScrollBar.cs, Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: fixes
3452           formmating, methods signature, and adds missing events
3454 2004-08-24 12:24  jordi
3456         * Control.cs: fire OnEnabledChanged event
3458 2004-08-24 11:17  pbartok
3460         * XplatUIWin32.cs:
3461           - Implemented SetTimer() and KillTimer()
3463 2004-08-24 11:16  pbartok
3465         * XplatUIX11.cs:
3466           - Now uses Remove instead of Add to kill the timer
3468 2004-08-24 10:16  jackson
3470         * PictureBox.cs, Theme.cs, ThemeWin32Classic.cs: Handle drawing
3471           picture boxes in the theme now. Draw picture box borders and obey
3472           sizing modes
3474 2004-08-24 05:49  jackson
3476         * Timer.cs: Remove top secret debugging code
3478 2004-08-24 05:34  jackson
3480         * PictureBox.cs: Temp hack to make picture boxes draw their full
3481           image
3483 2004-08-24 05:29  jackson
3485         * Timer.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
3486           XplatUIX11.cs: Move timers to the driver level. On X they are
3487           queued by the driver and checked on idle.
3489 2004-08-24 01:07  jackson
3491         * XplatUIX11.cs: Use a queue for async messages instead of passing
3492           them as ClientMessages since that was totally broken. Also simply
3493           check for events and return an idle message if none are found. This
3494           gives us an idle handler, and prevents deadlocking when no messages
3495           are in the queue.
3497 2004-08-23 18:19  ravindra
3499         * XplatUIWin32.cs: Removed the unwanted destructor.
3501 2004-08-23 17:27  pbartok
3503         * ButtonBase.cs:
3504           - Finishing touches. Works now, just needs some optimizations.
3506 2004-08-23 16:53  jordi
3508         * ScrollBar.cs: small fix
3510 2004-08-23 16:45  pbartok
3512         * Application.cs:
3513           - Removed debug output
3514           - Simplifications
3516 2004-08-23 16:43  jordi
3518         * ScrollBar.cs: [no log message]
3520 2004-08-23 16:10  pbartok
3522         * Form.cs:
3523           - Fixed handling of WM_CLOSE message
3524           - Removed debug output
3526 2004-08-23 16:09  pbartok
3528         * Application.cs:
3529           - Added handling of Idle event
3530           - Added handling of form closing
3531           - Fixed reporting of MessageLoop property
3532           - Removed some unneeded code, should provide a bit of a speedup
3534 2004-08-23 15:22  pbartok
3536         * Control.cs:
3537           - Added InitLayout() method
3538           - Added code to properly perform layout when Anchor or Dock property
3539             is changed
3540           - Changed 'interpretation' of ResumeLayout. MS seems to have a
3541             LAMESPEC, tried to do it in a way that makes sense
3543 2004-08-23 14:10  jordi
3545         * HScrollBar.cs, ScrollBar.cs, TrackBar.cs, VScrollBar.cs: fixes
3546           properties and methods
3548 2004-08-23 13:55  pbartok
3550         * Control.cs:
3551           - Properly fixed Jordi's last fix
3552           - Now uses Cursor's Position property instead of calling XplatUI
3553           directly
3555 2004-08-23 13:44  jordi
3557         * PaintEventHandler.cs: Adding missing attribute
3559 2004-08-23 13:39  pbartok
3561         * Cursor.cs:
3562           - Implemented Position property
3564 2004-08-23 13:39  pbartok
3566         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
3567           - Added method to move mouse cursor
3569 2004-08-23 13:39  pbartok
3571         * XplatUIX11.cs:
3572           - Fixed setting of background color
3573           - Added method to move mouse cursor
3575 2004-08-23 13:16  jordi
3577         * Control.cs: avoids null exception
3579 2004-08-22 17:46  jackson
3581         * PictureBox.cs, PictureBoxSizeMode.cs: Initial implementation of
3582           PictureBox
3584 2004-08-22 17:40  jackson
3586         * XplatUIX11.cs: Add some missing locks
3588 2004-08-22 15:10  pbartok
3590         * Control.cs, Form.cs:
3591           - Removed OverlappedWindow style from Control, instead it's default
3592             now is child
3593           - Made form windows OverlappedWindow by default
3595 2004-08-22 13:34  jackson
3597         * ScrollBar.cs: Update the position through the Value property so
3598           the OnValueChanged event is raised.
3600 2004-08-22 12:04  pbartok
3602         * SWF.csproj:
3603           - Added Cursor.cs and UserControl.cs
3605 2004-08-22 12:03  pbartok
3607         * Cursor.cs:
3608           - Started implementation, not usable yet
3610 2004-08-22 12:00  pbartok
3612         * UserControl.cs:
3613           - Implemented UserControl (complete)
3615 2004-08-21 19:20  ravindra
3617         * ToolBar.cs: Correcting the formatting mess of VS.NET.
3619 2004-08-21 18:49  ravindra
3621         * ToolBar.cs: Probably this completes the missing attributes in
3622           toolbar control.
3624 2004-08-21 18:03  ravindra
3626         * ToolBar.cs, ToolBarButton.cs, ToolBarButtonClickEventArgs.cs:
3627           Fixed toolbar control signatures.
3629 2004-08-21 16:32  pbartok
3631         * LinkLabel.cs:
3632           - Signature Fixes
3634 2004-08-21 16:30  pbartok
3636         * Label.cs:
3637           - Signature fixes
3639 2004-08-21 16:19  pbartok
3641         * Control.cs, Label.cs:
3642           - Signature fixes
3644 2004-08-21 15:57  pbartok
3646         * ButtonBase.cs:
3647           - Added loads of debug output for development
3648           - Fixed typo in method name
3650 2004-08-21 15:52  pbartok
3652         * ToolBarButtonClickEventArgs.cs:
3653           - Added missing base class
3655 2004-08-21 14:53  pbartok
3657         * Control.cs:
3658           - Updated to match new GrabWindow signature
3660 2004-08-21 14:51  pbartok
3662         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
3663           - Added method to get default display size
3665 2004-08-21 14:23  pbartok
3667         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
3668           - Added method to query current grab state
3669           - Added argument to allow confining a grab to a window
3671 2004-08-21 14:22  pbartok
3673         * Keys.cs:
3674           - Added [Flags] attribute so that modifiers can be used in bitwise
3675           ops
3677 2004-08-21 14:21  pbartok
3679         * TrackBar.cs, ScrollBar.cs:
3680           - Replaced direct XplatUI calls with their Control counterpart
3682 2004-08-21 13:32  pbartok
3684         * Control.cs:
3685           - Implemented Created property
3687 2004-08-21 13:28  pbartok
3689         * Control.cs:
3690           - Implemented ContainsFocus
3692 2004-08-21 13:26  pbartok
3694         * Control.cs:
3695           - Implemented CausesValidation
3697 2004-08-21 13:21  pbartok
3699         * Control.cs:
3700           - Implemented CanFocus
3701           - Implemented CanSelect
3702           - Implemented Capture
3704 2004-08-21 12:35  pbartok
3706         * XplatUIWin32.cs:
3707           - Fixed bug with Async message handling
3708           - Implemented getting the ModifierKeys
3710 2004-08-21 12:32  jackson
3712         * AsyncMethodResult.cs: Make sure we have the mutex before we
3713           release it. Fixes BeginInvoke on windows
3715 2004-08-21 11:31  pbartok
3717         * XplatUIWin32.cs, XplatUIX11.cs:
3718           - Drivers now return proper mouse state
3720 2004-08-21 10:54  jackson
3722         * Control.cs: Implement EndInvoke
3724 2004-08-21 10:48  jackson
3726         * Timer.cs: Remove unneeded finalizer
3728 2004-08-20 19:52  ravindra
3730         * ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs: Improvments
3731           in mouse event handling in the ToolBar control.
3733 2004-08-20 19:50  ravindra
3735         * ImageList.cs: Changed draw method to use the arguments passed in
3736           to draw the image.
3738 2004-08-20 18:58  pbartok
3740         * XplatUIStructs.cs:
3741           - Added private message for async communication
3743 2004-08-20 17:38  ravindra
3745         * Control.cs: Made RightToLeft property virtual and removed a
3746           Console.WriteLine.
3748 2004-08-20 14:39  jordi
3750         * ThemeGtk.cs: use style_attach
3752 2004-08-20 14:39  pbartok
3754         * XplatUIWin32.cs:
3755           - Added jackson's Async code from X11 to Win32
3757 2004-08-20 14:09  pbartok
3759         * SWF.csproj:
3760           - Added all new files
3762 2004-08-20 14:09  pbartok
3764         * Control.cs:
3765           - Added call to set window background color
3767 2004-08-20 14:03  pbartok
3769         * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
3770           - Added method for setting the window background
3772 2004-08-20 14:02  pbartok
3774         * XplatUIWin32.cs:
3775           - Added method for setting the background color
3776           - Added handling for erasing the window background
3778 2004-08-20 13:45  jordi
3780         * TrackBar.cs: fixes timer, new properties and methods
3782 2004-08-20 13:34  jackson
3784         * ScrollBar.cs: Use the SWF timer so callbacks are run in the
3785           correct thread
3787 2004-08-20 13:22  jackson
3789         * Timer.cs: Timer Tick events are now handed through Controls Async
3790           mechanism so the callbacks are executed in the same thread as X
3792 2004-08-20 13:19  jackson
3794         * XplatUIDriver.cs: Expose functionality to send async messages
3795           through the driver
3797 2004-08-20 13:18  jackson
3799         * Control.cs: Implement Begininvoke
3801 2004-08-20 13:14  jackson
3803         * XplatUI.cs, XplatUIWin32.cs: Expose functionality to send async
3804           messages through the driver
3806 2004-08-20 13:12  jackson
3808         * XplatUIX11.cs: Lock before all X operations. Also added Async
3809           method functionality through XSendEvent
3811 2004-08-20 13:11  jackson
3813         * X11Structs.cs: Use IntPtrs for ClientMessage extra data (TODO:
3814           This will screw up on 64 bit systems)
3816 2004-08-20 13:10  jackson
3818         * AsyncMethodData.cs, AsyncMethodResult.cs: Classes for sending
3819           Async messages through X/Win32
3821 2004-08-19 19:39  pbartok
3823         * XplatUIX11.cs:
3824           - Updated code to match new HandleData.DeviceContext type
3826 2004-08-19 19:38  pbartok
3828         * HandleData.cs:
3829           - Made DeviceContext a generic object to allow usage from various
3830           drivers
3831           - Added support for queueing Windows messages
3833 2004-08-19 19:37  pbartok
3835         * XplatUIWin32.cs:
3836           - Added generation of MouseEnter, MouseLeave and MouseHover events
3837           - Added cleanup on EndPaint
3839 2004-08-19 19:17  pbartok
3841         * Control.cs:
3842           - Added handling of WM_MOUSEHOVER
3843           - Worked around 'bug' in Win32 WM_MOUSE_ENTER/WM_MOUSE_LEAVE driver
3844           code
3846 2004-08-19 18:55  jordi
3848         * ThemeGtk.cs: fixes button order
3850 2004-08-19 18:12  jordi
3852         * Theme.cs, ThemeWin32Classic.cs: fixes methods signature
3854 2004-08-19 17:09  pbartok
3856         * Control.cs:
3857           - Added Right property
3858           - Added RightToLeft property
3860 2004-08-19 16:27  jordi
3862         * ThemeGtk.cs: experimental GTK theme support
3864 2004-08-19 16:26  jordi
3866         * ITheme.cs, Theme.cs: move themes from an interface to a class
3868 2004-08-19 16:25  jordi
3870         * Control.cs, ScrollBar.cs, ThemeEngine.cs, ThemeWin32Classic.cs:
3871           theme enhancaments
3873 2004-08-19 16:04  pbartok
3875         * XplatUIX11.cs:
3876           - Added colormap basics
3877           - Added a way to re-initialize with a different display handle
3878           - Fixed setting of the window background color
3879           - Added various X11 imports related to colors and colormaps
3881 2004-08-19 15:51  pbartok
3883         * X11Structs.cs:
3884           - Removed packing hints (Paolo suggested this a while back)
3885           - fixed colormap type
3886           - Added default Atom types
3887           - Added Screen and color structs and enums
3889 2004-08-19 15:39  pbartok
3891         * ImageList.cs:
3892           - Added missing Draw() method
3893           - Added missing RecreateHandle event
3895 2004-08-19 15:30  pbartok
3897         * Form.cs:
3898           - Added handling of WM_CLOSE
3900 2004-08-18 13:16  jordi
3902         * ITheme.cs, ThemeWin32Classic.cs, XplatUIWin32.cs: Move colors to
3903           a table
3905 2004-08-18 09:56  jordi
3907         * ScrollBar.cs: fixes to scrollbar: steps and multiple timers
3909 2004-08-17 15:31  ravindra
3911         * SWF.csproj: Updated project.
3913 2004-08-17 15:25  pbartok
3915         * Control.cs:
3916           - Drawing improvement; don't call UpdateBounds if we are not visible
3917             (or have been minimized)
3919 2004-08-17 15:24  pbartok
3921         * XplatUIWin32.cs:
3922           - Finished IsVisible
3923           - Added Win32GetWindowPlacement
3925 2004-08-17 15:08  jackson
3927         * Panel.cs: Initial checkin of the Panel
3929 2004-08-17 14:25  pbartok
3931         * Control.cs:
3932           - Fixed broken handling of default window sizes
3934 2004-08-17 13:29  jackson
3936         * ThemeWin32Classic.cs: Don't use KnownColor to create colours. It
3937           has a large startup time.
3939 2004-08-17 10:25  jackson
3941         * HandleData.cs: union areas properly
3943 2004-08-17 10:12  jackson
3945         * HandleData.cs: union areas properly
3947 2004-08-16 20:00  ravindra
3949         * ToolBar.cs, ToolBarButton.cs: Added attributes.
3951 2004-08-16 18:48  ravindra
3953         * ToolBar.cs: Added attributes.
3955 2004-08-16 17:17  ravindra
3957         * SWF.csproj: Updated project.
3959 2004-08-16 17:16  jackson
3961         * XplatUIX11.cs: Check for more expose events before sending a
3962           WM_PAINT so they can all be grouped together. This makes dragging a
3963           window across another window redraw in a sane way.
3965 2004-08-16 15:47  pbartok
3967         * Control.cs:
3968           - Added handling of WM_MOUSE_ENTER & WM_MOUSE_LEAVE to
3969             support OnMouseEnter/Leave()
3970           - Added WS_CLIPSIBLINGS and WS_CLIPCHILDREN window styles to improve
3971             exposure handling
3973 2004-08-16 15:46  pbartok
3975         * XplatUIStructs.cs, XplatUIX11.cs:
3976           - Added WM_MOUSE_ENTER & WM_MOUSE_LEAVE to support
3977           OnMouseEnter/Leave()
3979 2004-08-16 15:34  jackson
3981         * XplatUIX11.cs: Group multiple expose events in HandleData, make
3982           sure messages get the message field set to WM_NULL if they are not
3983           handled.
3985 2004-08-16 15:24  jackson
3987         * HandleData.cs: HandleData is used for storing message information
3988           for window handles
3990 2004-08-15 17:23  ravindra
3992         * ColorDepth.cs: Added attribute.
3994 2004-08-15 17:23  ravindra
3996         * SWF.csproj: Updated project for ToolBar Control.
3998 2004-08-15 17:20  ravindra
4000         * ITheme.cs, ThemeWin32Classic.cs: Changes to Theme for ToolBar
4001           control and also dos2unix format.
4003 2004-08-15 17:13  ravindra
4005         * ToolBar.cs, ToolBarAppearance.cs, ToolBarButton.cs,
4006           ToolBarButtonClickEventArgs.cs,
4007           ToolBarButtonClickEventHandler.cs, ToolBarButtonStyle.cs,
4008           ToolBarTextAlign.cs: First Implementation of ToolBar control.
4010 2004-08-15 15:31  pbartok
4012         * ButtonBase.cs:
4013           - First (mostly) working version
4015 2004-08-13 16:15  pbartok
4017         * Control.cs:
4018           - Fixed Anchor default
4020 2004-08-13 15:43  pbartok
4022         * Control.cs:
4023           - Changed GetCursorPos signature
4025 2004-08-13 15:42  pbartok
4027         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
4028           - Changed signature for GetCursorPos
4030 2004-08-13 15:25  pbartok
4032         * XplatUIX11.cs:
4033           - Cleanup
4034           - Fixed resizing/exposure handling
4036 2004-08-13 15:22  jordi
4038         * ThemeWin32Classic.cs: removes redundant code and fixes issues
4039           with tickposition
4041 2004-08-13 14:55  jordi
4043         * TrackBar.cs: change from wndproc to events
4045 2004-08-13 13:00  jordi
4047         * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
4048           XplatUIX11.cs: implements PointToClient (ScreenToClient)
4050 2004-08-13 12:53  pbartok
4052         * XplatUIWin32.cs:
4053           - Changed GetWindowPos to also provide client area size
4054           - Fixed broken prototypes for several win32 functions
4056 2004-08-13 12:53  pbartok
4058         * XplatUI.cs, XplatUIDriver.cs:
4059           - Changed GetWindowPos to also provide client area size
4061 2004-08-13 12:52  pbartok
4063         * XplatUIX11.cs:
4064           - Added generation of WM_POSCHANGED
4065           - Changed GetWindowPos to also provide client area size
4067 2004-08-13 12:52  pbartok
4069         * Control.cs:
4070           - Added Dispose() and destructor
4071           - Fixed resizing and bounds calculation
4072           - Fixed Layout
4073           - Added memory savings for invisible windows
4075 2004-08-13 12:46  jordi
4077         * TrackBar.cs: adds timer and grap window
4079 2004-08-13 10:25  jackson
4081         * Timer.cs: SWF Timer
4083 2004-08-12 16:59  pbartok
4085         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
4086           - Implemented method to get current mouse position
4088 2004-08-12 14:29  jordi
4090         * ITheme.cs, ThemeWin32Classic.cs, TrackBar.cs: Trackbar
4091           enhancement, fix mouse problems, highli thumb, etc
4093 2004-08-12 13:31  pbartok
4095         * Control.cs:
4096           - Fixed Anchoring bugs
4098 2004-08-12 13:01  jackson
4100         * StatusBar.cs: Don't forget things
4102 2004-08-12 12:54  jackson
4104         * ThemeWin32Classic.cs: Handle owner draw status bars
4106 2004-08-12 12:54  jackson
4108         * StatusBar.cs: Implement missing properties, events, and methods.
4109           Handle mouse clicking
4111 2004-08-12 10:19  jackson
4113         * StatusBarPanelClickEventArgs.cs,
4114           StatusBarPanelClickEventHandler.cs: Classes for handling status
4115           bar panel click events
4117 2004-08-12 10:10  jackson
4119         * Control.cs: Add missing properties
4121 2004-08-12 09:46  pbartok
4123         * BindingsManagerBase.cs:
4124           - Name changed to BindingManagerBase.cs
4126 2004-08-12 09:25  jordi
4128         * ScrollableControl.cs: calls ctrlbase instead of exeception
4130 2004-08-11 16:28  pbartok
4132         * InputLanguageChangingEventArgs.cs:
4133           - Never check in before compiling. Fixes the last check-in
4135 2004-08-11 16:26  pbartok
4137         * InputLanguageChangingEventArgs.cs:
4138           - More signature fixes
4140 2004-08-11 16:20  pbartok
4142         * BindingManagerBase.cs, BindingMemberInfo.cs, ContainerControl.cs,
4143           Control.cs, ControlEventArgs.cs, ControlPaint.cs, Form.cs,
4144           ImageListStreamer.cs, InputLanguage.cs,
4145           InputLanguageChangedEventArgs.cs,
4146           InputLanguageChangingEventArgs.cs, Keys.cs, LayoutEventArgs.cs,
4147           LinkArea.cs, Message.cs, MouseEventArgs.cs, NativeWindow.cs,
4148           ScrollEventArgs.cs, ScrollableControl.cs, XplatUI.cs,
4149           XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
4150           - Signature fixes
4152 2004-08-11 16:16  pbartok
4154         * Application.cs:
4155           - Fixed Signature
4156           - Added .Net 1.1 method
4158 2004-08-11 15:25  pbartok
4160         * SWF.csproj:
4161           - Fixed BindingManagerBase.cs filename
4163 2004-08-11 15:22  pbartok
4165         * BindingManagerBase.cs:
4166           - Was checked in with wrong filename
4168 2004-08-11 14:50  pbartok
4170         * SWF.csproj:
4171           - Updated
4173 2004-08-11 13:41  jordi
4175         * XplatUIWin32.cs: Fixes ClientRect
4177 2004-08-11 13:19  pbartok
4179         * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
4180           XplatUIX11.cs:
4181           - We had SetWindowPos and MoveWindow to set window positions and
4182             size, removed MoveWindow. We have GetWindowPos, so it made sense to
4183             keep SetWindowPos as matching counterpart
4184           - Added some X11 sanity checking
4186 2004-08-11 12:59  pbartok
4188         * Control.cs:
4189           - Major cleanup of my SetBounds/SetBoundsCore/UpdateBounds mess
4190             (It seems that SetBounds is just a front for SetBoundsCore and
4191              SetBoundsCore updates the underlying window system and
4192              UpdateBounds is responsible for updating the variables associated
4193              with the Control and sending the events)
4194           - Major cleanup of Size handling; we now have two sizes, client_size
4195             and bounds. Bounds defines the window with decorations, client_size
4196             without them.
4198 2004-08-11 12:55  pbartok
4200         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
4201           - Added method to calculate difference between decorated window and
4202             raw client area
4204 2004-08-11 12:54  pbartok
4206         * Label.cs:
4207           - Forcing redraw on resize
4209 2004-08-11 11:43  pbartok
4211         * ImageList.cs:
4212           - Removed disposing of the actual images when the list is disposed
4214 2004-08-11 09:13  pbartok
4216         * Control.cs:
4217           - Now properly reparents windows
4219 2004-08-11 08:37  pbartok
4221         * Control.cs:
4222           - Duh!
4224 2004-08-11 07:47  pbartok
4226         * Control.cs:
4227           - Rewrote the collection stuff. Might not be as fast now, not
4228             keeping the number of children around and accessible directly, but
4229             it's more straightforward
4231 2004-08-11 07:44  pbartok
4233         * AccessibleObject.cs:
4234           - Fixed to match ControlCollection rewrite
4236 2004-08-11 07:43  pbartok
4238         * ImageList.cs:
4239           - Added missing creation of the collection list
4241 2004-08-10 20:08  jackson
4243         * StatusBar.cs: Get the paint message from WndProc
4245 2004-08-10 19:31  jackson
4247         * ThemeWin32Classic.cs: Create Brushes as little as possible
4249 2004-08-10 19:20  jackson
4251         * UICues.cs: Add Flags attribute
4253 2004-08-10 19:19  jackson
4255         * StatusBarPanel.cs: Signature cleanup
4257 2004-08-10 19:10  jackson
4259         * StatusBarDrawItemEventArgs.cs, StatusBarDrawItemEventHandler.cs:
4260           Initial implementation of status bar item drawing
4262 2004-08-10 17:27  jordi
4264         * TrackBar.cs: add missing methods, properties, and restructure to
4265           hide extra ones
4267 2004-08-10 16:24  jackson
4269         * AccessibleStates.cs, Border3DSide.cs, Border3DStyle.cs,
4270           ButtonState.cs, ControlStyles.cs, DragDropEffects.cs: Add flags
4271           attribute
4273 2004-08-10 13:21  jordi
4275         * ITheme.cs, ScrollBar.cs, ThemeWin32Classic.cs: scrollbar
4276           enhancements and standarize on win colors defaults
4278 2004-08-10 12:52  jackson
4280         * DrawItemEventArgs.cs, DrawItemState.cs, ITheme.cs,
4281           ThemeWin32Classic.cs: Implement DrawItem functionality
4283 2004-08-10 12:47  jordi
4285         * XplatUIWin32.cs: Calls InvalidateRect before UpdateWindow
4287 2004-08-10 12:32  jordi
4289         * Control.cs: throw ontextchange event
4291 2004-08-10 11:43  pbartok
4293         * Control.cs:
4294           - Added more to the still unfinished Dock/Anchor layout code
4296 2004-08-10 11:39  pbartok
4298         * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
4299           - Added GetWindowPos method
4301 2004-08-10 11:36  pbartok
4303         * XplatUIWin32.cs:
4304           - Implemented several methods
4306 2004-08-10 09:47  jackson
4308         * TrackBar.cs: Allow control to handle buffering
4310 2004-08-10 09:41  jackson
4312         * ProgressBar.cs, ScrollBar.cs: Allow control to handle buffering
4314 2004-08-10 09:24  jackson
4316         * Label.cs, LinkLabel.cs: Let Control handle buffering.
4318 2004-08-10 09:09  jackson
4320         * StatusBar.cs: Let Control handle all the buffering.
4322 2004-08-10 09:08  jackson
4324         * Control.cs: Control will now handle the buffering code, so each
4325           control does not have to implement this.
4327 2004-08-10 08:34  jackson
4329         * XplatUIDriver.cs: Use default colors from the theme
4331 2004-08-09 17:12  pbartok
4333         * ImageList.cs:
4334           - Fixed several bugs Ravindra pointed out
4336 2004-08-09 16:11  pbartok
4338         * Control.cs:
4339           - Added incomplete dock layout code
4340           - Added support for mouse wheel
4342 2004-08-09 16:09  pbartok
4344         * XplatUIX11.cs:
4345           - Added handling for middle and right mousebutton
4346           - Added handling for mouse wheel
4347           - Added handling for key state and mouse state and position
4348           - Now properly generates WM_xBUTTONx messages and WM_MOUSEWHEEL
4349           messages
4351 2004-08-09 15:40  jackson
4353         * StatusBarPanel.cs, StatusBarPanelAutoSize.cs,
4354           StatusBarPanelBorderStyle.cs, StatusBarPanelStyle.cs: Initial
4355           checkin
4357 2004-08-09 15:37  jackson
4359         * StatusBar.cs: Initial implementation of StatusBar
4361 2004-08-09 15:36  jackson
4363         * ITheme.cs: Add support for drawing status bar and getting status
4364           bar item sizes
4366 2004-08-09 15:35  pbartok
4368         * MouseButtons.cs:
4369           - Fixed values
4371 2004-08-09 15:34  jackson
4373         * ThemeWin32Classic.cs: Add support for drawing status bar and get
4374           status bar item sizes
4376 2004-08-09 15:21  jackson
4378         * ThemeWin32Classic.cs: Use known colors for default control
4379           colours
4381 2004-08-09 15:12  jackson
4383         * ThemeWin32Classic.cs: Make the default font static, it is static
4384           in control so this doesn't change functionality and creating fonts
4385           is sloooooow.
4387 2004-08-09 14:56  pbartok
4389         * X11Structs.cs:
4390           - Added GrabMode enum
4392 2004-08-09 14:55  pbartok
4394         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
4395           - Removed Run method, was only required for initial development
4397 2004-08-09 14:51  pbartok
4399         * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
4400           - Implemented GrabWindow/ReleaseWindow methods to allow pointer
4401           capture
4403 2004-08-09 13:48  pbartok
4405         * XplatUIX11.cs:
4406           - Fixed default sizing for child windows
4408 2004-08-09 12:56  pbartok
4410         * XplatUIX11.cs:
4411           - Added generation of WM_DESTROY message
4412           - Added handling of window manager induced shutdown
4414 2004-08-09 11:31  jackson
4416         * ThemeWin32Classic.cs: New names for control properties
4418 2004-08-09 11:25  jackson
4420         * Control.cs: Use new color names
4422 2004-08-09 11:02  jackson
4424         * XplatUI.cs: Get default window properties from the theme
4426 2004-08-09 11:01  jackson
4428         * ITheme.cs: The theme engine now controls default window
4429           properties
4431 2004-08-09 11:00  jackson
4433         * ThemeWin32Classic.cs: Add default window color properties
4435 2004-08-09 10:17  jackson
4437         * ThemeWin32Classic.cs: Use correct default back color
4439 2004-08-09 10:05  jackson
4441         * XplatUIWin32.cs, XplatUIX11.cs: These properties are handled by
4442           the theme now.
4444 2004-08-09 09:56  jackson
4446         * XplatUI.cs: Remove defaults, these are handled by the theme now.
4448 2004-08-09 09:54  jackson
4450         * Control.cs: Get default properties from the theme.
4452 2004-08-09 09:53  jackson
4454         * ITheme.cs: Themes now handle default control properties
4456 2004-08-09 09:53  jackson
4458         * ThemeWin32Classic.cs: Themes now handle default control
4459           properties so coloring will be consistent
4461 2004-08-08 16:54  jordi
4463         * ITheme.cs, ThemeWin32Classic.cs: Label BorderStyles
4465 2004-08-08 15:08  jordi
4467         * XplatUIX11.cs: fixes keyboard crash
4469 2004-08-08 13:47  jordi
4471         * Label.cs: add cvs header info
4473 2004-08-08 12:09  jackson
4475         * ThemeWin32Classic.cs: Add pen_buttonface
4477 2004-08-08 11:52  jordi
4479         * Label.cs, LinkLabel.cs: [no log message]
4481 2004-08-08 11:34  jordi
4483         * ThemeWin32Classic.cs: Use Windows Standard Colours
4485 2004-08-07 17:32  jordi
4487         * TrackBar.cs: throw exceptions of invalid enums values
4489 2004-08-07 17:31  jordi
4491         * Label.cs, LinkLabel.cs, ThemeWin32Classic.cs: fixes label bug and
4492           draw method name
4494 2004-08-07 16:56  jackson
4496         * HorizontalAlignment.cs: Initial checkin
4498 2004-08-07 13:16  jordi
4500         * Label.cs, LinkLabel.cs: throw exceptions, fixes events, missing
4501           methods
4503 2004-08-07 13:05  jordi
4505         * ITheme.cs, ThemeWin32Classic.cs: Theme colour support and
4506           GetSysColor defines
4508 2004-08-06 18:01  pbartok
4510         * ThemeWin32Classic.cs:
4511           - Fixed some rounding issues with float/int
4513 2004-08-06 18:00  jackson
4515         * DockStyle.cs, AnchorStyles.cs:
4517                   Add flags and serializable attributes.
4519 2004-08-06 17:46  pbartok
4521         * XplatUIX11.cs:
4522           - Implemented GetParent
4524 2004-08-06 17:18  pbartok
4526         * TrackBar.cs:
4527           - Fixed some rounding issues with float/int
4529 2004-08-06 17:17  pbartok
4531         * X11Structs.cs, XplatUIX11.cs:
4532           - Fixed Refresh and Invalidate
4534 2004-08-06 15:30  pbartok
4536         * Control.cs, X11Structs.cs, XplatUIX11.cs:
4537           - Fixed recursive loop when resizing
4538           - Improved/fixed redrawing on expose messages
4540 2004-08-06 09:53  jordi
4542         * Control.cs, X11Structs.cs, XplatUIWin32.cs, XplatUIX11.cs: X11
4543           keyboard navigation
4545 2004-08-06 08:02  pbartok
4547         * X11Structs.cs, XplatUIX11.cs:
4548           - Fixed reparenting
4549           - Fixed window border creation
4551 2004-08-05 15:38  pbartok
4553         * XplatUIX11.cs:
4554           - Attempted fix for reparenting problems
4556 2004-08-04 15:14  pbartok
4558         * Control.cs:
4559           - Fixed Invalidation bug (calculated wrong client area)
4560           - Added ClientSize setter
4562 2004-08-04 15:13  pbartok
4564         * Form.cs:
4565           - Added AutoScale properties
4567 2004-08-04 15:13  pbartok
4569         * SWF.csproj:
4570           - Added latest files
4572 2004-08-04 14:11  pbartok
4574         * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
4575           XplatUIX11.cs:
4576           - Added Invalidate handling
4578 2004-08-03 17:09  jordi
4580         * XplatUIDriver.cs: fixes spelling mistake
4582 2004-07-27 09:53  jordi
4584         * TrackBar.cs: fixes trackbar events, def classname, methods
4585           signature
4587 2004-07-27 09:29  jordi
4589         * ScrollBar.cs: fixes scrollbar events
4591 2004-07-27 04:38  jordi
4593         * Control.cs: changes to be able to run winforms samples
4595 2004-07-26 11:42  jordi
4597         * ControlPaint.cs, ITheme.cs, ProgressBar.cs, ScrollBar.cs,
4598           ThemeEngine.cs, ThemeWin32Classic.cs, TrackBar.cs: Theme support
4600 2004-07-26 05:41  jordi
4602         * MessageBox.cs, MessageBoxButtons.cs, MessageBoxDefaultButton.cs,
4603           MessageBoxIcon.cs, MessageBoxOptions.cs: initial messagebox
4604           implementation
4606 2004-07-22 09:22  jordi
4608         * LinkLabel.cs, LinkLabelLinkClickedEventHandler.cs: link label:
4609           check link overlapping, implement events, and fixes
4611 2004-07-21 10:28  jordi
4613         * DialogResult.cs, IButtonControl.cs: fixes comments filenames
4615 2004-07-21 10:19  jordi
4617         * DialogResult.cs, IButtonControl.cs, Label.cs, LinkArea.cs,
4618           LinkBehavior.cs, LinkClickedEventArgs.cs, LinkLabel.cs,
4619           LinkLabelLinkClickedEventArgs.cs,
4620           LinkLabelLinkClickedEventHandler.cs, LinkState.cs,
4621           XplatUIWin32.cs, LinkClickedEventHandler.cs: LinkLabel control
4622           implementation
4624 2004-07-19 13:09  jordi
4626         * Control.cs, Label.cs: label control re-written: added missing
4627           functionlity, events, and properties
4629 2004-07-19 10:49  jordi
4631         * Control.cs: fixes SetBounds logic
4633 2004-07-19 01:29  jordi
4635         * Control.cs: Call RefreshWindow only if the window has created
4637 2004-07-15 14:05  pbartok
4639         * ColorDepth.cs, ImageList.cs, ImageListStreamer.cs, SWF.csproj:
4640           - Implemented ImageList and ImageList.ImageCollection classes
4641           - Added ColorDepth enumeration
4642           - Updated SWF VS.Net project
4644 2004-07-15 11:06  jordi
4646         * XplatUIStructs.cs: added MsgButons enum
4648 2004-07-15 11:03  jordi
4650         * Control.cs: added basic mouse handeling events
4652 2004-07-15 03:38  jordi
4654         * Orientation.cs, TickStyle.cs, TrackBar.cs: Horizontal and
4655           Vertical TrackBar control implementation
4657 2004-07-13 09:33  jordi
4659         * HScrollBar.cs, VScrollBar.cs: vertical and hort. classes commit
4661 2004-07-13 09:31  jordi
4663         * Control.cs, Form.cs: commit: new properties and fixes form size
4664           problems
4666 2004-07-09 14:13  miguel
4668         * ProgressBar.cs: Spelling
4670 2004-07-09 11:25  pbartok
4672         * ProgressBar.cs:
4673           - Removed usage of Rectangle for drawing. Miguel pointed out it's
4674           faster
4676 2004-07-09 11:17  miguel
4678         * ProgressBar.cs: 2004-07-09  Miguel de Icaza  <miguel@ximian.com>
4680                 * ProgressBar.cs: Fixed spelling for `block'
4682                 drawProgressBar: renamed to `DrawProgressBar' to follow the coding
4683                 style guidelines.
4685                 Avoid using the += on rect.X, that exposed a bug in the compiler.
4687 2004-07-08 23:21  pbartok
4689         * AccessibleObject.cs, AccessibleRole.cs, AccessibleStates.cs,
4690           AnchorStyles.cs, Application.cs, ApplicationContext.cs,
4691           BaseCollection.cs, Binding.cs, BindingContext.cs,
4692           BindingMemberInfo.cs, BindingsCollection.cs,
4693           BindingsManagerBase.cs, Border3DSide.cs, Border3DStyle.cs,
4694           BorderStyle.cs, BoundsSpecified.cs, ButtonBorderStyle.cs,
4695           ButtonState.cs, CaptionButton.cs, CheckBox.cs,
4696           ContainerControl.cs, Control.cs, ControlEventArgs.cs,
4697           ControlEventHandler.cs, ControlPaint.cs, ControlStyles.cs,
4698           ConvertEventArgs.cs, ConvertEventHandler.cs, Copyright,
4699           CreateParams.cs, DockStyle.cs, DragAction.cs, DragDropEffects.cs,
4700           DragEventArgs.cs, DragEventHandler.cs, FlatStyle.cs, Form.cs,
4701           FrameStyle.cs, GiveFeedbackEventArgs.cs,
4702           GiveFeedbackEventHandler.cs, HelpEventArgs.cs,
4703           HelpEventHandler.cs, IContainerControl.cs, IDataObject.cs,
4704           IMessageFilter.cs, IWin32Window.cs, ImeMode.cs, InputLanguage.cs,
4705           InputLanguageChangedEventArgs.cs,
4706           InputLanguageChangedEventHandler.cs,
4707           InputLanguageChangingEventArgs.cs,
4708           InputLanguageChangingEventHandler.cs, InputLanguageCollection.cs,
4709           InvalidateEventArgs.cs, InvalidateEventHandler.cs,
4710           KeyEventArgs.cs, KeyEventHandler.cs, KeyPressEventArgs.cs,
4711           KeyPressEventHandler.cs, Keys.cs, Label.cs, LayoutEventArgs.cs,
4712           LayoutEventHandler.cs, MenuGlyph.cs, Message.cs, MouseButtons.cs,
4713           MouseEventArgs.cs, MouseEventHandler.cs, NativeWindow.cs,
4714           PaintEventArgs.cs, PaintEventHandler.cs, ProgressBar.cs,
4715           QueryAccessibilityHelpEventArgs.cs,
4716           QueryAccessibilityHelpEventHandler.cs,
4717           QueryContinueDragEventArgs.cs, QueryContinueDragEventHandler.cs,
4718           RightToLeft.cs, SWF.csproj, SWF.csproj.user, ScrollBar.cs,
4719           ScrollBars.cs, ScrollButton.cs, ScrollEventArgs.cs,
4720           ScrollEventHandler.cs, ScrollEventType.cs, ScrollableControl.cs,
4721           TODO, TODOAttribute.cs, UICues.cs, UICuesEventArgs.cs,
4722           UICuesEventHandler.cs, X11Structs.cs, XplatUI.cs,
4723           XplatUIDriver.cs, XplatUIStructs.cs, XplatUIWin32.cs,
4724           XplatUIX11.cs, lang.cs:
4725           - Initial check-in