1 2006-03-07 Peter Dennis Bartok <pbartok@novell.com>
4 - Added new IsRecreating and ParentIsRecreating properties to
5 allow testing if RecreateHandle has been called on ourselves
7 - WndProc(WM_DESTROY): If our control handle is being recreated
8 we immediately need to create the handle when receiving the
9 destroy, that way our child windows find a valid parent handle
10 when they themselves are being recreated upon WM_DESTROY receipt
11 (fix for bug #77654 part 1)
13 - DestroyWindow: WM_DESTROY must be sent to our own window before
14 notifying any child windows. MS documents that child windows
15 are still valid when WM_DESTROY is received. (Control now relies on
17 - Added some fine-grain debug options
19 2006-03-06 Jackson Harper <jackson@ximian.com>
21 * MdiClient.cs: Redid scrolling logic a bit to create a virtual
22 box and base calculations off this.
24 * MdiWindowManager.cs: Don't need to ensure scrollbars here
27 2006-03-06 Peter Dennis Bartok <pbartok@novell.com>
29 * Splitter.cs: In situations where the affected control is added
30 to the parent's control list after the splitter, we would not
31 populate affected. Now we try populating it on mousedown, if
32 it's not already set, and force it to be re-set whenever our
35 2006-03-03 Matt Hargett <matt@use.net>
37 * Control.cs: implement Control.Padding
38 * Padding.cs: -Padding.All returns -1 when constructing with the
40 -Padding.ToString() matches MS.NET
41 * ContainerControl.cs: implement
42 ContainerControl.AutoScaleDimensions
43 * ListControl.cs: implement ListControl.FormattingEnabled
44 * TextBox.cs: Implemented TextBox.UseSystemPasswordChar.
46 * TabPage.cs: Implement UseVisualStyleBackColor.
47 * PictureBox.cs: Implement PictureBox.InitialImage.
49 2006-03-03 Mike Kestner <mkestner@novell.com>
51 * ListView.cs: Refactor into HeaderControl and ItemControl. Fix new
52 event declarations to proxy to base event.
53 * ListViewItem.cs: update to use ItemControl.
54 * Theme.cs: make DrawListViewHeader. s/DrawListView/DrawListViewItems.
55 * ThemeWin32Classic.cs: update to new ListView theme API and fix
56 column header label rendering for 0 width columns.
58 2006-03-03 Peter Dennis Bartok <pbartok@novell.com>
60 * Control.cs (ControlCollection.SetChildIndex): Avoid using a call
61 that causes the control to be created. Fixes #77476.
63 2006-03-02 Jackson Harper <jackson@ximian.com>
65 * Hwnd.cs: Clear the nc pending when clearing the NC area, not the
68 2006-03-02 Peter Dennis Bartok <pbartok@novell.com>
70 * Control.cs: Implemented 2.0 feature where OnClick has MouseEventArgs
71 passed in for the EventArgs (fixes #77690)
73 2006-03-01 Jackson Harper <jackson@ximian.com>
75 * ScrollBar.cs: Refresh afterbeing resized.
77 2006-02-28 Mike Kestner <mkestner@novell.com>
79 * MenuAPI.cs: Call PerformPopup internal method to emit Popup.
80 Clean up a tracker compile warning.
81 * MenuItem.cs: add internal PerformPopup method.
84 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
86 * TextBoxBase.cs (set_Text): Recalculate the document (causing an
87 implicit expose) when the text is set to null
89 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
91 * RichTextBox.cs (FlushText): When newline is true, we always
92 need to split the line, even if no text is on it and we may
93 never eat newlines. (Fixes #77669)
95 2006-02-28 Mike Kestner <mkestner@novell.com>
97 * ListView.cs: Add UpdateSelection internal method. Remove SelectItem
98 and set Selected instead.
99 * ListViewItem.cs: Call owner.UpdateSelection to manipulate the
102 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
104 * ComboBox.cs: Allow setting SelectedIndex to -1. Fixes #77665
106 2006-02-28 Alexander Olk <alex.olk@googlemail.com>
109 - Got rid of the panel. All controls are now directly added to
111 - It is now possible to set a font with the Font property
112 - MinSize and MaxSize property do now what they should
113 - ShowApply, ShowHelp, ShowColor, ShowEffects likewise
114 - Searching and selecting a font with the font textbox works now,
115 the same applies to the style and size textbox
116 - Draw the correct 3D border in the example panel
117 - Fixed a little mem leak (unused fonts didn't get disposed)
118 - Many other internal updates/rewrites...
121 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
124 - InsertRTFFromStream: Added 'number of characters inserted' argument
125 - set_SelectedRTF: Now using the number of characters to calculate
126 the new location for the selection and cursor (x/y cannot be used
127 due to potentially already wrapped text)
129 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
131 * TextControl.cs: Added property and implemented means to allow
132 disabling recalculation of a document (can be used to speed up
133 multiple inserts and is needed to make RTF inserts predictable, see
135 * RichTextBox.cs: Using the new NoRecalc property of Document to
136 keep x/y insert locations predictable. Also makes it faster inserting
139 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
141 * Control.cs: Separated special WM_SYSKEYUP keyboard handling. That way
142 it's easier for a child control to handle the other messages without
143 having to duplicate the special functionality
145 - WndProc: Removed calling base handler for WM_KEYDOWN and added
146 code to handle processing the key ourselves, in order to get
147 access to the result of KeyEventArgs.Handled. We now only call
148 ProcessKey if they key hasn't been handled already. Fixes #77526.
149 - set_Text: If null or empty string is given, just clear the
150 document. Fixes part of #77526
152 2006-02-27 Jackson Harper <jackson@ximian.com>
154 * SizeGrip.cs: Paint the background color before painting the grip
155 so things look right.
156 * MdiClient.cs: Add the sizegrip when both scrollbars are used.
158 2006-02-27 Mike Kestner <mkestner@novell.com>
161 - Restructure layout and invalidation model to remove a ton of
162 flicker from the control and speed up performance in general.
163 - Add manual column resize, flickers like crazy, but I already have
164 some ideas on how I'll fix that. (#76822)
165 - Merge the three Icon-based views into a single layout method.
166 - Move item selection interaction logic from the item since
167 interaction with the collections is more appropriate to the view.
168 - Deselection on non-item clicks.
170 - Encapsulate most of the layout. Add some internal props to trigger
171 layout. Move to a model where Items invalidate themselves instead
172 of just invalidating the whole control every time something changes.
173 - Invalidate on Text/Caption changes.
174 - switch to an offset based layout model to avoid having to absolute
175 position every element on item moves.
176 - correct checkbox layout to conform to MS layout.
177 * ThemeWin32Classic.cs:
178 - refactor some column header drawing code.
179 - fix string justification for column headers (#76821)
180 - make SmallIcon labels top justified for compat with MS impl.
181 * ThemeClearlooks.cs:
182 - adjust to new ListViewItem internal checkbox bounds api.
184 2006-02-27 Jackson Harper <jackson@ximian.com>
186 * Control.cs: Change where implicit controls fall in the zorder.
187 They are now on top of all children.
188 - Synced AddImplicit code with Add
189 - Removed unused enumerator.
190 * SizeGrip.cs: Remove the TODO as its been TODONE.
192 2006-02-26 Peter Dennis Bartok <pbartok@novell.com>
194 * TextControl.cs(Insert): Combine the last lines unless the insertion
195 string ends with \n\n, otherwise we leave one line too many (Fixes
196 something I noticed with the testapp for #77526; the bug itself was
197 already fixed in the previous checkin)
199 2006-02-26 Peter Dennis Bartok <pbartok@novell.com>
202 - SelectionColor and SelectionFont methods no longer set absolute
203 styles. Instead, the keep font or color respectively (This
204 resolves a long-standing FIXME in the code)
205 - When flushing RTF text, the insert code now considers text trailing
206 behind the insertion point (Fixes the bug where when replacing
207 the selected text via SelectedRTF the remainder of the line behind
208 the selection would stay on the first insertion line)
210 - AppendText now updates the selection points after inserting text
211 - AppendText now ensures that the last tag (sometimes 0-length) of
212 the document is used for the style information (Fixes part of
215 - Created new FontDefiniton class to allow describing partial style
217 - StreamLine() now takes a lines argument, to allow it to decide
218 whether an encountered zero-length tag is the last in the document
219 (which must be kept to not loose the font/color contained in it,
221 - Created Combine() and Split() methods for Marker structs, to
222 support marker updates due to reformatted documents (soft line
224 - Implemented Document.CaretTag setter
225 - Fixed MoveCaret(CtrlEnd) handling, now moves to the last character
226 of the last line (Not the cause, but also exposed by bug #77220)
227 - Added LineTag argument to InsertString method, to allow callers
228 to force a certain tag to be used (required to force use of the
229 trailing zero-length tag of a document)
230 - Now updating markers in Combine(), to avoid stale tag markers
231 - Added some method descriptions to aid maintenance
232 - Implemented new FormatText concept, allowing additive/subtractive
233 formatting by only specifying the components that are to be
234 changed. This was needed for resolving the RTB.SelectedColor/
235 RTB.SelectedFont fixmes
236 - Added Break() support method to allow breaking up linetags (used
237 for partial formatting)
238 - Added GenerateTextFormat() method. It is used for partial
239 formatting and allows to generate a full font/color from given
240 attributes and an existing tag.
242 2006-02-26 Jackson Harper <jackson@ximian.com>
244 * XplatUIX11.cs: Use the correct caption height.
245 - Translate hittest coordinates to screen coords to match MS.
246 * XplatUIWin32.cs: When we create MDI windows we need to reset
247 some of the style flags, so we get a nice blank window, and can
248 draw all the decorations ourselves.
249 - Set a clipping rectangle on the non client paint event, the
250 window manager drawing code needs one.
251 * Form.cs: The window manager needs to know when the window state
253 * Hwnd.cs: The window manager stuff now does a proper NCCALC so we
254 don't need to factor in border and title sizes in these
255 methods. TODO: Remove the args and fix the call points.
256 * InternalWindowManager.cs: Handle NCHITTEST and NCCALCAREA
258 - Let the driver set the cursors.
259 - Improve active window handling
260 - Correct sizes for title bars and buttons.
261 - Match MS drawing better
262 * MdiWindowManager.cs: We don't need to handle border style
263 updates specially anymore.
264 - Check for scrollbars when windows are done moving
265 - Handle Active properly.
266 * MimeIcon.cs: Don't crash when we can't load the GNOME stuff
267 correctly. I am spewing the exception though, so we don't hide the
270 2006-02-26 Pedro Martinez Julia <pedromj@gmail.com>
272 * DataGridViewRowPostPaintEventArgs.cs,
273 DataGridViewCellPaintingEventArgs.cs,
274 DataGridViewRowCollection.cs,
275 DataGridViewRowPrePaintEventArgs.cs,
276 DataGridViewCell.cs: Clear a few warnings and implement a few
277 exceptions that should be thrown.
279 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
281 * ScrollBar.cs (ctor): Explicitly set a cursor to avoid
282 'inheriting' our parent's (non-default) cursor. (Part of
285 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
287 * XplatUIX11.cs: Fixed cast to make csc happy
289 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
291 * Control.cs (WndProc): Only handle WM_SETCURSOR messages if
292 it's for the client area (part of fix for #77479 and needed
293 for MDI window cursor handling)
295 - DefWindowProc: Now handles the WM_SETCURSOR messages, setting
296 the appropriate default cursors and also passing the message
298 - GetMessage: Now generating WM_NCHITTEST and WM_SETCURSOR even
301 2006-02-15 Jackson Harper <jackson@ximian.com>
303 * XplatUIWin32.cs: Since we fake MDI dont tell Windows that this
306 2006-02-14 Alexander Olk <alex.olk@googlemail.com>
308 * X11DesktopColors.cs: Instead of checking the desktop session
309 string for "KDE" check if it starts with "KDE"
311 2006-02-10 Jackson Harper <jackson@ximian.com>
313 * XplatUIX11.cs: These should be unsigned (fixes crash on 32 bit
316 2006-02-10 Alexander Olk <alex.olk@googlemail.com>
318 * FileDialog.cs: Added Refresh to RunDialog to fix some drawing
321 - Got rid of the panel. All controls are now directly added to
323 - Changed to mono coding style
325 2006-02-10 Jackson Harper <jackson@ximian.com>
327 * InternalWindowManager.cs: We don't need the set visibility to
328 false hack anymore now that peter has written beautiful shutdown
331 2006-02-10 Peter Dennis Bartok <pbartok@novell.com>
333 * XplatUIX11.cs: Ignore DestroyNotify messages for windows that
334 where already explicitly destroyed
336 2006-02-10 Jackson Harper <jackson@ximian.com>
338 * MdiClient.cs: Handle the case where windows are too high or to
339 the left and we need scrollbars.
341 2006-02-10 Alexander Olk <alex.olk@googlemail.com>
343 * MimeIcon.cs: Added some icons
346 - Got rid of the panel. All controls are now directly added to
348 - Changed to mono coding style
349 - On Linux "My Computer" and "My Network" will now show some
350 more usefull information. A new class, MasterMount, gathers
351 this information from /proc/mount. Updated MWFFileView to make
352 use of this information
353 - Fixed a bug that caused FileDialog to crash when
354 ".recently_used" file had a zero size
355 - FilterIndex does now what it should
357 * OpenFileDialog.cs, SaveFileDialog.cs: Updated to reflect latest
360 2006-02-09 Jackson Harper <jackson@ximian.com>
362 * ComboBox.cs: Don't touch if null.
364 2006-02-09 Peter Dennis Bartok <pbartok@novell.com>
366 * Cursor.cs: 64bit safeness fix
367 * XplatUIX11.cs: Removed several unneeded and one moronic cast.
369 2006-02-09 Jackson Harper <jackson@ximian.com>
371 * Form.cs: If a form is made into an MDI form update the styles so
372 all the props can get set correctly.
373 - Kill the mdi_container when we dont need it anymore.
374 * InternalWindowManager.cs: Add missing NOT
376 2006-02-08 Jackson Harper <jackson@ximian.com>
378 * InternalWindowManager.cs: Respek clipping when drawing MDi
381 2006-02-08 Jackson Harper <jackson@ximian.com>
383 * Hwnd.cs: Add bits to track non client expose events.
384 * XplatUIX11.cs: Track non client expose events on the hwnd. This
385 gives us a proper invalid rect and will allow for some nice
386 optimizations with NC client drawing
387 - MDI windows are children windows, so move their style handling
388 into the child window block.
389 * InternalWindowManager.cs: Remove a state reset that was
390 getting invoked at the wrong time. Fixes managed windows getting
391 into a 'stuck' captured state.
393 2006-02-07 Peter Dennis Bartok <pbartok@novell.com>
395 * TextControl.cs (Document.ctor): Now initializing
396 selection_anchor. Fixes #77493
398 2006-02-07 Jackson Harper <jackson@ximian.com>
400 * TrackBar.cs: The increment/decrements were backwards.
402 2006-02-07 Mike Kestner <mkestner@novell.com>
404 * Theme*.cs : remove ThemeEngine.Current usage as it just points back
405 to the instance itself.
407 2006-02-07 Peter Dennis Bartok <pbartok@novell.com>
409 * X11DesktopColors.cs, ThemeGtk.cs: The GObject structure is based
410 on ulongs and pointers, the size differs between 32bit and 64bit
413 2006-02-07 Mike Kestner <mkestner@novell.com>
415 * XplatUIX11.cs : force the WorkingArea away from XGetWindowProperty
416 for 64 bit platforms to work around a metacity bug.
418 2006-02-07 Jackson Harper <jackson@ximian.com>
420 * TrackBar.cs: Process the input keys we need, and hookup to
421 KeyDown instead of using WndProc, so we get key messages.
423 2006-02-06 Peter Dennis Bartok <pbartok@novell.com>
425 * XplatUIX11.cs: Atoms are only 32bit on the wire, no matter what
427 * X11Dnd.cs(SetAllowDrop): Since atoms are always 32bit on the wire
428 we need to translate the XdndVersion atoms array before sending it
430 2006-02-06 Peter Dennis Bartok <pbartok@novell.com>
433 - The preceeding 64bit fixes had a bug: ChangeProperty expects the
434 number of bits for the property, not the number of bytes. The
435 change to provide IntPtr.Size broke 32bit. (64bit was also wrong
436 but would not crash since it specified 8 bits instead of 4 bits)
437 - More 64bit fixes: Switched all atoms from int to IntPtr (they are
438 defined as XID -> long in the C headers)
439 - Removed 'new IntPtr((int))' and '(IntPtr)' casts from all NetAtoms
440 references since those are now IntPtr to begin with
441 - Switched all Atom.XXX 'int' casts to IntPtr casts
442 - Fixed XGrabPointer DllImport signature to work for 64bit (cursor arg)
443 - Fixed XInternAtom signature for 64bit, now returns an IntPtr
444 - Added XChangeActivePointerGrab DllImport (for X11DnD)
446 - Changed 'int' type for Atoms in XEvent structures to IntPtr
447 - Changed atom in HoverStruct to be IntPtr
449 - Removed local DllImports, switched code to use those from XplatUIX11
450 - Removed/fixed casts related to the switch of Atom to be a IntPtr
452 2006-02-06 Mike Kestner <mkestner@novell.com>
454 * XplatUIX11.cs : many more 64 bit pinvoke changes. I've audited all the
455 method signatures in the import region. There may still be some
456 lingering struct marshaling issues, as I didn't drill down into those.
459 2006-02-06 Jackson Harper <jackson@ximian.com>
461 * ComboBox.cs: Dont manually set the top_item, this is computed
462 when the scrollbar position is set.
464 2006-02-06 Mike Kestner <mkestner@novell.com>
466 * XplatUIX11.cs : 64 bit changes to XGetWindowProperty usage. Fixes
467 startup crashes on amd64. There's other fixes needed. All pinvoke
468 usage of Atom needs to be mapped to IntPtr for example. And there are
469 likely other int/long issues to be addressed.
471 2006-02-04 Alexander Olk <alex.olk@googlemail.com>
473 * FileDialog.cs: One more...
475 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
477 * FileDialog.cs: Next try
479 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
481 * FileDialog.cs: First part of fix for #77464
483 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
485 * ButtonBase.cs, ContainerControl.cs, Forms.cs,
486 ThemeWin32Classic.cs: Fix for #77458. Correct handling of
487 AcceptButton border drawing.
489 2006-02-03 Peter Dennis Bartok <pbartok@novell.com>
491 * Form.cs: Moved positioning of form after auto scaling is applied,
492 otherwise it would possibly use wrong form size.
494 2006-02-03 Peter Dennis Bartok <pbartok@novell.com>
496 * Control.cs (RecreateHandle): No need to re-create any child
497 controls, the child windows will get destroyed automatically by
498 the windowing system or driver, and re-created when the handle
499 is being accessed the first time. Fixes #77456
500 * Form.cs: No longer setting the form to closing if the handle is
501 being recreated. This seems like the right thing to do, don't
502 have a bug or testcase for this, though.
504 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
506 * FileDialog.cs: Suspend/Resume layouting when changing sizes of
507 controls to avoid unwanted side effects
509 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
512 - ScaleCore needs to scale the bounds, not the ClientSize of the
513 control. Fixes #77416.
514 - DefaultSize is 0,0 for control
516 - DefaultSize is 100, 20
517 - SetBoundsCore: Now enforcing the height, no matter if the provided
518 height is more or less than the preferred one, as long as AutoSize
520 * Form.cs: Apply documented fudge factor. Part of item 3 fix for #77416
522 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
525 - ResumeLayout: Fixed logic when to call PerformLayout, we may not
526 call unless both performLayout is true *and* we have a pending
528 - ResumeLayout: MS does not completely nest Suspend and Resume,
529 they bottom out at 0, fixed our code to match that.
530 - UpdateBounds/SetBoundsCore: Moved calling of UpdateDistances() to
531 SetBoundsCore, we were updating even when we shouldn't. This fixes
532 swf-anchors mis-anchoring when resizing the app fast and lots.
533 - UpdateDistances: Now only setting the left and top distance if
534 we have a parent and are not suspended, this is based on
535 a suggestion by Don Edvaldson in bug #77355.
536 - OnVisibleChanged: Fixed logic when to create the control. We may
537 not create the control if we have no parent or if it's not visible;
538 switched to using Visible property instead of is_visible field
539 since the property also considers parent states. This fixes a bug
540 when starting Paint.Net
542 2006-02-02 Jackson Harper <jackson@ximian.com>
544 * Form.cs: If the forms handle hasn't been created yet don't call
545 into xplatui to make it top most, just set the topmost flag on the
547 * XplatUIX11.cs: Handle WS_EX_TOPMOST.
549 2006-02-01 Jackson Harper <jackson@ximian.com>
551 * ScrollableControl.cs: Refactored the Recalculate method a
552 little, this wasn't handling all the variants of bottom and right
553 bars needed to be added and added/removed based on their
554 counterparts being added/removed (which changes the drawable
555 size). Also we special case client widths and heights of 0 and
556 don't add the scrollbar for those.
558 2006-02-01 Peter Dennis Bartok <pbartok@novell.com>
561 - Added method to get AbsoluteGeometry(); currently unused, but might
562 be used in the future, if we try again to figure out toplevel
563 coordinates with some more crappy window managers
564 - Added FrameExtents() method to retrieve the WM set decoration size
565 - Tried to fix up AddConfigureNotify and handling of ReparentNotify
566 to deal with at least KDE, FVWM and metacity (Fixes #77092)
568 - Added whacky_wm tracking var for metacity
569 - Added logic to have default menu height if the actual menu height
570 has not yet been calculated (part of fix for #77426)
571 * Form.cs: Keep track whether client size has been set and re-set
572 it if a menu is added/removed afterwards (Fixes #77426)
574 2006-01-31 Jackson Harper <jackson@ximian.com>
576 * Control.cs: When a new Site is set on the component attempt to
577 pull the AmbientProperties from it.
579 2006-01-31 Peter Dennis Bartok <pbartok@novell.com>
581 * ThemeWin32Classic.cs: Menu background is drawn in ColorMenu, not
582 in the background of the owning form. Fixes #77332
584 2006-01-31 Alexander Olk <alex.olk@googlemail.com>
586 * MimeIcon.cs: Fix for #77409
588 2006-01-31 Alexander Olk <alex.olk@googlemail.com>
590 * XplatUIX11GTK.cs: Initial import
592 2006-01-31 Jordi Mas i Hernandez <jordimash@gmail.com>
594 * FixedSizeTextBox: fixes class signature
596 2006-01-30 Jackson Harper <jackson@ximian.com>
598 * FixedSizeTextBox.cs: New internal class that represents a
599 textBox that will not be scaled.
602 * UpDownBase.cs: Use the new FixedSizeTextBox instead of a
605 2006-01-30 Peter Dennis Bartok <pbartok@novell.com>
607 * XplatUIX11.cs: Retrieve default screen number instead of
608 assuming 0. Attempted fix for #77318
610 2006-01-30 Peter Dennis Bartok <pbartok@novell.com>
613 - GetWindowPos: When a window is parented by FosterParent, use
614 the desktop instead of FosterParent as the base to get coordinates
615 - CreateWindow: Don't make FosterParent the parent window for Popups
616 if we don't want a taskbar entry, Popups automatically don't get one
617 * Hwnd.cs: Need to call remove to actually remove the key from the
620 2006-01-30 Mike Kestner <mkestner@novell.com>
622 * MenuAPI.cs: adjust MainMenu item popup location to y=0.
624 2006-01-30 Jackson Harper <jackson@ximian.com>
627 * TreeNode.cs: Raise events no matter how the treenode is
628 checked. Patch by Don Edvalson.
630 2006-01-30 Jackson Harper <jackson@ximian.com>
632 * TreeNode.cs: Signature fix.
634 2006-01-29 Alexander Olk <alex.olk@googlemail.com>
636 * ThemeClearlooks.cs: Fixed a crash in ProgressBar drawing.
638 2006-01-20 Mike Kestner <mkestner@novell.com>
640 * Form.cs: Add ActiveTracker property to do Captures and perform mouse
641 event forwarding when menus are active.
642 * MenuAPI.cs: kill the GrabControl hack. Use Form.ActiveTracker.
643 Most of the patch is pdb's with a little rework.
645 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
647 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs:
648 Removed GetMenuDC and ReleaseMenuDC methods; replaced
649 by PaintEventStart(handle, false) and PaintEventEnd(handle, false)
650 * Form.cs: Changed WM_NCPAINT handler to use PaintEventStart and End
651 * InternalWindowManager.cs: Added use of PaintEventStart/End to
652 handling of WM_NCPAINT message, now passing the PaintEventArgs to
653 the PaintWindowDecorations method
654 * MainMenu.cs: Switched logic from GetMenuDC to PaintEventStart
655 * MdiChildContext.cs: Switched logic from GetMenuDC to PaintEventStart
656 * MenuAPI.cs: Made tracker window invisible
658 - Removed GetMenuDC and ReleaseMenuDC methods
659 - Implemented the client=false path for PaintEventStart and
662 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
664 * XplatUIWin32.cs(SetBorderStyle): Fixed3D needs a border
665 * XplatUIX11.cs(DeriveWindowStyles): Updated to match fixed Form
668 - MaximizeBox, MinimizeBox: Recreate the handle when setting
670 - CreateParams: Reworked the styles to match MS look'n'feel,
671 removed automatic setting of MinimizeBox, MaximizeBox, etc. via
672 the WS_OVERLAPPEDWINDOW style. This fixes #76823.
674 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
676 * XplatUIX11.cs(GetWindowState): Now throwing an exception when the
677 window is not mapped, since otherwise every form that's being
678 created is considered minimized, which is wrong.
679 * Form.cs: Catching the exception and returning our internal value
682 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
684 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs: Added new driver method
685 SetWindowMinMax() to have means to tell the driver about the minimum,
686 maximum and maximized state window sizes. (Part of the fix for #76485)
688 - Implemented tracking of minimum and maximum window size, now calling
689 new SetWindowMinMax() driver method to tell the driver (Part of the
691 - Finished handling of WM_GETMINMAXINFO method, now setting all values
692 (Completes fix for #76485)
693 - Calling new SetWindowMinMax driver method when the handle for a
694 form is created, to make sure the driver knows about it even if
695 the values have been set before the window was created
696 - Now eating the WM_WINDOWPOSCHANGED message if the form is minimized
697 to avoid messing up our anchoring calculations (partial fix
699 * XplatUIStructs.cs: Added MINMAXINFO struct (moved from Win32 driver)
701 - Added _NET_WM_STATE_HIDDEN property for detecting minimized state
702 - Improved GetWindowState() to detect 'Minimized' state on Metacity
703 (and presumably other freedesktop.org compliant WMs). Left the
704 assumption unmapped=minimized, needed for SetVisible to work.
705 - Now setting the window state when creating windows
706 - Fixed SetVisible to consider/set the window state when mapping
707 a Form. We cannot set the state before it's mapped, and we cannot
708 use Form.WindowState once it's mapped (since it would ask the
709 driver and get 'normal'. Therefore, we grab the state before
710 mapping, map, and then set state.
711 - Implmemented SetWindowMinMax method; Metacity does not seem to
712 honor the ZoomHints, though.
714 - Removed MINMAXINFO (moved to XplatUIStructs)
715 - Added SetWindowMinMax stub (on Win32 the only way to set that
716 information is in response to the WM_GETMINMAXINFO message, which
717 is handled in Form.cs)
718 - Added logic to SetVisible to set the proper window state when a
719 form is made visible (fixes #75720)
721 2006-01-26 Jackson Harper <jackson@ximian.com>
723 * Control.cs (BeginInvoke): Automagically handle EventHandlers the
724 same way we handle them with Invoke.
726 2006-01-25 Peter Dennis Bartok <pbartok@novell.com>
729 - Added tracking of window state so CreateParams can return
730 the appropriate style
731 - Moved setting of WS_CAPTION style in CreateParams to allow
732 styles without caption
733 * DataGridTextBoxColumn.cs: We are now also creating the TextBox
734 control if the TextBox property is accessed. Fixes #77345
736 - get_Created: now uses is_disposed and is_created to determine
737 return value (suggested by Jackson)
738 - CreateHandle: No longer exits if the handle is being recreated
739 - RecreateHandle: If the handle is not yet created call the
740 appropriate method to create either control or handle. If the
741 control is already created CreateHandle will simply exit instead
742 of just creating the handle
743 * Hwnd.cs: Removed expose_pending tracking, no longer needed since we
744 now SendMessage WM_DESTROY directly to the control when DestroyWindow
747 - When DestroyWindow is called, instead of waiting for the
748 DestroyNotification from X11, we directly post it to the WndProc
749 and immediately dispose the hwnd object.
750 Same applies to DestroyChildWindows, and this obsoletes the
751 expose_pending tracking. Contrary to Win32 behaviour we destroy our
752 child windows before our own, to avoid X11 errors.
753 - Removed the direct sending of WM_PAINT on UpdateWindow
755 - Reworked DoEvents and GetMessage to allow access to internal queue
756 even when trying non-blocking access to the queue. Fixes #77335.
757 Based on a patch suggestion by Don Edvalson. The new private
758 GetMessage can now also be used as a backend for a PeekMessage
760 * XplatUI.cs: Improved debug output for CreateWindow
762 2006-01-25 Jackson Harper <jackson@ximian.com>
764 * Help.cs: Allow param to be null. Patch by Don Edvalson.
766 2006-01-24 Jackson Harper <jackson@ximian.com>
768 * ComboBox.cs: Clamp the max value set for the vertical scrollbar
769 when we have a MaxDropItems lower then the selected index.
771 2006-01-24 Jackson Harper <jackson@ximian.com>
773 * Control.cs: Don't allow selection of non visible controls, allow
774 selection of controls without parents.
776 2006-01-24 Jordi Mas i Hernandez <jordimash@gmail.com>
778 * ThemeWin32Classic.cs: Fixes Datagrid drawing issues
779 * DataGridDrawingLogic.cs: Add editing row only when is necessary
781 2006-01-23 Jackson Harper <jackson@ximian.com>
783 * UpDownBase.cs: Make the textbox handle all the selection and
784 tabbing. This fixes tabing to updown controls.
786 2006-01-24 Jordi Mas i Hernandez <jordimash@gmail.com>
788 * TextBoxBase.cs: fixes exception thown the object was null
790 2006-01-23 Jackson Harper <jackson@ximian.com>
792 * ButtonBase.cs: Just use the base CreateParams. They set
793 visibility and enabled correctly.
796 * MonthCalendar.cs: Lets let the base set as much of the
797 createparams as possible so we don't have duplicate code all over
800 2006-01-22 Alexander Olk <alex.olk@googlemail.com>
802 * ThemeGtk.cs: Added TrackBar and some experimental code to
803 get double buffering back
805 2006-01-21 Jordi Mas i Hernandez <jordimash@gmail.com>
807 * DataGrid.cs: Allows row number set internally higher than the last
808 when creating a new row. Restores the editing functionality.
810 2006-01-20 Mike Kestner <mkestner@novell.com>
812 * MimeIcon.cs: delay Image creation until the icons are accessed
813 instead of creating 190 scaled images on GnomeHandler startup.
815 2006-01-19 Peter Dennis Bartok <pbartok@novell.com>
817 * TextBoxBase.cs (WndProc): When handling WM_KEYDOWN we need to
818 first call base before processing the event. Fixes #77279
820 2006-01-19 Peter Dennis Bartok <pbartok@novell.com>
822 * XplatUIWin32.cs, Cursor.cs: Fixed code that wrongly assumed
823 that the stride for the GDI bitmap would match the stride of
826 2006-01-19 Alexander Olk <alex.olk@googlemail.com>
828 * ThemeGtk.cs: Added ProgressBar, RadioButton, CheckBox
830 2006-01-19 Jackson Harper <jackson@ximian.com>
832 * ComboBox.cs: Hookup the text controls keydown event so we get
833 those when the text control has the focus.
835 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
837 * Label.cs: Now using the base events instead of defining new ones;
838 this allows us to just call the base properties without having to
839 duplicate all base property logic
841 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
843 * Label.cs: A label by default is not a tabstop (Fixes one of our
846 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
848 * XplatUIWin32.cs: Fixed wrong DoEvents logic. Fixes #77282
849 * XplatUIX11.cs: Removed WM_PAINT check from DoEvents. Fixes #77282
851 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
853 * Cursor.cs: Reimplemented creating cursor bitmaps without using
854 the Bitmap(Stream) constructor which is semi-broken on MS GDI+.
857 - Reimplemented creating Bitmaps from DIBs since the Bitmap(Stream)
858 constructor creates images that can't be saved. Part of the fix
860 - Added handling of CF_BITMAP as CF_DIB to clipboard code (Fixes #76103)
861 - SetWindowState: Switched ShowWindow flags (part of an upcoming
862 bug fix for handling window state in forms properly)
864 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
866 * ThemeGtk.cs: Simplify ScrollBar drawing
868 2006-01-18 Jackson Harper <jackson@ximian.com>
870 * Splitter.cs: Set the default dock style for the splitter control
873 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
875 * ThemeGtk.cs: Corrected StateType and ShadowType for
878 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
880 * Control.cs: Make use of Theme.DoubleBufferingSupported
882 - Added drawing for flat style buttons
883 - Added ScrollBar drawing
885 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
887 * ThemeClearlooks.cs: Removed some unneeded code.
888 * ThemeGtk.cs: First part of ThemeGtk enhancements.
890 2006-01-17 Peter Dennis Bartok <pbartok@novell.com>
892 * LinkLabel.cs: We need to update the hover drawing when
893 leaving the control as well.
895 2006-01-18 Jordi Mas i Hernandez <jordimash@gmail.com>
897 * DataGrid.cs: Clicking on non empty areas in the columns
898 area was giving an exception
900 2006-01-17 Jackson Harper <jackson@ximian.com>
902 * ThemeWin32Classic.cs:
903 * ListView.cs: Do not draw/clip the headers when the header style
906 2006-01-17 Jordi Mas i Hernandez <jordimash@gmail.com>
908 * DataGrid.cs: Fixes 77260
910 2006-01-17 Jordi Mas i Hernandez <jordimash@gmail.com>
912 * DataGrid.cs: Clicking on a column on a empty grid was giving
915 2006-01-17 Peter Dennis Bartok <pbartok@novell.com>
917 * DataGrid.cs (OnKeyDown): Don't use the array if it's empty
918 or any keypress will crash the grid.
920 2006-01-17 Mike Kestner <mkestner@novell.com>
922 * MainMenu.cs (OnMenuChanged): set Height=0 to cause relayout.
923 * ThemeWin32Classic.cs (CalcItemSize): clear Height/Width for
924 invisible/previously-visible items.
927 2006-01-17 Alexander Olk <alex.olk@googlemail.com>
929 * ThemeClearlooks.cs:
930 - Added CL_Draw_Button method; now other theme controls that are
931 not derived from button or do not have a button can draw buttons
933 - Updated ComboBox drawing
934 - Beautified RadioButton drawing
935 - Corrected drawing of bottom and left tabs
936 - Beautified DateTimePicker and MonthCalendar
937 - Added CPDrawButton and CPDrawRadioButton
939 2006-01-16 Jackson Harper <jackson@ximian.com>
941 * ComboBox.cs: Set the initial value of the scrollbar to the
942 current index. Reduce the numbers of refreshs and IndexOfs called.
944 2006-01-14 Alexander Olk <alex.olk@googlemail.com>
946 * FileDialog.cs: When the file listview is focused hitting the
947 backspace key moves the fileview to the parent directory
949 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
952 - Added RecreateHandle call when changing taskbar visibility to
953 trigger reparenting in Win32 driver (Fixes #75719)
954 - If a window has minimize or maximize buttons, it cannot have
957 - CreateWindow: When no WS_EX_APPWINDOW style is found we parent
958 the toplevel form with FosterParent (A toolwindow not on the
959 taskbar) (Fixes #75719)
960 - Made FosterParent a toolwindow
962 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
964 * FileDialog.cs: Don't crash if InitialDirectory doesn't exist
966 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
968 * ToolTip.cs: If SetToolTip is called from a control and the mouse
969 is currently over that control, make sure that tooltip_window.Text
972 2006-01-13 Mike Kestner <mkestner@novell.com>
974 * MimeIcon.cs: size_t on lp64 fix for gdk_pixbuf_save_to_file extern.
976 2006-01-13 Jackson Harper <jackson@ximian.com>
978 * TreeView.cs: On MS GetNodeAt never actually factors in the X
979 value passed. Also redraw the selected node when we recieve
980 focus, so tabbing between trees works correctly.
982 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
984 * MimeIcon.cs: GnomeHandler: older gnome versions don't have
985 ~/.gconf/%gconf-tree.xml, so use
986 .gconf/desktop/gnome/interface/%gconf.xml
988 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
990 * TextControl.cs: Draw text in gray if control is disabled
992 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
994 * TreeView.cs: Draw the focus rectangle outside the highlight, to
995 make sure it's always visible. Fixes #76680.
997 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
999 * TreeView.cs: Implemented Wheel scrolling. Fixes #76531
1001 2006-01-13 Jonathan Chambers <jonathan.chambers@ansys.com>
1003 * PageSetupDialog.cs: Added.
1004 * PrintDialog.cs: Attributes.
1005 * PrintPreviewControl.cs: Updates.
1006 * PrintPreviewDialog.cs: Updates.
1008 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1010 * Control.cs: Undid my selection check fix, since it's not needed
1012 - Now considering the presence of hscroll/vscroll when sizing
1013 vscroll/hscroll respectively. Fixed bug #77077
1014 - Added Left/Up/Down/Right to IsInputKey list to prevent
1015 ContainerControl from stealing them. This fixes what I broke
1016 with my last checkin.
1018 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1020 * ScrollableControl.cs: Implemented dockpadding. Fixes #77166. And
1021 I finally understand how the property can be set without a setter :-)
1023 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1026 - Switched RunLoop to use static Message.Create to create a
1028 - Added PreProcessMessage call in runloop for keyboard events; this
1029 is part of the fix for #77219, I overlooked this originally in the
1030 MSDN doc for PreProcessMessage
1032 - Removed call to PreProcessMessage from handling of keyboard
1033 messages; it's supposed to be done in the message pump
1034 - Moved call to ProcessKeyEventArgs inside ProcessKeyMessage as
1035 per MSDN documentation.
1036 - IsInputChar: All chars are input chars by default; removed the
1037 parent calling chain, MS does not document that
1038 - PreProcessMessage: If IsInputChar is true, we want to return false
1039 to allow dispatching of the message
1040 - When selecting the next control, now also check that we're not
1041 selecting ourselves again and therefore return a false positive.
1043 - Tried to match return values for IsInputKey and ProcessDialogKey
1044 to what MS returns; moved processing of our special keys outside
1045 ProcessDialogKey since MS does not seem to return true on those.
1046 - Moved code that previously was in ProcessDialogKey into new private
1047 ProcessKey method, which gets called upon receipt of WM_KEYDOWN
1048 - Reworked handling of WM_CHAR to not have to duplicate code from
1049 Control.cs anymore, instead we simply call down to base.
1051 2006-01-12 Jackson Harper <jackson@ximian.com>
1053 * ComboBox.cs: We always need to refresh the text area when
1054 EndUpdate is called. Fixes the combobox in the file dialog.
1055 * Control.cs: Don't create the creator_thread until the controls
1056 handle is created. Also in InvokeRequired we check if the
1057 creator_thread is null. This gives the effect of InvokeRequired
1058 returning true if the controls handle is not created yet, and
1061 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1064 - Added StartLoop() driver method. This is used to allow drivers to
1065 prepare for an upcoming GetMessage/TranslateMessage/DispatchMessage
1066 loop for a particular thread
1067 - Added EndLoop() driver method. This is called once the message
1068 pump for the thread is shut down
1069 - Added SupportsTransparency method to allow the driver to indicate
1070 opacity support for windows
1072 - Removed TODO attribute, completed AllowTransparency property
1073 - Added documented logic to Opacity
1074 * GroupBox.cs, Label.cs, LinkLabel.cs, PropertyGrid.cs, Control.cs,
1075 ButtonBase.cs, CheckedListBox.cs: Combined Jackson's and Miguel's
1076 versions of CompatibleTextRendering
1077 * X11Structs.cs: Added opacity atom to our atom enumeration
1078 * Hwnd.cs: Added opacity tracking (we need to track since the opacity
1079 of a form might be set before it's reparented by the WM, and we need
1080 the opacity value without calling up to Form)
1081 * XplatUIDriver.cs: Added StartLoop(), EndLoop() and
1082 SupportsTransparency() driver methods
1083 * Application.cs: Now calling StartLoop and EndLoop driver methods
1085 - Added opacity atom registration
1086 - Added StartLoop()/EndLoop() methods. They're empty right now but
1087 will need to get implemented when we switch to a per-thread queue
1088 - Implemented SupportsTransparency() method
1089 - Implemented SetWindowTransparency() method
1090 - Added support for setting the opacity value when a window is
1091 reparented (since the opacity needs to be set on the WM frame)
1092 * XplatUIOSX.cs, XplatUIWin32.cs:
1093 - Added SupportsTransparency(), StartLoop() and EndLoop() methods
1095 2006-01-12 Alexander Olk <alex.olk@googlemail.com>
1097 * ThemeClearlooks.cs: Don't crash if TabControl.Parent is null.
1099 2006-01-12 Alexander Olk <alex.olk@googlemail.com>
1101 * FileDialog.cs: Added ToolTip for MWFFileView
1102 * MimeIcon.cs: Rewrote GnomeHandler.
1103 - Get currently used gnome icon theme from
1104 ($HOME)/.gconf/%gconf-tree.xml
1105 - Make use of inherited icon themes
1106 - Support SVG icon themes like Tango via librsvg
1108 2006-01-12 Miguel de Icaza <miguel@novell.com>
1110 Revert's Jackson's revert which broke 2.0 builds. Fix both
1113 * Application.cs: Move the use_compatible_text_rendering outside
1114 the NET_2_0 define. If we ever need to use the
1115 use_compatible_text_rendering on the individual controls they will
1116 access the variable from the common shared code paths.
1118 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1121 - Added more granular debug options
1122 - Added method to print both window text and id
1123 - Switched debug output to use new Window() debug method
1124 - Added IsEnabled() driver method
1125 - Added EnableWindow() driver method
1127 - Removed end_modal; no longer needed, new loop handles termination
1128 via 'closing' variable
1129 - If form is modal, setting DialogResult will now initiate loop
1130 termination via 'closing' variable
1131 - Added support for is_enabled/WS_DISABLED to CreateParams
1132 - Close() now just send the WM_CLOSE message; the WM_CLOSE handler
1134 - Removed code that's now in RunLoop from ShowDialog()
1135 - Added various documented sanity checks to ShowDialog()
1136 - Added handling of WM_DESTROY message; we set 'closing' on getting
1137 the message to indicate the message pump to terminate
1138 - Added handling of new internal WM_CLOSE_INTERNAL message - it's
1139 send by the Application.ExitThread method. (We send the message
1140 to destroy the window after all other events have been
1141 processed through the queue, instead of destroying the handle
1143 - Moved code from Close() method to WM_CLOSE handler; added logic
1144 to only send close-related events if the form is not displayed
1146 * Splitter.cs (..ctor): Fixed typo in resource name
1148 - DrawBackgroundImage: Explicitly selecting the wrap mode for the
1150 - set_Cursor: Now only setting calling into XplatUI if the handle for
1151 the control is already created; this avoids implict handle creation
1152 or crashes if it's not created
1153 - set_Enabled: Now setting the enabled state via the new driver method
1154 instead of just tracking it
1155 - CreateParams: Added logic to set WS_DISABLED based on enabled state
1156 - CreateControl: Reordered event firing and method calls to more
1157 closely fire events in the order MS does. Now setting the
1158 enabled state in the driver when creating the control.
1159 - SetVisibleCore: Moved when the OnVisibleChanged event is fired to
1161 * FolderBrowserDialog.cs, MessageBox.cs, ButtonBase.cs, TrackBar.cs,
1162 MonthCalendar.cs: get_CreateParams: Added setting of WS_DISABLED
1163 * XplatUIStructs.cs: Added internal WM_CLOSE_INTERNAL mesage id
1165 - Added tracking of window enabled state (get_Enabled/set_Enabled)
1166 - Added EnabledHwnd property to easily allow a driver to find the
1167 handle of the first enabled window in the parent chain (this is
1168 used by drivers to pass up input events of disabled windows)
1169 * XplatUIDriver.cs: Added IsEnabled() method
1171 - Removed crude and obsolete exiting tracking variable
1172 - Removed internal ModalRun(); replaced by RunLoop()
1173 - Implemented private CloseForms() method to allow closing all
1174 windows owned by a particular (or all) threads
1175 - Exit() now properly closes all windows without forcing the message
1177 - Removed obsolete InternalExit() method
1178 - Changed Run() methods to use new RunLoop() message pump
1179 - Implemented new RunLoop() method for both modal and non-modal forms
1181 - get_CreateParams: Added setting of WS_DISABLED
1182 - Simplified ShowDialog(); now all the work is done in RunLoop(),
1183 invoked via Form.ShowDialog()
1184 * NativeWindow.cs: We don't remove the window from the collection when
1185 the handle is destroyed; there might still be messages for it in the
1186 queue (mainly the resulting WM_DESTROY); instead it will be removed
1187 when Control calls InvalidateHandle in the WM_DESTROY handler
1189 - CreateWindow: Added logic to handle the WS_DISABLED window style
1190 - EnableWindow: Implemented based on Hwnd.Enabled
1191 - GetMessage: Reset PostQuitState so the method can be called again
1192 - Implemented support for disabled windows (passing messages to the
1193 first enabled parent) in handling all input messages
1194 - Added optimizations for handling Expose events
1195 - Implemeted new driver method IsEnabled()
1196 - Now always resetting paint pending tracking vars when we start paint
1197 - Re-implemented UpdateWindow via just sending a WM_PAINT message
1198 * XplatUIOSX.cs: Added IsEnabled method stub
1199 * XplatUIWin32.cs: Implemented new IsEnabled() method
1201 2006-01-11 Jackson Harper <jackson@ximian.com>
1203 * ButtonBase.cs, CheckedListBox.cs, GroupBox.cs, Label.cs,
1204 LinkLabel.cs, PropertyGrid.cs: Unbreak 1.1 build. Consolidate the
1206 * ColorDialog.cs: Clear out the old form before adding the new
1209 2006-01-11 Jackson Harper <jackson@ximian.com>
1211 * X11Dnd.cs: Make sure to add all the text formats when adding
1212 strings to the data object.
1213 * TreeNodeCollection.cs: When adding to a sorted tree we need to
1214 do some redrawing too. Also change the UpdateNode to an
1215 UpdateBelow so the newly added node gets painted.
1217 2006-01-11 Miguel de Icaza <miguel@novell.com>
1219 * ButtonBase.cs, CheckedListBox.cs, GroupBox.cs, Label.cs,
1220 LinkLabel.cs, PropertyGrid.cs: Implement the
1221 UseCompatibleTextRendering property for 2.x
1223 * Application.cs (SetCompatibleTextRenderingDefault): Add.
1225 2006-01-11 Jackson Harper <jackson@ximian.com>
1227 * TreeView.cs: Use the property for setting the selected node so
1228 the correct events get raised.
1229 * TreeNode.cs: Update the tree when the fore/back colours of a
1232 2006-01-10 Jackson Harper <jackson@ximian.com>
1234 * TreeView.cs: Allow setting SelectedNode to null.
1236 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1238 * Form.cs: Fix support for Form TransparencyKey and Opacity on Windows.
1240 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1242 * PrintControllerWithStatusDialog.cs: Update page number in dialog.
1244 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1246 * PrintDialog.cs: Added attributes and set default property values.
1248 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1250 * PrintControllerWithStatusDialog.cs:
1251 Added PrintControllerWithStatusDialog.
1253 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1255 * XplatUI.cs, Form.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs,
1256 XplatUIWin32.cs: Added support for Form TransparencyKey and Opacity on Windows.
1258 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
1260 * ComboBox.cs: Fix crash when there is no selected item (due to last commit)
1262 2006-01-09 Jonathan Chambers <jonathan.chambers@ansys.com>
1264 * ComboBox.cs: Added KeyDown event handler for processing arrow keys
1265 and PgUp/PgDown. Also, scroll to selected item upon dropdown. Bugs 76857 and 76788.
1267 2006-01-08 Alexander Olk <alex.olk@googlemail.com>
1269 * MimeIcon.cs: Added internal class SVGUtil.
1271 2006-01-08 Alexander Olk <alex.olk@googlemail.com>
1273 * FileDialog.cs: Don't crash if there are two files with the
1274 same name but different locations.
1276 2006-01-08 John BouAntoun <jba-mono@optusnet.com.au>
1278 * MonthCalendar.cs: Fixed annoying rendering bug when selecting
1279 dates across multiple month grids. Used to not highlight entire
1280 month, but does now.
1282 2006-01-06 Jackson Harper <jackson@ximian.com>
1284 * MonthCalendar.cs: Removed DoEvents call to prevent a running
1285 message loop. Change timer intervals to numbers that seem more
1288 2006-01-06 John BouAntoun <jba-mono@optusnet.com.au>
1290 * DateTimePicker.cs: Modified CalculateDropDownLocation to use the screen
1291 object for location info since screen object is now implemented.
1293 2006-01-05 Jackson Harper <jackson@ximian.com>
1295 * AsyncMethodData.cs: Check if the call is complete before doing a WaitOne
1296 * AsyncMethodResult.cs: We no longer use a WeakReference for the
1297 AsyncMethodResult, this is because we ALWAYS want the
1298 ManualResetEvent to get set.
1299 * Control.cs: When disposing use an async invoke to call shutdown
1300 code, so that thigns don't block on the finalizer thread. Also
1301 check if we even have a message loop before trying to send
1302 messages, if we don't then don't bother sending messages.
1303 - No more weak references for async methods
1304 * XplatUIDriver.cs: No more weak references for async methods.
1306 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
1308 * FontDialog.cs: Fix, don't throw an exception if FontFamily.Families
1309 returns two FontFamily with the same name
1311 2006-01-04 Peter Dennis Bartok <pbartok@novell.com>
1313 * ThemeWin32Classic.cs, ThemeClearlooks.cs: Dropped stupid scheme of
1314 drawing disabled text. Instead using the ColorGrayText color
1316 2006-01-04 Jackson Harper <jackson@ximian.com>
1318 * TreeNode.cs: redraw the node when its image index is changed.
1320 2006-01-04 Peter Dennis Bartok <pbartok@novell.com>
1322 * RichTextBox.cs: Same fix as last, just for SelectionColor. This
1323 time I checked there are no others like it.
1325 2006-01-04 Jackson Harper <jackson@ximian.com>
1327 * AsyncMethodResult.cs: Use a ManualResetEvent instead of a mutex,
1328 this gives the behavoir I was looking for.
1329 * Control.cs: Special case Invoking EventHandlers, this matches MS
1330 and fixes part of bug #76326.
1332 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
1334 * ThemeClearlooks.cs, FileDialog.cs:
1335 - Reflect the latest Theme class changes
1336 - Remove Mono.Unix.Syscall.time in FileDialg and replace it
1339 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
1341 * Theme.cs: Cache UI resource images and resize them if needed
1343 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
1345 * RichTextBox.cs: FormatText is 1-based, make it so when SelectionFont
1346 is called. This fixes the crash in Nexxia when setting the font
1347 attributes in the chat. [However, RTF needs a look-over to make sure
1348 that all SelectionXXX methods handle the special case that selection
1349 is empty and therefore the change must be applied to all text starting
1350 at the cursor/selection start]
1352 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
1354 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
1355 XplatUIOSX.cs: Added SendMessage and PostMessage methods
1356 * X11Keyboard.cs: Switched to new way of calling PostMessage
1358 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
1360 * Theme.cs: Added theme interface for images to allow the theme to
1361 control what images are used for things like FileDialog, MessageBox
1363 * MessageBox.cs: Now uses the new Theme icon/image interfaces
1365 2006-01-03 Alexander Olk <alex.olk@googlemail.com>
1368 - Removed some dead code
1369 - Opening a recently used file does work now
1370 - Small UI enhancements
1373 2006-01-02 Alexander Olk <alex.olk@googlemail.com>
1375 * FileDialog.cs: Forgot too add __MonoCS__
1377 2006-01-02 Alexander Olk <alex.olk@googlemail.com>
1379 * FileDialog.cs: We are able to read recently used files now let's
1380 go on and write them.
1382 2006-01-01 Alexander Olk <alex.olk@googlemail.com>
1384 * FileDialog.cs: Breathe some life into "last open"/"recently used"
1386 * MimeIcon.cs: Do a check for the top level media type also
1388 2005-12-31 Alexander Olk <alex.olk@googlemail.com>
1390 * ThemeClearlooks.cs:
1391 - Added CPDrawStringDisabled
1392 - ButtonBase_DrawText: Workaround for a DrawString bug; cut off
1393 some chars if the text doesn't fit into text_rect
1394 - DrawListViewItem: If View = View.LargeIcon center the image;
1395 rewrote the drawing of ListViewItem.Text if View =
1398 2005-12-31 Alexander Olk <alex.olk@googlemail.com>
1400 * MimeIcon.cs: Use default KDE icon theme if there is no
1401 "48x48" directory for the current icon theme, fixes #77114
1402 * Mime.cs: Disable not working and actually not used code.
1403 * ThemeWin32Classic.cs:
1404 - Replace "new SolidBrush" in GetControlBackBrush and
1405 GetControlForeBrush with ResPool.GetSolidBrush
1406 - Changed DrawListViewItem from private to protected virtual
1408 - Added form.MaximizeBox = true
1409 - Don't throw an exception if there is a broken symbolic link
1411 2005-12-23 Jackson Harper <jackson@ximian.com>
1413 * TabControl.cs: Give the panels focus, keyboard navigation is
1414 fixed so this works correctly now.
1415 - We need these key events also.
1416 * ToolBar.cs: Remove some of the poor mans double buffering.
1418 2005-12-24 Alexander Olk <alex.olk@googlemail.com>
1420 * ComboBox.cs: The internal TextBox now returns the focus.
1422 2005-12-23 Jackson Harper <jackson@ximian.com>
1424 * ThemeWin32Classic.cs: Draw the text for all tab appearances.
1426 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
1428 * Control.cs: Removed debug code
1429 * XplatUIX11.cs: Changed DestroyChildWindows to also consider
1432 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
1434 * Control.cs: When creating the control, update the Z-order after
1435 all it's children are created, too. (Fixes nexxia not showing
1438 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
1440 * Control.cs: Do not update the anchoring distances if layout is
1441 suspended, instead do it once layout is resumed
1443 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
1446 - After many hours of debugging, for both Jackson and
1447 myself, it turns out that it helps to set the parent of a control
1448 if you want to actually see it onscreen. In the spirit of that
1449 discovery, we're now setting the parent of the control and
1450 it's children when the control's handle is created. This fix
1451 will make Lutz Roeder's Reflector run happily.
1452 - now just creating the handle instead of the whole control when
1453 getting a graphics context for the control.
1455 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
1457 * ScrollableControl.cs: When calculating the canvas, don't consider
1458 the scrollbar widths. Instead, predict if horizontal scrollbar
1459 will affect canvas when deciding on vertical display and vice versa.
1461 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
1463 * RichTextBox.cs: Set default RTF font for documents that don't
1464 have a font table (Fixes #77076)
1466 2005-12-22 Jackson Harper <jackson@ximian.com>
1468 * TextBoxBase.cs: It's difficult to do, but you can have an empty
1469 clipboard. This prevents a NullRef in that case.
1470 * XplatUIX11.cs: Use CLIPBOARD not PRIMARY for our
1471 clipboard. PRIMARY is for the currently selected text only. (We
1472 should implement PRIMARY at some point.
1474 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
1476 * XplatUIWin32.cs: Fixed the TEXTMETRIC structure, we were calling
1477 a Unicode function with a structure that was defined in Ansi way.
1480 2005-12-21 Jackson Harper <jackson@ximian.com>
1482 * StatusBar.cs: Statusbar handles its fore/back colours on it's
1483 on. Because thats how it rolls. (and this avoids it using ambient
1485 * ThemeWin32Classic.cs: Use the proper back color for filling.
1486 * Menu.cs: Use the system menu bar color for drawing menu
1487 bars. Using the window back color will bring ambient colours into
1490 2005-12-21 Alexander Olk <alex.olk@googlemail.com>
1492 * ColorDialog.cs: Fixed a memory leak that caused a SIGSEV. A lot of
1493 Bitmaps were created and not disposed.
1495 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
1497 * Control.cs (CreateControl): Don't do anything if the control is
1498 already created, otherwise we'd fire the OnCreated event more than
1501 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
1503 * ComboBox.cs (FindStringCaseInsensitive): Don't search for emtpy strings,
1504 will always match. Instead return -1. Fixes #76464.
1506 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
1508 * TextControl.cs (RecalculateLine): Only wrap if the wrap point is
1509 neither the beginning nor the end of the line (Fixes bug #76479)
1511 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
1514 - ControlNativeWindow.ControlFromHandle(): Now handling situation
1515 where handle is invalid
1516 - FromHandle(): Now using hashtable-based ControlFromHandle() lookup
1517 instead of slower linear search
1518 * NativeWindow.cs: Don't remove the window from the hashtable until
1519 after the driver has destroyed it (since the driver might use
1520 Control.FromHandle to lookup the control object
1521 * Hwnd.cs: Added DestroyPending property to track if a window is
1522 already destroyed as far as the driver is concerned and only hasn't
1523 yet notified the control
1525 - Activate(): Check if the window is still valid before using the
1527 - Implemented DestroyChildWindow() method to mark child windows as
1528 destroyed when a window is destroyed. This prevents situations
1529 where we might call an X method based on queued events for a
1530 window that already has been destroyed but we haven't yet pulled
1531 the destroy method from the queue.
1532 - Added a call to the new DestroyChildWindow() method to the drivers
1533 DestroyWindow code. Also now marking the destroyed window itself
1536 2005-12-20 Jackson Harper <jackson@ximian.com>
1539 * StatusBarPanel.cs: Don't calculate panel sizes on draw
1540 anymore. Just do them when needed, also track the rects of panels
1541 so that we can optimize refreshing more in the future.
1543 2005-12-20 Alexander Olk <alex.olk@googlemail.com>
1545 * ColorDialog.cs: Fixed focus drawing in small color controls
1547 2005-12-19 Jackson Harper <jackson@ximian.com>
1549 * InternalWindowManager.cs:
1550 * MdiWindowManager.cs: Cleanup some coordinate system changes so
1551 moving windows works properly.
1553 2005-12-19 Peter Dennis Bartok <pbartok@novell.com>
1556 - Removed call to InitLayout() from SetBoundsCore(); doc says
1557 it's only called when a control is added to a container
1558 - Split InitLayout logic, moved to separate UpdateDistances() method
1559 since we need to perform those calculations more often than just
1560 when adding the control to a container. (Needed to fix #77022)
1561 - Now calling UpdateDistances() from UpdateBounds() (fixes #77022)
1562 - Reduced the OnBindingContextChanged events count, don't send them
1563 unless the control is created, we still aren't totally matching
1564 MS, but I can't quite figure out some of their rules
1566 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
1568 * ThemeClearlooks.cs: Corrected distance between ProgressBar
1571 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
1573 * ThemeClearlooks.cs:
1574 - Updated ProgressBar drawing
1575 - Corrected drawing of ScrollBars and scroll buttons
1576 - Some temporary fixes for minor pixel artefacts
1578 2005-12-18 Peter Dennis Bartok <pbartok@novell.com>
1581 - Reworked Controls.Add(), Controls.Remove() and set_Parent() to
1582 cause events to be sent in the same order as MS does.
1583 - Added ChangeParent() method to trigger various OnXXXChanged events
1584 that need to be fired when a parent changes (This is a reworking
1585 of the patch from r54254, with the X11 errors fixed)
1586 - Removed SuspendLayout()/ResumeLayout() calls from Controls.Clear()
1587 since on MS we get OnLayoutChanged events when calling Clear()
1588 - Changed Enabled property to consider parent state as well, if a
1589 parent is not enabled, the control will not be either
1590 - Changed Parent property to simply call Controls.Add() since that
1591 now does all the work required, this way we avoid code duplication
1592 - Threw in a few OnBindingsContextChanged calls to try and match
1593 when MS sends them. We seem to send a few too many, though.
1594 - Added call to CreateControl when adding the control to a parent.
1595 We were never calling CreateControl. Still needs some work, in
1596 some places we treat HandleCreated and ControlCreated as equal,
1598 - Removed obsolete commented out code from UpdateZOrder()
1600 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
1602 * ThemeClearlooks.cs: Updated TrackBar drawing.
1604 2005-12-17 Alexander Olk <alex.olk@googlemail.com>
1606 * FileDialog.cs: Patch for #76901 by Atsushi Enomoto
1608 2005-12-17 Alexander Olk <alex.olk@googlemail.com>
1610 * FileDialog.cs: Add the Help button and the open readonly
1611 checkbox only if needed
1613 2005-12-16 Jackson Harper <jackson@ximian.com>
1615 * Control.cs: Make sure we have an active menu before trying to
1616 process commands on it. Prevents menu-less forms from crashing
1617 when Alt is pressed.
1618 * TreeNodeCollection.cs: Some fixes to prevent null refs. Patch by
1620 * RichTextBox.cs: Expand statement to help out gmcs and fix the
1623 2005-12-16 Jackson Harper <jackson@ximian.com>
1625 * InternalWindowManager.cs: Don't translate tool windows screen
1626 coordinates. This fixes windows 'bouncing' around when being moved.
1628 2005-12-15 Peter Dennis Bartok <pbartok@novell.com>
1631 - MaxLength now treats 2^31-1 equal to unlimited length (this is
1632 not quite MS compatible, MS uses that number only for single line
1633 and 2^32-1 for multi-line, but I figure it won't hurt keeping
1635 - Now enforcing the MaxLength limit when entering characters
1636 - Added argument to internal Paste() method to track if it's called
1637 from programatically or via keyboard, since keyboard driven pastes
1638 need to enforce max-length
1639 - Added logic to Paste to only paste as many chars as MaxLength
1641 * RichTextBox.cs: Updated to use new obey argument for internal Paste()
1643 - Added Length property to return number of characters in document
1644 - Added private CharCount property which only tracks actual chars
1645 in the document (no linefeeds) and fires event when CharCount
1647 - Added tracking of character count to all methods that alter it
1648 - Added LengthChanged event to allow applications to subscribe
1649 to any changes to the document
1651 2005-12-15 Peter Dennis Bartok <pbartok@novell.com>
1654 - Removed local password_char field (moved to TextBoxBase)
1655 - Now setting the document's password var when password is
1658 - Added password_char field (needed here so MultiLine can
1660 - Added logic to MultiLine property setter to set the document's
1661 variable when password display is allowed
1662 - Removed debug code and made some debug code conditional
1664 - Added RecalculatePasswordLine() method to handle special password
1666 - Added PasswordChar property, also added related tracking vars
1667 - Draw() method now uses local text var for grabbing text to draw,
1668 this var is set to line.text unless we're doing password display,
1669 then it is set to the pre-generated all-password-chars line
1670 - Added calling RecalculatePasswordLine() method for password lines
1672 2005-12-14 Peter Dennis Bartok <pbartok@novell.com>
1675 - Added Reparented property to allow tracking of Window Manager
1676 reparenting actions (which affect X/Y calculations of toplevel
1678 - Made ToString() print window handles in hex
1680 - AddConfigureNotify(): Now uses reparented state off Hwnd to
1681 determine if X/Y needs offsetting
1682 - AddConfigureNotify(): Fixed offset calculations
1683 - Now adds ReparentNotify messages into the queue
1684 - Now processes ReparentNotify messages and causes a
1685 WM_WINDOWPOSCHANGED message to be sent upstream if a window
1686 is reparented (as most likely it's X/Y coordinates are changed
1689 2005-12-14 Jackson Harper <jackson@ximian.com>
1691 * XplatUIX11.cs: Tool windows still need to respek focus.
1693 2005-12-14 Peter Dennis Bartok <pbartok@novell.com>
1695 * Control.cs: Undid 54254 (causing XConfigure errors) so we can
1696 have a working release
1698 2005-12-13 Jackson Harper <jackson@ximian.com>
1700 * Form.cs: Update styles after setting the border style regardless
1701 of whether or not the window is using a window manager.
1703 2005-12-13 Jackson Harper <jackson@ximian.com>
1705 * Form.cs: We now hook into an internal window manager instead of just an
1706 MDI subsystem, this is so we can have properly behaving tool windows.
1707 * MdiClient.cs: Naming change, MdiChildContext is now WindowManager
1708 * InternalWindowManager.cs: New internal class that acts as a
1709 window manager for tool windows and as a base for mdi windows.
1710 * MdiWindowManager.cs: New class that acts as a window manager for
1713 2005-12-12 Jackson Harper <jackson@ximian.com>
1715 * Control.cs: Updates so we match behavoir for for implicit
1716 controls. Fixes explosions in MDI.
1718 2005-12-12 Jackson Harper <jackson@ximian.com>
1720 * Control.cs: Implement Invalidate (Region).
1722 2005-12-12 Peter Dennis Bartok <pbartok@novell.com>
1725 - Changed handling of Controls.Add/Controls.Remove to fire (almost)
1726 the same events as MS does. MS fires events for each property
1727 except, for unknown reasons, Cursor, when the control is reparented.
1728 I can't seem to totally match add/remove since MS also fires some
1729 VisibleChanged events, which makes no sense. Consolidated the
1730 parenting code into a separate method so it can be called from
1731 both Add and Remove. set_Parent no longer needs any special logic
1732 as it calls the parent's add method which implicitly fires
1734 - Removed some obsolete code and debug output
1735 - Enabled state is inherited from parents, if this is enabled
1737 2005-12-08 Peter Dennis Bartok <pbartok@novell.com>
1739 * Form.cs: Removed commented out code
1741 2005-12-08 Peter Dennis Bartok <pbartok@novell.com>
1744 - Added internal version of Invoke, with additional argument
1745 indicating if we're calling it from a Dispose() handler. That
1746 way we can avoid BeginInvoke throwing an exception if we're
1747 calling for an already destroyed window.
1748 - Added a dispose argument to BeginInvokeInternal, and made the
1749 check if a valid window handle chain exists conditional on
1750 it not being a dispose call
1751 - Removed code in DestroyHandle to destroy our children. Since we
1752 now handle the WM_DESTROY message we will catch all our children
1754 - Now calling OnHandleDestroyed from our new WM_DESTROY handler
1756 - Added a field to track the application context of the form.
1757 - No need to set closing variable as response to WM_CLOSE, instead
1758 we destroy the window. We also call PostQuitMessage if the form
1759 has an application context (which makes it the main app form,
1760 which, when closed terminates the app)
1762 - Dropped Exit() method, it's naming was confusing
1763 - Added PostQuitMessage() which causes GetMessage to return false
1764 once the message queue is empty
1765 * XplatUIDriver.cs, XplatUIWin32.cs: Dropped Exit(), added
1767 * XplatUIOSX.cs: Switched signature for Exit method since Exit() is
1768 no longer a valid XplatUI method, but left it in since it's used
1769 internally. Added empty PostQuitMessage() method.
1770 * MenuAPI.cs: Replaced call to Exit() with call to
1771 PostQuitMessage, even though this is probably no longer needed.
1772 * Hwnd.cs: Added 'pretty' ToString() to support debugging.
1773 * X11Structs.cs: Added pretty XEvent.ToString() to support debugging.
1775 - Replaced call to XplatUI.Exit() with PostQuitMessage()
1776 - Removed old debug code that would call XplatUI for exception
1777 display, enabled standard exception handling (Still not enabled
1778 though, until NativeWindow's ExternalExceptionHandler define
1781 - Added internal method to allow control to update NativeWindow
1782 after a window has been destroyed
1783 - Added handling of already destroyed windows when calling i
1785 - Added removal of handle from list on ReleaseHandle
1787 - Dropped GetMessageResult var and related code
1788 - Added PostQuitState to field to track if PostQuitMessage has been
1790 - Dropped Exit() method
1791 - Added PostQuitMessage() method
1792 - GetMessage now will return false if PostQuitState is set and no
1793 more messages are in the queue.
1794 - Expose handler will no longer generate WM_PAINT messages if we are
1795 in PostQuitState since it's very likely any windows have already
1796 been destroyed, and since Hwnd won't get updated until we have
1797 processed the DestroyNotify we'd be causing X errors.
1799 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
1801 * Control.cs(WndProc): Apparently I'm suffering from brain cloud.
1802 Thanks to Mike for pointing out the err of my ways.
1804 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
1806 * Control.cs(PreProcessMessage): Moved menu handling back, but
1807 after all other key handling, to match MS (who handles Menu in
1809 * Menu.cs (WndProc): Removed my brainfart
1811 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
1813 * Control.cs(PreProcessMessage): Removed special menu handling
1814 * Menu.cs (WndProc): Added handling of WM_SYSKEYUP for menu purposes.
1816 2005-12-07 Mike Kestner <mkestner@novell.com>
1818 * Control.cs : special case SYSKEYUP so that we can adjust keynav
1819 state according in tracker.
1820 * Menu.cs : promote tracker field to base class and provide a tracker
1821 lookup capability. Add/Remove shortcuts dynamically if the top menu
1822 has a tracker. Unparent items that are removed from the collection.
1823 * MenuAPI.cs : implement mnemonic, shortcut, and arrow-based keynav.
1824 * Theme*.cs: add always_show_hotkeys field to support configurability
1825 of mnemonic display. win32 doesn't show mnemonics until Alt is
1828 2005-12-07 Jackson Harper <jackson@ximian.com>
1830 * MdiChildContext.cs: Use Control.ResetCursor.
1831 * Control.cs: ResetCursor needs to set the property so that the
1832 correct XplatUI call gets made.
1834 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
1836 * Control.cs: More fixes to make our key events match MS. We
1837 were not setting the modifier state on KeyData, and we were
1838 not generating any events when Alt was pressed with a key
1839 since handling of WM_SYSxxx was missing for the OnKey methods.
1841 2005-12-07 Jackson Harper <jackson@ximian.com>
1843 * MdiChildContext.cs: reenable the sizing code.
1844 - When the mouse leaves a window reset its cursor.
1846 2005-12-07 Alexander Olk <alex.olk@googlemail.com>
1848 * ThemeClearlooks.cs: Reflect latest Hwnd changes
1850 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
1852 * Hwnd.cs: Now using the theme 3d bordersize to calculate
1853 widths of Fixed3D borders
1855 2005-12-07 Jackson Harper <jackson@ximian.com>
1857 * MdiClient.cs: Fix warnings. Earn Mike's love.
1859 2005-12-07 Alexander Olk <alex.olk@googlemail.com>
1861 * ThemeClearlooks.cs:
1862 - Adjusted mouse over button color
1863 - Added first parts of CheckBox drawing
1864 - Added correct color for selected text background
1865 - Fixed ComboBox drawing
1866 - Added CPDrawBorder3D and CPDrawBorder
1868 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
1870 * XplatUIX11.cs: Added call to XBell for AudibleAlert
1872 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
1874 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
1875 XplatUIOSX.cs: Added AudibleAlert() method to have a means to
1876 alert users via sound. We could add an enum arg with different
1877 types of alerts in the future
1879 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
1881 * Control.cs: Fix behaviour problems pointed out by Mike
1883 2005-12-05 Mike Kestner <mkestner@novell.com>
1885 * StatusBarPanel.cs: add Invalidate method and hook it into all the
1886 prop setters. Calls parent.Refresh for now, but could be maybe be
1887 optimized with an internal method on StatusBar at some point.
1890 2005-12-05 Peter Dennis Bartok <pbartok@novell.com>
1892 * RichTextBox.cs: Implemented get_SelectionColor
1894 2005-12-05 Alexander Olk <alex.olk@googlemail.com>
1896 * ThemeClearlooks.cs:
1898 - Draw black button border only if button is Form.AcceptButton
1899 - Draw correct button color for pressed RadioButton if the mouse
1900 has entered the button
1901 - Updated ProgressBar drawing!
1902 - Updated CPDrawSizeGrip drawing
1903 - Updated StatusBarPanel drawing
1905 2005-12-05 Mike Kestner <mkestner@novell.com>
1907 * Control.cs (PreProcessMessage): add Keys.Alt based on LParam value.
1908 * X11Keyboard.cs (SendKeyboardInput): formal lParam for alt mod.
1910 2005-12-04 Alexander Olk <alex.olk@googlemail.com>
1912 * ThemeClearlooks.cs: Initial check-in, activate with
1913 export MONO_THEME=clearlooks
1914 * ThemeEngine.cs: Added ThemeClearlooks
1916 2005-12-03 Mike Kestner <mkestner@novell.com>
1918 * MenuAPI.cs: deactivate menus prior to calling item.PerformClick.
1921 2005-12-02 Jackson Harper <jackson@ximian.com>
1923 * Form.cs: If the child form has no menu the default main menu is
1924 used as the active menu.
1926 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
1928 * ListBox.cs: Check if any items exist before trying to resolve
1929 coordinates into items
1931 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
1933 * ThemeWin32Classic.cs: Hatchbrush on Win32 seems to always use white
1934 as the second color for the background hatch
1936 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
1938 * TextBoxBase.cs: Now uses Jackson's new and improved ImplicitScrollbar
1939 * RichTextBox.cs: FormatText position arguments are 1-based, now making
1940 sure that what we pass to FormatText is always 1-based. Fixes #76885
1942 2005-11-29 Miguel de Icaza <miguel@novell.com>
1944 * NumericUpDown.cs (EndInit): When we are done initializing,
1945 reflect any updates on the UI.
1947 2005-12-02 Jackson Harper <jackson@ximian.com>
1949 * ImplicitHScrollBar.cs:
1950 * ImplicitVScrollBar.cs: New scrollbars that don't take focus from
1951 their container controls.
1952 * TreeView.cs: Use the new implicit scrollbars.
1954 2005-12-02 Jackson Harper <jackson@ximian.com>
1956 * TreeView.cs: Make top_node internal so the TreeNodeCollections
1958 * TreeNodeCollection.cs: If we remove the topnode we need to
1959 update topnode to the next node in line.
1960 - When clearing nodes go through the same process as removing
1961 them, so they get depareneted and checked if they are top node.
1963 2005-12-01 Jackson Harper <jackson@ximian.com>
1965 * TreeView.cs: When imagelists are used the image area is
1966 selectable as well as the text.
1967 - If there are no selected nodes select the first one.
1968 * TreeNodeCollection.cs: Getting the TreeView is mildly expensive,
1969 so don't do it more then we need to.
1971 2005-12-01 Jackson Harper <jackson@ximian.com>
1973 * ThemeWin32Classic.cs: Reimplement the scroll arrow drawing so
1974 that arrows can be scaled.
1976 2005-12-01 Jackson Harper <jackson@ximian.com>
1978 * TreeNode.cs : Fixed bugs that caused FullPathTest + Traverse to
1979 fail. Patch by Dieter Bremes
1981 2005-11-30 Jackson Harper <jackson@ximian.com>
1983 * Form.cs: Property is 2.0 only
1984 * PrintDialog.cs: Signature fix.
1986 2005-11-30 Peter Dennis Bartok <pbartok@novell.com>
1989 - No longer artificially moves text 2 pixels down (now that we have
1990 borders this is no longer needed)
1991 - Added calcs for left, hanging and right indent
1993 2005-11-23 Mike Kestner <mkestner@novell.com>
1995 * Menu.cs: mark MenuChanged internal, since it's not exposed by MS.
1997 2005-11-30 Jackson Harper <jackson@ximian.com>
1999 * MdiChildContext.cs: Set the cloned menus forms, as these don't
2000 get cloned as part of CloneMenu ().
2001 * Menu.cs: Make sure the parent of the items get set correctly
2002 when they are added. And the owners are notified of the changes.
2003 * Form.cs: Create an ActiveMenu property, so that when MDI is used
2004 we can change the menu being displayed/handled by the form without
2005 changing the menu assosciated with the form.
2006 - Don't let Mdi children draw/handle menus.
2008 2005-11-30 Jackson Harper <jackson@ximian.com>
2010 * Menu.cs: Switch the MenuChanged method to OnMenuChanged and add
2011 a MenuChanged event. Just to make the API a little more
2014 * MenuItem.cs: Use the new OnMenuChanged
2015 * MdiChildContext.cs: Handle menu merging.
2016 * Form.cs: Implement MergedMenu.
2018 2005-11-30 Jackson Harper <jackson@ximian.com>
2020 * Menu.cs: We were misusing Add. Add goes behind the specified
2021 index according to the docs, and does not replace the specified
2022 index. So I added an Insert method.
2024 2005-11-30 Peter Dennis Bartok <pbartok@novell.com>
2026 * TextBoxBase.cs: Implemented Ctrl-Ins (Copy), Shift-Ins (Paste) and
2027 Shift-Del (Cut), apparently Emacs uses these old Win 2.x keys. This
2029 * RichTextBox.cs: Added calls to base for DnD events
2031 2005-11-28 Peter Dennis Bartok <pbartok@novell.com>
2034 - Fixed drag-selection related crash; style fixes
2035 - Implemented undo class
2036 o Implemented method to capture document state for specified
2037 range in document tree
2038 o Implemented method to restore captured document state
2039 o Implemented cursor tracking
2040 o Implemented basic undo stack
2041 - Added undo cursor tracking to methods altering cursor location
2042 - Added undo tracking to selection deletion (still missing
2043 other text-altering hookups)
2045 - Added SelectionLength property
2046 - Implemented CanPaste()
2047 - Implemented Paste()
2048 - Added missing protected methods
2049 - Fixed RTF->Document conversion; now uses font index 0 and color
2050 index 0 as the default font for the parsed text
2051 - Fixed RTF<->Document font size translation
2052 - Fixed RTF generation, now properly handles cross-tag boundaries
2053 for single line selection
2054 - No longer always appends blank line to generated RTF
2056 - Added missing attributes
2057 - Hooked up undo-related methods
2059 - Implemented Copy()
2060 - Implemented Paste()
2062 - Fixed caret mis-behaviour on backspace across line-boundaries
2064 2005-11-29 Jackson Harper <jackson@ximian.com>
2066 * MdiClient.cs: Add a method for activating mdi children. Very
2067 basic right now. I imagine someday it might need more girth.
2068 * MenuItem.cs: Implement MDI lists. When mdilist is true the mdi
2069 children windows names are added to the menu item.
2070 * ThemeWin32Classic.cs: Draw the arrow if the item is an
2071 mdilist. This happens regardless of whether or not there are any
2072 mdi windows to see in the list, and according to my tests happens
2073 before the items are even added. Also happens if there isn't even
2074 an mdi client to get windows from.
2076 2005-11-29 Alexander Olk <alex.olk@googlemail.com>
2078 * ThemeWin32Classic.cs: Make DrawFlatStyleRadioButton protected
2079 * ThemeNice.cs: Fix drawing of flatstyle radiobuttons
2081 2005-11-29 Jordi Mas i Hernandez <jordimash@gmail.com>
2083 * DataGridTableStyle.cs:
2084 - Create always the styles for the missing columns even if they are
2085 provided by the user (not default table style)
2088 - Fixes SetDataBinding (always re-attach source)
2089 - Fixes SetNewDataSource (only clear styles if they are not for
2091 - Expands OnTableStylesCollectionChanged to handle style refresh
2094 2005-11-29 Jackson Harper <jackson@ximian.com>
2096 * FileDialog.cs: Implement missing bits, remove some dead
2098 * FontDialog.cs: Implement missing Apply stuff, and ToString. Move
2099 creation of the panel so that the options set on the dialog are
2100 seen when the panel is created.
2101 * TreeView.cs: raise a click when items are clicked.
2103 2005-11-29 Jackson Harper <jackson@ximian.com>
2105 * MdiClient.cs: Pass some signature methods through to base.
2107 2005-11-28 Jackson Harper <jackson@ximian.com>
2109 * ListView.cs: Raise the click event when items are clicked.
2111 2005-11-28 Jackson Harper <jackson@ximian.com>
2113 * MdiClient.cs: Make this algorithm even more beautiful. And fix
2116 2005-11-27 Alexander Olk <alex.olk@googlemail.com>
2118 * ThemeNice.cs: - Removed 1 pixel bitmaps
2119 - Use SmoothingMode.AntiAlias where it makes sense
2120 (ScrollButton arrow for example)
2121 - Enhanced Button focus drawing
2122 - Fixed ComboBox drawing (no artefacts anymore, focus
2123 rectangle is back again, reduced size of ComboButton, etc.)
2124 - Fixed RadioButton focus drawing for Appearence.Button
2125 - Slight ScrollButton redesign
2126 - Some LinearGradientBrush size fixes
2127 - GroupBoxes have now rounded edges
2128 - Fixed StatusBar drawing
2130 2005-11-25 Alexander Olk <alex.olk@googlemail.com>
2132 * ThemeNice.cs: - Remove dead code
2133 - use correct background colors for menus, etc.
2134 - Fake pixel drawing with 1 pixel bitmaps
2136 2005-11-24 Jackson Harper <jackson@ximian.com>
2138 * MdiClient.cs: Size the scrollbars when resizing the window.
2139 - Resize the maximized windows when the client is resized
2140 * Form.cs: Make the child context available
2142 2005-11-23 Jackson Harper <jackson@ximian.com>
2144 * MdiChildContext.cs: Don't size windows if they are maximized.
2146 2005-11-23 Mike Kestner <mkestner@novell.com>
2148 * ContextMenu.cs: use MenuTracker.
2149 * Control.cs: remove menu handle usage.
2150 * Form.cs: remove menu handle usage.
2151 * Hwnd.cs: remove menu handle usage.
2152 * MainMenu.cs: Draw method moved here from MenuAPI.DrawMenuBar. Proxy
2153 motion and clicks to the new Tracker handlers.
2154 * Menu.cs: add sizing accessors, SelectedItem prop, kill CreateItems
2156 * MenuAPI.cs: refactored to combine popup and menubar event handling.
2157 Killed the MENU and MENUITEM data types and associated collections
2158 since we now keep the info on Menu and MenuItem. Expanded TRACKER into
2159 MenuTracker class that exposes the leftovers from the old MenuAPI
2160 static methods. Restructured Capture handling so that only one grab is
2161 done for the entire menu hierarchy instead of handing off grabs to
2162 submenus. Tracker now has an invisible control to Capture when active.
2163 * MenuItem.cs: add sizing accessors, kill Create
2165 * Theme.cs: remove menu handle and MENU(ITEM) usage.
2166 * ThemeWin32Classic.cs: use Menu/MenuItem sizing props instead of
2167 MENU(ITEM). remove menu handle usage, use Menu directly.
2168 * XplatUIDriver.cs: remove menu handle usage.
2169 * XplatUIOSX.cs: remove menu handle usage.
2170 * XplatUIWin32.cs: remove menu handle usage.
2171 * XplatUIX11.cs: remove menu handle usage.
2173 2005-11-22 Jackson Harper <jackson@ximian.com>
2175 * Hwnd.cs: Don't compute the menu size for
2176 DefaultClientRectangle.
2177 - Reenable menu sizes being computed for GetClienRectangle.
2178 * Form.cs: Remove comment of trechery
2180 2005-11-22 Jackson Harper <jackson@ximian.com>
2182 * Hwnd.cs: The adjustments for the menu bar are made when it is
2183 attached to the form.
2185 2005-11-19 Jackson Harper <jackson@ximian.com>
2187 * XplatUIX11.cs: Create an HGRN of the invalid area for WM_NCPAINT
2188 (just like on windows).
2190 2005-11-19 Jackson Harper <jackson@ximian.com>
2192 * MdiChildContext.cs: Handle all the buttons ourselves. We can't
2193 use real buttons anymore because they are in non client area. The
2194 one TODO here is that I need to somehow invalidate a section of
2195 the non client area.
2197 2005-11-18 Jackson Harper <jackson@ximian.com>
2199 * Control.cs: Put the enum check back in now that MDI doesnt have
2200 to use this to set border styles.
2201 * Form.cs: Only set mdi child windows borders if the handle has
2203 * MdiChildContext.cs: Don't set the InternalBorderStyle, just pass
2204 this directly on to the driver.
2205 - Get the move start position before adjusting for the titlebar
2206 height, this fixes the windows "skipping" when they are first
2209 2005-11-18 Jackson Harper <jackson@ximian.com>
2211 * XplatUIX11.cs: Just compute the mdi borders separately as they
2212 don't totally match up with normal form borders.
2214 2005-11-18 Jackson Harper <jackson@ximian.com>
2216 * Control.cs: Set WS_ styles for borders, so that the driver does
2217 not have to retrieve the control instance to figure out what kind
2218 of borders it should have.
2219 * Form.cs: Set the WS_EX_MDICHILD flag on mdi children, so the
2220 driver can know its an mdi child easily.
2221 * XplatUIX11.cs: Get the border styles and whether the window is
2222 MDI from the Styles and ExStyles params instead of having to get a
2223 control. This prevents a chicken and egg problem.
2225 2005-11-18 Jackson Harper <jackson@ximian.com>
2227 * MdiClient.cs: Fix typo so scrollbars show up correctly.
2229 2005-11-18 Jackson Harper <jackson@ximian.com>
2231 * MdiClient.cs: Calculate when to add and remove scrollbars
2233 * MdiChildContext.cs: Adjust the y position to take the titlebar
2235 - No height for FormBorderStyle.None
2237 2005-11-18 Jackson Harper <jackson@ximian.com>
2239 * Control.cs: Allow non enum values to be used for
2240 InternalBorderStyle. MDI does this to set a special border style.
2241 - New utility methods for converting points to/from client coords
2242 - Add the newly created control to the Controls collection before
2243 updating its style. This way UpdateStyle can walk the control
2244 heirarchy to find the control if needed.
2245 so I don't need to create a new Point object all the time.
2246 * Form.cs: Let MDI windows handle their border styles.
2247 - Set styles on MDI windows so the correct title style is derived.
2248 * MdiChildContext.cs: Move all the painting and window handling
2249 into the non client area.
2250 - Use correct sizing and put correct buttons on frames based on
2251 the FormBorderStyle.
2252 - Notify the mdi client about scrolling
2253 - Need to handle the buttons ourselves now, because they are all
2254 in non client areas and we can't add controls there.
2255 * MdiClient.cs: Halfway to scrolling, this implementation is
2256 somewhat broken though, we need to check to make sure other
2257 windows aren't causing scrolling before removing the bars. Also
2258 the bars need to be drawn on top, maybe I can switch implicit
2259 controls to be on top.
2260 * Hwnd.cs: caption_height and tool_caption_height are now
2261 properties of an hwnd, this way they can be set by the driver
2262 based on the type of window they are. In X11 the window manager
2263 handles the decorations so caption_height is zero unless its an
2265 - Add 3 pixel borders for MDI windows (0xFFFF).
2266 - Get rid of some code duplication, have DefaultClientRectanle
2267 just call GetClientRectangle.
2268 * XplatUIX11.cs: Pass caption_height and tool_caption_height to
2270 - Set border styles differently for mdi windows.
2271 * XplatUIOSX.cs: Pass caption_height and tool_caption_height to
2274 2005-11-15 Mike Kestner <mkestner@novell.com>
2276 * Menu.cs: when adding an item to the collection, if item is already
2277 parented, remove it from the parent.
2279 2005-11-13 Alexander Olk <alex.olk@googlemail.com>
2281 * X11DesktopColors.cs: Added KDE support
2283 2005-11-11 Peter Dennis Bartok <pbartok@novell.com>
2286 - Clipboard methods now can translate Rtf format
2287 - No longer removes clipboard contents whenever a new format is added
2288 to allow placing multiple formats on the clipboard
2289 * Clipboard.cs: Clipboard now supports getting a IDataObject and
2290 will place all formats contained in it onto the clipboard. Also
2291 now cleans the clipboard before placing a new object onto it
2293 - Implemented set_Rtf
2294 - Implemented set_SelectedRtf
2295 - Created InsertRTFFromStream() method to allow single code base
2296 for all properties and methods that insert RTF into document
2297 - Removed debug output
2299 - Fixed Delete(int) to fix up line numbers
2300 - Fixed ReplaceSelection to combine start and end line
2301 - Fixed serious DeleteChars bug that would leave the document tree
2303 - Improved DumpTree with several logic checks to detect broken
2305 - Removed debug lines
2306 - Fixed Caret.WordForward/WordBack moving code, now always also
2307 updates caret.tag (fixes crash when word-selecting across tag
2308 boundaries via keyboard)
2309 - Added Insert() method for inserting multiline text into documents
2310 - Fixed DeleteChars() calculation errors that would cause a broken
2311 tag chain with multiple tag lines
2312 - DeleteChars() no longer crashes on multi-tag lines if not all tags
2313 - Split() no longer moves caret if split is at caret location
2314 - ReplaceSelection() now updates the cursor and re-displays it
2315 - ReplaceSelection() now uses new Insert() method to avoid code
2317 - FormatText() can now handle formatting partial lines
2319 - Append now uses new TextControl.Insert() method (this avoids
2321 - Implemented Ctrl-X (Cut) (
2322 - Implemented Ctrl-C (Copy)
2323 - Implemented Ctrl-V (Paste) (Still some bugs related to screen
2324 regeneration when pasting text; roundtripping Copy&Paste within
2325 edit control still fails due to some calculation bugs in GenerateRTF)
2326 - The Delete key will now remove the current selection if it is visible
2327 * TextBox.cs: Removed debug lines
2328 * XplatUI.cs: Trigger initialization of DataFormats (which requires the
2329 driver to be initialized and can't therefore be done via a static ctor)
2331 2005-11-10 Peter Dennis Bartok <pbartok@novell.com>
2333 * TextControl.cs: Added backend code for finding char arrays and strings
2335 - Added mouse wheel scroll support
2336 - Added support for VScroll and HScroll events
2338 - Implemented all seven Find() variants
2339 - Implemented GetCharFromPosition()
2340 - Implemented GetCharIndexFromPosition()
2341 - Implemented GetLineFromIndex()
2342 - Implemented GetPositionFromCharIndex();
2343 - Implemented SaveFile for PlainText and UnicodeText
2344 - Fixed set_Font, now setting a new font applies that font to
2346 - Implemented generic Document to RTF converter
2347 - Implemented SaveFile for RichText format (still missing unicode
2348 conversion for non-ansi chars)
2349 - Implemented get_Rtf
2350 - Implemented get_SelectedRtf
2352 2005-11-09 Peter Dennis Bartok <pbartok@novell.com>
2354 * Control.cs (WndProc): Call HandleClick after having sent OnMouseUp
2355 to allow any captures to be released before triggering OnClick. This
2356 way a click handler may capture the mouse without interference.
2357 * XplatUIX11.cs: Always send mouse messages to grab window if one exists.
2358 This way we send them even though X may not allow a grab (if the window
2359 isn't visible, for example)
2361 2005-11-08 Pedro Martinez Julia <pedromj@gmail.com>
2363 * DataGridViewRowEventArgs.cs: DataGridView implementation
2364 * DataGridViewElement.cs: DataGridView implementation
2365 * DataGridViewComboBoxCell.cs: DataGridView implementation
2366 * DataGridViewDataErrorContexts.cs: DataGridView implementation
2367 * DataGridViewCellErrorTextNeededEventArgs.cs: DataGridView implementation
2368 * DataGridViewColumnHeadersHeightSizeMode.cs: DataGridView implementation
2369 * ImageLayout.cs: DataGridView implementation
2370 * DataGridViewComboBoxColumn.cs: DataGridView implementation
2371 * DataGridViewCellMouseEventHandler.cs: DataGridView implementation
2372 * DataGridViewSelectionMode.cs: DataGridView implementation
2373 * IDataGridViewEditingControl.cs: DataGridView implementation
2374 * DataGridViewSortCompareEventHandler.cs: DataGridView implementation
2375 * DataGridViewCellStyleContentChangedEventHandler.cs: DataGridView implementation
2376 * DataGridViewAutoSizeModeEventHandler.cs: DataGridView implementation
2377 * DataGridViewColumnStateChangedEventHandler.cs: DataGridView implementation
2378 * DataGridViewColumnSortMode.cs: DataGridView implementation
2379 * DataGridView.cs: DataGridView implementation
2380 * DataGridViewRowStateChangedEventHandler.cs: DataGridView implementation
2381 * DataGridViewRowPostPaintEventArgs.cs: DataGridView implementation
2382 * DataGridViewDataErrorEventArgs.cs: DataGridView implementation
2383 * Padding.cs: DataGridView implementation
2384 * DataGridViewCellParsingEventArgs.cs: DataGridView implementation
2385 * DataGridViewCellStateChangedEventHandler.cs: DataGridView implementation
2386 * DataGridViewRowEventHandler.cs: DataGridView implementation
2387 * DataGridViewCellPaintingEventHandler.cs: DataGridView implementation
2388 * DataGridViewCellFormattingEventHandler.cs: DataGridView implementation
2389 * DataGridViewButtonCell.cs: DataGridView implementation
2390 * DataGridViewCellStyleContentChangedEventArgs.cs: DataGridView implementation
2391 * DataGridViewEditMode.cs: DataGridView implementation
2392 * DataGridViewCellValueEventArgs.cs: DataGridView implementation
2393 * DataGridViewRowCancelEventArgs.cs: DataGridView implementation
2394 * DataGridViewRowHeadersWidthSizeMode.cs: DataGridView implementation
2395 * DataGridViewCheckBoxColumn.cs: DataGridView implementation
2396 * DataGridViewCellToolTipTextNeededEventHandler.cs: DataGridView implementation
2397 * DataGridViewAutoSizeColumnsMode.cs: DataGridView implementation
2398 * DataGridViewCellEventHandler.cs: DataGridView implementation
2399 * DataGridViewEditingControlShowingEventHandler.cs: DataGridView implementation
2400 * DataGridViewCellStyleConverter.cs: DataGridView implementation
2401 * DataGridViewSelectedRowCollection.cs: DataGridView implementation
2402 * DataGridViewBindingCompleteEventHandler.cs: DataGridView implementation
2403 * DataGridViewColumnEventArgs.cs: DataGridView implementation
2404 * DataGridViewRowHeightInfoPushedEventHandler.cs: DataGridView implementation
2405 * DataGridViewRowContextMenuStripNeededEventHandler.cs: DataGridView implementation
2406 * QuestionEventArgs.cs: DataGridView implementation
2407 * IDataGridViewEditingCell.cs: DataGridView implementation
2408 * DataGridViewTriState.cs: DataGridView implementation
2409 * DataGridViewColumnDesignTimeVisibleAttribute.cs: DataGridView implementation
2410 * DataGridViewCellStateChangedEventArgs.cs: DataGridView implementation
2411 * DataGridViewColumnCollection.cs: DataGridView implementation
2412 * DataGridViewCellValueEventHandler.cs: DataGridView implementation
2413 * DataGridViewRowDividerDoubleClickEventHandler.cs: DataGridView implementation
2414 * DataGridViewCellFormattingEventArgs.cs: DataGridView implementation
2415 * DataGridViewColumn.cs: DataGridView implementation
2416 * DataGridViewCellBorderStyle.cs: DataGridView implementation
2417 * DataGridViewCellContextMenuStripNeededEventHandler.cs: DataGridView implementation
2418 * DataGridViewCellValidatingEventArgs.cs: DataGridView implementation
2419 * DataGridViewRow.cs: DataGridView implementation
2420 * DataGridViewImageCellLayout.cs: DataGridView implementation
2421 * DataGridViewImageCell.cs: DataGridView implementation
2422 * DataGridViewTopLeftHeaderCell.cs: DataGridView implementation
2423 * DataGridViewCheckBoxCell.cs: DataGridView implementation
2424 * DataGridViewHeaderCell.cs: DataGridView implementation
2425 * DataGridViewCellErrorTextNeededEventHandler.cs: DataGridView implementation
2426 * DataGridViewRowHeightInfoPushedEventArgs.cs: DataGridView implementation
2427 * DataGridViewAutoSizeColumnsModeEventHandler.cs: DataGridView implementation
2428 * DataGridViewTextBoxColumn.cs: DataGridView implementation
2429 * QuestionEventHandler.cs: DataGridView implementation
2430 * DataGridViewCellStyleScopes.cs: DataGridView implementation
2431 * DataGridViewSortCompareEventArgs.cs: DataGridView implementation
2432 * DataGridViewCellContextMenuStripNeededEventArgs.cs: DataGridView implementation
2433 * DataGridViewCell.cs: DataGridView implementation
2434 * DataGridViewCellEventArgs.cs: DataGridView implementation
2435 * DataGridViewClipboardCopyMode.cs: DataGridView implementation
2436 * DataGridViewCellStyle.cs: DataGridView implementation
2437 * DataGridViewColumnHeaderCell.cs: DataGridView implementation
2438 * DataGridViewRowPrePaintEventHandler.cs: DataGridView implementation
2439 * DataGridViewRowCancelEventHandler.cs: DataGridView implementation
2440 * TextFormatFlags.cs: DataGridView implementation
2441 * DataGridViewCellToolTipTextNeededEventArgs.cs: DataGridView implementation
2442 * DataGridViewDataErrorEventHandler.cs: DataGridView implementation
2443 * DataGridViewAdvancedCellBorderStyle.cs: DataGridView implementation
2444 * DataGridViewCellPaintingEventArgs.cs: DataGridView implementation
2445 * DataGridViewButtonColumn.cs: DataGridView implementation
2446 * DataGridViewRowsRemovedEventArgs.cs: DataGridView implementation
2447 * HandledMouseEventArgs.cs: DataGridView implementation
2448 * DataGridViewCellParsingEventHandler.cs: DataGridView implementation
2449 * DataGridViewColumnDividerDoubleClickEventHandler.cs: DataGridView implementation
2450 * DataGridViewCellMouseEventArgs.cs: DataGridView implementation
2451 * DataGridViewAutoSizeRowsMode.cs: DataGridView implementation
2452 * DataGridViewRowCollection.cs: DataGridView implementation
2453 * DataGridViewAdvancedBorderStyle.cs: DataGridView implementation
2454 * DataGridViewCellCancelEventHandler.cs: DataGridView implementation
2455 * DataGridViewHitTestType.cs: DataGridView implementation
2456 * DataGridViewAutoSizeModeEventArgs.cs: DataGridView implementation
2457 * DataGridViewColumnStateChangedEventArgs.cs: DataGridView implementation
2458 * DataGridViewColumnEventHandler.cs: DataGridView implementation
2459 * DataGridViewRowDividerDoubleClickEventArgs.cs: DataGridView implementation
2460 * DataGridViewAutoSizeRowMode.cs: DataGridView implementation
2461 * DataGridViewRowHeightInfoNeededEventArgs.cs: DataGridView implementation
2462 * DataGridViewRowsDeletedEventArgs.cs: DataGridView implementation
2463 * DataGridViewTextBoxEditingControl.cs: DataGridView implementation
2464 * DataGridViewContentAlignment.cs: DataGridView implementation
2465 * DataGridViewRowPostPaintEventHandler.cs: DataGridView implementation
2466 * DataGridViewComboBoxEditingControl.cs: DataGridView implementation
2467 * DataGridViewCellValidatingEventHandler.cs: DataGridView implementation
2468 * DataGridViewSelectedColumnCollection.cs: DataGridView implementation
2469 * DataGridViewPaintParts.cs: DataGridView implementation
2470 * DataGridViewCellCollection.cs: DataGridView implementation
2471 * DataGridViewRowsAddedEventArgs.cs: DataGridView implementation
2472 * DataGridViewImageColumn.cs: DataGridView implementation
2473 * DataGridViewRowsRemovedEventHandler.cs: DataGridView implementation
2474 * DataGridViewElementStates.cs: DataGridView implementation
2475 * DataGridViewRowHeightInfoNeededEventHandler.cs: DataGridView implementation
2476 * DataGridViewColumnDividerDoubleClickEventArgs.cs: DataGridView implementation
2477 * DataGridViewRowPrePaintEventArgs.cs: DataGridView implementation
2478 * DataGridViewRowStateChangedEventArgs.cs: DataGridView implementation
2479 * DataGridViewEditingControlShowingEventArgs.cs: DataGridView implementation
2480 * DataGridViewCellCancelEventArgs.cs: DataGridView implementation
2481 * DataGridViewRowHeaderCell.cs: DataGridView implementation
2482 * DataGridViewBindingCompleteEventArgs.cs: DataGridView implementation
2483 * DataGridViewTextBoxCell.cs: DataGridView implementation
2484 * DataGridViewBand.cs: DataGridView implementation
2485 * DataGridViewAutoSizeColumnModeEventArgs.cs: DataGridView implementation
2486 * DataGridViewHeaderBorderStyle.cs: DataGridView implementation
2487 * DataGridViewRowsAddedEventHandler.cs: DataGridView implementation
2488 * DataGridViewAutoSizeColumnMode.cs: DataGridView implementation
2489 * DataGridViewAutoSizeColumnModeEventHandler.cs: DataGridView implementation
2490 * DataGridViewAutoSizeColumnsModeEventArgs.cs: DataGridView implementation
2491 * DataGridViewRowErrorTextNeededEventHandler.cs: DataGridView implementation
2492 * DataGridViewSelectedCellCollection.cs: DataGridView implementation
2493 * DataGridViewRowContextMenuStripNeededEventArgs.cs: DataGridView implementation
2494 * DataGridViewRowErrorTextNeededEventArgs.cs: DataGridView implementation
2495 * DataGridViewComboBoxDisplayStyle.cs: DataGridView implementation
2497 2005-11-08 Peter Dennis Bartok <pbartok@novell.com>
2499 * ThemeWin32Classic.cs:
2500 - Draw the outside focus rectangle around buttons
2501 - Use CPDrawFocusRectangle to draw focus rectangles until Cairo
2502 doesn't use end caps for every dash of a line anymore. This
2503 workaround ignores the forecolor.
2505 2005-11-08 Kornél Pál <kornelpal@hotmail.com>
2507 * ImageList.cs: Don't use ArgbColor with LayoutKind.Explicit as it isn't
2510 2005-11-07 Jackson Harper <jackson@ximian.com>
2512 * X11Dnd.cs: Set the X/Y positions on the DragEventArgs correctly.
2514 2005-11-07 Jackson Harper <jackson@ximian.com>
2516 * ScrollableControl.cs: Calculate the maximum and change vars
2517 (more) correctly so that scrollbars appear as a sensible size.
2519 2005-11-04 Jackson Harper <jackson@ximian.com>
2521 * TreeNodeCollection.cs: Refresh when nodes are cleared from the
2523 * TreeView.cs: When the tree is sorted null out the top_node so
2524 that it is recalculated.
2525 - Use dotted lines instead of dashed lines to match MS better.
2527 2005-11-04 Jordi Mas i Hernandez <jordimash@gmail.com>
2530 - Implements key search for items. Useful when browsing files with FileDialog
2531 - When changing view mode or when clear the items reset scrollbar positions
2533 2005-11-04 Jackson Harper <jackson@ximian.com>
2535 * CurrencyManager.cs: Implement the MetaDataChanged event, the
2536 Reset method, and the CheckEmpty. CheckEmpty is just a total guess
2537 as to what the method may do as there is no real way of creating a
2538 derived CurrencyManager and calling the method.
2540 2005-11-03 Jackson Harper <jackson@ximian.com>
2542 * ThemeWin32Classic.cs: Implement ownerdrawing in the tab control
2543 * TabControl.cs: Add Ownerdrawing bits, add the UpdateTabSelection
2544 method which seems to just be used internally to refresh the tabs.
2546 2005-11-03 Jackson Harper <jackson@ximian.com>
2548 * TabControl.cs: Implement the remove method. Fix some broken
2551 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
2553 * DateTimePicker.cs:
2554 - Added missing DateTimePickerAccessibleObject class
2555 - Added missing events
2556 - Added OnFontChanged method
2557 * Form.cs: Added missing attributes
2558 * TreeView.cs: Added missing attributes
2560 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
2562 * GridItemCollection.cs: Fix signatures
2564 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
2566 * XplatUI.cs: Updated build rev/date
2567 * ComboBox.cs, DataGridTextBoxColumn.cs Control.cs,
2568 DataGridTableStyle.cs, DataGrid.cs, DateTimePicker.cs: Signature fixes
2569 * Application.cs: Trigger context-specific ExitThread events
2571 2005-11-03 Jackson Harper <jackson@ximian.com>
2575 * GridTableStylesCollection.cs:
2580 * MonthCalendar.cs: Signature fixes
2582 2005-11-03 Jackson Harper <jackson@ximian.com>
2584 * TreeNodeCollection.cs: Remove should not be virtual.
2585 * TreeView.cs: Implement the last of the missing methods.
2587 2005-11-03 Jackson Harper <jackson@ximian.com>
2589 * TreeNodeConverter.cs: Implement to get off my class-status back.
2591 2005-11-03 Jackson Harper <jackson@ximian.com>
2593 * TreeView.cs: Hookup the bits for drag and drop.
2594 * TreeNode.cs: Don't cache the tree_view or index anymore, now
2595 that nodes can be moved from tree to tree easily this just causes
2596 all sorts of problems.
2597 * TreeNodeCollection: Don't need to give treenodes an index and
2598 treeview anymore when they are added, these are computed on the
2599 fly. Also make sure to remove a node before its added.
2601 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
2604 - Added CaretSelection enum
2605 - Added comparison methods to Marker struct, makes selection code
2607 - Added SelectionStart and SelectionEnd as 'moveable' location for
2608 the CaretDirection enum and handler
2609 - Added selection_prev variable to track optimized invalidation for
2610 word and line selection
2611 - Added SelectionVisible property (returns true if there is a valid
2613 - Switched CaretHasFocus to only display the caret if there is no
2615 - Avoiding StringBuilder.ToString to retrieve a single char, instead
2616 using the direct character index; should be much faster
2617 - Added various conditional debug statements
2618 - Fixed invalidation calculation for selection ranges
2619 - Added ExpandSelection() method to support word and line selection
2620 - Switched SetSelectionToCaret to use new Marker compare overloads
2621 - Added central IsWordSeparator() method to determine word
2622 separators/whitespace and FindWordSeparator() to streamline common
2623 usage of IsWordSeparator()
2625 - Removed unneeded grabbed variable, it was just mirroring
2627 - No longer firing OnTextChanged event when Text setter is called,
2628 since the base will fire the event for us
2629 - Added handling of Ctrl-Up/Down selection
2630 - Added handling of Shift-Cursorkey selection
2631 - Added handling for Ctrl-Delete and Ctrl-Backspace to remove
2633 - Added handling of Shift and Ctrl-Shift-Home/End selection
2634 - Removed some debug output
2635 - Added handling for single/double/tripple-click to place caret/
2636 select word/select line respectively (Fixes bug #76031)
2637 - Added support for drag expansion of word/line selection
2638 * RichTextBox.cs: Handle GotFocus event to trigger redrawing of
2641 2005-11-02 Jackson Harper <jackson@ximian.com>
2643 * X11Dnd.cs: If the drag is going to and from a MWF window just
2644 copy the data instead of sending it out through the X Selection
2647 2005-11-02 Jackson Harper <jackson@ximian.com>
2650 * XplatUIX11.cs: When in a drag we don't want motion notify
2651 messages to get passed on to the other controls. This prevents
2652 mouse move messages from showing up in the drag source.
2654 2005-11-02 Jackson Harper <jackson@ximian.com>
2656 * X11Dnd.cs: Remove unneeded call to XAllowEvents. Make sure that
2657 the correct button is release to end a drag.
2658 * XplatUIX11.cs: Make the button state internal so the drag system
2659 can access it. Dragging needs to know about all button releases,
2660 not just left button.
2662 2005-11-02 Miguel de Icaza <miguel@novell.com>
2664 * Form.cs (Icon): If the icon is null, reset the icon to the
2667 * Cursor.cs: When writing the AND-mask bitmap do not include the
2668 number of colors, but hardcode those to two (black and white),
2669 fixes the loading of color cursors (Paint Dot Net).
2671 * Form.cs: To debug, allow MONO_MWF_SCALING=disable variable to
2672 turn off autoscaling.
2674 * Cursor.cs: Allow resource type to be 1 or 2 (from ImageMagic).
2676 2005-11-02 Jackson Harper <jackson@ximian.com>
2678 * X11Dnd.cs: Make sure to send a status message if the pointer
2679 enters a control that can not accept a drop, otherwise the cursor
2680 isn't updated correctly. Also tried to compress the lines of code
2683 2005-11-02 Jackson Harper <jackson@ximian.com>
2685 * X11Dnd.cs: Change cursors based on drag action. Also attempt to
2686 set actions correctly. This isn't perfect as XDND and win32 have
2687 some differences on how you allow actions. I'll clear this up by
2688 adding a path for drag from MWF to MWF windows.
2689 * XplatUIX11.cs: Hook into the dnd system.
2691 2005-11-02 Jordi Mas i Hernandez <jmas@softcatala.org>
2693 * ListView.cs: Fixes scroll bar visibility. Hide them if they were
2694 previously shown but they are no longer need it. Very obvious when
2695 browsing files with FileDialog.
2697 2005-11-01 Peter Dennis Bartok <pbartok@novell.com>
2699 * Control.cs: We always need to call OnPaintBackground. We pretty much
2700 ignore AllPaintingInWmPaint and always do the painting there, whether
2701 it's set or not, since we always ignore the WM_ERASEBKGND message
2702 (which we don't generate on X11). This fixes #76616.
2703 * Panel.cs: Removed unneeded background painting. This happens properly
2704 in Control.cs already
2706 2005-10-31 Mike Kestner <mkestner@novell.com>
2708 * Menu.cs: Add items to collection before setting their index.
2709 * MenuItem.cs : add range checking with ArgumentException like MS.
2712 2005-10-31 Jackson Harper <jackson@ximian.com>
2714 * ListBox.cs: Invalidate if the area is visible at all not just
2715 contained in the visible rect. Fixes unselection of semi visible
2718 2005-10-31 Jackson Harper <jackson@ximian.com>
2720 * Control.cs: Consistently name the dnd methods. Make them
2721 internal so we can override them to match some MS behavoir
2723 * Win32DnD.cs: Use the new consistent names.
2725 2005-10-31 Jackson Harper <jackson@ximian.com>
2727 * TreeView.cs: Don't draw the selected node when we lose focus.
2729 2005-10-31 Jackson Harper <jackson@ximian.com>
2731 * X11Dnd.cs: We still need to reset the state even though a full
2732 reset isn't being done, otherwise status's still get sent all over
2735 2005-10-31 Jackson Harper <jackson@ximian.com>
2737 * Control.cs: Make the dnd_aware flag internal so the dnd
2738 subsystem can check it. Catch exceptions thrown in dnd handlers to
2740 * Hwnd.cs: Add a flag for whether or not a window is dnd aware.
2741 * X11Dnd.cs: Handle null data in the converters. Set the XDND
2742 version when sending a XdndEnter. Use the control/hwnd dnd_aware
2743 flags to reduce the number of dnd enters/status's sent.
2745 2005-10-31 Jackson Harper <jackson@ximian.com>
2747 * X11Dnd.cs: Don't need the sizeof here. Patch by Jordi Mas.
2749 2005-10-31 Jordi Mas i Hernandez <jordi@ximian.com>
2751 * PictureBox.cs: Fixes 76512
2753 2005-10-28 Jackson Harper <jackson@ximian.com>
2755 * X11Dnd.cs: Early implementation to support winforms being a drag
2756 source for data on X11. Also restructured the converters so they
2757 can go both ways now.
2758 * XplatUIX11.cs: Tie ins to the the Dnd stuff.
2760 2005-10-27 Peter Dennis Bartok <pbartok@novell.com>
2762 * XplatUIX11.cs: Fixed FIXME - implemented ASCII encoding for XA_STRING
2765 2005-10-27 Jackson Harper <jackson@ximian.com>
2767 * TreeNode.cs: Implement serialization so my DnD examples will work.
2769 2005-10-24 Kornél Pál <kornelpal@hotmail.com>
2771 * ButtonBase.cs, ListView.cs, NotifyIcon.cs, PictureBox.cs, ToolBar.cs,
2772 TreeView.cs: Don't dispose objects that are not owned.
2774 2005-10-24 Peter Dennis Bartok <pbartok@novell.com>
2776 * Cursor.cs: Defaulting the Current cursor to Cursors.Default. We
2777 should retrieve the current cursor and report that, but XplatUI
2778 doesn't (yet) have an interface for that (and I'm not sure I even
2780 * XplatUIWin32.cs: Fixed override behaviour. The override is temporary,
2781 until any message loop processing is done (and the WM_SETCURSOR
2782 replaces the cursor to the proper one)
2784 - Fixed override behaviour, we can't set the cursor globally on X11,
2785 just for our windows.
2786 - Invalidating the System.Drawing X11 display handle when we are
2788 * Control.cs: Fix to make csc happy
2790 2005-10-23 Peter Dennis Bartok <pbartok@novell.com>
2793 - get_Text: Add last line (without trailing newline) to returned
2795 - get_TextLength: Count last line in returned length
2796 - ToString: Call Text property instead of duplicating code
2798 2005-10-23 Kornél Pál <kornelpal@hotmail.com>
2800 * ImageList.cs: Dispose ImageAttributes objects.
2802 2005-10-22 Kornél Pál <kornelpal@hotmail.com>
2804 * ImageList.cs: Use attribute constructors with less arguments where
2807 2005-10-22 Kornél Pál <kornelpal@hotmail.com>
2809 * ImageList.cs: Added lastKeyIndex field and use in IndexOfKey.
2810 Use typeof instead of strings when assembly is referenced. Added
2813 2005-10-21 Jackson Harper <jackson@ximian.com>
2815 * ListView.cs: Raise a double click event. Also tried to somewhat
2816 fix when the selectedindexchanged event is raised. Its still
2819 2005-10-21 Jackson Harper <jackson@ximian.com>
2821 * TreeView.cs: New method to invalidate the plus minus area of a
2822 node without invalidating the whole node (maybe this can be used
2823 in some more places).
2824 * TreeNodeCollection.cs: When adding to an empty node we need to
2825 invalidate its plus minus area so the little block shows up.
2827 2005-10-21 Jackson Harper <jackson@ximian.com>
2829 * TreeView.cs: Make sure that when we invalidate a node the bounds
2830 are big enough to cover the selected box and the focus
2831 rectangle. Use a different colour for the lines connecting nodes
2832 so they show up with all themes.
2834 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
2836 * NativeWindow.cs: Don't call anything that could call into the driver,
2837 we might be on a different thread.
2839 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
2841 * Control.cs(Dispose): Since Dispose might run on a different thread,
2842 make sure that we call methods that could call into the driver via
2843 invoke, to avoid thread issues
2845 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
2847 * XplatUI.cs: Removed finalizer
2848 * XplatUIX11.cs: Removed Destructor, was causing crashes due to X11
2849 not allowing to be called on the finalizer thread.
2851 2005-10-21 Kornél Pál <kornelpal@hotmail.com>
2854 - Reverted r51889 and r51891.
2855 - Added ImageListItem class that stores unmodified image items and image
2856 properties required to create list images until handle is created.
2857 - Added AddItem and moved image creation logic to AddItemInternal.
2858 - Added CreateHandle method that creates images based on unmodified items.
2859 - Added DestroyHandle that changes state to store unmodified items.
2860 - Add and AddStrip methods no more create handle.
2861 - ReduceColorDepth has no return value.
2862 - Dispose destroys handle.
2863 - Modified other methods to reflect the above changes.
2864 - Implemented key support.
2865 - Added profile 2.0 members and attributes.
2866 - Added private Reset and ShouldSerialize methods that provide the same
2867 behavior as MS.NET but the Visual Studio .NET designer seems to ignore
2868 them as they are private.
2869 - Added some more comments about implementation details.
2871 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
2873 * DataGrid.cs: Adds support for vertical scrolling using the mousewheel
2875 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
2877 * Binding.cs: No PushData/PullData if there is no binding (fixes crash)
2879 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
2881 * DataGridDrawingLogic.cs: Fixes column hit calcultation
2882 * DataGridColumnStyle.cs: Remove debug message
2884 2005-10-20 Jackson Harper <jackson@ximian.com>
2886 * TreeView.cs: We can always get input keys regardless of whether
2887 or not editing is enabled. They are used for navigation.
2889 2005-10-20 Jackson Harper <jackson@ximian.com>
2891 * TreeNode.cs: Use the viewport rect for determining if a node
2892 needs to be moved for visibility. Don't use Begin/End edit. This
2893 calls a full refresh when its done.
2894 * TreeView.cs: New SetBottom works correctly. Make the viewport
2895 rect property internal so the treenodes can see it. When clicking
2896 on a node we need to ensure that its visible because it might just
2897 be partly visible when clicked.
2899 2005-10-20 Jackson Harper <jackson@ximian.com>
2901 * TreeNodeCollection.cs: Remove debug code.
2903 2005-10-20 Jordi Mas i Hernandez <jordi@ximian.com>
2905 * Datagrid.cs: Implements column sorting in Datagrid
2906 * DataGridColumnStyle.cs: Implements column sorting in Datagrid
2908 2005-10-20 Jackson Harper <jackson@ximian.com>
2910 * TreeNodeCollection.cs: Remove items properly. Update the correct
2911 area after removing them.
2913 2005-10-20 Jordi Mas i Hernandez <jordi@ximian.com>
2915 * Datagrid.cs: Should not call base.OnPaintBackground
2917 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
2919 * XplatUIX11.cs (GetMessage):
2920 - Now properly calculates NC_xBUTTONDOWN coordinates off the whole
2921 window instead of client window
2922 - Now properly calculates NC_xBUTTONUP message coordinates
2923 - ScreenToMenu now properly calculates it's coordinates of whole
2924 window, since menus are in the whole window, not in the client
2926 - Added WholeToScreen coordinate translation method
2928 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
2930 * XplatUIX11.cs (GetMessage): Don't return in situations where we don't
2931 want to return a message, loop back to the beginning of the function
2932 and grab the next real message to process instead.
2934 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
2936 * Splitter.cs: Properly set limits if no filler control is used
2938 2005-10-19 Jackson Harper <jackson@ximian.com>
2940 * ColorDialog.cs: Don't show the help button if it is not enabled
2941 instead of disabling it (this is what MS does). Don't create the
2942 panel until the dialog is run, otherwise the vars (such as
2943 ShowHelp) are not set yet.
2945 2005-10-19 Jackson Harper <jackson@ximian.com>
2947 * TreeView.cs: Implement Begin/EndEdit more correctly so refreshes
2948 are reduced when adding nodes.
2950 * TreeNodeCollection.cs: Use UpdateNode instead of refreshing the
2953 2005-10-19 Jackson Harper <jackson@ximian.com>
2955 * FolderBrowserDialog.cs: End editing our treeview so the window
2956 actually gets refreshed.
2958 2005-10-18 Peter Dennis Bartok <pbartok@novell.com>
2960 * Control.cs: Fixed logic flip on when to call OnPaintBackground.
2961 Obsoleted handling of WM_ERASEBKGND, now always draws our background
2964 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
2966 * MenuAPI.cs: Returns after Hidding window
2967 * XplatUIX11.cs: Added TODO found while debugging menu issues
2969 2005-10-18 Peter Dennis Bartok <pbartok@novell.com>
2971 * XplatUIX11.cs: Do not re-map the whole window when it's size
2972 becomes non-zero unless it's supposed to be actually visible
2974 2005-10-18 Jackson Harper <jackson@ximian.com>
2976 * TreeView.cs: We don't need to keep a count anymore.
2977 * TreeNodeCollection.cs: Fix off by one in RemoveAt, Insert can
2978 use the Grow method.
2980 2005-10-18 Jackson Harper <jackson@ximian.com>
2982 * TreeNodeCollection.cs: Insert is not supported on arrays, so
2983 implement it manually here.
2985 2005-10-18 Jackson Harper <jackson@ximian.com>
2987 * ImageList.cs: Dont kill the list when the colour depth is
2988 changed, just change the colour depth of all the images.
2989 - Same goes for setting the image size. Just resize them all
2990 instead of killing the list softly.
2992 2005-10-18 Jackson Harper <jackson@ximian.com>
2994 * Control.cs: Don't invalidate empty rectangles.
2996 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
2999 - Adds checked item to the Checked/Item lists (where empty before)
3000 - Do not add items to the Selected lists if they are already present
3002 - Fixes IsFixedSize, SyncRoot, IsReadOnly in many collections
3003 - When deleting items make sure that we delete them for the Selected
3004 and Checked list also.
3006 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
3008 * Label.cs: Dispose objects no longer used
3009 * ThemeWin32Classic.cs: Dispose objects no longer used
3011 2005-10-18 Jackson Harper <jackson@ximian.com>
3013 * TabControl.cs: Don't refresh the whole control when the tabs are
3014 scrolled, we just need to refresh the tab area.
3016 2005-10-17 Jackson Harper <jackson@ximian.com>
3018 * XplatUIX11.cs: Compress code a little bit. Only calculate the
3019 after handle when we need it.
3021 2005-10-17 Peter Dennis Bartok <pbartok@novell.com>
3023 * Control.cs: When the parent size changes, recalculate anchor
3024 positions. Partial fix for #76462
3026 2005-10-17 Peter Dennis Bartok <pbartok@novell.com>
3028 * ThemeWin32Classic.cs: Make sure the picturebox has it's background
3031 2005-10-17 Jackson Harper <jackson@ximian.com>
3033 * MonthCalendar.cs: Don't create the numeric up down until our
3034 handle is created. Otherwise our handle is created in the
3035 constructor and we don't know if we are a WS_CHILD or WS_POPUP
3038 2005-10-17 Jackson Harper <jackson@ximian.com>
3040 * TreeView.cs: Merge in patch by Rafael Teixeira to align strings
3043 2005-10-17 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
3044 * TreeNode.cs : small logical fix (was using local var instead of field)
3046 2005-10-17 Jordi Mas i Hernandez <jordi@ximian.com>
3048 * ThemeWin32Classic.cs: Fixes vert/horz scrollbar colours
3050 2005-10-17 Jordi Mas i Hernandez <jordi@ximian.com>
3052 * ThemeWin32Classic.cs: Fixes focus drawing in for non-flat/popup buttons
3054 2005-10-16 Peter Dennis Bartok <pbartok@novell.com>
3057 - Re-implemented anchoring code. My first version was really broken.
3058 This fixes bug #76033. Unlike the previous implementation we will
3059 no longer have round errors since all numbers are calculated from
3060 scratch every time. Removed various anchor-related obsolete vars.
3061 - InitLayout no longer causes layout event firing and layout to be
3064 2005-10-16 Jackson Harper <jackson@ximian.com>
3066 * Hwnd.cs: Compute invalid area correctly (fixes my last commit
3069 2005-10-16 Jackson Harper <jackson@ximian.com>
3071 * TabControl.cs: Remove debug code.
3073 2005-10-16 Jackson Harper <jackson@ximian.com>
3075 * XEventQueue.cs: Increase the default queue size (very simple
3076 apps needed to grow the queue).
3077 * Hwnd.cs: No finalizer so we don't need to suppress
3078 finalization. Compute the invalid area manually so a new rectangle
3079 does not newto be created.
3080 * ScrollableControl.cs: Don't set any params (otherwise visibility
3081 isn't set correctly).
3082 * MdiChildContext.cs: New constructor takes the mdi parent so it
3083 doesn't have to be computed and avoids a crash on windows. Draw
3084 the window icon properly, and allow the text to be seen.
3085 * Form.cs: Use new MdiChildContext constructor. Make sure the
3086 child context isn't null in wndproc.
3087 * TabControl.cs: Don't set focus, this is muddling keyboard
3088 behavoir. Expand the tab rows when a window size increase will
3089 allow extra tabs to be seen. Don't allow tabs smaller than the
3090 width of a window to be scrolled out of view.
3092 * TreeView.cs: Use measure string to calculate a nodes width, the
3093 width is cached and only updated when the text or the font is
3094 changed. Don't check for expand/collapse clicks on the first level
3095 nodes if root lines are disabled.
3097 2005-10-16 Ritvik Mayank <mritvik@novell.com>
3099 * TextBoxBase.cs: Fixes #76352 (passing tab key in a multiline textbox)
3101 2005-10-16 Jordi Mas i Hernandez <jordi@ximian.com>
3103 * DataGridBoolColumn.cs: fixes warning
3105 2005-10-16 Jordi Mas i Hernandez <jordi@ximian.com>
3107 * ControlPaint.cs: Fixes methods Dark, DarkDark, Light, LightLight
3108 to match more to match more precisely the MS Net behavior
3110 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3112 * Hwnd.cs: Added field to track if window is mapped
3114 - Unmap windows if they become 0-size, re-map when
3115 they are >0 again; fixes #76035
3116 - Re-set our error handler after initializing X11Desktop
3117 to override any error handlers Gtk or whatever was called
3120 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3122 * CheckedListBox.cs: Removed unused vars
3123 * ListView.cs: Fixed signatures
3124 * RichTextBox.cs: Removed unused vars
3125 * TextBoxBase.cs: Removed unused vars
3126 * XplatUIWin32.cs: Removed unused vars
3127 * XplatUIX11.cs: Removed unused vars
3128 * XplatUI.cs: Updated version and date to latest published
3130 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3132 * Cursor.cs: Added private .ctor to work around a bug in
3133 resourceset (Thanks to Geoff Norton for the help on this)
3134 * SplitterEventArgs.cs: Made fields accessible so we don't
3135 waste boatloads of objects and can reuse the same one
3137 * XplatUIWin32.cs(DrawReversibleLine): Now also considers
3138 any captions and borders when generating screen coordinates
3139 * Splitter.cs: Reimplemented control, now fully complete, uses
3140 rubberband drawing, supports and obeys all properties, has
3143 2005-10-13 Miguel de Icaza <miguel@novell.com>
3145 * Form.cs (Form): Setup default values for autoscale and
3146 autoscale_base_size; Make these instance variables, not static
3149 (OnLoad): on the first load, adjust the size of the form.
3151 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3153 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs: Added
3154 width argument to DrawReversibleRectangle()
3155 * XplatUIWin32.cs, XplatUIX11.cs:
3156 - Implemented width for DrawReversibleRectangle()
3157 - Added logic to DrawReversibleRectangle that recognizes a zero
3158 width or height and only draws a line in that situation
3160 2005-10-12 Peter Dennis Bartok <pbartok@novell.com>
3162 * XplatUI.cs, XplatUIDriver.cs: Added GetAutoScaleSize()
3163 * XplatUIOSX.cs: Stubbed GetAutoScaleSize() method
3164 * XplatUIWin32.cs, XplatUIX11.cs: Implemented GetAutoScaleSize()
3165 method (it uses our FosterParent window to get a graphics context)
3167 2005-10-12 Peter Dennis Bartok <pbartok@novell.com>
3169 * XplatUI.cs, XplatUIDriver.cs: Removed EraseWindowBackground
3170 and SetWindowBackground methods
3172 - Setting proper ControlStyles
3173 - We no longer call XplatUI.SetWindowBackground and XplatUI.
3174 EraseWindowBackground, instead we draw the window background
3175 ourselves in PaintControlBackground. This behaviour is
3176 required to match MS, where, when OnPaintBackground is not
3177 called, the background is not drawn.
3178 - Removed unneeded Refresh() in set_Text
3179 * Hwnd.cs: Dropped the ErasePending support. No longer needed
3181 - Created DeriveStyles method to translate from CreateParams to
3182 FormBorderStyle and TitleStyle, also handles BorderStyle (which
3183 matches FormBorderStyle enum values)
3184 - Consolidated SetHwndStyles and CalculateWindowRect border/title
3185 style calculations into single DeriveStyles method
3186 - Fixed CreateWindow to (finally) use Gravity. This prevents X11
3187 from redrawing the whole window on any resize or expose.
3188 - Fixed CreateWindow usage of SetWindowValuemask. Before not
3189 all styles were applied to our whole/client window appropriately
3190 - Removed EraseWindowBackground() and SetWindowBackground() methods
3191 - Removed handling of WM_ERASEBKGND message from DefWndProc, we
3192 no longer clear/redraw the background through X
3193 - Removed handling of erase_pending bit, we have no use for it (or
3196 - Removed generation and handling of WM_ERASEBKGND message
3197 - Removed EraseWindowBackground() and SetWindowBackground() methods
3198 - Removed handling of hwnd.ErasePending flag
3200 - Removed EraseWindowBackground() and SetWindowBackground() methods
3201 - We no longer call EraseWindowBackground on PaintEventStart, we
3202 ignore the fErase flag, erasing is handled in Control in the
3204 * Button.cs, GroupBox.cs, Label.cs, CheckBox.cs, ProgressBar.cs,
3205 LinkLabel.cs, ListControl.cs, TabPage.cs, UpDownBase.cs,
3206 TextBoxBase.cs, TextBox.cs, ListView.cs, ButtonBase.cs,
3207 CheckedListBox.cs, MdiClient.cs, Panel.cs, DataGrid.cs,
3208 DataGridTextBox.cs, ScrollBar.cs, ListBox.cs, TrackBar.cs,
3209 TabControl.cs, ScrollableControl.cs, ToolBar.cs, PictureBox.cs,
3210 DateTimePicker.cs, StatusBar.cs, MonthCalendar.cs: Setting proper ControlStyles
3212 2005-10-12 Jonathan Chambers <jonathan.chambers@ansys.com>
3214 * PropertyGrids.cs: Get sub properties
3215 * PropertyGridView.cs: Fix drawing code
3217 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
3219 * ListBox.cs: Fixes 76383
3221 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
3223 * DataGridTextBoxColumn.cs: Sets location and size before attachment
3224 * ThemeWin32Classic.cs: Fixes border drawing and calculations
3225 * DataGridDrawingLogic.cs: Fixes border drawing and calculations
3228 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
3230 * ComboBox.cs: Fixes border drawing
3232 2005-10-10 Miguel de Icaza <miguel@novell.com>
3234 * MimeIcon.cs: Ignore errors if the file can not be read.
3236 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
3238 * Theme.cs, ThemeWin32Classic.cs, ListBox.cs:
3239 - Fixed border calculations
3240 - Fixed horizontal scrolling in single column listboxes
3241 - Fixed drawing issues
3243 2005-10-10 Peter Dennis Bartok <pbartok@novell.com>
3245 * XplatUI.cs, XplatUIOSX.cs, XplatUIWin32.cs: Switched from BorderStyle to
3246 FormBorderStyle enum
3247 * XplatUIX11.cs: Switched BorderStyle to FormBorderStyle, added
3248 code to determine FormBorderStyles from CreateParams
3250 - Fixed bug where we'd set the wrong window styles if we were
3251 not creating an MDI window
3252 - Added call to XplatUI.SetBorderStyle when form borders are set
3253 * Control.cs: Casting BorderStyles to accommodate changed XplatUI APIs
3255 - Removed obsolete edge style
3256 - Switched from BorderStyle to FormBorderStyle
3258 2005-10-10 Jackson Harper <jackson@ximian.com>
3260 * Form.cs: Use the property to get the window handle instead of
3261 accessing it directly. Prevents a null reference exception.
3263 2005-10-10 Jackson Harper <jackson@ximian.com>
3265 * TreeView.cs: Don't adjust the rect given to DrawString now that
3266 our libgdiplus draws correctly.
3268 2005-10-08 Jackson Harper <jackson@ximian.com>
3270 * TreeView.cs: Don't try to find the clicked on node if there are
3271 no nodes in the tree.
3273 2005-10-08 Alexander Olk <alex.olk@googlemail.com>
3279 2005-10-08 Alexander Olk <alex.olk@googlemail.com>
3281 * ImageListStreamer.cs, TreeView.cs, UpDownBase.cs, RichTextBox.cs,
3282 ColorDialog.cs, TextControl.cs, Panel.cs, MdiChildContext.cs,
3284 Use ResPool for brushes and dispose System.Drawing objects that
3285 are not used anymore.
3287 2005-10-07 Jackson Harper <jackson@ximian.com>
3289 * MdiChildContext.cs: Use the new borders instead of drawing them
3292 2005-10-06 Jordi Mas i Hernandez <jordi@ximian.com>
3294 * Calling UpdateBounds after changing the window's BorderStyle
3295 since the style can change the ClientSize
3297 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3299 * Control.cs: Made PaintControlBackground virtual
3300 * Panel.cs: Overriding PaintControlBackground instead of using paint
3301 event; paint event method was interfering with 'real' users of the
3304 2005-10-06 Jordi Mas i Hernandez <jordi@ximian.com>
3306 * ThemeWin32Classic.cs: remove border drawing since it is handled
3307 by the base control class now and was causing double border drawing.
3309 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3311 * Panel.cs: Redraw our background on paint. Not a pretty solution,
3312 but it does seem to match MS behaviour. This fixes bug #75324
3314 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3316 * XplatUIX11.cs: A better DrawReversibleRectangle version, however
3317 somewhat hackish looking
3319 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3322 - We now accept Enter even if AcceptEnter is false, if the containing
3323 form does not have an AcceptButton configured (fixes bug #76355)
3324 - Calculations are now fixed to no longer use Width/Height, but
3325 ClientSize.Width/Height, since we now support borders (this was
3326 a result of fixing borders and therefore bug #76166)
3327 - We no longer show the horizontal scrollbar if TextBox.WordWrap is
3328 true (fixes bug #76354)
3330 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3333 - Defaulting BorderStyle and setting it in XplatUI when our window
3335 - Added enum check to InternalBorderStyle setter
3337 - Added drawing of window borders
3338 - Now properly calculates WM decorations offset for toplevel
3339 windows (fixes bug #74763)
3341 - Implemented BorderStyles for windows (we're letting win32 draw
3343 - Fixed the signature for SetWindowLong
3344 * PictureBox.cs, DataGrid.cs, TextBoxBase.cs, ToolBar.cs, Panel.cs,
3345 ListBox.cs, Label.cs: Now uses Control.InternalBorderStyle for
3347 * UpDownBase.cs: Remove drawing of borders, this is handled by
3348 the driver, outside the client area
3349 * ListView.cs: Removed bogus border calculations. The control should
3350 be oblivious to borders, since those are not part of the client
3352 * X11DesktopColors.cs: Commented out (currently) unneeded variables
3353 * ThemeWin32Classic.cs: Removed border calculations from ListView
3356 2005-10-06 Jackson Harper <jackson@ximian.com>
3358 * MdiChildContext.cs: Clear out the old virtual position remove
3359 all the unneeded calls to CreateGraphics.
3361 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3363 * TextControl.cs: Use proper color for highlighted text; fixes #76350
3365 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3368 - Added loading and setting of our new default icon
3369 - Only set icon if window is already created
3371 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
3374 - Do not explicitly set the foreground and background colors, to
3375 allow inheriting from parents (fixes #76302)
3376 - Use Control's InternalBorderStyle property to deal with borders
3378 2005-10-06 Jackson Harper <jackson@ximian.com>
3380 * MdiChildContext.cs: Use the new xplatui function to draw a
3383 2005-10-06 Jackson Harper <jackson@ximian.com>
3385 * Form.cs: Add the parent before creating the child context cause
3386 we need the parent when setting up the child.
3388 2005-10-06 Jackson Harper <jackson@ximian.com>
3390 * FolderBrowserDialog.cs: redo the tree population code so a
3391 second thread isn't used. Should be a lot faster and more stable
3394 2005-10-05 Jackson Harper <jackson@ximian.com>
3396 * TreeView.cs: There are no expand/collapse boxes if the node has
3399 2005-10-05 Jackson Harper <jackson@ximian.com>
3401 * X11DesktopColors.cs: Get menu colours for the gtk theme.
3403 2005-10-05 Alexander Olk <alex.olk@googlemail.com>
3405 * FileDialog.cs: Fix InitialDirectory
3407 2005-10-05 Jordi Mas i Hernandez <jordi@ximian.com>
3410 - Fixes changing between styles
3412 - Fixes last item crashing when navigating with keyboard
3414 2005-10-05 Jordi Mas i Hernandez <jordi@ximian.com>
3416 * LinkLabel.cs: Related to 76045. Stops the LinkLabel been drawn as a Label
3418 2005-10-05 Jackson Harper <jackson@ximian.com>
3420 * TreeView.cs: If updating the root node do a full refresh.
3421 * TreeNode.cs: The root node should be expanded by default. Also
3422 added a utility prop to tell if we are the root node.
3423 * TreeNodeCollection.cs: Only refresh if the node we are being
3424 added to is expanded. Also added a comment on a potential
3427 2005-10-04 Peter Dennis Bartok <pbartok@novell.com>
3429 * Cursor.cs, Hwnd.cs: Added call to GC.SuppressFinalize()
3430 in dispose method. Fixes #76330
3432 2005-10-04 Jordi Mas i Hernandez <jordi@ximian.com>
3434 * ListView.cs, ThemeWin32Classic.cs, ListViewItem.cs:
3436 - Implements vertical and horizontal scrolling using XplatUI
3437 - Fixes keyboard navagation
3438 - Fixes EnsureVisible
3440 - Handles and draws focus properly
3443 2005-10-04 Kornél Pál <kornelpal@hotmail.com>
3445 * ImageList.cs: Use upper case initials for internal fields. ImageStream:
3446 Create handle. NET_2_0: Destroy handle when value is null.
3448 2005-10-03 Jackson Harper <jackson@ximian.com>
3450 * ScrollBar.cs: My last scrollbar patch was broken. This is a
3451 revert and a new patch to prevent the thumb from refreshing so
3454 2005-10-02 Jackson Harper <jackson@ximian.com>
3456 * ScrollBar.cs: Don't update position if it hasn't actually
3457 changed. This occurs when you hold down the increment/decrement
3458 buttons and the thumb gets to the max/min.
3460 2005-10-01 Jackson Harper <jackson@ximian.com>
3463 * MdiChildContext.cs:
3464 * MdiClient.cs: Implement ActiveMdiChild in Form.
3466 2005-10-01 Jordi Mas i Hernandez <jordi@ximian.com>
3468 * ComboBox.cs: Include ComboBoxEdit flag for the edit item
3470 2005-10-01 Peter Dennis Bartok <pbartok@novell.com>
3472 * X11DesktopColors.cs: Bow out gracefully if the Gtk libs cannot
3475 2005-09-30 Jackson Harper <jackson@ximian.com>
3477 * ListBox.cs: Don't do a full refresh unless some data has
3480 2005-09-30 Jackson Harper <jackson@ximian.com>
3482 * TreeView.cs: Make sure that the checkboxes size is factored in
3483 even when not visible.
3485 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
3487 * FileDialog.cs: Fix Jordi's build break
3489 2005-09-30 Jordi Mas i Hernandez <jordi@ximian.com>
3492 - Use standard the Windows colours for the combobox as espected
3493 - Dispose objects that use resouces when no longer need them
3495 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
3497 * X11DesktopColors.cs: Initial incomplete implementation
3498 * XplatUIX11.cs: Added call to initialize X11DesktopColors
3500 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
3503 - Switched Theme color names to match the names defined in
3504 System.Drawing.KnownColors. Life's hard enough, no need to make
3506 - Added setters to all theme color properties so themes can set
3507 their color schemes. The setters also propagate the color changes
3508 to System.Drawing.KnownColors via reflection
3509 * ControlPaint.cs, Label.cs, TextControl.cs, ToolTip.cs, ThemeNice.cs,
3510 ComboBox.cs, MdiChildContext.cs, TextBoxBase.cs, DateTimePicker.cs
3511 DataGridColumnStyle.cs, MonthCalendar.cs, TreeView.cs: Updated to
3512 use the new, more logical theme color names
3513 * XplatUIWin32.cs: Updated the GetSysColorIndex enum to include new
3515 * ThemeWin32Classic.cs:
3516 - Removed code to set the old classic Windows colors. Instead it
3517 now relies on the colors returned by System.Drawing.KnownColors
3518 which will be either modern static colors (Unix) or colors
3519 read from the user's configuration (Win32)
3520 - Updated to use the new, more logical theme color names
3521 - Switched DataGrid drawing code to use only Theme colors instead of
3522 a mix of System.Drawing.KnownColors and Theme colors
3523 - DrawFrameControl(): Removed code that fills the button area, the
3524 fill would overwrite any previous fill done by a control. This
3526 - Added DrawReversibleRectangle() stub
3527 * ScrollableControl.cs: Set visible state to false when scrollbars
3528 are removed (pdn fix)
3529 * XplatUI.cs, XplatUIOSX.cs, XplatUIDriver.cs: Added
3530 DrawReversibleRectangle() method to allow drawing primitive
3532 * XplatUIX11.cs: Implemented DrawReversibleRectangle()
3534 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3536 * ImageList.cs: Add(Icon): Create handle.
3538 2005-09-30 Jordi Mas i Hernandez <jordi@ximian.com>
3541 * ThemeWin32Classic.cs:
3544 - Issues with drawing
3546 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3548 * ImageList.cs: Moved RecreateHandle back to ImageList as event
3549 source has to be the ImageList.
3551 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3553 * ImageList.cs: Add(Icon): Use Graphics.DrawIcon instead of Icon.ToBitmap.
3555 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3557 * ImageList.cs: ReduceColorDepth: Clean up pointer operations.
3559 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3561 * ImageList.cs: ImageCollection: Removed owner field as it is no more used.
3563 2005-09-29 Jonathan Chambers <jonathan.chambers@ansys.com>
3564 * GridItem.cs: Fixed TODOs
3565 * GridItemCollection.cs: Added ICollection interface
3567 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
3569 * ImageList.cs: Resize icons when needed.
3571 2005-09-29 Jordi Mas i Hernandez <jordi@ximian.com>
3574 - Fixes GetBounds and returns on screen rects
3576 - Fixes vertical and horzintal scrolling of items
3577 * ThemeWin32Classic.cs:
3580 2005-09-29 Raja R Harinath <harinath@gmail.com>
3582 * ImageList.cs (ImageStream) [NET_2_0]: Reflect re-factoring.
3584 2005-09-29 Kornél Pál <kornelpal@hotmail.com>
3586 * ImageList.cs: Added comments about handle creation. Moved Handle,
3587 HandleCreated and OnRecreateHandle implementations to ImageCollection.
3588 Handle is created in Add methods.
3590 2005-09-28 Jordi Mas i Hernandez <jordi@ximian.com>
3592 * DataGridDrawingLogic.cs:
3593 - Takes rows into account on Colum calculations
3594 - Returns the column when clickig
3596 - Fixes default HitTestInfo values
3597 - Fixes HitTestInfo.ToString
3598 - Fixes ResetBackColor
3600 2005-09-28 Jackson Harper <jackson@ximian.com>
3602 * MdiChildContext.cs: Obey rules for fixed sized windows (no
3603 sizing or cursor changes). Also added some temp code to draw the
3604 titlebars text (Makes dev a little easier).
3606 2005-09-28 Kornél Pál <kornelpal@hotmail.com>
3608 * ImageList.cs: AddStrip: Throw ArgumentException when Image is not a Bitmap.
3610 2005-09-28 Jordi Mas i Hernandez <jordi@ximian.com>
3612 * ListBox.cs: Fixes bug 76253
3614 2005-09-28 Kornél Pál <kornelpal@hotmail.com>
3616 * ImageList.cs: Added comments about the current implementation. Added
3617 ReduceColorDepth, IndexedColorDepths and GetNearestColor to can use
3618 Format32bppArgb to preserve transparency and can use Graphics.FromImage
3619 while using the specified ColorDepth. ReduceColorDepth uses unsafe code
3620 with Bitmap.LockBits for better performance. Revised the whole file to
3621 match MS.NET behaviour and provide better performance. Non-public
3622 interface members are calling public members even when they throw
3623 NotSupportedException for better maintainability. Moved ColorDepth,
3624 ImageSize, ImageStream and TransparentColor implementations to
3625 ImageCollection for better performance as these properties are not used
3627 * ImageListStreamer.cs: Added a new internal constructor that takes an
3628 ImageList.ImageCollection and serializes Images based on
3629 ImageCollection.ToArray(). Renamed ImageColorDepth to ColorDepth to
3630 match ImageList property name.
3632 2005-09-28 Kazuki Oikawa <kazuki@panicode.com>
3634 * ListBox.cs: Fixes IndexFromPoint for last item
3636 2005-09-27 Jackson Harper <jackson@ximian.com>
3638 * Form.cs: Set the position of new mdi children correctly.
3640 2005-09-27 Jackson Harper <jackson@ximian.com>
3642 * MdiClient.cs: New mdi children need to be added to the back of
3643 the controls collection so the zorder is set correctly. Also add a
3644 count of all the child windows that have been created.
3646 2005-09-27 Jackson Harper <jackson@ximian.com>
3648 * Form.cs (CreateParams): Setup MDI forms correctly.
3650 2005-09-27 Jackson Harper <jackson@ximian.com>
3652 * MdiChildContext.cs:
3659 * ScrollableControl.cs:
3660 * ComboBox.cs: Add implicit controls using the new implict control
3661 functionality in ControlCollection. Also try to block multiple
3662 control add in a suspend/resume layout to save some cycles.
3664 2005-09-27 Jackson Harper <jackson@ximian.com>
3666 * Control.cs: Add functionality to the controls collection to add
3667 'implicit controls' these are controls that are created by the
3668 containing control but should not be exposed to the user. Such as
3669 scrollbars in the treeview.
3670 * Form.cs: The list var of the ControlsCollection is no longer
3671 available because of the potential of implicit controls getting
3672 ignored by someone accessing the list directly.
3674 2005-09-26 Peter Dennis Bartok <pbartok@novell.com>
3676 * Control.cs: Fixed SetChildIndex; it no longer causes a child to
3677 loose it's parent. (Fixed bug introduced in r49103 when we added
3678 setting the child parent to null on Remove)
3680 2005-09-26 Gert Driesen <drieseng@users.sourceforge.net>
3682 * DataGridBoolColumn.cs: Marked CheckState private to fix public API.
3683 * Splitter.cs: Added missing attributes for BorderStyle property.
3684 * TextBoxBase.cs: Marked Calculate* methods internal.
3685 * TextBox.cs: Fixed DefaultValue for PasswordChar property to match
3688 2005-09-26 Jordi Mas i Hernandez <jordi@ximian.com>
3690 * ListBox.cs: Fixes navigation to the last item in multicolumn lists
3692 2005-09-25 Jackson Harper <jackson@ximian.com>
3694 * TreeView.cs: Update the node bounds correctly regardless of
3695 whether the node is visible.
3697 2005-09-25 Jackson Harper <jackson@ximian.com>
3699 * ImageList.cs: Don't dispose the image after it is added to the
3700 image list. Only reformat images that need to be resized.
3702 2005-09-25 Jackson Harper <jackson@ximian.com>
3704 * ImageList.cs: Don't set the format when changing the image.
3706 2005-09-25 Jackson Harper <jackson@ximian.com>
3708 * TreeView.cs: We can't just assume the node has a font. Use the
3709 treeviews font if no node font is available.
3711 2005-09-25 Jackson Harper <jackson@ximian.com>
3713 * TreeView.cs: Allow the scrollbars to be reset with negative
3715 - Don't add scrollbars to negative sized windows.
3717 2005-09-23 Jackson Harper <jackson@ximian.com>
3719 * XplatUIX11.cs: Update to use Mono.Posix.Native instead of plain
3720 old Mono.Posix. Also remove some stray code that shouldn't have
3723 2005-09-23 Jackson Harper <jackson@ximian.com>
3725 * TreeView.cs: Attempt at proper sizing of the horizontal
3726 scrollbar. Also don't resize the scrollbars unless they are
3729 2005-09-23 Jackson Harper <jackson@ximian.com>
3731 * TreeView.cs: We don't need to expand the invalid area when the
3732 selection changes, as this is all drawn in the node's bounding
3733 box. The area needs to be expanded (previous typo was contracting
3734 it) when the focus rect moves.
3736 2005-09-23 Jackson Harper <jackson@ximian.com>
3738 * TreeView.cs: Display the selection box under the correct
3739 circumstances. We were rendering white text with no selection box
3742 2005-09-23 Peter Dennis Bartok <pbartok@novell.com>
3744 * TextControl.cs(Split): Now updates selection start/end if it points
3745 into a line that's being split. Fixes a FIXME and bug #75258
3747 2005-09-23 Jackson Harper <jackson@ximian.com>
3750 * ListControl.cs: Don't use the path when retrieving binding
3751 managers from the binding context. My bat sense tells me that the
3752 path is only used on insertion.
3754 2005-09-22 Jackson Harper <jackson@ximian.com>
3756 * Splitter.cs: Set the cursor an easier way. (Thanks peter).
3758 2005-09-22 Jackson Harper <jackson@ximian.com>
3760 * Splitter.cs: There are special cursors used for splitting.
3761 * XplatUIX11.cs: The VSplit and HSplit cursors were backwards.
3763 2005-09-22 Jackson Harper <jackson@ximian.com>
3765 * Splitter.cs: Change the cursor appropriately when the splitter
3766 is moused over, so the user actually knows there is a splitter
3769 2005-09-22 Hisham Mardam Bey <hisham.mardambey@gmail.com>
3771 * Label.cs : Fix ToString method to give same output as MS.NET
3773 2005-09-22 Jackson Harper <jackson@ximian.com>
3775 * TreeView.cs: Create the scrollbars when the handle is created
3776 and add them right away, just make them invisble. Also account for
3777 the window being shrunk vertically to the point that the vert
3778 scrollbar needs to be added.
3779 - Remove some 0.5 adjustments to get around anti aliasing issues.
3781 2005-09-22 Jordi Mas i Hernandez <jordi@ximian.com>
3783 * MainMenu.cs: Fixes default value
3784 * MenuItem.cs: Fixes default value
3786 2005-09-22 Kazuki Oikawa <kazuki@panicode.com>
3788 * AsyncMethodResult.cs: Fixes Control.Invoke is blocked infinitely.
3790 2005-09-21 Jackson Harper <jackson@ximian.com>
3792 * Control.cs: Don't try to set the border style on the window if
3793 it hasn't been created. When the window is created the border
3796 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
3798 * Control.cs (Update): Don't call XplatUI if we don't have a
3801 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
3803 * ContainerControl.cs: Instead of throwing an exception, print
3804 a one-time warning about Validate not being implemented
3805 * XplatUIWin32.cs: Removed debug output
3807 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
3809 * Control.cs: Only set XplatUI background if we expect the windowing
3810 system to handle the background. This stops controls that draw their
3811 own background from flickering
3813 * XplatUIX11.cs: Support custom visuals and colormaps for window
3814 creation. This allows, amongst other things, using MWF X11 windows
3817 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
3819 * OpenFileDialog.cs, ContentsResizedEventArgs.cs, LibSupport.cs, GridItem.cs,
3820 CursorConverter.cs, SplitterEventHandler.cs, PropertyGridTextBox.cs,
3821 GridTablesFactory.cs, MethodInvoker.cs, AccessibleEvents.cs,
3822 SplitterEventArgs.cs, XplatUI.cs, Mime.cs, PropertySort.cs,
3823 TreeViewCancelEventHandler.cs, Form.cs, PropertyGridCommands.cs,
3824 IDataGridEditingService.cs, DateBoldEventHandler.cs, Label.cs,
3825 KeyboardLayouts.cs, TextControl.cs, ProgressBar.cs, ToolTip.cs,
3826 RadioButton.cs, OSFeature.cs, LinkLabel.cs, ColorDialog.cs,
3827 ThemeNice.cs, ErrorIconAlignment.cs, TreeNode.cs, MimeGenerated.cs,
3828 ComboBox.cs, DataGridTextBoxColumn.cs, ArrangeStartingPosition.cs,
3829 GridColumnStylesCollection.cs,
3830 IDataGridColumnStyleEditingNotificationService.cs,
3831 PropertyGrid.cs, IFeatureSupport.cs, ICommandExecutor.cs,
3832 MdiLayout.cs, GridEntry.cs, ControlBindingsCollection.cs,
3833 GridTableStylesCollection.cs, TreeViewCancelEventArgs.cs,
3834 TreeNodeCollection.cs, AmbientProperties.cs,
3835 RichTextBoxSelectionAttribute.cs, RichTextBoxSelectionTypes.cs,
3836 DataObject.cs, ErrorProvider.cs, Splitter.cs,
3837 DataGridLineStyle.cs, Shortcut.cs, Control.cs,
3838 FontDialog.cs, SecurityIDType.cs, GridItemType.cs,
3839 BindingMemberInfo.cs, DataGridCell.cs, MdiChildContext.cs,
3840 IRootGridEntry.cs, PropertyGridView.cs, DataGridParentRowsLabelStyle.cs,
3841 FolderBrowserDialog.cs, OpacityConverter.cs, HelpProvider.cs,
3842 IComponentEditorPageSite.cs, DataGridTableStyle.cs, NavigateEventArgs.cs,
3843 NotifyIcon.cs, ContentsResizedEventHandler.cs, MenuItem.cs,
3844 PropertyTabChangedEventHandler.cs, TextBoxBase.cs, OpenTreeNodeEnumerator.cs,
3845 SelectionMode.cs, TextBox.cs, ListBindingConverter.cs,
3846 FileDialog.cs, KeysConverter.cs, DomainUpDown.cs,
3847 DataFormats.cs, SaveFileDialog.cs, GridItemCollection.cs,
3848 ArrangeDirection.cs, FeatureSupport.cs, SelectionRangeConverter.cs,
3849 RichTextBoxScrollBars.cs, NodeLabelEditEventHandler.cs, TreeNodeConverter.cs,
3850 MimeIcon.cs, X11Structs.cs, PropertyGridEntry.cs,
3851 ImageList.cs, ThemeWin32Classic.cs, X11Keyboard.cs,
3852 CheckedListBox.cs, HelpNavigator.cs, DateTimePickerFormat.cs,
3853 MdiClient.cs, DataGridDrawingLogic.cs, DataGridBoolColumn.cs,
3854 NodeLabelEditEventArgs.cs, Screen.cs, PropertyManager.cs,
3855 ComponentModel.cs, PropertiesTab.cs, CurrencyManager.cs,
3856 SizeGrip.cs, DateBoldEventArgs.cs, X11Dnd.cs, Panel.cs,
3857 Hwnd.cs, OSXStructs.cs, DrawMode.cs, XplatUIDriver.cs,
3858 RichTextBox.cs, PropertyTabChangedEventArgs.cs, CommonDialog.cs,
3859 DataGrid.cs, XplatUIX11.cs, RichTextBoxStreamType.cs, Win32DnD.cs,
3860 ErrorBlinkStyle.cs, TreeViewEventHandler.cs,
3861 PropertyValueChangedEventHandler.cs, IFileReaderService.cs,
3862 DataGridTextBox.cs, SelectedGridItemChangedEventArgs.cs, ScrollBar.cs,
3863 ListBox.cs, TreeViewAction.cs, Help.cs, TrackBar.cs,
3864 AxHost.cs, PropertyValueChangedEventArgs.cs, XplatUIOSX.cs,
3865 RichTextBoxFinds.cs, UpDownEventArgs.cs, Cursors.cs,
3866 CategoryGridEntry.cs, RichTextBoxWordPunctuations.cs, DataGridColumnStyle.cs,
3867 SelectedGridItemChangedEventHandler.cs, DateTimePicker.cs, NavigateEventHandler.cs,
3868 Clipboard.cs, UpDownEventHandler.cs, MonthCalendar.cs,
3869 SendKeys.cs, DataGridPreferredColumnWidthTypeConverter.cs, TreeView.cs,
3870 ThreadExceptionDialog.cs, ImageListConverter.cs, XplatUIWin32.cs,
3871 TreeViewEventArgs.cs: Fixed whitespace and set eol-style:native attribute
3873 2005-09-21 Jackson Harper <jackson@ximian.com>
3875 * TreeNode.cs: Call Before/After Expand not Collapse when
3878 2005-09-20 Jackson Harper <jackson@ximian.com>
3880 * XplatUIX11.cs: Use the more hand looking hand (in most themes).
3882 2005-09-16 Jordi Mas i Hernandez <jordi@ximian.com>
3886 - Fixes proper storing of subitems
3887 - Fixes not updated items
3889 2005-09-20 Peter Dennis Bartok <pbartok@novell.com>
3891 * Control.cs, TextBoxBase.cs, TextControl.cs: Don't do certain
3892 things if our window handle isn't created yet. Also disabled
3893 debug for TextBoxBase
3895 2005-09-20 Peter Dennis Bartok <pbartok@novell.com>
3897 * MenuAPI.cs: Remove filtering of events to allow menu usage
3899 2005-09-20 Miguel de Icaza <miguel@novell.com>
3901 * Cursor.cs: Allow null to be passed to Cursor.Current.
3903 2005-09-20 Alexander Olk <alex.olk@googlemail.com>
3905 * ThemeWin32Classic.cs:
3906 - Change some private methods/fields to protected virtual so that
3907 they can be accessed and overriden in derived classes
3908 - First refactoring of some methods. Derived themes now don't
3909 need to duplicate the complete code from ThemeWin32Classic
3911 - Added nice StatusBar
3912 - Derive from ThemeWin32Classic and not Theme
3913 - Removed duplicate ThemeWin32Classic code
3915 2005-09-20 Miguel de Icaza <miguel@novell.com>
3917 * Control.cs (ControlCollection.Add): If the value null is passed
3918 the control is ignored.
3922 2005-09-19 Peter Dennis Bartok <pbartok@novell.com>
3924 * MenuAPI.cs: Replaced Application.Run() with a loop that tracks
3925 PostQuitMessage state.
3926 * XplatUIWin32.cs: Removed bogus PostQuitMessage P/Invoke with HWND arg
3928 2005-09-19 Peter Dennis Bartok <pbartok@novell.com>
3930 * Application.cs: Our constructor will never get called, move
3931 initialization to fields; fixes bug #75933
3933 2005-09-19 Hisham Mardam Bey <hisham.mardambey@gmail.com>
3936 - Allow files to be selected properly using file name
3938 - Add ability to change diretory (absolute / relative)
3939 using file name combo box.
3941 2005-09-16 Jordi Mas i Hernandez <jordi@ximian.com>
3944 - Fixes Multicolumn listboxes item wrong calculations
3945 - Allows to click when only one item is in the listbox
3946 - Fixes crash when no items using keyboard navigation
3948 2005-09-16 Alexander Olk <alex.olk@googlemail.com>
3950 * ComboBox.cs: Reverted almost everything from the latest patch which
3953 2005-09-16 Kazuki Oikawa <kazuki@panicode.com>
3956 - Fixed #Mtd2 of ToolTipTest.RemoveToolTipTest.
3958 - When DropDownStyle is Simple, it does not show scrollbar
3959 to the last item of the list.
3960 - When DropDownStyle is Simple, it crashed when the list was
3961 scrolled down with the down cursor key.
3962 - Fixed a bug that when DropDownStyle is DropDownList, the
3963 selected item was not shown.
3964 - The position of the selected item was not preserved when
3965 the next dropdown happened.
3966 * ThemeWin32Classic.cs:
3967 - Items were wrapped at the right end.
3968 * CheckedListBox.cs:
3971 - Items should be fully shown.
3972 - When resizing and vertical scrollbar disappeared, the item
3973 of index 0 should be on the top of the list.
3974 - GetItemRectangle should consider the size of ver. scrollbar
3976 - SizingGrip area should not be allocated when it is not
3978 - Now it reflects MinWidth of the containing panel and
3979 fixed a crash that happens when its width becomes so small.
3981 2005-09-13 Jordi Mas i Hernandez <jordi@ximian.com>
3983 * CheckedListBox.cs: Fixes bug 76028
3984 * ListBox.cs: Fixes bug 76028
3986 2005-09-13 Jordi Mas i Hernandez <jordi@ximian.com>
3988 * ThemeWin32Classic.cs: Sets clipping on DataGridPaintRowsHeaders
3989 * DataGridDrawingLogic.cs: fixes issues with Datagrid drawing
3991 2005-09-12 Jordi Mas i Hernandez <jordi@ximian.com>
3993 * XplatUIX11.cs: fixes System.NullReferenceException in some situations
3995 2005-09-09 Jonathan Chambers <jonathan.chambers@ansys.com>
3997 * IRootGridEntry.cs: Changed namespace to PropertyGridInternal
3999 2005-09-09 Jonathan Chambers <jonathan.chambers@ansys.com>
4001 * IRootGridEntry.cs: Added
4002 * PropertyGridCommands.cs: Added
4003 * PropertiesTab.cs: Added missing methods and property
4004 * PropertyGridView.cs: Made class internal
4005 * PropertyGridTextBox.cs: Made class internal
4007 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4009 * MimeIcon.cs: Try to check some other environment variables
4010 if "DESKTOP_SESSION" returns "default"
4012 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4014 * ThemeNice.cs: Corrected background colors (e.g. menus)
4015 * ColorDialog.cs: Use correct background colors for controls
4017 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4019 * ThemeNice.cs: Merged r49535 from ThemeWin32Classic
4021 2005-09-08 Peter Dennis Bartok <pbartok@novell.com>
4023 * RichTextBox.cs: Added initial implementation
4024 * lang.cs: Removed. Was accidentally checked in long time ago
4025 * TODO: Removed. Contents were obsolete
4027 2005-09-06 Jonathan Chambers <jonathan.chambers@ansys.com>
4029 * PropertiesTab.cs : Added
4031 2005-09-06 Jonathan Chambers <jonathan.chambers@ansys.com>
4033 * PropertyGrid.cs : Update
4034 * PropertyGridView.cs : Update
4035 * System.Windows.Forms.resx : Added images and strings
4037 2005-09-06 Peter Dennis Bartok <pbartok@novell.com>
4039 * ThemeNice.cs: Do not dispose Pens retrieved from ResPool
4041 2005-09-06 Peter Dennis Bartok <pbartok@novell.com>
4043 * XplatUIX11.cs: Force a flush after Ungrab; if case the app enters
4044 a busy loop right after the Ungrab the X11 display is otherwise
4047 2005-09-06 Jordi Mas i Hernandez <jordi@ximian.com>
4049 * ThemeWin32Classic.cs: Optimise the use of clipping
4051 2005-09-05 Jordi Mas i Hernandez <jordi@ximian.com>
4053 * DataGrid.cs: fixes recursion bug
4055 2005-09-03 Alexander Olk <alex.olk@googlemail.com>
4058 - Draw RadioButton and CheckBox Buttons with DrawButtonBase
4061 2005-09-02 Alexander Olk <alex.olk@googlemail.com>
4063 * ThemeNice.cs: Draw nice ProgressBars
4065 2005-09-01 Miguel de Icaza <miguel@novell.com>
4067 * VScrollBar.cs: Another buglet found by Aaron's tool.
4069 * ProgressBar.cs: Fix three recursive bugs found by Aaron Tomb's
4072 2005-08-30 Alexander Olk <alex.olk@googlemail.com>
4075 - Added nicer menu drawing
4079 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4081 * CreateParams.cs (ToString): Made output match MS
4082 * Control.cs (Text): Don't set Text or Focus via XplatUI unless
4083 handle is already created (to avoid forcing window creation)
4084 * XplatUIX11.cs: Set window text to caption after creating window,
4085 in case Text was set before window was created
4086 * Form.cs: Use this.Text instead of a static string as caption
4088 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4090 * NotifyIcon.cs: Don't set the window to visible; this screws
4091 up Win32 (causes WM_NCPAINT to be sent on Win32, which calls
4092 OnPaint without a bitmap)
4093 * XplatUIX11.cs: Removed Visible optimization in AddExpose; doesn't
4094 happen very often anyway; we could add the check to the WM_PAINT
4095 event generation code
4097 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4099 * NotifyIcon.cs: Fill the icon area with a background color, to
4100 avoid 'residue' when transparent icons are drawn
4102 - Handle whole_window == client_window when destroying windows
4103 - SystrayAdd(): Set client_window to whole_window value to
4104 get mouse and other events passed to NotifyIcon
4106 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4108 * Form.cs: Set proper default for Opacity property
4110 - ShowSystray(): Don't bother creating telling the OS
4111 about the systray item if no icon is provided
4112 - Now handles WM_NCPAINT message to deal with whole/client window
4114 - Create window as visible to not get caught by Expose optimization
4115 * Hwnd.cs: Removed debug message
4116 * ComboBox.cs, ScrollBar.cs, ListBox.cs, TrackBar.cs, TabControl.cs,
4117 StatusBar.cs, TreeView.cs, XplatUIOSX.cs, XplatUIWin32.cs: Switched
4118 PaintEventStart/End to use new client argument
4120 - Commented out debug messages
4121 - Switched PaintEventStart/End to use new client argument
4122 * XplatUI.cs: Added client window bool to PaintEventStart()/
4123 PaintEventEnd() calls, to support drawing in non-client areas
4125 - Added client window bool to PaintEventStart()/PaintEventEnd()
4126 calls, to support drawing in non-client areas
4127 - Added conditional compile to allow using MWF BeginInvoke
4130 - Added some conditional debug output
4131 - Fixed SystrayAdd() method to support new (for SystrayAdd, anyway)
4132 whole/client window split
4133 - Implemented handling of client argument to PaintEventStart()/End()
4135 - Throw exception if BeginInvoke() is called and the window handle
4136 or one of the window's parent handles is not created
4137 - Added conditional compile to allow using MWF BeginInvoke on
4139 - get_Parent(): Only sets parent if handle is created. This avoids
4140 forcing window handle creation when parent is set.
4141 - Now fires Layout and Parent changed events in proper order
4142 - Switched to use Handle instead of window.Handle for Z-Order setting,
4143 the get_Parent() patch above causes us to possibly get null for 'window'
4144 - Implemented handling of client argument to PaintEventStart()/End()
4145 - Now reports back to windows that WM_SETCURSOR was handled (to avoid
4147 - Now sends a Refresh() to all child windows when Refresh() is called
4149 2005-08-29 Peter Dennis Bartok <pbartok@novell.com>
4151 * Form.cs: Added (non-functional) Opacity property
4152 * XplatUIWin32.cs (SystrayAdd): Removed bogus line of code
4154 2005-08-29 Alexander Olk <xenomorph2@onlinehome.de>
4155 * ThemeNice.cs: New theme for MWF, based on ThemWin32Classic
4156 use export MONO_THEME=nice to activate it.
4157 Currently supported controls:
4161 - TabControl (TabAlignment.Top only, other will follow)
4162 * ThemeEngine.cs: Add theme nice
4163 * ButtonBase.cs: Redraw button on MouseEnter and MouseLeave everytime,
4166 2005-08-25 Jonathan Chambers <jonathan.chambers@ansys.com>
4168 * Splitter.cs: Resize docked control and its neighbor.
4170 2005-08-24 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
4171 -- Making Windows with Menus layout correctly --
4172 * Form.cs : The first leg of the fix
4173 Menu setter - adjust Client Size as needed to make space for the menu
4174 SetClientSizeCore - doesn't call base version to be able to pass the
4175 menu handle to XplatUI.CalculateWindowRect
4176 * Hwnd.cs: Fix for menu_height, now gets from MenuAPI.MENU
4177 * XplatUIX11.cs: The critical second leg of the fix
4178 GetWindowPos needs to use a recalculated client_rect
4179 so that resizing the window doesn't break layout of child controls.
4180 Also a more complete rule to avoid X Server roundtrips in SetWindowPos
4183 2005-08-23 Peter Dennis Bartok <pbartok@novell.com>
4185 * Label.cs: Now properly recalculates width and height on Font and Text
4186 changes if AutoSize is set
4188 2005-08-19 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
4189 * TreeView.cs : Revamped drawing logic, and support for FullRowSelect
4191 2005-08-19 Jordi Mas i Hernandez <jordi@ximian.com>
4193 * ImageList.cs: Makes ToString method compatible with MS
4195 2005-08-18 Jordi Mas i Hernandez <jordi@ximian.com>
4197 * MenuAPI.cs: fixes bug 75716
4199 2005-08-11 Umadevi S <sumadevi@novell.com>
4200 * Control.cs: Fixed Remove & RemoveAt to make the parent of the control null.
4202 2005-08-11 Umadevi S <sumadevi@novell.com>
4203 * Contorl.cs: Fixed ResetRightToLeft and ResetImeMode to work correctly
4205 2005-08-10 Umadevi S <sumadevi@novell.com>
4206 * CheckedListBox.cs: Fixed event firing on Adding to the CheckedListBox
4208 2005-08-07 Jordi Mas i Hernandez <jordi@ximian.com>
4210 * Menu.cs: fixes bug 75700
4211 * MenuAPI.cs: fixes navigation issues
4213 2005-08-09 Umadevi S <sumadevi@novell.com>
4214 * CheckedListBox.cs - simple fix for GetItemChecked.
4216 2005-08-08 Jordi Mas i Hernandez <jordi@ximian.com>
4218 * ComboBox.cs: Serveral fixes
4219 * ListBox.cs: Serveral fixes
4221 2005-08-05 Jordi Mas i Hernandez <jordi@ximian.com>
4223 * ComboBox.cs: Fixes FindString methods and GetItemHeight
4224 * ListBox.cs: Fixes FindString methods
4226 2005-08-05 Jordi Mas i Hernandez <jordi@ximian.com>
4228 * DataGrid.cs: fixes bugs exposed by new tests
4230 2005-08-04 Peter Dennis Bartok <pbartok@novell.com>
4232 * Mime.cs: Compile Mono assembly references only if compiling
4233 with Mono (Allows to build with VS.Net again)
4235 2005-07-28 Marek Safar <marek.safar@seznam.cz>
4237 * Control.cs (PaintControlBackground): Draw background image
4239 (CheckForIllegalCrossThreadCalls): Stubbed.
4241 * Form.cs (OnCreateControl): Center when should be centered.
4243 * ThemeWin32Classic.cs (DrawPictureBox): Pass size.
4245 2005-07-19 Jordi Mas i Hernandez <jordi@ximian.com>
4247 * Binding.cs: Binding to properties should be case unsensitive
4249 2005-07-18 vlindos@nucleusys.com
4251 * DataGrid.cs: fixes setmember order
4253 2005-07-07 Alexander Olk <xenomorph2@onlinehome.de>
4255 * MimeIcon.cs: added MimeIcon stuff (MimeIconEngine)
4256 * FileDialog.cs: FileDialog is now resizable and uses the new
4259 2005-07-06 Jordi Mas i Hernandez <jordi@ximian.com>
4261 * DataGridTextBoxColumn.cs: default value
4262 * GridColumnStylesCollection.cs: fixes event firing, checking MappingName
4263 * GridTableStylesCollection.cs: fixes checking MappingName
4264 * DataGridDrawingLogic.cs: fixes drawing logic issues
4265 * DataSourceHelper.cs: rewritten to make compatible with more data sources
4266 * DataGrid.cs: fixes
4268 2005-07-06 Alexander Olk <xenomorph2@onlinehome.de>
4270 * MimeGenerated.cs: Use case sensitive comparer for
4271 NameValueCollections
4273 2005-07-01 Jordi Mas i Hernandez <jordi@ximian.com>
4275 * DataGridTextBoxColumn.cs: bug fixes, code refactoring
4276 * ThemeWin32Classic.cs: bug fixes, code refactoring
4277 * DataGridDrawingLogic.cs: bug fixes, code refactoring
4278 * DataGrid.cs: bug fixes, code refactoring
4279 * DataGridTextBox.cs: bug fixes, code refactoring
4280 * DataGridColumnStyle.cs: bug fixes, code refactoring
4281 * Theme.cs: bug fixes, code refactoring
4283 2005-07-01 Peter Bartok <pbartok@novell.com>
4285 * TextControl.cs: Quick fix for the reported crash on ColorDialog
4286 and other text box usage
4288 2005-07-01 Jackson Harper <jackson@ximian.com>
4290 * TabControl.cs: Make sure the bottom of the tab covers the pages
4293 2005-06-30 Peter Bartok <pbartok@novell.com>
4295 * Form.cs (ShowDialog): Assign owner of the dialog
4296 * TextBoxBase.cs: Always refresh caret size when deleting, caret
4297 might have been moved to a tag with different height
4299 2005-06-30 Jackson Harper <jackson@ximian.com>
4301 * Form.cs: Don't create an infinite loop when setting focus
4302 * MenuItem.cs: Don't dirty the parents if we don't have any
4304 2005-06-29 Ben Maurer <bmaurer@ximian.com>
4306 * LibSupport.cs: Rename
4308 2005-06-29 Peter Bartok <pbartok@novell.com>
4310 * TextBoxBase.cs: Re-align caret after deleting a character
4312 - DeleteChars(): Ensure that tag covers the provided position
4313 - StreamLine(): Drop reference for dropped tag
4315 2005-06-29 Peter Bartok <pbartok@novell.com>
4318 - Selections now work properly, anchoring at the initial location
4319 and properly extending in either direction (SetSelectionToCaret(),
4320 SetSelectionStart() and SetSelectionEnd())
4321 - No longer redraws the whole control on selection change, now
4322 calculates delta between previous and new selection and only
4323 invalidates/redraws that area
4324 - Fixed FindPos() math off-by-one errors
4325 - Changed DeleteChars() to verify the provided tag covers the
4326 provided position, selections may have a tag that doesn't cover
4327 the position if the selection is at a tag border
4328 - Fixed off-by-one errors in DeleteChars()
4329 - Added missing streamlining check in DeleteChars() to remove
4331 - Implemented Invalidate() method, now properly calculates exposures
4332 between two given lines/positions
4333 - Implemented SetSelection()
4334 - Obsoleted and removed FixupSelection()
4335 - Improved RecalculateDocument() logic, removing code duplication
4337 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4339 * LibSupport.cs: changes to match different input/output arguments.
4341 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4343 * LibSupport.cs: added libsupport.so init routine.
4345 2005-06-29 Jordi Mas i Hernandez <jordi@ximian.com>
4347 * ControlBindingsCollection.cs
4348 - Throws an exception on null datasource when adding
4349 - Checks for duplicated bindings when adding
4351 2005-06-28 Jackson Harper <jackson@ximian.com>
4353 * TreeView.cs (OnKeyDown): Support left and right properly
4354 (navigates as well as expanding and collapsing.
4355 - Add support for Multiply, this expands all the selected nodes
4359 2005-06-28 Jackson Harper <jackson@ximian.com>
4361 * TreeView.cs: Implement keyboard navigation, currently supports,
4362 LEFT, RIGHT, UP, DOWN, PGUP, PGDOWN, HOME, END, ADD, SUBTRACT. Add
4363 support for toggling checkboxes with the space bar.
4365 2005-06-28 Jackson Harper <jackson@ximian.com>
4367 * OpenTreeNodeEnumerator.cs: Don't move past the begining of the
4370 2005-06-28 Jackson Harper <jackson@ximian.com>
4372 * TreeView.cs: Add missing event.
4374 2005-06-27 Peter Bartok <pbartok@novell.com>
4377 - Made line ending size configurable (now allows for counting
4378 lineendings as \n or \r\n)
4379 - Added margin to viewport to keep caret visible on right side
4380 - Fixed translation routines for line/pos to documentpos to consider
4381 cr/lf when counting (Fixes RichTextBox.SelectionFont issues)
4382 - Fixed some line-endings to be unix style
4383 - Fixed Document.FormatText to perform it's calculations 1-based
4384 - Added descriptions for a few methods that might otherwise get
4386 - Added NOTE section with some basic conventions to remember at
4388 - Major fixup for RichTextBox selection drawing:
4389 * Fixed crashes when multiple tags on a single line were selected
4390 * fixed selection box drawing not overlaying text
4391 * fixed bogus offset calculation for tags not starting at index 1
4392 * Switched behaviour from using multiple Substrings of a
4393 StringBuilder.ToString() to using multiple
4394 StringBuilder.ToString(start, length) statements, hoping this is
4395 faster (kept original version commented out in the code, in case
4396 original version was faster)
4397 * TextBox.cs (set_TextAlignment): TextBox always needs to wrap if
4399 * TextBoxBase.cs (CalculateDocument): Made protected so RichTextBox can
4402 2005-06-27 Jackson Harper <jackson@ximian.com>
4404 * TabControl.cs: Move to the left and right with the arrow
4405 keys. These keys don't cycle beyond first and last like
4406 tab. Refresh all the tabs when scrolling them to the left or
4409 2005-06-27 Jackson Harper <jackson@ximian.com>
4412 - ToString: Added method
4413 - CreateParams: Remove TODO and comment
4414 - OnKeyDown: Cycle through bounds properly.
4415 - SelectedIndex: Scroll to the right or left if we need to
4416 display the newly selected tab.
4418 2005-06-23 Jackson Harper <jackson@ximian.com>
4420 * TabControl.cs: Stay in bounds when cycling. Make sure Handled is
4423 2005-06-23 Jackson Harper <jackson@ximian.com>
4425 * TabControl.cs: Keyboard handling. We now support CTRL-TAB,
4426 CTRL-SHIFT-TAB, and HOME, END are there any others?
4428 2005-06-23 Jackson Harper <jackson@ximian.com>
4430 * XplatUIX11.cs: Get the modifier keys from the keyboard driver.
4432 2005-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
4434 * DataGridTextBoxColumn.cs: fixes and enhancements
4435 * ThemeWin32Classic.cs: fixes and enhancements
4436 * DataGridBoolColumn.cs: fixes and enhancements
4437 * DataGridDrawingLogic.cs: fixes and enhancements
4438 * CurrencyManager.cs: fixes and enhancements
4439 * DataGrid.cs: fixes and enhancements
4440 * DataGridColumnStyle.cs: fixes and enhancements
4442 2005-06-22 Jackson Harper <jackson@ximian.com>
4444 * TabControl.cs: Add some missing methods that just call into the
4445 base. Make the TabPageCollection's IList interface behave in the
4446 same manner as the MS implementation.
4448 2005-06-22 Peter Bartok <pbartok@novell.com>
4450 * TextControl.cs: Added sanity check
4452 - Fixed wrapping behaviour, don't set wrap on single line controls
4453 (this fixes the breakage of colordialog introduced in an earlier
4455 - Added rudimentary support for autoscrolling right-aligned controls
4456 (still needs fixing, also, center alignment scroll is missing)
4458 2005-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
4460 * ScrollBar.cs: Fixes thumbpos on Maximum values
4462 2005-06-21 Jonathan Chambers <jonathan.chambers@ansys.com>
4464 * PropertyGridView.cs: Pass context information to UITypeEditors
4466 2005-06-21 Peter Bartok <pbartok@novell.com>
4469 - Now calling PositionCaret with absolute space coordinates
4470 - Enabled vertical scrolling
4471 - Better tracking of scrollbar changes, tied into WidthChange
4473 - Improved cursor tracking
4474 - Removed debug output
4476 - PositionCaret coordinates are now works in absolute space, not
4478 - Improved tracking of document size
4479 - Added events for width and height changes
4481 2005-06-21 Peter Bartok <pbartok@novell.com>
4483 * Form.cs: Set focus to active control when form is activated
4485 - Added word-wrap functionality to RecalculateLine()
4486 - Added some short function descriptions for VS.Net to aid in
4487 writing dependent controls
4488 - Added Caret property, returning the current coords of the caret
4489 - Added ViewPortWidth and ViewPortHeight properties
4490 - Added Wrap property
4491 - Added CaretMoved event
4492 - Removed some old debug code
4493 - Split() can now create soft splits
4494 - Added PreviousTag()/NextTag() to allow walking "tag-lists"
4495 - Added method to format existing text
4496 - Fixed size/alignment calculations to use viewport
4497 - RecalculateDocument now can handle changing line-numbers while
4501 - Added some wrap logic, we don't wrap if alignment is not left
4502 - Added casts for scrollbar var, base class switched types to
4503 also support RichTextBoxA
4504 - Implemented handling of scrollbar visibility flags
4507 - Switched scrollbars type to RichTextBoxScrollBars to support
4509 - Added tracking of canvas width/height
4510 - Switched scrollbars to be not selectable (to keep focus on text)
4511 - Added central CalculateDocument() method to handle all redraw
4513 - Added ReadOnly support
4514 - Added WordWrap support
4515 - Fixed handling of Enter key (we now treat it as a DialogKey)
4516 - Fixed caret positioning when h or v scroll is not zero
4517 - Fixed placing/generation of vertical scrollbar
4518 - Added CalculateScrollBars() method to allow updating scrollbar
4519 limits and visibility
4520 - Fixed handling of horizontal scroll
4521 - Added handling of vertical scroll
4522 - Implemented auto-'jump' when caret moves to close to a left or
4523 right border and there is text to be scrolled into view (currently
4524 there's the potential for a stack overflow, until a bug in
4527 2005-06-21 Geoff Norton <gnorton@customerdna.com>
4529 * XplatUIOSX.cs: Initial implementation of WM_ERASEBKGND
4531 2005-06-19 Alexander Olk <xenomorph2@onlinehome.de>
4535 - return application/x-zerosize for files with size zero
4536 (if no extension pattern matches).
4537 - check matches collection for strings too.
4538 - return only the first mime type if the name value
4539 collection has more than one mime type.
4541 2005-06-18 Jonathan Chambers <jonathan.chambers@ansys.com>
4543 * PropertyGrid.cs: Cleaned up some TODOs
4544 * PropertyGridView.cs: Added support for UITypeEditors
4546 2005-06-17 Jordi Mas i Hernandez <jordi@ximian.com>
4548 * DataGrid.cs: clears cached value
4550 2005-06-17 Jordi Mas i Hernandez <jordi@ximian.com>
4552 * DataGridTextBoxColumn.cs: new rows, speed improvements, fixes, readonly prop.
4553 * DataGridDrawingLogic.cs: new rows, speed improvements, fixes, readonly prop.
4554 * DataGrid.cs: new rows, speed improvements, fixes, readonly prop.
4555 * DataGridColumnStyle.cs: new rows, speed improvements, fixes, readonly prop.
4557 2005-06-16 Jordi Mas i Hernandez <jordi@ximian.com>
4559 * ThemeWin32Classic.cs: fixes colour
4561 2005-06-15 Peter Bartok <pbartok@novell.com>
4563 * MWFCategoryAttribute.cs: Added (Needed for PropertyGrid designer support)
4564 * MWFDescriptionAttribute.cs: Added (Needed for PropertyGrid designer support)
4565 * ButtonBase.cs: Added MWFCategory and MWFDescription attributes
4566 * Control.cs: Added some MWFCategory and MWFDescription attributes
4567 * ScrollBar.cs: Added some MWFCategory and MWFDescription attributes
4569 2005-06-15 Alexander Olk <xenomorph2@onlinehome.de>
4571 * Mime.cs, MimeGenerated.cs: First draft of MWF mime stuff, see Mime.cs for
4574 2005-06-14 Jordi Mas i Hernandez <jordi@ximian.com>
4576 * DataGridTextBoxColumn.cs: default datagrid settings for Default Styles, fixes
4577 * DataGridTableStyle.cs: default datagrid settings for Default Styles, fixes
4578 * DataGridDrawingLogic.cs: default datagrid settings for Default Styles, fixes
4579 * DataGridBoolColumn.cs: default datagrid settings for Default Styles, fixes
4580 * DataGrid.cs: default datagrid settings for Default Styles, fixes
4581 * DataGridColumnStyle.cs: default datagrid settings for Default Styles, fixes
4583 2005-06-13 Jackson Harper <jackson@ximian.com>
4585 * XplatUIX11.cs: Override SetAllowDrop on X11 so an error message
4586 isn't printed when the user enables dropping. (X11 does accept
4589 2005-06-13 Jackson Harper <jackson@ximian.com>
4591 * TreeView.cs: Remove some TODOS.
4593 2005-06-13 Jackson Harper <jackson@ximian.com>
4595 * Form.cs: Hook into the mdi framework.
4596 * MdiClient.cs: Use the base control collections add method so
4597 parents get setup correctly. Set the default back colour and dock
4599 * MdiChildContext.cs: New class, this bad actor handles an
4600 instance of an MDI window. Right now there is only basic
4601 support. You can drag, close, and resize windows. Minimize and
4602 Maximize are partially implemented.
4604 2005-06-13 Jackson Harper <jackson@ximian.com>
4606 * XplatUIX11.cs: Mash numbers together properly, otherwise we get
4607 freaky when both vals are negative. NOTE: There are probably other
4608 places in XplatUIX11 that this needs to be done.
4610 2005-06-13 Jordi Mas i Hernandez <jordi@ximian.com>
4612 * DataGrid.cs: implement missing methods, move KeyboardNavigation
4613 * DataGridColumnStyle.cs: fixes signature
4615 2005-06-12 Jackson Harper <jackson@ximian.com>
4617 * XplatUIX11.cs: Use sizing cursors similar to the ones on
4620 2005-06-11 Jackson Harper <jackson@ximian.com>
4622 * StatusBarPanel.cs: Signature cleanups. Implement
4625 2005-06-10 Jordi Mas i Hernandez <jordi@ximian.com>
4627 * DataGridTextBoxColumn.cs: Honors aligment
4628 * GridColumnStylesCollection.cs: Contains is case unsensitive
4629 * GridTableStylesCollection.cs: several fixes
4630 * DataGridTableStyle.cs: default column creation
4631 * DataGridDrawingLogic.cs: fixes
4632 * CurrencyManager.cs: ListName property
4633 * DataGrid.cs: multiple styles support
4634 * DataGridColumnStyle.cs: fixes
4637 2005-06-10 Peter Bartok <pbartok@novell.com>
4639 * Control.cs(Select): Moved SetFocus call to avoid potential
4640 loops if controls change the active control when getting focus
4641 * UpDownBase.cs: Fixes to allow proper keyboard focus after clicking
4644 2005-06-10 Matthias Felgner <matthiasf@voelcker.ocm>
4646 * ImageListConverter.cs: Implemented
4648 2005-06-10 John BouAntoun <jba-mono@optusnet.com.au>
4650 * MonthCalendar.cs: Wired in NumericUpDown control for year
4652 2005-06-10 John BouAntoun <jba-mono@optusnet.com.au>
4654 * MonthCalendar.cs: Removed MonoTodo attributes on Click and
4655 DoubleClick events, since they are not meant to be fired.
4657 2005-06-09 Peter Bartok <pbartok@novell.com>
4659 * UpDownBase.cs, NumericUpDown.cs, DomainUpDown.cs: Integrated
4660 Jonathan's standalone controls into MWF, implemented missing
4661 events, attributes and methods; added xxxAccessible classes
4662 * AccessibleObject.cs: Made fields internal so other classes
4663 can change them if needed
4665 2005-06-09 Jonathan Gilbert <2a5gjx302@sneakemail.com>
4667 * UpDownBase.cs: Complete implementation
4668 * NumericUpDown.cs: Complete implementation
4669 * DomainUpDown.cs: Complete implementation
4671 2005-06-09 Jordi Mas i Hernandez <jordi@ximian.com>
4673 * DataGridTextBoxColumn.cs: drawing fixes
4674 * DataGridCell.cs: fixes ToString method to match MSNet
4675 * DataGridTableStyle.cs: fixes
4676 * DataGridBoolColumn.cs: fixes, drawing
4677 * DataGridDrawingLogic.cs: fixes, new methods
4678 * DataGridTextBox.cs: Keyboard and fixes
4680 - Keyboard navigation
4682 - Row selection (single, multiple, deletion, etc)
4685 2005-06-07 Jackson Harper <jackson@ximian.com>
4687 * ThemeWin32Classic.cs: Clear the background area when drawing
4690 2005-06-06 Peter Bartok <pbartok@novell.com>
4692 * ImageListStreamer.cs: Fixed signature for GetData
4693 * CheckBox.cs: Fixed base class for CheckBoxAccessibleObject
4695 - Added missing ChildAccessibleObject class
4696 - Added missing OnXXXFocus overrides, switched to using those
4697 instead of the event handler
4699 - Added Parent property for ControlAccessibleObject
4702 - Added ResetBindings()
4703 * ListBindingConverter.cs: Implemented some methods
4704 * ButtonBase.cs: Added missing ButtonBaseAccessibleObject class
4705 * ImageList.cs: Implemented basic handle scheme, removed TODOs
4706 * ContainerControl.cs: Fixed signature, now subscribing to the
4707 ControlRemoved event instead of overriding the handler, LAMESPEC
4708 * CurrencyManager.cs: Added missing attribute
4709 * MonthCalendar.cs: Added missing properties
4711 2005-06-06 Jordi Mas i Hernandez <jordi@ximian.com>
4713 * DataGridColumnStyle.cs: fixes for DataGridColumnStyle
4715 2005-06-06 Gaurav Vaish and Ankit Jain
4717 * DataSourceHelper.cs: Gaurav Vaish and Ankit Jain patch for databinding
4718 * DataGrid.cs: Gaurav Vaish and Ankit Jain patch for databinding
4720 2005-06-06 Jordi Mas i Hernandez <jordi@ximian.com>
4722 * Control.cs: fixes CreateParams Width / Height.
4724 2005-06-05 Peter Bartok <pbartok@novell.com>
4726 * Win32DnD.cs: Removed compilation warnings
4728 2005-06-05 Peter Bartok <pbartok@novell.com>
4730 * Control.cs (CreateParams): Since we don't know if one of the
4731 properties we use is overridden, lets make sure if we fail accessing
4732 we continue with a backup plan
4734 2005-06-05 Peter Bartok <pbartok@novell.com>
4737 - Removed debug output
4738 - Added MarshalAs attribute to ensure proper marshalling of FORMATETC
4740 - Plugged resource leak
4741 * XplatUIStructs.cs: Changed ClipboardFormats size to ushort, to match
4744 2005-06-05 Peter Bartok <pbartok@novell.com>
4746 * XplatUIWin32.cs: Removed DnD code
4747 * Win32DnD.cs: Implemented drop source and drop target functionality
4749 2005-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4751 * UpDownBase.cs: remove duplicate addition of event, enable some code
4752 that was commented out.
4753 * NumericUpDown.cs: added missing attributes and Hexadecimal property.
4754 Validate input when a key is pressed. It works fine now for every
4755 combination of Hexadecimal. Only missing some drawing love when sharing
4756 space with other controls.
4758 2005-06-04 Peter Bartok <pbartok@novell.com>
4761 - We need to pass a window for DragDrop, so enable callback events
4762 - Added DnD callback events when being a DragSource
4763 * XplatUI.cs (StartDrag): Added window handle argument
4764 * XplatUIDriver.cs (StartDrag): Added window handle argument
4765 * QueryContinueDragEventArgs: Made fields internally accessible so
4766 drivers can set them
4767 * GiveFeedbackEventArgs: Made fields internally accessible so drivers
4770 2005-06-03 Jordi Mas i Hernandez <jordi@ximian.com>
4772 * DataGridTextBoxColumn.cs: column text editing
4773 * DataGridTableStyle.cs: Respect columns styles created by the user
4774 * DataGridDrawingLogic.cs: lots of drawing fixes and enhanments
4775 * DataGridBoolColumn.cs: bool column editing
4776 * DataGrid.cs: fixes to scrolling, properties, etc
4777 * DataGridTextBox.cs: handle keyboard
4778 * DataGridColumnStyle.cs: fixes
4780 2005-06-02 Jackson Harper <jackson@ximian.com>
4782 * ImageListStreamer.cs: Somewhat broken implementation of
4783 GetObjectData. The RLE needs some work to match MS properly.
4785 2005-06-02 Jackson Harper <jackson@ximian.com>
4787 * X11Dnd.cs: Attempting to keep at least one file in MWF
4790 2005-06-02 Peter Bartok <pbartok@novell.com>
4792 * X11DnD.cs: Use Marshal.SizeOf instead of sizeof, no /unsafe required
4795 2005-06-02 Peter Bartok <pbartok@novell.com>
4797 * Control.cs: Removed MonoTODO from DoDragDrop and added call to Xplat
4798 * XplatUI.cs: Added DoDragDrop() method
4799 * XplatUIDriver.cs: Added DoDragDrop() method
4801 2005-06-02 Jackson Harper <jackson@ximian.com>
4803 * Splitter.cs: Implement BorderStyle.
4805 2005-06-02 Jackson Harper <jackson@ximian.com>
4807 * XplatUIX11.cs: Tie into the X11Dnd subsystem.
4808 * X11Dnd.cs: New file. A subsystem that handles drag and drop on
4811 2005-06-02 Peter Bartok <pbartok@novell.com>
4815 - Fixed broken insertion code for SetData, now also
4816 overwrites any existing entry of the same format name
4817 * Hwnd.cs: Added list of pointers that automatically gets
4818 freed when the window is disposed
4819 * XplatUI.cs: Call driver initialization method when loading
4822 - OnDragLeave takes EventArgs, not DragEventArgs
4823 - Added setting of WS_EX_ACCEPTFILES style when dropping is
4825 - Forces style update when drop state changes
4826 * XplatUIWin32.cs: Implemented Drag'n'Drop (as good as possible,
4827 not perfect since we cannot (yet) call the IDataObject.GetData()
4828 method, we keep getting 0x80004005 error, dunno why)
4830 2005-06-02 Peter Bartok <pbartok@novell.com>
4832 * DragEventArgs.cs: Make fields internal so we can cache the
4833 object and re-set the fields from XplatUI
4835 2005-06-02 Jackson Harper <jackson@ximian.com>
4837 * Control.cs: Add some internal methods so the DnD subsystem can
4838 raise DnD events. Also call into the driver when AllowDrop is set.
4840 * XplatUIDriver.cs: New method for setting whether or not a window
4841 is allowed to accept drag and drop messages.
4843 2005-06-01 Jordi Mas i Hernandez <jordi@ximian.com>
4845 * ScrollBar.cs: Make sure that values sent in Scroll events
4846 are always between Maximum and Minimum.
4848 2005-06-01 Marek Safar <marek.safar@seznam.cz>
4850 * Menu.cs: Call MenuChanged when menuitem visibility has been
4852 * MenuItem.cs: Rebuild menu when item is (not) visible.
4853 * MainMenu.cs: MainMenu has special MenuChanged.
4854 * Theme.cs: Caption and FrameBorderSize are not fixed.
4855 * XplatUI.cs: Added CaptionHeight,FrameBorderSize.
4856 * XplatUIDriver.cs: Introduced Caption and FrameBorderSize.
4858 * XplatUIOSX: Caption and FrameBorderSize not implemented yet.
4859 * XplatUIWin32.cs: Get Caption and FrameBorderSize from system.
4861 2005-05-30 Jackson Harper <jackson@ximian.com>
4863 * DataFormat.cs: We can't statically initialize this stuff because
4864 it calls into the xplatui and could create a loop. So we lazy init
4867 2005-05-28 Jackson Harper <jackson@ximian.com>
4869 * Control.cs: Proper implementation of Product(Name/Version).
4871 2005-05-27 Jackson Harper <jackson@ximian.com>
4873 * DataObject.cs: Dont crash if no data is found.
4875 2005-05-26 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
4876 * MdiClient.cs: Add missing Localizable attribute to BackgroundImage property
4877 as per status page, guessing it should be set to true
4879 2005-05-26 Jordi Mas i Hernandez <jordi@ximian.com>
4881 * DataGridTextBoxColumn.cs: Draws text and basic text formatting
4882 * DataGridTableStyle.cs: set proper formatting text, def header text
4883 * ThemeWin32Classic.cs: new themable paramaters
4884 * DataGridBoolColumn.cs: paint check box, get data, fixes
4885 * DataGridDrawingLogic.cs: huge improvements in painting, fixes, new methods
4886 * DataGrid.cs: fixes properties, implements vertical and horizontal scrolling
4887 * DataGridColumnStyle.cs: fixes
4888 * Theme.cs: new themable paramaters
4890 2005-05-26 Peter Bartok <pbartok@novell.com>
4892 * ContainerControl.cs: Pass AdjustFormScrollbars() call on to base
4894 2005-05-24 Jonathan S. Chambers <jonathan.chambers@ansys.com>
4895 * Control.cs: Fixed LowOrder and HighOrder to preserve sign.
4897 2005-05-24 Peter Bartok <pbartok@novell.com>
4899 * OpenFileDialog.cs, Form.cs, Menu.cs, GroupBox.cs, UserControl.cs,
4900 Label.cs, DataGridTextBoxColumn.cs, PropertyGrid.cs, ErrorProvider.cs
4901 Splitter.cs, Control.cs, FontDialog.cs, TabPage.cs,
4902 FolderBrowserDialog.cs, HelpProvider.cs, DataGridTableStyle.cs,
4903 NotifyIcon.cs, FileDialog.cs, ListView.cs, SaveFileDialog.cs,
4904 ToolBarButton.cs, ImageList.cs, DataGridBoolColumn.cs, Panel.cs,
4905 DataGrid.cs, DataGridTextBox.cs, ListBox.cs, TrackBar.cs,
4906 AxHost.cs, TabControl.cs, ScrollableControl.cs, ToolBar.cs,
4907 DataGridColumnStyle.cs, PictureBox.cs, DateTimePicker.cs,
4908 StatusBar.cs, MonthCalendar.cs, TreeView.cs: Added
4909 missing attributes, etc
4910 * DataGridPreferredColumnWidthTypeConverter.cs: Added
4912 2005-05-24 Peter Bartok <pbartok@novell.com>
4914 * Help.cs: Added, implemented trivial functions, throws up MessageBox
4915 when user tries to get help
4916 * DataObject.cs, DataFormats.cs, LinkArea.cs,
4917 SelectionRangeConverter.cs, Clipboard.cs : Removed unused variables
4918 to suppress warnings
4919 * XplatUIWin32.cs, XplatUIOSX.cs, XplatUIX11.cs: Removed unused code to
4920 avoid unreachable code warning
4922 2005-05-20 Peter Bartok <pbartok@novell.com>
4924 * CursorConverter.cs (ConvertTo): Switched to use Cursor.GetObjectData
4926 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
4928 * DataGridTextBoxColumn.cs: Basic painting methods
4929 * DataGridTableStyle.cs: Set table style in the column
4930 * ThemeWin32Classic.cs: Use Theme for colors
4931 * DataGridDrawingLogic.cs: Implement more drawing
4932 * DataGrid.cs: drawing, theming, enhacements, fixes
4933 * DataGridColumnStyle.cs: fixes, drawing
4934 * Theme.cs: theming for Datagrid
4936 2005-05-20 Peter Bartok <pbartok@novell.com>
4938 * Cursor.cs: Implemented GetObjectData() method
4940 2005-05-20 Peter Bartok <pbartok@novell.com>
4942 * Cursors.cs: Added setting of cursor name
4944 - Implemented constructors
4945 - Implemented Draw and DrawStretched
4946 - Implemented Current property
4947 - Implemented == and != operators
4948 - Implemented Dispose()
4949 - Implemented ToString
4950 - Added missing attributes
4952 - Added missing reset for OverrideCursor when DoEvents is called
4953 - Fixed creation of cursor, logic was wrong
4955 - Added missing reset for OverrideCursor when DoEvents is called
4956 - Fixed creation of cursor, bit arrays were swapped
4957 * Clipboard.cs: Removed obsolete MonoTODO attribute
4959 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
4961 * ComboBox.cs: fixes OnSelectedItemChanged
4962 * ControlBindingsCollection.cs: fixes item range check
4964 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
4967 - Calc preferred height properly
4968 - Implement missing properties
4970 * NumericUpDown.cs: Implement missing events
4972 2005-05-19 Jackson Harper <jackson@ximian.com>
4974 * TabControl.cs: New method that resizes the tab pages before
4975 redrawing them. This as needed as the control is double buffered
4976 and sizing will not be recalculated unless ResizeTabPages is
4978 * TabPage.cs: Set base.Text instead of Text in the constructor so
4979 that UpdateOwner does not get called. Use the new Redraw method of
4980 TabControl instead of Refresh so the sizing is recalculated.
4981 * ThemeWin32Classic.cs: Draw the text for button tabs.
4983 2005-05-19 Jackson Harper <jackson@ximian.com>
4985 * Control.cs: Paint control background images. Fix typo where
4986 PaintControlBackground was not getting called correctly.
4988 2005-05-19 Peter Bartok <pbartok@novell.com>
4990 * ScrollableControl.cs (DisplayRectangle): Undid my last change until
4991 I can investigate, apparently I broke FileDialog
4993 2005-05-19 Marek Safar <marek.safar@seznam.cz>
4995 * AxHost.cs: Some simple properties.
4996 * Control.cs: window must be accessible after ctor.
4997 * Form.cs: Added TransparencyKey property.
4998 * TextBoxBase.cs: Implemented Clear. Text property can be null.
4999 * XplatUIWin32.cs: SetBorderStyle implemented.
5001 2005-05-18 Peter Bartok <pbartok@novell.com>
5003 * DataObject.cs: Entries are not global but particular to the
5004 DataObject, now it behaves that way
5005 * XplatUIWin32.cs: Implemented Clipboard methods
5006 * Clipboard.cs: Implemented
5007 * ScrollableControl.cs (DisplayRectangle): Fixed calculation
5008 * XplatUIOSX.cs: Updated to final clipboard prototypes
5009 * XplatUIX11.cs: Implemented Clipboard methods
5010 * XplatUIDriver.cs: Updated to final clipboard prototypes
5011 * XplatUIStructs.cs:
5012 - Added BITMAPINFOHEADER struct
5013 - Added ClipboardFormats enum
5015 - Added ClipboardStruct
5016 - Added Atom enum items for clipboard types
5017 - Fixed atom types for Selection event structures
5019 - Added internal properties and methods for drivers to enumerate
5021 - Switched initialization method to allow drivers to assign their
5022 own IDs even for the MS predefined clipboard IDs
5023 * XplatUI.cs: Updated to final clipboard interface
5025 2005-05-18 Jonathan S. Chambers <jonathan.chambers@ansys.com>
5026 * PropertyGridView.cs: Fixed compiler warnings.
5028 2005-05-18 Jonathan S. Chambers <jonathan.chambers@ansys.com>
5029 * PropertyGrid.cs: Added some event calls
5030 * PropertyGridView.cs: Change drawing code to use double buffering
5031 * PropertyGridTextBox.cs: Changed Text property name
5032 * GridItem.cs: Added Bounds property.
5033 * GridEntry.cs: Added Bounds property.
5035 2005-05-17 Lluis Sanchez Gual <lluis@novell.com>
5037 * Binding.cs: Use IsInstanceOfType instead of IsAssignableFrom
5038 since GetType() may not return the correct type if the object is
5041 2005-05-17 Jordi Mas i Hernandez <jordi@ximian.com>
5043 * TreeNodeCollection.cs: fixes get/set item ranges
5045 2005-05-15 Jordi Mas i Hernandez <jordi@ximian.com>
5047 * ListBox.cs: Kazuki Oikawa's PreferredHeight and ItemHeight fixes
5049 2005-05-15 Jordi Mas i Hernandez <jordi@ximian.com>
5051 * ComboBox.cs: Fix item range comparation
5052 * ListView.cs: Fix item range comparation
5054 2005-05-03 Alexander Olk <xenomorph2@onlinehome.de>
5057 - Clear example panel when OnPaint is called
5058 - Better solution for displaying the example panel text
5059 - Select default indexes in the ListBoxes
5061 2005-05-11 Geoff Norton <gnorton@customerdna.com>
5063 * XplatUIOSX.cs: Avoid painting into invisible views. Fixes #74926
5065 2005-05-11 Peter Bartok <pbartok@novell.com>
5067 * LinkArea.cs: Added and implemented LinkAreaTypeConverter class
5068 * SelectionRangeConverter.cs: Implemented
5069 * PropertyGrid.cs: Fixed attribute value
5071 - Invoke(): Don't call Begin/EndInvoke if it is not neccessary
5072 - Added Sebastien Pouliot's CAS Stack Propagation fixes
5073 * XplatUIDriver.cs: Added new XplatUIDriverSupport class, for code
5074 that's common to all drivers. First methods to go there are
5075 Sebastien Pouliot's CAS Stack Propagation helper methods
5076 * XplatUIWin32.cs, XplatUIX11.cs, AsyncMethodData.cs: Fixes by
5077 Sebastien Pouliot for CAS Stack Propagation
5079 2005-05-11 Geoff Norton <gnorton@customerdna.com>
5082 XplatUIOSX.cs: More cosmetic cleanup courtesy of Artyom Tyazhelov (Artyom.Tyazhelov@helmes.ee)
5084 2005-05-12 Jordi Mas i Hernandez <jordi@ximian.com>
5086 * DataGridTextBoxColumn.cs: fixed some members
5087 * GridColumnStylesCollection.cs: indexed column is case insensitive
5088 * DataGridTableStyle.cs: fixes
5089 * ThemeWin32Classic.cs: add new theme parameter
5090 * Theme.cs: add new theme parameter
5091 * DataGridDrawingLogic.cs: Datagrid's drawing logic
5092 * DataGrid.cs: fixes, new internal properties, etc.
5093 * DataGridColumnStyle.cs: allows to set grid value
5096 2005-05-10 Peter Bartok <pbartok@novell.com>
5098 * AccessibleObject.cs:
5099 - Removed MonoTODO attribute on help, method is correct
5100 - Fixed Bounds property
5101 * AxHost.cs: Moved MonoTODO
5102 * ButtonBase.cs: Now setting AccessibleObject properties
5103 * RadioButton.cs: Setting proper AccessibleObject role
5104 * CheckBox.cs: Setting proper AccessibleObject role
5105 * ControlBindingsCollection.cs: Added properties, methods and attributes
5106 * DataFormats.cs: Fixed awkward internal API, and changed to enable
5107 userdefined DataFormats.Format items as well
5108 * ListControl.cs: Removed data_member from the public eye
5109 * OpenFileDialog.cs:
5111 - Added missing attributes
5112 * SaveFileDialog.cs: Added missing attributes
5113 * ImageListStreamer.cs: Fixed code that caused warnings
5114 * LinkLabel.cs: Removed unreachable code
5115 * TreeView.cs: Fixed code that caused warnings
5116 * PropertyGridView.cs: Fixed code that caused warnings
5117 * GridColumnStylesCollection.cs: Added missing attributes
5118 * GridTableStylesCollection: Added missing attribute
5119 * PropertyManager: Added .ctor
5120 * SecurityIDType: Added
5121 * DataObject.cs: Implemented class
5122 * LinkArea.cs: Added missing attribute
5124 2005-05-11 Jordi Mas i Hernandez <jordi@ximian.com>
5126 * RadioButton.cs: call base method to allow to fire OnClick event
5127 * UpDownBase.cs: OnMouseUp call base method
5128 * CheckedListBox.cs: call base method before returning
5129 * TrackBar.cs: call base method before returning
5132 2005-05-10 Peter Bartok <pbartok@novell.com>
5134 * XplatUIX11.cs: Fix for #74902, check pending timers when peeking
5137 2005-05-10 Peter Bartok <pbartok@novell.com>
5139 * DataFormats.cs: Implemented
5140 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs,
5141 XplatUIX11.cs: Added Clipboard APIs
5142 * XplatUIWin32.cs: Implemented Clipboard APIs
5143 * FolderBrowserDialog.cs: Added missing event, attributes
5145 2005-05-10 Jordi Mas i Hernandez <jordi@ximian.com>
5147 * CheckBox.cs: call base method to allow to fire OnClick event
5149 2005-05-09 Sebastien Pouliot <sebastien@ximian.com>
5151 * XplatUI.cs: Use PlatformID.Unix under NET_2_0.
5153 2005-05-06 Peter Bartok <pbartok@novell.com>
5155 * XplatUIX11.cs: Redid Jackson's fix, it was causing a busy loop
5156 * Screen.cs: Implemented
5157 * HelpNavigator.cs: Added
5158 * XplatUIWin32.cs: Added SystemParametersInfo call, fixed WorkArea
5160 * HelpProvider.cs: Implemented all we can do until we have a CHM
5161 help library (which means that "What's This" does work now)
5163 2005-05-06 Jackson Harper <jackson@ximian.com>
5165 * XplatUIX11.cs: Fix waking up the main loop.
5167 2005-05-05 Peter Bartok <pbartok@novell.com>
5169 * XplatUI.cs: Updated revision
5170 * Form.cs: Removed enless loop
5171 * GroupBox.cs (OnPaint): Added call to base.OnPaint()
5172 * Label.cs (OnPaint): Added call to base.OnPaint()
5173 * ToolTip.cs: Made ToolTipWindow reusable for other controls
5174 * LinkLabel.cs (OnPaint): Added call to base.OnPaint()
5175 * UpDownBase.cs (OnPaint): Moved base.OnPaint() call to end of method
5177 * ButtonBase.cs: Moved base.OnPaint() call to end of method
5178 * ThemeWin32Classic.cs: Replaced references to ToolTip with references
5179 to ToolTip.ToolTipWindow for drawing and size methods; this allows
5180 reuse of ToolTipWindow by other controls
5181 * SizeGrip.cs: Moved base.OnPaint() call to end of method
5182 * XplatUIX11.cs: Now clipping drawing area (experimental)
5183 * PictureBox.cs: Moved base.OnPaint() call to end of method
5184 * Theme.cs: Fixed ToolTip abstracts to match new format
5185 * ErrorProvider.cs: Implemented
5187 2005-05-05 Jordi Mas i Hernandez <jordi@ximian.com>
5189 * Label.cs: fire events using OnAutoSizeChanged and OnTextAlignChanged
5193 - Implements LinkBehavior
5196 2005-05-03 Jackson Harper <jackson@ximian.com>
5198 * ListView.cs: Calculate the scrollbar positioning on resize and
5199 paint, so they get put in the correct place.
5201 2005-05-03 Alexander Olk <xenomorph2@onlinehome.de>
5203 * ColorDialogs.cs: The small color panels are now handled by
5204 SmallColorControl. This fixes drawing of the focus rectangle
5205 and adds a 3D border.
5207 2005-05-03 Peter Bartok <pbartok@novell.com>
5209 * Control.cs: Modified version of Jonathan Chamber's fix for
5212 2005-05-03 Jackson Harper <jackson@ximian.com>
5214 * ListView.cs: Remove redraw variable. Control now handles whether
5215 or not a redraw needs to be done, and will only raise the paint
5216 event if redrawing is needed.
5218 2005-05-03 Jackson Harper <jackson@ximian.com>
5220 * Splitter.cs: No decorations for the splitter form. Cache the
5223 2005-05-03 Jackson Harper <jackson@ximian.com>
5225 * TreeView.cs: Use dashed lines to connect nodes. Use the
5226 ControlPaint method for drawing the focus rect instead of doing
5229 2005-05-02 Peter Bartok <pbartok@novell.com>
5231 * LinkLabel.cs: Fixed the fixes from r43566 and 43521
5233 2005-04-29 Jackson Harper <jackson@ximian.com>
5235 * ThemeWin32Classic.cs: Don't clear the GC that will clear the
5236 entire image buffer. Just clear the clipping rectangle.
5238 2005-04-29 Jackson Harper <jackson@ximian.com>
5240 * ThemeWin32Classic.cs: Don't draw list view items that are
5241 outside the clipping rectangle.
5243 2005-04-29 Jordi Mas i Hernandez <jordi@ximian.com>
5245 * ListBox.cs: added horizontal item scroll
5247 2005-04-29 Jackson Harper <jackson@ximian.com>
5249 * ThemeWin32Classic.cs: Remove some old debug code that was
5250 causing flicker with the new double buffering code.
5252 2005-04-29 John BouAntoun <jba-mono@optusnet.com.au>
5254 * MonthCalendar.cs, DateTimePicker.cs: Made monthcalendar dropdwon
5255 behave like combobox and comboboxlist (still not sure if this is
5258 2005-04-28 Jackson Harper <jackson@ximian.com>
5260 * ThemeWin32Classic.cs: Don't fill the middle of progress
5261 bars. This fills areas outside of the clip bounds that don't need
5264 2005-04-28 Jackson Harper <jackson@ximian.com>
5266 * Control.cs: Don't expose functionality to touch the image buffers.
5268 * ListView.cs: We do not need to (and no longer can) manipulate
5269 the image buffers directly. All of this is handled by Control.
5271 2005-04-28 Peter Bartok <pbartok@novell.com>
5273 * RichTextBoxSelectionAttribute.cs, RichTextBoxSelectionTypes.cs,
5274 RichTextBoxScrollBars.cs, RichTextBoxStreamType.cs,
5275 RichTextBoxFinds.cs, RichTextBoxWordPunctuations.cs: Added
5277 2005-04-28 Jordi Mas i Hernandez <jordi@ximian.com>
5280 - Adjust control's height for non-simple comboboxes (bug fix)
5282 * MenuAPI.cs: remove unused var
5283 * ScrollBar.cs: remove unsed var
5285 * ListBox.cs: unselect items when clearing
5287 2005-04-28 Jordi Mas i Hernandez <jordi@ximian.com>
5289 * ListControl.cs: honors OnPositionChanged and default Selected Item
5290 * ListBox.cs: unselect items when clearing
5292 2005-04-27 Jackson Harper <jackson@ximian.com>
5294 * X11Keyboard.cs: Initialize a default keyboard and give a warning
5295 if a "correct" keyboard is not found. This will make us not crash,
5296 but might give some users bad keyboard layouts...seems to be the
5297 same thing rewind does.
5299 2005-04-27 Jackson Harper <jackson@ximian.com>
5301 * BindingManagerBase.cs: Attach the current/position changed
5302 handlers to their respective events.
5304 2005-04-27 Jackson Harper <jackson@ximian.com>
5306 * Control.cs: Make sure that the first WM_PAINT does a full draw,
5308 * ThemeWin32Classic.cs: Don't fill the background for picture
5309 boxes. This could overright user drawing.
5310 * ComboBox.cs: Just fill the clipping rect not the entire client
5311 rect when drawing the background. This prevents pieces of the
5312 image buffer from getting overwritten and is theoretically faster.
5314 2005-04-26 Jordi Mas i Hernandez <jordi@ximian.com>
5316 * ComboBox.cs: Databinding support fixes, fire missing events
5317 * ListControl.cs: implement missing methods and properties, fixes
5318 * ThemeWin32Classic.cs: Databiding support on Drawing
5319 * CheckedListBox.cs: Databinding support fixes, fire missing events
5320 * ListBox.cs: Databinding support fixes, fire missing events
5322 2005-04-25 Peter Bartok <pbartok@novell.com>
5324 * LinkLabel.cs: Length of LinkArea is not allowed to be negative
5326 2005-04-25 Jackson Harper <jackson@ximian.com>
5328 * TreeView.cs: Use the horizontal scrollbars height not width when
5329 determining how much of the client area is available.
5331 2005-04-25 Jackson Harper <jackson@ximian.com>
5333 * Control.cs: Double buffering is handled differently now. As per
5334 the spec, the extra buffer is created in the WM_PAINT message and
5335 passed down to the control's drawing code.
5343 * PropertyGridView.cs:
5355 * DateTimePicker.cs:
5357 * TreeView.cs: Update to new double buffering system.
5358 * MonthCalendar.cs: Uncomment block, as Capture is now
5359 working. Update to new double buffering
5360 * LinkLabel.cs: Lazy init the link collection. Update to new double buffering
5361 * PaintEventArgs.cs: New internal method allows us to set the
5362 graphics object. This is used for double buffering.
5363 * ThemeWin32Classic.cs: Give the picture box drawing code a clip
5364 rectangle. The internal paint_area var has been removed from
5365 StatusBar. The clipping rect should be used instead.
5366 * Theme.cs: Give the PictureBox drawing method a clipping rect.
5367 * TabPage.cs: The RefreshTabs method was removed, so just call the
5368 tab controls Refresh method now.
5369 * TabControl.cs: Update to new double buffering. Make sure the
5370 handle is created before sizing the tab pages, otherwise we will
5371 get stuck in a loop.
5373 2005-04-24 Borja Sanchez Zamorano <borsanza@gmail.com>
5375 * LinkLabel.cs: Fix typo, bug #74719; patch
5376 from Borja Sanchez Zamorano
5378 2005-04-22 Jackson Harper <jackson@ximian.com>
5380 * TreeNode.cs: Implement Handle stuff.
5381 * TreeView.cs: Utility methods so nodes can get/lookup by handle.
5383 2005-04-22 Jordi Mas i Hernandez <jordi@ximian.com>
5385 * DataGridTextBoxColumn.cs: call base constructors, fixes
5386 * GridColumnStylesCollection.cs: missing events, methods, and functionality
5387 * GridTableStylesCollection.cs: fixes, check duplicate mapping names
5388 * DataGridTableStyle.cs: implements create default column styles
5389 * DataGridBoolColumn.cs: which types can handle
5390 * DataGrid.cs: missing methods, fixes, new functionality
5391 * DataGridColumnStyle.cs: fixes
5393 2005-04-20 Alexander Olk <xenomorph2@onlinehome.de>
5394 * FolderBrowserDialog.cs:
5395 - Use a thread to fill the TreeView
5396 - Adjusted some sizes
5398 2005-04-19 Peter Bartok <pbartok@novell.com>
5400 * LinkLabel.cs: (Re-)create the pieces when setting the Text
5401 property. Fixes #74360.
5403 2005-04-19 Jackson Harper <jackson@ximian.com>
5405 * XEventQueue.cs: Lock when getting the lockqueue size.
5406 * PictureBox.cs: Call base OnPaint
5408 2005-04-19 Peter Bartok <pbartok@novell.com>
5410 * XplatUIX11.cs: Fixed bug introduced with the HWND rewrite, Async
5411 messages were no longer being processed (this broke BeginInvoke)
5414 2005-04-18 Jackson Harper <jackson@ximian.com>
5416 * TreeView.cs: buglet that caused node images to get drawn
5417 regardless of whether or not they were in the clipping rectangle.
5419 2005-04-18 Jackson Harper <jackson@ximian.com>
5421 * CurrencyManager.cs: There are four rules for GetItemProperties:
5422 - If the type is an array use the element type of the array
5423 - If the type is a typed list, use the type
5424 - If the list contains an Item property that is not an object, use
5426 - use the first element of the list if there are any elements in
5429 2005-04-17 Jackson Harper <jackson@ximian.oom>
5431 * TreeView.cs: Calculate plus minus and checkbox bounds when there is a
5432 click. This handles offsets for scrolling properly and reduces
5433 memory. Also fixed GetNode to not offset now that TopNode works
5435 * TreeNode.cs: No longer need to track the plus minus or checkbox bounds.
5437 2005-04-17 Jackson Harper <jackson@ximian.com>
5439 * CursorConverter.cs: Initial implementation.
5441 2005-04-15 Jordi Mas i Hernandez <jordi@ximian.com>
5443 * ListControl.cs: work towards complex data binding support on ListControl
5444 * CurrencyManager.cs: work towards complex data binding support on ListControl
5445 * ListBox.cs: work towards complex data binding support on ListControl
5448 2005-04-15 Jordi Mas i Hernandez <jordi@ximian.com>
5450 * GridTableStylesCollection.cs: fixes name and constructor
5451 * DataGridTableStyle.cs: fixes
5452 * DataGridBoolColumn.cs: fixes names and constructors
5453 * DataGrid.cs: define methods and properties. Some init implementations
5454 * DataGridCell.cs: define methods and properties. Some init implementations
5455 * GridTablesFactory.cs: Define methods and properties
5457 2005-04-15 Geoff Norton <gnorton@customerdna.com>
5459 * XplatUIOSX.cs: Handle proper mouse tracking even if the current
5460 graphics port changes. We still want the coordinates in global screen
5463 2005-04-14 Jackson Harper <jackson@ximian.com>
5465 * TreeView.cs: Handle clicks when plus minus is disabled. Don't
5466 check plus minus or checkbox clicks unless those features are enabled.
5468 2005-04-14 Jackson Harper <jackson@ximian.com>
5470 * TreeView.cs: Add methods for setting the top and bottom visible
5471 nodes. TreeNode::EnsureVisible uses these methods.
5472 * TreeNode.cs: Implement EnsureVisible
5474 2005-04-13 Jordi Mas i Hernandez <jordi@ximian.com>
5476 * Form.cs: Pospone menu assignation if the window has not been created yet
5477 * XplatUIWin32.cs: Fixes Win32SetWindowPos, then does not change window
5480 2005-04-12 Jackson Harper <jackson@ximian.com>
5482 * TreeView.cs: Set the TopNode properly when scrolling
5483 occurs. This has the added benifit of reducing the amount of
5484 walking that needs to be done when drawing. Also removed an old
5486 * OpenTreeNodeEnumerator.cs: Fix moving backwards.
5488 2005-04-11 Jordi Mas i Hernandez <jordi@ximian.com>
5490 * Timer.cs: fixes interval setting when the timer is already enabled
5492 2005-04-10 Alexander Olk <xenomorph2@onlinehome.de>
5494 * FolderBrowserDialog.cs: First approach
5496 2005-04-09 Peter Bartok <pbartok@novell.com>
5498 * FolderBrowserDialog: Added
5500 2005-04-07 Jordi Mas i Hernandez <jordi@ximian.com>
5502 * LinkLabel.cs: move drawing code into the theme
5503 * ThemeWin32Classic.cs: drawing code and painting background bugfix
5504 * Theme.cs: define DrawLinkLabel method
5506 2005-04-05 Jackson Harper <jackson@ximian.com>
5508 * BindingContext.cs: Use weak references so these bad actors don't
5509 stay alive longer then they need to.
5511 2005-04-05 Jackson Harper <jackson@ximian.com>
5513 * ListControl.cs: Basic implementation of complex databinding.
5515 * ListBox.cs: Add calls to ListControl databinding methods.
5517 2005-04-05 Alexander Olk <xenomorph2@onlinehome.de>
5520 - Don't change PopupButtonState to Normal when the
5521 PopupButton gets pressed several times.
5522 - Renamed ButtonPanel to PopupButtonPanel
5524 2005-04-05 Jordi Mas i Hernandez <jordi@ximian.com>
5526 * ColorDialog.cs: Use cached objects instead of creating them
5527 * LinkLabel.cs: Use cached objects instead of creating them
5528 * Splitter.cs: Use cached objects instead of creating them
5529 * FontDialog.cs: Use cached objects instead of creating them
5530 * PropertyGridView.cs: Use cached objects instead of creating them
5531 * MessageBox.cs: Use cached objects instead of creating them
5532 * FileDialog.cs: Use cached objects instead of creating them
5533 * ThemeWin32Classic.cs: Use cached objects instead of creating them
5534 * TreeView.cs: Use cached objects instead of creating them
5536 2005-04-04 Jordi Mas i Hernandez <jordi@ximian.com>
5538 * Control.cs: use Equals to compare the font since no == op
5539 * ScrollBar.cs: use Equals to compare the font since no == op
5541 2005-04-04 Alexander Olk <xenomorph2@onlinehome.de>
5543 * SaveFileDialog.cs: Open stream in OpenFile with FileMode Create
5545 2005-04-01 Jackson Harper <jackson@ximian.com>
5547 * Binding.cs: Implement IsBinding.
5548 * BindingManagerBase.cs:
5549 * PropertyManager.cs:
5550 * CurrencyManager.cs: Add IsSuspended property.
5552 2005-04-01 Jackson Harper <jackson@ximian.com>
5554 * Binding.cs: Had some IsAssignableFrom calls backwards.
5556 2005-04-01 Jackson Harper <jackson@ximian.com>
5558 * Binding.cs: Handle null data members when pulling data.
5559 * PropertyManager.cs: Handle the data member being a property that
5562 2005-04-01 Jordi Mas i Hernandez <jordi@ximian.com>
5564 * DataGridTextBoxColumn.cs: fixes signature
5565 * DataGrid.cs: calls right constructor
5567 2005-04-01 Jordi Mas i Hernandez <jordi@ximian.com>
5569 * DataGridTextBoxColumn.cs: implements DataGridTextBoxColumn class
5570 * GridColumnStylesCollection.cs: implements GridColumnStylesCollection
5571 * GridTableStylesCollection.cs: implements GridTableStylesCollection
5572 * DataGridTableStyle.cs: implements DataGridTableStyle
5573 * DataGridBoolColumn.cs: implements DataGridBoolColumn
5574 * DataGridTextBox.cs: implements DataGridTextBox
5575 * DataGridColumnStyle.cs: implements DataGridColumnStyle
5577 2005-03-31 Alexander Olk <xenomorph2@onlinehome.de>
5579 * FileDialog.cs: Added simple PopupButton class for ButtonPanel
5581 2005-03-29 Peter Bartok <pbartok@novell.com>
5584 - Properly implemented CompanyName property
5585 - Fixed LocalUserAppDataPath and UserAppDataPath, now properly
5586 returns a path that includes CompanyName, ProductName and
5587 Version (fixes bug #70330)
5589 2005-03-29 Stefan Buehler <sbuehler@gmx.ch>
5591 * TabPage.cs: Don't use Owner.DisplayRectangle unless owner is valid,
5594 2005-03-28 Alexander Olk <xenomorph2@onlinehome.de>
5596 * FileDialog.cs, SaveFileDialog.cs OpenFileDialog.cs:
5598 - Added ReadOnly CheckBox
5599 - Further refactoring: moved some code from Open-/SaveFileDialog
5602 2005-03-28 Alexander Olk <xenomorph2@onlinehome.de>
5604 * OpenFileDialog.cs: Fixed CheckFileExists
5606 Moved FileView and DirComboBox outside FileDialog class.
5607 They can now be used outside FileDialog
5609 2005-03-27 Alexander Olk <xenomorph2@onlinehome.de>
5611 * FileDialog.cs: Added a contextmenu to change ShowHiddenFiles
5612 * SaveDialog.cs, OpenFileDialog.cs: Fixes for Reset() method
5614 2005-03-27 Alexander Olk <xenomorph2@onlinehome.de>
5616 * FileDialog.cs, OpenFileDialog.cs, SaveFileDialog.cs:
5617 - Added missing CreatePrompt property in SaveDialog
5618 - Overall SaveDialog handling should be better now
5619 - Added non standard ShowHiddenFiles property
5620 - Added extension, CreatePrompt and OverwritePrompt support in SaveDialog
5621 - Added InitialDirectory and RestoreDirectory support
5623 2005-03-26 Alexander Olk <xenomorph2@onlinehome.de>
5625 * FileDialog.cs: Made dirComboBox usable
5627 2005-03-24 Alexander Olk <xenomorph2@onlinehome.de>
5629 * FileDialog.cs: Added Filter support (case sensitiv)
5631 2005-03-24 Jackson Harper <jackson@ximian.com>
5633 * TabControl.cs: Need a couple more pixels for the lines.
5635 2005-03-23 Jackson Harper <jackson@ximian.com>
5637 * TabControl.cs: Give the tab page focus when it is selected.
5639 2005-03-23 Jackson Harper <jackson@ximian.com>
5641 * TabControl.cs: Account for the drawing of tabs borders when
5642 invalidating. If the slider was clicked dont do click detection on
5645 2005-03-23 Jackson Harper <jackson@ximian.com>
5647 * TabControl.cs: Fix typo, emilinates an unneeded expose event.
5649 2005-03-22 Jonathan Chambers <jonathan.chambers@ansys.com>
5651 * CategoryGridEntry.cs: Added
5652 * GridItem.cs: Added helper properties
5653 * PropertyGridTextBox.cs: Custom textbox control for PropertyGrid.
5654 * GridEntry.cs: Updated code for collection
5655 * PropertyGrid.cs: Cleaned up some formatting
5656 * PropertyGridView.cs: Added drop down functionality for enums.
5657 * GridItemCollection.cs: Added enumerator logic
5658 * PropertyGridEntry.cs: Added
5660 2005-03-19 Alexander Olk <xenomorph2@onlinehome.de>
5663 - Removed unnecessary commented code
5664 - Fixed handling for entering the filename manually in the combobox
5666 2005-03-19 Alexander Olk <xenomorph2@onlinehome.de>
5668 * FileDialog.cs, OpenFileDialog.cs: OpenFileDialog Multiselect now works
5670 2005-03-18 Peter Bartok <pbartok@novell.com>
5672 * ThemeWin32Classic.cs: Moved listview column headers a bit, to avoid
5673 them being touching the border
5675 2005-03-18 Peter Bartok <pbartok@novell.com>
5677 * TextControl.cs: Quick hack to center text better
5679 2005-03-18 Peter Bartok <pbartok@novell.com>
5682 - Don't throw NotImplemented exceptions, just print a notice once
5683 instead (requested by Miguel). This makes running existing SWF
5686 - Commented out Drag'N'Drop XplatUI call (no driver support yet)
5687 - Added context menu trigger on right click
5688 * Panel.cs: Trigger invalidate on resize
5690 - Removed old double-buffer drawing
5691 - Added ResizeRedraw style to force proper update of statusbar
5693 - Removed debug output
5694 * ThemeWin32Classic.cs:
5695 - Fixed drawing of status bar, now draws Text property if there
5696 are no defined panels
5698 2005-03-18 Jackson Harper <jackson@ximian.com>
5700 * ImageList.cs: When the image stream is set pull all the images
5702 * ImageListStreamer.cs: Implement reading image list streams.
5704 2005-03-18 Peter Bartok <pbartok@novell.com>
5706 * ThemeWin32Classic.cs (DrawPictureBox):
5707 - Fixed calculations for centered drawing
5708 - Fixed drawing for normal mode, not scaling the image on normal
5710 2005-03-18 Peter Bartok <pbartok@novell.com>
5712 * ComboBox.cs: Now also firing the OnKeyPress events for the embedded
5715 - Made Open/Save button the accept button for FileDialog
5716 - Tied the cancel button to the IButtonControl cancel button
5717 - Save/Open now properly builds the pathname
5718 - Now handles user-entered text
5719 - Preventing crash on right-click if no item is selected
5720 - Fixed Text property, now uses contents of textbox
5721 - Fixed SelectedText property, now just returns the text part that
5722 is selected in the text box
5724 2005-03-18 Jackson Harper <jackson@ximian.com>
5726 * ThemeWin32Classic.cs: Use the proper func for drawing the focus
5727 rect, make sure to de-adjust the interior rect after drawing the
5730 2005-03-18 Peter Bartok <pbartok@novell.com>
5732 * MenuAPI.cs: Remove menu *before* executing selected action to
5733 prevent the menu from 'hanging around'
5735 2005-03-17 Geoff Norton <gnorton@customerdna.com>
5737 * XplatUIOSX.cs: Implemented WorkingArea property
5739 2005-03-17 Peter Bartok <pbartok@novell.com>
5741 * XplatUIX11.cs: Fixed menu coord calculations
5742 * MenuAPI.cs: Now using new ScreenToMenu()/MenuToScreen() methods
5743 for calculating offsets
5745 2005-03-17 Peter Bartok <pbartok@novell.com>
5747 * Hwnd.cs: Do not consider menu presence for default client
5748 rectangle location/size
5749 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs,
5750 XplatUIWin32.cs: Added MenuToScreen() and ScreenToMenu() coord
5751 translation functions
5752 * FileDialog.cs: Fixed (what I presume is a) typo
5754 2005-03-17 Jonathan Gilbert <logic@deltaq.org>
5756 * XplatUIX11.cs: Added call to XInitThreads() to allow multi-threaded
5757 X access (avoids X-Async errors)
5759 2005-03-16 Jackson Harper <jackson@ximian.com>
5761 * TabControl.cs: Raise the SelectedIndexChanged event.
5763 2005-03-16 Alexander Olk <xenomorph2@onlinehome.de>
5765 * FileDialog.cs, OpenFileDialog.cs, SaveFileDialog.cs:
5766 - Removed vertical ToolBar and replaced it with a custom panel
5767 (desktop and home button already work)
5768 - Added Help button (some controls get resized or relocated then)
5769 - Draw correct text depending on Open or Save.
5770 - Fixed some typos...
5772 2005-03-16 Jordi Mas i Hernandez <jordi@ximian.com>
5775 - Only change Maximum and Minimum when need it (bug fix)
5777 2005-03-15 Peter Bartok <pbartok@novell.com>
5779 * Form.cs: Use Handle for icon, to trigger creation if
5780 the window does not yet exist
5782 - CanSelect: Slight performance improvement
5783 - Focus(): Preventing possible recursion
5784 - Invalidate(): Removed ControlStyle based clear flag setting
5785 - WM_PAINT: fixed logic for calling OnPaintBackground
5786 - WM_ERASEBKGND: Fixed logic, added call to new driver method
5787 EraseWindowBackground if the control doesn't paint background
5789 - Moved EraseWindowBackground() method to internal methods
5790 - Removed unused WM_ERASEBKGND handling in GetMessage; msg never comes;
5791 is sent via SendMessage on BeginPaint call on Win32
5793 - Added EraseWindowBackground() method
5794 - No longer sends WM_ERASEBKGND on .Expose, but on call to
5795 PaintEventStart, which more closely matches Win32 behaviour
5796 - Fixed Invalidate() call, now updates new ErasePending Hwnd property
5797 - Fixed SetFocus() to properly deal with client and whole windows
5798 * Hwnd.cs: Added ErasePending property
5799 * XplatUIOSX.cs: Stubbed EraseWindowBackground() method
5800 * XplatUI.cs, XplatUIDriver.cs: Added EraseWindowBackground() method
5802 2005-03-12 Geoff Norton <gnorton@customerdna.com>
5805 - Fix hard loop when timers exist.
5806 - Fix bugs with middle and right click for 3 button mice.
5808 2005-03-11 Peter Bartok <pbartok@novell.com>
5811 - get_WorkingArea: Need to call X directly, GetWindowPos only
5812 returns cached data now
5813 - Added sanity check to GetWindowPos hwnd usage
5815 2005-03-11 Jackson Harper <jackson@ximian.com>
5817 * BindingManagerBase.cs: This method isn't used anymore as
5818 PullData now updates the data in the control.
5820 2005-03-11 Jordi Mas i Hernandez <jordi@ximian.com>
5822 * Form.cs: fixes menu drawing on X11
5823 * MenuAPI.cs: fixes menu drawing on X11
5825 2005-03-11 Peter Bartok <pbartok@novell.com>
5827 * Control.cs: Changed OnCreateControl behaviour based on a suggestion
5828 from Jonathan Gilbert; should fix bug #73606
5829 * XplatUIX11.cs: Fixed NC Mouse message coordinates, they need to be
5830 in Screen coordinates. Thanks, Jordi.
5831 * Form.cs: Added missing attribute
5833 2005-03-11 Peter Bartok <pbartok@novell.com>
5836 - Rudimentary Mdi support
5837 - Removed outdated FormParent code
5838 - Implemented lots of missing properties and methods, still missing
5839 transparency support
5840 - Added missing attributes
5841 - Implemented support for MaximumBounds
5842 - Added firing of various events
5843 * XplatUI.cs: Added SetIcon() method
5844 * XplatUIDriver.cs: Added SetIcon() abstract
5845 * XplatUIOSX.cs: Stubbed out SetIcon() method
5847 - Implemented SetIcon() support
5848 - Moved SetMenu() and SetBorderStyle() to proper alphabetical pos
5849 - Switched to unix line endings
5851 - Made POINT internal so for can access it as part of MINMAX
5852 - Implemented SetIcon() support
5853 - Implemented support for CLIENTCREATESTRUCT (but might have to drop
5854 native Mdi support again, might have to go managed)
5855 * Control.cs: Now fires the StyleChanged event
5856 * MdiClient.cs: Added; still mostly empty
5858 2005-03-10 Peter Bartok <pbartok@novell.com>
5860 * SaveFileDialog.cs: Added emtpy file
5862 2005-03-08 Peter Bartok <pbartok@novell.com>
5864 * Control.cs: Fixed bug #73190; now invokes CreateControl (which
5865 in turn triggers OnCreateContro) when creating a handle for the
5867 * TextControl.cs: Fixed endless loop in certain cases when
5868 replacing the current selection
5870 2005-03-08 Jordi Mas i Hernandez <jordi@ximian.com>
5873 - Honors NewValue changes in Scroll events allowing apps to change it
5874 - Adds First and Last Scroll events
5875 - Fixes Thumb events
5877 2005-03-07 Peter Bartok <pbartok@novell.com>
5879 * Hwnd.cs: Added DefaultClientRectangle property
5880 * XplatUI.cs: Now using the X11 driver Where() method, which provides
5881 more detailed debug information
5883 - Fixed size-change feedback loop, where we would pull an old size
5884 off the queue and mistakenly change our window's size to an
5886 - Now compressing ConfigureNotify events, to reduce looping and
5888 * TextBoxBase.cs: Preventing crash when no text is set and ToString()
5891 2005-03-07 Jackson Harper <jackson@ximian.com>
5893 * Binding.cs: Push data pushes from data -> property. Check if the
5894 property is readonly when attempting to set it.
5896 2005-03-07 Jackson Harper <jackson@ximian.com>
5898 * Binding.cs: Format and parse data correctly. Use ASsignableFrom
5899 instead of IsSubclassOf. Pulling data now sets the value on the
5901 * PropertyManager.cs:
5902 * CurrencyManager.cs: Just need to pull data when updating now,
5903 because PullData will set the value on the control.
5905 2005-03-04 Jackson Harper <jackson@ximian.com>
5907 * Binding.cs: Implement data type parsing and converting on pulled
5908 data. TODO: Are there more ways the data can be converted?
5910 2005-03-04 Jackson Harper <jackson@ximian.com>
5912 * Binding.cs: Support <Property>IsNull checks. Also bind to the
5913 controls Validating method so we can repull the data when the
5914 control loses focus.
5916 2005-03-03 Jordi Mas i Hernandez <jordi@ximian.com>
5919 - Fixes null string format
5922 - Adds enum type checks
5923 - Fixes redrawing and recalc need after changing some properties
5924 - Fixes on focus_item set after the event
5925 - Fixes adding columns after the control has been created
5927 * ThemeWin32Classic.cs:
5928 - Fixes CheckBox focus rectangle
5929 - Fixes ColumnHeader drawing
5932 2005-03-03 Jackson Harper <jackson@ximian.com>
5934 * Binding.cs: Bind to <Property>Changed events so we can detect
5935 when properties are changed and update the data.
5937 2005-03-02 Jordi Mas i Hernandez <jordi@ximian.com>
5940 - Changes 32-bit pixel format to Format32bppArgb to allow transparency
5941 - Fixes ImageList constructor with ImageList container
5942 - Fixes image scaling (wrong parameters at DrawImage)
5944 2005-02-02 Jackson Harper <jackson@ximian.com>
5946 * Binding.cs: Make property searches case-insensitive. Eliminate
5947 some duplicated code.
5949 2005-03-01 Jordi Mas i Hernandez <jordi@ximian.com>
5952 - Handle focus event
5953 - Fix scrollbar events
5954 - Discard highlighted item if remove it
5955 - Fixes SelectedItem with strings
5957 2005-03-01 Peter Bartok <pbartok@novell.com>
5960 - Fixed Visible property, now follows (once again) parent chain
5961 to return false if any control in the chain is visible=false
5962 - Fixed OnParentVisibleChanged, now just calls OnVisibleChanged event
5963 - Fixed several places where is_visible instead of Visible was used
5964 - Implemented FIXME related to focus selection when setting focused
5965 control to be invisible
5967 * XplatUIWin32.cs: Now using proper method to find out if window is
5968 visible. Thanks to Jordi for pointing it out
5970 2005-02-28 Jordi Mas i Hernandez <jordi@ximian.com>
5972 * ComboBox.cs: show/hide scrollbar instead of creating it
5974 2005-02-27 Jackson Harper <jackson@ximian.com>
5976 * CurrencyManager.cs: Add PositionChanged stuff.
5978 2005-02-27 Peter Bartok <pbartok@novell.com>
5980 * XplatUI.cs, XplatUIDriver.cs: Added new GetMenuOrigin() method
5981 * XplatUIOSX.cs: Added GetMenuOrigin() stub
5982 * XplatUIWin32.cs: Implemented GetMenuOrigin()
5984 - Implemented GetMenuDC()
5985 - Implemented GetMenuOrigin()
5986 - Implemented ReleaseMenuDC()
5987 - Implemented generation of WM_NCPAINT message
5988 - Implemented generation and handling of WM_NCCALCSIZE message
5989 * Form.cs: Added debug helper message for Jordi's menu work
5991 - Modified ClientRect property; added setter, fixed getter to handle
5992 setting of ClientRect
5993 - Added MenuOrigin property
5995 2005-02-26 Peter Bartok <pbartok@novell.com>
5998 - Destroys the caret if a window that's being destroyed contains it
5999 - Ignores expose events coming from the X11 queue for windows that
6000 already are destroyed
6001 - Now uses the proper variable for handling DestroyNotify, before we
6002 marked the wrong window as destroyed
6003 - Improved/added some debug output
6005 2005-02-26 Peter Bartok <pbartok@novell.com>
6007 * X11Keyboard.cs: Fixes to work on 64bit systems
6009 2005-02-26 Peter Bartok <pbartok@novell.com>
6012 - Now calling OnHandleDestroyed from DestroyHandle()
6013 instead of Dispose()
6014 - Removed bogus call to controls.Remove() from DestroyHandle()
6016 2005-02-26 Peter Bartok <pbartok@novell.com>
6018 * Control.cs: Properly destroy child windows when our handle is
6021 2005-02-25 Peter Bartok <pbartok@novell.com>
6024 - Added 'DriverDebug' define to allow tracing XplatUI API calls
6025 - Alphabetized Static Methods and Subclasses
6028 - Added XException class to allow custom handling of X11 exceptions
6029 - Created custom X11 error handler, tied into XException class
6030 - Added support for MONO_XEXCEPTIONS env var to allow the user
6031 to either throw an exception on X errors or continue running
6032 after displaying the error
6033 - Added handling of DestroyNotify message
6034 - Added handler for CreateNotify message (still disabled)
6035 - Improved (tried to at least) Where method to provide file and lineno
6037 - Added XErrorHandler delegate
6038 - Added XRequest enumeration (to suppor translation of errors)
6040 2005-02-25 Jackson Harper <jackson@ximian.com>
6042 * PropertyManager.cs: Implement editing features
6043 * CurrencyManager.cs:
6044 * Binding.cs: First attempt at UpdateIsBinding
6045 * BindingManagerBase.cs: Call UpdateIsBinding before
6046 pushing/pulling data.
6048 2005-02-25 Jordi Mas i Hernandez <jordi@ximian.com>
6050 * MenuAPI.cs: Respect disabled items
6051 * ThemeWin32Classic.cs
6052 - Caches ImageAttributes creation for DrawImageDisabled
6053 - Fixes vertical menu line drawing
6054 - Draws disabled arrows in disable menu items
6056 2005-02-24 Peter Bartok <pbartok@novell.com>
6059 - Added UserData property to allow associating arbitrary objects
6061 - Fixed leak; now removing Hwnd references from static windows array
6063 - Fixed Graphics leak in PaintEventEnd
6064 - Removed usage of HandleData, switched over to Hwnd class
6065 * HandleData.cs: Removed, obsoleted by Hwnd.cs
6067 2005-02-24 Jordi Mas i Hernandez <jordi@ximian.com>
6069 * ThemeWin32Classic.cs: Adds Cliping to TrackBar drawing
6070 * ScrollBar.cs: Fixes bug
6071 * TrackBar.cs: removes death code, clipping, mimize refreshes,
6072 keyboard navigation enhancements
6074 2005-02-24 Jordi Mas i Hernandez <jordi@ximian.com>
6076 * Control.cs: Call DefWndProc at WM_PAINT only if UserPaint not defined
6077 * GroupBox.cs: Add control styles
6078 * Label.cs: Add control styles
6079 * UpDownBase.cs: Add control styles
6080 * ListBox.cs: Add control styles
6081 * XplatUIWin32.cs: Fixes wrong parameter order
6084 2005-02-23 Chris Bacon <chris.bacon@docobo.co.uk>
6086 * ListView.cs: Assign owner for ColumnHeader. Patch by Chris Bacon
6088 2005-02-23 Jackson Harper <jackson@ximian.com>
6090 * PropertyManager.cs: Implement property binding. This doesn't
6091 seem to work yet though as (I think) there are some bugs in
6092 System.ComponentModel.PropertyDescriptor.
6093 * BindingContext.cs: Use new PropertyManager constructor.
6095 2005-02-23 Jordi Mas i Hernandez <jordi@ximian.com>
6097 * ProgressBar.cs: use clip region in ProgressBar
6098 * ThemeWin32Classic.cs: use clip region in ProgressBar
6100 2004-02-22 Jackson Harper <jackson@ximian.com>
6102 * BindingsCollection.cs: Remove some debug code.
6104 2005-02-22 Jackson Harper <jackson@ximian.com>
6106 * BindingContext.cs:
6107 * ControlBindingsCollection.cs:
6108 * CurrencyManager.cs:
6110 * BindingManagerBase.cs: Initial implementation
6111 * BindingsCollection.cs: Add an internal contains method that the
6112 BindingManagerBase uses to ensure bindings aren't added twice to
6114 * PropertyManager.cs: Stubbed out.
6116 * ContainerControl.cs: Hook up databinding
6118 2005-02-22 Geoff Norton <gnorton@customerdna.com>
6121 OSXStructs.cs: Refactored to handle the new Hwnd NC logic area.
6122 Fixed Invalidate/Update chain.
6123 Fixed tons of other minor bugs (this is almost a complete rewrite).
6125 2005-02-22 Jordi Mas i Hernandez <jordi@ximian.com>
6127 * ComboBox.cs: do subcontrol creation when the control is created
6129 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
6131 * Label.cs: fixes image drawing (image and imagelist)
6132 * ThemeWin32Classic.cs: cache brushes
6134 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
6136 * Form.cs: Move menu drawing code to Theme class
6137 * ComboBox.cs: Move ComboBox drawing code to Theme class
6138 * MenuItem.cs: Move menu drawing code to Theme class
6139 * MenuAPI.cs: Move menu drawing code to Theme class
6140 * ThemeWin32Classic.cs: New methods
6141 * CheckedListBox.cs: Move CheckedListbox drawing code to Theme class
6142 * ListBox.cs: Move Listbox drawing code to Theme class
6143 * Theme.cs: New methods
6145 2005-02-20 Peter Bartok <pbartok@novell.com>
6148 - Fixed ProcessKeyEventArgs to also handle WM_SYSKEY messages (and
6149 only process mnemonics on those)
6150 - Fixed event sequence for key handling; first calling
6151 ProcessKeyEventArgs now
6153 - Removed WM_KEYDOWN hook, instead we now use ProcessDialogKey()
6154 for processing non-character keys
6155 - Fixed WM_CHAR to generate proper event sequence before processing
6156 * XplatUIWin32.cs: Added ALT key state to ModifierKeys property
6159 2005-02-19 Peter Bartok <pbartok@novell.com>
6161 * UserControl.cs: Added TextChanged event; added attributes
6162 * SizeGrip.cs: Implemented resizing and optional display of grip
6163 * Form.cs: Fixed attribute
6164 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs:
6165 Changed meaning of ScrollWindow bool argument; instead of the
6166 clear attribute (which will be true usually anyway), it gives the
6167 option of moving child controls as well.
6169 - Changed to match new ScrollWindow argument
6170 - Fixed GetWindowPos/SetWindowPos behaviour for toplevel controls,
6171 now handles the implicit parent window a WM puts around us
6172 * ScrollableControl.cs: Implemented (not the prettiest, but it seems
6174 * TextBoxBase.cs: Adjusted to new ScrollWindow arguments
6175 * TreeView.cs: Adjusted to new ScrollWindow arguments
6177 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
6179 * Form.cs: Menu integration with non-client area
6180 * MenuItem.cs: Menu integration with non-client area
6181 * MenuAPI.cs: Menu integration with non-client area
6183 2005-02-18 Peter Bartok <pbartok@novell.com>
6185 * MethodInvoker.cs: Added
6186 * MdiLayout.cs: Added
6187 * SendKeys.cs: Started implementation
6188 * ErrorIconAlignment.cs: Added
6190 2005-02-18 Peter Bartok <pbartok@novell.com>
6192 * XplatUIWin32.cs: Implemented SetMenu(); fixed GetMenuDC()
6193 * Form.cs: Added handling for Menu-related Non-client messages
6195 2005-02-17 Peter Bartok <pbartok@novell.com>
6197 * UpDownBase.cs: Fixed typo, compilation errors
6198 * DomainUpDown.cs: Fixed attribute value
6200 2005-02-16 Miguel de Icaza <miguel@novell.com>
6202 * UpDownBase.cs: Attach entry events.
6204 Add ForeColor property, Focused, InterceptArrowKeys (interception
6207 2005-02-17 Jordi Mas i Hernandez <jordi@ximian.com>
6210 - Redraw non client are on Setmenu
6211 - Calc proper menu starting point
6213 2005-02-17 Peter Bartok <pbartok@novell.com>
6215 * Application.cs: Fixed message_filter check
6217 2005-02-17 Peter Bartok <pbartok@novell.com>
6219 * Application.cs: Now calls registered message filters
6220 * DockStyle.cs: Fixed attribute
6221 * Form.cs: Fixed attribute
6222 * Menu.cs: Fixed attribute
6223 * ToolTip.cs: Fixed attribute
6224 * TreeNode.cs: Added missing attributes and arranged in regions
6225 * PropertyGrid.cs: Fixed signatures
6226 * TreeNodeCollection.cs: Added attributes
6227 * Splitter.cs: Added missing attributes; arranged into regions
6228 * TabPage.cs: Added missing attributes; arranged into regions
6229 * TextBoxBase.cs: Added missing attributes
6230 * TextBox.cs: Added missing attributes
6231 * ArrangeDirection.cs: Added missing attributes
6232 * TreeNodeConverter.cs: Added stub (needed for TreeNode)
6233 * ToolBarButton.cs: Fixed attributes
6234 * AnchorStyles.cs: Fixed attribute
6235 * TrackBar.cs: Fixed attributes
6236 * TabControl.cs: Added missing attributes and arranged into regions
6237 * ToolBar.cs: Fixed attribute
6238 * StatusBar.cs: Fixed signature, organized into regions and added
6240 * StatusBarPanel.cs: Fixed attributes
6241 * ContentsResizedEventArgs.cs: Implemented
6242 * ContentsResizedEventHandler.cs: Implemented
6243 * DateBoldEventArgs.cs: Implemented
6244 * DateBoldEventHandler.cs: Implemented
6245 * UpDownEventArgs.cs: Implemented
6246 * UpDownEventHandler.cs: Implemented
6248 2005-02-16 Jordi Mas i Hernandez <jordi@ximian.com>
6250 * Form.cs: first Menu NC refactoring
6251 * MenuAPI.cs: first Menu NC refactoring
6253 2005-02-16 Peter Bartok <pbartok@novell.com>
6255 * ImeMode.cs: Added missing attributes
6256 * Menu.cs: Fixed attribute
6257 * GroupBox.cs: Fixed attribute
6258 * Label.cs: Fixed attribute
6259 * ColorDialog.cs (RunDialog): Removed TODO attribute
6260 * ComboBox.cs: Fixed attributes
6261 * ListControl.cs: Added missing attributes
6262 * PropertyGrid.cs: Fixed attributes
6263 * Control.cs: Fixed attributes
6264 * ListViewItem.cs: Added TypeConverter attribute
6265 * NotifyIcon.cs: Fixed attributes
6266 * ListView.cs: Fixed attributes
6267 * ButtonBase.cs: Fixed attribute
6268 * ImageList.cs: Added missing attributes
6269 * ContainerControl.cs: Fixed signature
6270 * CheckedListBox.cs: Fixed attribute; added missing attributes
6271 * Panel.cs: Fixed attributes
6272 * PropertyTabChangedEventArgs.cs: Added missing attribute
6273 * PropertyValueChangedEventArgs.cs: Added missing attribute
6274 * Binding.cs: Fixed attribute
6275 * ListViewItemConverter: Implemented ListViewSubItemConverter class
6276 * ListBox.cs: Fixed attribute; added missing attributes;
6277 * ScrollableControl.cs: Added missing attributes
6278 * PictureBox.cs: Added missing attributes; implemented missing property
6279 * DateTimePicker.cs: Added missing attributes
6280 * Theme.cs (ToolWindowCaptionHeight): Fixed type
6281 * MonthCalendar.cs: Fixed attributes
6282 * StatusBarPanel.cs: Added missing attributes
6283 * SystemInformation.cs (ToolWindowCaptionHeight): Fixed type
6285 2005-02-16 Peter Bartok <pbartok@novell.com>
6287 * TextBoxBase.cs: The previous method to enforce height yet remember
6288 the requested high was less than ideal, this is an attempt to do
6290 * Control.cs: Added comment about possible problem
6291 * Copyright: Updated format
6292 * GridItemType.cs: Fixed swapped values
6294 2005-02-15 Jackson Harper <jackson@ximian.com>
6296 * BaseCollection.cs: Use property so we never access an
6297 uninitialized list. Also initialize the list in the property.
6299 2005-02-15 Peter Bartok <pbartok@novell.com>
6301 * GroupBox.cs (ProcessMnemonic): Implemented
6302 * Label.cs (ProcessMnemonic): Implemented
6303 * ThemeWin32Classic.cs (DrawGroupBox): Added stringformat to show
6306 2005-02-15 Peter Bartok <pbartok@novell.com>
6308 * RadioButton.cs (ProcessMnemonic): Implemented
6309 * CheckBox.cs (ProcessMnemonic): Implemented
6311 - Added handling of WM_SYSxxx keyboard messages to support mnemonic
6313 - Added internal method to allow calling ProcessMnemonic from other
6315 * ContainerControl.cs:
6316 - Started support for handling validation chain handling
6317 - Implemented ProcessMnemonic support
6318 - Added Select() call to Active, to make sure the active control
6320 * Form.cs: Setting toplevel flag for Forms (this was lost in the
6322 * ThemeWin32Classic.cs:
6323 - DrawCheckBox(): Fixed stringformat to show hotkeys
6324 - DrawRadioButton(): Fixed stringformat to show hotkeys
6325 * CommonDialog.cs: Removed WndProc override, not needed
6327 2005-02-14 Peter Bartok <pbartok@novell.com>
6329 * XplatUIX11.cs: Fixed NotImplemented exceptions for properties,
6330 missed those in the rewrite
6332 2005-02-14 Miguel de Icaza <miguel@novell.com>
6334 * NumericUpDown.cs (Increment, ToString): Add.
6335 (DecimalPlaces): implement.
6339 * UpDownBase.cs: Add the designer attributes.
6341 2005-02-13 Peter Bartok <pbartok@novell.com>
6343 * Panel.cs: Removed border_style, now in Control
6344 * XplatUIDriver.cs: Added SetBorderStyle, SetMenu, GetMenuDC and
6345 ReleaseMenuDC Methods; renmaed ReleaseWindow to UngrabWindow
6347 2005-02-13 Peter Bartok <pbartok@novell.com>
6349 * MouseButtons.cs: Added missing attributes
6350 * XplatUIStructs.cs: Added enumeration for title styles
6351 * LeftRightAlignment.cs: Added missing attributes
6352 * Hwnd.cs: Switched to use client_window as handle (slower, but makes
6353 it compatible with Graphics.FromHwnd()
6354 * SelectedGridItemChangedEventArgs.cs: Fixed property type
6355 * Keys.cs: Added missing attributes
6356 * SelectionRange.cs: Added missing attributes
6357 * SelectionRangeConverter.cs: Added
6359 - Introduced SetBorderStyle, SetMenu, GetMenuDC and
6360 ReleaseMenuDC methods
6361 - Renamed ReleaseWindow to UngrabWindow
6362 - Added proper startup notice to allow version identification
6364 - Added missing attributes
6365 - Removed FormParent concept
6366 * Label.cs: Removed border_style field, now in Control
6367 * RadioButton.cs: Now properly selects RadioButton when focus is
6369 * ThemeGtk.cs: Fixed SetDisplay call to match new X11 behaviour
6371 - Added missing attributes
6372 - Added borderstyle handling
6373 - Removed FormParent concept support
6374 - Fixed calls to XplatUI to match changed APIs
6375 - Fixed bug that would case us to use disposed Graphics objects
6376 - Removed unneeded internal methods
6377 - PerformLayout(): Fixed to handle DockStyle.Fill properly
6378 - SelectNextControl(): Fixed to properly check common parents
6379 * TextBoxBase.cs: Removed border_style field (now in Control)
6381 - Patch by Robert Thompson (rmt@corporatism.org): Added icon support,
6382 fixed calculations for form size
6383 - Added support for localized strings and icons
6384 - Improved form size calculations, added border
6385 * ListView.cs: Removed border_style field (now in Control)
6386 * X11Structs.cs: Moved several structs from X11 driver here
6387 * X11Keyboard.cs: Changed debug message
6388 * Application.cs: Removed FormParent concept support
6390 - Resetting end_modal flag
6391 - Removed FormParent concept support
6392 * NativeWindow.cs: Removed FormParent concept support
6393 * XplatUIX11.cs: Rewritten, now using the new Hwnd class, implementing
6394 Client area and Non-Client whole window to allow support for WM_NC
6396 * XplatUIOSX.cs: Updated to match latest driver spec; added exception
6397 prevent using it until it supports Hwnd as per Geoff Norton's request
6398 * ToolBar.cs: Fixed drawing, was not doing proper drawing
6399 * PictureBox.cs: Removed border_style field, now in Control
6400 * XplatUIWin32.cs: Added new driver methods
6402 2005-02-12 Peter Bartok <pbartok@novell.com>
6404 * OpacityConverter.cs: Implemented
6405 * Hwnd.cs: Internal class to support drivers that need to emulate
6406 client area/non-client area window behaviour
6408 2005-02-11 Peter Bartok <pbartok@novell.com>
6410 * KeysConverter.cs: Implemented
6412 2005-02-11 Jordi Mas i Hernandez <jordi@ximian.com>
6414 * Menu.cs: fixes methods GetContextMenu, GetMainMenu, ToString
6415 * LinkLabel: Added missing attributes
6416 * MainMenu.cs: fixes ToString
6417 * MenuItem.cs: fixes methods GetContextMenu, GetMainMenu
6418 * ListBox.cs: fixes event position
6419 * TrackBar.cs: adds missing attributes and events
6421 2005-02-10 Jordi Mas i Hernandez <jordi@ximian.com>
6423 * MenuItem.cs: Use SystemInformation and bug fixes
6424 * MenuAPI.cs: Use SystemInformation and bug fixes
6426 2005-02-09 Jackson Harper <jackson@ximian.com>
6428 * X11Keyboard.cs: We ignore some keys, but still need to set/reset
6429 their keystate otherwise things like VK_MENU get stuck "on".
6431 2005-02-09 Kazuki Oikawa <kazuki@panicode.com>
6433 * ListBox.cs: Fixes AddRange bug
6435 2005-02-09 Jordi Mas i Hernandez <jordi@ximian.com>
6438 - Add missing attributes
6439 - Add missing method
6441 * CheckedListBox.cs: Added missing attributes
6442 - Add missing attributes
6443 - Remove extra method
6445 * ComboBox.cs: Added missing attributes
6446 * VScrollBar.cs: Added missing attributes
6447 * ScrollBar.cs: Added missing attributes
6448 * ListBox.cs: Fixes signature, add missing consts
6449 * LinkArea.cs: Added missing attributes
6452 2005-02-08 Peter Bartok <pbartok@novell.com>
6454 * Menu.cs: Added missing attributes
6455 * MainMenu.cs: Added missing attributes
6456 * GroupBox.cs: Added missing attributes
6457 * Label.cs: Added missing attributes
6458 * CheckBox.cs: Implemented CheckBoxAccessibleObject class
6460 - Added Instance and Options properties
6461 - Added missing attributes
6462 * Cursor.cs: Made Serializable
6463 * NotifyIcon: Added missing attributes
6464 * MenuItem.cs: Added missing attributes
6465 * TextBoxBase.cs: Implemented AppendText() and Select() methods
6466 * Panel.cs: Added Missing attributes
6467 * MonthCalendar.cs: Fixed CreateParams
6469 2005-02-08 Jordi Mas i Hernandez <jordi@ximian.com>
6473 - Fixes issues with links
6474 - Adds the class attributes
6476 2005-02-08 Jordi Mas i Hernandez <jordi@ximian.com>
6479 - Fixes button when no items available in dropdown
6480 - Fixes repainting problems
6481 - Adds the class attributes
6483 2005-02-07 Geoff Norton <gnorton@customerdna.com>
6485 * XplatUIOSX.cs: Detect the menu bar and title bar height from
6486 the current theme. Cache these on startup.
6488 2005-02-07 Jackson Harper <jackson@ximian.com>
6490 * ScrollBar.cs: Give the correct clipping rect to the theme. Dirty
6491 the scrollbar buttons when they are depressed.
6493 2005-02-07 Geoff Norton <gnorton@customerdna.com>
6495 * XplatUIOSX.cs: Really fix working at resolutions not 1024x768.
6496 Get the display size from the main displayid. We currently dont
6497 support multiple display configurations.
6499 2005-02-07 Geoff Norton <gnorton@customerdna.com>
6501 * XplatUIOSX.cs: Ensure the window doesn't get stuck behind the statusbar.
6503 2005-02-07 Miguel de Icaza <miguel@novell.com>
6505 * UpDownBase.cs: Add ReadOnly and UpDownAlign properties.
6507 2005-02-05 Jonathan Chambers <jonathan.chambers@ansys.com>
6509 * PropertyGrid.cs: Updated. Patch by Jonathan Chambers
6511 2005-02-04 Jackson Harper <jackson@ximian.com>
6513 * ThemeWin32Classic.cs: Respect the clipping rect when
6514 drawing. Only fill the intersection of clips and rects so there
6515 isn't a lot of large fills.
6516 * ScrollBar.cs: Pass the correct clipping rect to the theme
6517 engine. Remove some debug code.
6519 2005-02-05 John BouAntoun <jba-mono@optusnet.com.au>
6521 * DateTimePicker.cs:
6522 - Fixed crash on DateTime.Parse, use Constructor instead
6524 2005-02-04 Jordi Mas i Hernandez <jordi@ximian.com>
6528 - Owner draw support (MeasureItem and DrawItem)
6530 2005-02-04 Jordi Mas i Hernandez <jordi@ximian.com>
6533 - Implements FindMergePosition and MergeMenu functions (very poor documented)
6534 - Fixes MenuItems.Add range
6536 - MergeMenu and Clone and CloneMenu functions
6538 2005-02-03 Jackson Harper <jackson@ximian.com>
6540 * ScrollBar.cs: Make abstract
6541 * ScrollableControl.cs: Create H/V scrollbars now that scrollbar
6544 2005-02-03 Jackson Harper <jackson@ximian.com>
6546 * ScrollBar.cs: First part of my scrollbar fixups. This removes
6547 all the unneeded refreshes and uses invalidates with properly
6550 2005-02-03 Peter Bartok <pbartok@novell.com>
6552 * ComponentModel.cs: Added
6553 * IDataGridEditingService.cs: Added
6554 * Timer.cs: Added missing attributes
6555 * ToolTip.cs: Added missing attributes
6557 2005-02-03 Jonathan Chambers <jonathan.chambers@ansys.com>
6559 * PropertyGridView.cs: Added. Patch by Jonathan Chambers
6561 2005-02-03 Peter Bartok <pbartok@novell.com>
6563 * ListBox.cs: Added missing attributes
6565 2005-02-03 Jordi Mas i Hernandez <jordi@ximian.com>
6568 - Fixes font height after font change
6569 - Avoid generating unnecesary OnSelectedIndexChanged on clearing
6571 2005-02-02 Peter Bartok <pbartok@novell.com>
6573 * HandleData.cs: Introduced static methods to allow class
6574 to be more self-contained and track it's own HandleData objects
6575 * XplatUIOSX.cs, XplatUIWin32.cs, XplatUIX11.cs: Fixed usage of
6576 HandleData to use new static methods
6578 2005-02-02 Jordi Mas i Hernandez <jordi@ximian.com>
6581 - Fixes default size and PreferredHeight
6583 - ObjectCollection.Insert implementation
6589 - ObjectCollection.Insert implementation
6590 - No selection after clean
6593 2005-01-31 John BouAntoun <jba-mono@optusnet.com.au>
6595 * ThemeWin32Classic.cs: quick fix to comboboxbutton pushed painting
6597 2005-02-01 Jordi Mas i Hernandez <jordi@ximian.com>
6600 - Caches ItemHeight calculation for OwnerDrawVariable
6601 - Handles dropdown properly
6602 - Fixes several minor bugs
6604 2005-01-31 Jordi Mas i Hernandez <jordi@ximian.com>
6607 - Fixes 71946 and 71950
6608 - Fixes changing Multicolumn on the fly
6609 - Fixes keyboard navigation on Multicolumn listboxes
6611 2005-01-31 Geoff Norton <gnorton@customerdna.com>
6613 * XplatUIOSX.cs: Call ExitToShell in our teardown to avoid a
6616 2005-01-31 Geoff Norton <gnorton@customerdna.com>
6618 * XplatUIOSX.cs: Allow applications to actually exit.
6620 2005-01-31 Geoff Norton <gnorton@customerdna.com>
6622 * XplatUIOSX.cs: SetWindowStyle implemented. Reposition views in
6623 their parent at creation time rather than lazily later. Fixes a major
6624 regression we were experiencing.
6626 2005-01-31 John BouAntoun <jba-mono@optusnet.com.au>
6628 * ThemeWin32Classic.cs: more date time picker painting fixes
6629 * DateTimePicker.cs: more monthcalendar drop down fixes
6630 * MonthCalendar.cs: more CreateParams fixes to ensure correct drop down
6632 2005-01-31 Jordi Mas i Hernandez <jordi@ximian.com>
6635 - When moving the thumb going outside the control should stop the moving
6636 - Adds the firing of missing events
6637 - Fixes no button show if Size is not specified
6638 - End / Home keys for keyboard navigation
6640 2005-01-30 Peter Bartok <pbartok@novell.com>
6642 * NotifyIcon.cs (CalculateIconRect): Removed debug output and added
6643 sanity check to prevent theoretical loop
6644 * XplatUIWin32.cs (SetVisible): Removed debug output
6645 * XplatUIX11.cs (SystrayChange): Added sanity check
6646 * ScrollableControl.cs (OnVisibleChanged): Now calls base method
6647 * Control.cs (OnVisibleChanged): Added workaround for ParentForm
6648 behaviour, valid until the X11 client window rewrite is done
6649 * TextBox.cs (ctor): Setting proper default foreground and background
6652 2005-01-30 John BouAntoun <jba-mono@optusnet.com.au>
6654 * Theme: Added DrawDateTimePicker to interface
6655 * ThemeWin32Classic.cs: Added DrawDateTimePicker (incomplete)
6656 * DateTimePicker.cs: Created (still needs keys and painting code)
6657 * DateTimePickerFormat.cs: added
6658 * MonthCalendar.cs: fixed CreateParams for popup window mode
6660 2005-01-29 Peter Bartok <pbartok@novell.com>
6662 * ControlPaint.cs: Fixed luminace value returned on achromatic colors,
6663 this should also the calculations for ligher/darker
6664 * Theme.cs: Fixed defaults for ScrollBar widths/heights
6666 2005-01-29 Peter Bartok <pbartok@novell.com>
6668 * ArrangeDirection.cs: Added
6669 * ArrangeStartingPositon.cs: Added
6670 * SystemInformation.cs: Implemented
6671 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
6672 XplatUIX11.cs, Theme.cs: Added/implemented new static properties
6673 used by SystemInformation class
6674 * X11Strucs.cs: Added XSizeHints structure
6676 - Fixed CreateParams to make sure the menu window is always visible
6677 - TrackPopupMenu: Added check to make sure we don't draw the
6680 2005-01-29 Peter Bartok <pbartok@novell.com>
6682 * HandleData.cs: Added method for altering invalid area
6683 * TextBoxBase.cs: Implemented TextLength
6685 2005-01-28 Peter Bartok <pbartok@novell.com>
6687 * XplatUIX11.cs: Improvement over last patch, not sending
6688 the WM_PAINT directly anymore, instead we scroll any pending
6689 exposed areas and let the system pick out the WM_PAINT later
6691 2005-01-28 Peter Bartok <pbartok@novell.com>
6693 * SWF.csproj: Deleted, no longer used. Instead,
6694 Managed.Windows.Forms/SWF.csproj should be used
6695 * XplatUIX11.cs: Instead of posting the WM_PAINT, we send it
6696 directly, to avoid a potential race condition with the next
6699 2005-01-28 Peter Bartok <pbartok@novell.com>
6701 * XplatUI.cs: Made class internal
6703 2005-01-28 Jordi Mas i Hernandez <jordi@ximian.com>
6705 * CheckedListBox.cs:
6708 - Missing methods and events
6710 2005-01-27 Peter Bartok <pbartok@novell.com>
6712 * Application.cs (Run): Don't use form if we don't have one
6714 2005-01-27 Peter Bartok <pbartok@novell.com>
6716 * TextBoxBase.cs (get_Lines): Fixed index off by one error
6718 2005-01-27 Peter Bartok <pbartok@novell.com>
6720 * GridEntry.cs: Added; Patch by Jonathan S. Chambers
6721 * GridItem.cs: Added; Patch by Jonathan S. Chambers
6722 * GridItemCollection.cs: Added; Patch by Jonathan S. Chambers
6723 * GridItemType.cs: Added; Patch by Jonathan S. Chambers
6724 * PropertyGrid.cs: Added; Patch by Jonathan S. Chambers
6725 * PropertySort.cs: Added; Patch by Jonathan S. Chambers
6726 * PropertyTabChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
6727 * PropertyTabChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
6728 * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
6729 * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
6730 * SelectedGridItemChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
6731 * SelectedGridItemChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
6733 2005-01-27 Jordi Mas i Hernandez <jordi@ximian.com>
6736 - Draw focus on Simple Combobox
6737 - Fixes drawing issues
6740 2005-01-27 Peter Bartok <pbartok@novell.com>
6743 - Place window in default location, instead of hardcoded 0/0
6744 - Send initial LocationChanged event
6746 - UpdateBounds after creation to find out where the WM placed us
6747 - Make sure that if the ParentForm changes location the Form
6749 * XplatUIX11.cs: XGetGeometry will not return the coords relative
6750 to the root, but to whatever the WM placed around us.
6751 Translate to root coordinates before returning toplevel
6753 * XplatUIWin32.cs: Removed debug output
6754 * XplatUIOSX.cs, XplatUI.cs, XplatUIDriver.cs: Added toplevel
6755 flag to GetWindowPos, to allow translation of coordinates on X11
6757 2005-01-27 Jordi Mas i Hernandez <jordi@ximian.com>
6759 * ListBox.cs: connect LostFocus Event
6761 2005-01-27 Peter Bartok <pbartok@novell.com>
6763 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
6764 XplatUIX11.cs: Extended the Systray API
6765 * Form.cs: Removed debug output
6766 * Application.cs: Fixed focus assignment, always need to call
6767 XplatUI.Activate() since Form.Activate() has rules that may
6769 * NotifyIcon.cs: Should be complete now
6770 * ToolTip.cs: Worked around possible timer bug
6772 2005-01-27 Jackson Harper <jackson@ximian.com>
6775 - Only invalidate the effected tabs when the
6776 selected index changes. This reduces drawing and gets rid of some
6778 - Only refresh if the tabs need to be shifted, otherwise only
6779 invalidate the slider button.
6780 - On windows the tabs are not filled to right if the slider is
6783 2005-01-27 Jackson Harper <jackson@ximian.com>
6785 * TabControl.cs: Only refresh on mouseup if we are showing the
6786 slider. Also only invalidate the button whose state has changed.
6788 2005-01-26 Peter Bartok <pbartok@novell.com>
6790 * XplatUI.cs, XplatUIDriver.cs: Added Systray methods
6791 * XplatUIWin32.cs: Implemented SystrayAdd(), SystrayChange()
6792 and SystrayRemove() methods
6793 * XplatUIOSX.cs: Stubbed Systray methods
6795 - Implemented SystrayAdd(), SystrayChange() and SystrayRemove()
6797 - Fixed broken XChangeProperty calls (marshalling messed up things)
6798 * X11Structs.cs: Added enums and structs required for Size hinting
6799 * NotifyIcon.cs: Added & implemented
6801 2005-01-26 Jackson Harper <jackson@ximian.com>
6803 * TabControl.cs: Space vertically layed out tabs properly.
6805 2005-01-26 Peter Bartok <pbartok@novell.com>
6807 * Form.cs (CreateClientParams): Always set the location to 0,0
6808 since we're a child window.
6810 * Control.cs (SetVisibleCore): Always explicitly setting the location
6811 of a toplevel window, apparently X11 doesn't like to move windows
6812 while they're not mapped.
6814 2005-01-26 Jackson Harper <jackson@ximian.com>
6816 * TabControl.cs: Implement FillToRight size mode with vertically
6819 2005-01-26 Jordi Mas i Hernandez <jordi@ximian.com>
6821 * ControlPaint.cs, ThemeWin32Classic.cs
6822 - Fixes DrawFocusRectangle
6824 2005-01-26 Jordi Mas i Hernandez <jordi@ximian.com>
6827 - MenuBar tracking only starts when item is first clicked
6828 - Fixes menu hidding for multiple subitems
6829 - Unselect item in MenuBar when item Executed
6832 2005-01-25 Jordi Mas i Hernandez <jordi@ximian.com>
6835 - IsInputKey for ListBox
6838 - Shift and Control item selection
6839 - Implement SelectionMode.MultiExtended
6842 - IsInputKey implemented
6843 - Do not generate OnTextChangedEdit on internal txt changes
6845 2005-01-23 Peter Bartok <pbartok@novell.com>
6847 * AccessibleObject.cs: Partially implemented Select()
6848 * MonthCalendar.cs: Added missing attributes and events
6849 * Form.cs: Fixed CreateParams behaviour, now controls derived from
6850 form can properly override CreateParams.
6851 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
6852 XplatUIX11.cs: Dropped RefreshWindow method, not needed if
6853 Control performs Invalidate & Update
6854 * NativeWindow (CreateHandle): Added special handling for Form
6855 and Form.FormParent classes to allow overriding of From.CreateParams
6857 - ControlNativeWindow: Renamed 'control' variable to more intuitive
6859 - ControlNativeWindow: Added Owner property
6860 - Removed usage of Refresh() on property changes, changed into
6861 Invalidate(), we need to wait until the queue is processed for
6862 updates, direct calls might cause problems if not all vars for
6863 Paint are initialized
6864 - Added call to UpdateStyles() when creating the window, to set any
6865 styles that CreateWindow might have ignored.
6866 - Added support for Form CreateParent overrides to UpdateStyles()
6867 * MessageBox.cs: Removed no longer needed FormParent override stuff,
6868 CreateParams are now properly overridable
6869 * CommonDialog.cs: Removed no longer needed FormParent override stuff,
6870 CreateParams are now properly overridable
6872 2005-01-23 Miguel de Icaza <miguel@ximian.com>
6874 * UpDownBase.cs (ctor): Connect TextChanged in the entry to the
6877 Capture LostFocus and OnTextBoxChanged. The later introduces a
6878 recursive invocation that I have not figured out yet.
6880 Reset the timer when not using (it was accumulating).
6883 (OnTextBoxChanged): Set UserEdit to true here to track whether the
6884 user has made changes that require validation.
6886 Reset changing to avoid loops.
6888 2005-01-22 Miguel de Icaza <miguel@ximian.com>
6890 * NumericUpDown.cs: Display value at startup.
6892 * UpDownBase.cs (Text): Do not call UpdateEditText here, only call
6895 * NumericUpDown.cs: Minimum, Maximum, Text, Value properties
6896 filled in. Added some basic parsing of text.
6898 Still missing the OnXXX method overrides, and figuring out the
6899 events that must be emitted.
6901 * UpDownBase.cs: Handle UserEdit on the Text property.
6903 2005-01-22 Jordi Mas i Hernandez <jordi@ximian.com>
6906 - Fixes IntegralHeight
6909 2005-01-21 Jackson Harper <jackson@ximian.com>
6911 * TabControl.cs: Set the SelectedIndex property when SelectedTab
6912 is set so that the page visibility is updated and the tabs are
6915 2005-01-21 Jackson Harper <jackson@ximian.com>
6917 * TabControl.cs: Use cliping rectangle for blitting. Give the
6918 theme the clipping rect so we can do clipping while
6919 drawing. Remove some debug code.
6921 2005-01-21 Jackson Harper <jackson@ximian.com>
6923 * TabPage.cs: Add a new method so tab pages can force the tab
6924 control to recalculate the tab page sizes.
6925 * TabControl.cs: UpdateOwner needs to make the tab control recalc
6928 2005-01-20 Jackson Harper <jackson@ximian.com>
6930 * ThemeWin32Classic.cs: Clip text to the staus bar panels rects.
6932 2005-01-20 Jackson Harper <jackson@ximian.com>
6934 * TreeView.cs: Set the bounds for nodes properly. They were
6935 getting screwed up when checkboxes were not enabled, but images
6938 2005-01-20 Jordi Mas i Hernandez <jordi@ximian.com>
6941 - Owner draw support
6944 2005-01-20 Jackson Harper <jackson@ximian.com>
6946 * XplatUIStructs.cs: More misc keys
6947 * X11Keyboard.cs: Ignore some control keys.
6949 2005-01-20 Jackson Harper <jackson@ximian.com>
6951 * X11Structs.cs: Add the modmaps to the keymask struct and tabify.
6952 * X11Keyboard.cs: Set the AltGr mask when we get a key event.
6954 2005-01-19 Peter Bartok <pbartok@novell.com>
6956 * Control.cs: Un-selecting the control when it is loosing focus
6958 2005-01-19 Jackson Harper <jackson@ximian.com>
6960 * TreeView.cs: Hook up to the text controls leave event so we can
6961 end editing when the users clicks outside the text box.
6963 2005-01-19 Jackson Harper <jackson@ximian.com>
6965 * X11Keyboard.cs: Fix typo that was causing the wrong keycodes to
6966 get set in the conversion array.
6968 2005-01-19 Peter Bartok <pbartok@novell.com>
6970 * Application.cs (ModalRun): Added a call to CreateControl to ensure
6971 focus is properly set
6973 - Added missing attributes
6974 - removed styles, those are already set in the base class
6976 - Added missing attributes
6977 - Added clip window styles
6978 * CheckBox.cs: Added missing attributes
6980 - FormParentWindow.CreateParams: Added required clip styles
6981 * Form.cs (ProcessDialogKey): Fixed handling of Escape key, now
6982 also filters modifier keys
6984 - Added assignment of Accept and Cancel button to enable Enter
6985 and Esc keys in MessageBox dialogs
6986 - FormParentWindow.CreateParams: Added required clip styles
6987 * RadioButton.cs: Added missing attributes
6988 * TextControl.cs: No longer draws selection if control does not
6991 - Now draws simple rectangle around test area to make it obvious
6992 there's a control. This is a hack until we properly support borders
6993 - A few simple fixes to support selections better, now erases selected
6994 text when typing, and resets selection when using movement keys
6996 2005-01-19 Miguel de Icaza <miguel@ximian.com>
6998 * UpDownBase.cs: Added some new properties.
7000 * DomainUpDown.cs: Implement a lot to get my test working.
7002 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7004 * XplatUIOSX.cs: Fix a minor bug to bring the close box back
7006 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7008 * OSXStructs (WindowAttributes): Fixed csc complaints
7010 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7013 OSXStructs.cs: Initial refactor to move enums and consts into
7014 OSXStructs and use them in the driver for greater readability.
7016 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7018 * XplatUIOSX.cs: Initial support for Standard Cursors.
7019 * OSXStructs.cs: Move our structs here; added ThemeCursor enum
7021 2005-01-19 Jordi Mas i Hernandez <jordi@ximian.com>
7023 * ComboBox.cs: ability to change style when the ctrl is already
7024 created, missing methods and events, bug fixes, signature fixes
7026 2005-01-19 Peter Bartok <pbartok@novell.com>
7028 * Cursors.cs (ctor): Added ctor to fix signature
7030 2005-01-18 Peter Bartok <pbartok@novell.com>
7032 * Button.cs: Implemented DoubleClick event
7034 - Fixed keyboard handling to behave like MS, where the press of
7035 Spacebar is equivalent to a mousedown, and the key release is
7036 equivalent to mouseup. Now a spacebar push will give the same
7037 visual feedback like a mouse click.
7038 - Added missing attributes
7039 - Added ImeModeChanged event
7040 - Added support for generating DoubleClick event for derived classes
7042 - Implemented DoubleClick event
7043 - Added missing attributes
7044 * CommonDialog.cs: Added missing attribute
7045 * ContextMenu.cs: Added missing attributes
7047 - AutoChecked buttons do not allow to be unselected when clicked
7048 (otherwise we might end up with no selected buttons in a group)
7049 - Added missing attributes
7050 - Implemented DoubleClickEvent
7051 * ThreadExceptionDialog.cs: Enabled TextBox code
7053 2005-01-18 Peter Bartok <pbartok@novell.com>
7055 * Form.cs: Removed debug output
7056 * Button.cs: Added support for DoubleClick method
7058 2005-01-18 Peter Bartok <pbartok@novell.com>
7061 - Added method to parent window that allows triggering size
7062 calculations when a menu is added/removed
7063 - set_Menu: Cleaned up mess from early days of Form and Control,
7064 now properly triggers a recalc when a menu is added/removed
7065 - Added case to select form itself as focused form if no child
7067 - Added PerformLayout call when showing dialog, to ensure properly
7070 - Select(): Made internal so Form can access it
7071 - Focus(): Only call Xplat layer if required (avoids loop), and sets
7073 * Application.cs (Run): Removed hack and calls PerformLayout instead
7074 to trigger calculation when Form becomes visible
7076 2005-01-18 Jordi Mas i Hernandez <jordi@ximian.com>
7078 * ComboBox.cs: fixes for ownerdraw
7080 2005-01-18 Peter Bartok <pbartok@novell.com>
7083 - Sentinel is no longer static, each Document gets it's own, this
7084 avoids locking or alternatively overwrite problems when more
7085 than one text control is used simultaneously.
7086 - Switched to use Hilight and HilightText brushes for text selection
7088 * TextBoxBase.cs (PaintControl): Disabled AntiAliasing to improve looks
7090 2005-01-18 Peter Bartok <pbartok@novell.com>
7093 - Hooked up the following events:
7101 o SystemColorsChanged
7104 - Removed debug output
7105 - Added a call to the current theme's ResetDefaults when a color change
7107 * Form.cs: Now setting the proper ImeMode
7108 * Theme.cs: Defined a method to force recreation of cached resources
7109 and rereading of system defaults (ResetDefaults())
7110 * ThemeWin32Classic.cs: Added ResetDefaults() stub
7112 2005-01-17 Peter Bartok <pbartok@novell.com>
7114 * Control.cs: Added missing attributes
7116 2005-01-17 Jackson Harper <jackson@ximian.com>
7118 * TreeNode.cs: Implement editing. Add missing properties selected
7120 * TreeView.cs: Implement node editing. Also some fixes to use
7121 Invalidate (invalid area) instead of Refresh when selecting.
7123 2005-01-17 Peter Bartok <pbartok@novell.com>
7126 - Implemented InvokeGotFocus() method
7127 - Implemented InvokeLostFocus() method
7128 - Implemented InvokePaint() method
7129 - Implemented InvokePaintBackground() method
7130 - Implemented InvokeClick() method
7131 - Implemented FindForm() method
7132 - Implemented RectangleToClient() method
7133 - Implemented ClientToRectangle() method
7134 - Implemented ResetBackColor() method
7135 - Implemented ResetCursor() method
7136 - Implemented ResetFont() method
7137 - Implemented ResteForeColor() method
7138 - Implemented ResetImeMode() method
7139 - Implemented ResetLeftToRight() method
7140 - Implemented ResetText() method
7141 - Implemented Scale() methods
7142 - Implemented ScaleCore() method
7143 - Implemented Update() method
7144 - Removed unused variables
7145 - Stubbed AccessibilityNotifyClients and
7146 ControlAccessibleObject.NotifyClients() methods (dunno what to do
7148 - Now setting proper default for RightToLeft property
7149 - Fixed bug in SetClientSizeCore that would cause windows to get
7151 - Now sending Click/DoubleClick events
7152 - Now selecting controls when left mouse button is clicked on
7154 * AccessibleEvents.cs: Added
7155 * XplatUI.cs, XplatUIDriver.cs: Added UpdateWindow() method
7156 * XplatUIOSX.cs: Stubbed UpdateWindow() method
7157 * XplatUIWin32.cs: Implemented UpdateWindow() method
7158 * XplatUIX11.cs: Implemented UpdateWindow() method
7159 * Form.cs: Removed stray semicolon causing CS0162 warning
7160 * ThemeWin32Classic.cs: Fixed unused variable warnings
7161 * ScrollableControl.cs: Now calls base method for ScaleCore
7162 * ButtonBase.cs: Now disabling StandardClick and StandardDoubleClick
7163 style to avoid interference with internal click handler (which is
7164 different than standard Control click handling)
7166 - Now unchecks all sibling radio buttons when control is
7167 selected (Fixes #68756)
7168 - Removed internal tabstop variable, using the one inherited from
7171 2005-01-17 Jackson Harper <jackson@ximian.com>
7173 * NavigateEventArgs.cs: Fix base type.
7174 * LinkLabel.cs: Sig fix
7176 2005-01-17 Jackson Harper <jackson@ximian.com>
7178 * TreeView.cs: Only invalidate the effected nodes bounds when
7181 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
7183 * XplatUIWin32.cs: fixes Win32 marshaling
7184 * XplatUIX11.cs: fixes method signature
7186 2005-01-17 Peter Bartok <pbartok@novell.com>
7188 * XplatUIX11.cs: Clean up resources when we no longer need them
7190 2005-01-17 Peter Bartok <pbartok@novell.com>
7192 * XplatUI.cs, XplatUIDriver.cs: Added SetCursor(), ShowCursor(),
7193 OverrideCursor(), DefineCursor(), DefineStdCursor(), GetCursorInfo()
7194 and DestroyCursor() methods.
7195 * Cursor.cs: Partially implemented, now supports standard cursors;
7196 still contains some debug code
7197 * Cursors.cs: Implemented class
7199 - WndProc(): Added handling of WM_SETCURSOR message, setting the
7201 - Implemented Cursor property
7202 - Replaced break; with return; more straightforwar and possibly
7204 - Now properly setting the result for WM_HELP
7205 * X11Structs.cs: Added CursorFontShape enum
7206 * XplatUIStructs.cs:
7207 - Added StdCursor enum (to support DefineStdCursor() method)
7208 - Added HitTest enum (to support sending WM_SETCURSOR message)
7210 - Now sends the WM_SETCURSOR message
7211 - Implemented new cursor methods
7212 * XplatUIOSX.cs: Stubbed new cursor methods
7214 - Implemented new cursor methods
7215 - Added GetSystemMetrics function and associated enumeration
7217 2005-01-15 Peter Bartok <pbartok@novell.com>
7220 - WndProc(): Now handles EnableNotifyMessage
7221 - SelectNextControl(): Fixed bug where if no child or sibling
7222 controls exist we looped endlessly
7224 2005-01-14 Jackson Harper <jackson@ximian.com>
7226 * TreeView.cs: Recalculate the tab pages when a new one is added
7227 so that the proper bounding rects are created.
7229 2005-01-14 Jackson Harper <jackson@ximian.com>
7231 * TreeView.cs: Draw a gray box instead of a grip in the lower
7232 right hand corner when there are both horizontal and vertical
7235 2005-01-14 Jackson Harper <jackson@ximian.com>
7237 * Control.cs: When erasing backgrounds use FromHwnd instead of
7238 FromHdc when there is a NULL wparam. This occurs on the X driver.
7239 * XplatUIX11.cs: Set the wparam to NULL.
7241 2005-01-13 Jackson Harper <jackson@ximian.com>
7243 * PictureBox.cs: Implement missing methods (except ToString, need
7244 to test that on windows) and events. When visibility is changed we
7245 need to redraw the image because the buffers are killed. When size
7246 is changed refresh if the sizemode needs it.
7248 2005-01-13 Peter Bartok <pbartok@novell.com>
7250 * Control.cs (SelectNextControl): Was using wrong method to select
7253 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
7255 * ComboBox.cs: fixes dropstyle
7257 2005-01-13 Peter Bartok <pbartok@novell.com>
7260 - Implemented Select() override
7261 - Now handles WM_SETFOCUS/WM_KILLFOCUS messages
7262 - Now sets keyboard focus on startup
7263 * Control.cs (SelectNextControl): Now properly handles directed=true
7265 - WndProc: Now passes tab key on to base if AcceptTabChar=false
7266 - Added (really bad) focus rectangle (mostly for testing)
7267 * TextBox.cs: Added code to handle getting/loosing focus and invalidating
7268 to enforce redraw on focus changes
7269 * ContainerControl.cs:
7270 - Fixed detection of Shift-Tab key presses
7271 - Fixed traversal with arrow keys
7272 * XplatUIX11.cs: Implemented simulated keyboard focus; not sure if we're
7273 gonna keep this or if it's complete yet
7275 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
7277 * ComboBox.cs: missing properties, fixes
7279 2005-01-13 Peter Bartok <pbartok@novell.com>
7281 * Panel.cs (ctor): Setting Selectable window style to off
7282 * Splitter.cs (ctor): Setting Selectable window style to off
7283 * GroupBox.cs (ctor): Setting Selectable window style to off
7284 * Label.cs (ctor): Setting Selectable window style to off
7286 2005-01-12 Miguel de Icaza <miguel@ximian.com>
7288 * UpDownBase.cs (InitTimer): If the timer has been already
7291 Use a TextBox instead of a Label.
7293 2005-01-12 Jackson Harper <jackson@ximian.com>
7295 * TreeView.cs: Refresh the tree after sorting the nodes. Always
7296 draw the connecting node lines (when ShowLines is true).
7297 * TreeNode.cs: The nodes index can now be updated. This is used
7298 when a node collection is sorted.
7299 * TreeNodeCollection.cs: Implement sorting. Nodes can be sorted on
7300 insert or an existing unsorted node collection can be sorted.
7302 2005-01-12 Peter Bartok <pbartok@novell.com>
7304 * ContainerControl.cs: Implemented ProcessDialogKeys()
7306 2005-01-12 Peter Bartok <pbartok@novell.com>
7309 - Implemented SelectNextControl() method
7310 - Several focus related bug fixes
7311 - Fixed Docking calculations to match MS documentation and
7314 2005-01-12 Jordi Mas i Hernandez <jordi@ximian.com>
7316 * ContainerControl.cs, ListControl.cs, ListBox.cs: keyboard navigation and
7319 2005-01-12 Peter Bartok <pbartok@novell.com>
7322 - Fixed broken Contains() method
7323 - Implemented GetNextControl() method. Finally. This is the pre-
7324 requisite for focus handling.
7326 2005-01-12 Peter Bartok <pbartok@novell.com>
7328 * OSXStrucs.cs: Added
7330 2005-01-12 Peter Bartok <pbartok@novell.com>
7333 - Removed PeekMessageFlags
7334 - Implemented SetWindowStyle() method
7335 * XplatUIStructs.cs: Added PeekMessageFlags
7336 * X11Structs: Added missing border_width field to XWindowChanges struct
7338 - PeekMessage: Now throws exception if flags which are not yet
7339 supported are passed
7340 - Implemented SetWindowStyle() method
7341 - Fixed SetZOrder to handle AfterHwnd properly
7342 * XplatUI.cs: Added SetWindowStyle() method
7343 * XplatUIDriver.cs: Added SetWindowStyle() abstract
7345 - Implemented UpdateStyles() method
7346 - Implemented UpdateZOrder() method
7347 * XplatUIOSX.cs: Added SetWindowStyle() stub
7349 2005-01-12 Geoff Norton <gnorton@customerdna.com>
7351 * XplatUIOSX.cs: Fix SetZOrder (this needs more testing with a 3
7355 2005-01-11 Jackson Harper <jackson@ximian.com>
7357 * TreeView.cs: Still need to draw lines to siblings even if out of
7358 the current node is out of the clip.
7360 2005-01-11 Jackson Harper <jackson@ximian.com>
7362 * TreeView.cs: When setting the hbar/vbar/grip position use
7363 SetBounds so that perform layout is only called once. Also suspend
7364 and resume layout so layout is only done once for all controls.
7365 - Removed some debug fluff
7366 * SizeGrip.cs: Call base implmentation in overriding methods.
7367 - When visibility is changed the drawing buffers are killed so we
7370 2005-01-11 Jackson Harper <jackson@ximian.com>
7372 * TreeView.cs: Calculate the open node count while drawing. This
7373 saves us an entire tree traversal for every paint operation. Use
7374 a member var for the open node count so less vars are passed around.
7376 2005-01-11 John BouAntoun <jba-mono@optusnet.com.au>
7379 - fixed selection to use mousemove, not mouse polling on timer
7380 * ThemeWin32Classic.cs
7381 - removed redundant unused variable "no_more_content"
7383 2005-01-11 Peter Bartok <pbartok@novell.com>
7385 * XplatUIX11.cs (DoEvents): Needs to return when no more events
7386 are pending, so it now calls PeekMessage instead of GetMessage;
7387 implemented a incomplete version of PeekMessage
7389 2005-01-11 Peter Bartok <pbartok@novell.com>
7391 * XplatUIWin32.cs: Switched P/Invokes to unicode charset to avoid
7393 * TextBoxBase.cs: Added sending of TextChanged event
7395 2005-01-10 Jackson Harper <jackson@ximian.com>
7397 * TreeView.cs: Try not to draw outside the clipping rectangle on
7400 2005-01-10 Jordi Mas i Hernandez <jordi@ximian.com>
7402 * ComboBox.cs: keyboard navigation, item navigation, bug fixes
7404 2005-01-10 Jackson Harper <jackson@ximian.com>
7407 - Implement fast scrolling. Now only the newly
7408 exposed nodes are drawn and the old image is moved using the
7409 XplatUI::ScrollWindow method.
7410 - Factor in height of nodes when calculating whether or not the
7411 node is in the clipping rect.
7413 2005-01-10 Jackson Harper <jackson@ximian.com>
7415 * TreeNodeCollection.cs: Refresh the tree when a new node is added.
7417 2005-01-10 Peter Bartok <pbartok@novell.com>
7419 * Application.cs: Added temporary hack to resolve all our resize
7420 required issues on startup. This will get fixed properly at
7421 some point in the future
7423 2005-01-10 Jackson Harper <jackson@ximian.com>
7425 * SizeGrip.cs: New internal class that is used as a sizing
7426 grip control...hence the name.
7428 2005-01-10 Peter Bartok <pbartok@novell.com>
7430 * Control.cs: Implemented proper TabIndex handling, now assigning
7431 a tabindex when a control is added to a container
7432 * GroupBox.cs (ctor): Now sets the Container style bit, required
7433 for Control.GetNextControl()
7435 2005-01-09 Jackson Harper <jackson@ximian.com>
7437 * TextBoxBase.cs: Clear window when scrolling (fixes build).
7439 2005-01-09 Peter Bartok <pbartok@novell.com>
7441 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
7442 XplatUIX11.cs: Added ability to control ScrollWindow expose and
7443 an overload for ScrollWindow to allow only scrolling a rectangle
7445 2005-01-09 Peter Bartok <pbartok@novell.com>
7448 - Implemented SetDesktopBounds method
7449 - Implemented SetDesktopLocation method
7451 2005-01-08 Jackson Harper <jackson@ximian.com>
7453 * TreeView.cs: Only set the vbar's Maximum and LargeChange when
7454 the node count has changed, this removes to VScroll::Refresh calls
7457 2005-01-08 Geoff Norton <gnorton@customerdna.com>
7459 * XplatUIOSX.cs: Fix GetWindowState & SetWindowState
7461 2005-01-07 Jackson Harper <jackson@ximian.com>
7463 * TreeNode.cs: Just update the single node when it is
7464 checked. Don't refresh after toggling, the Expand/Collapse already
7466 * TreeView.cs: Respect clipping a little more when drawing. Try
7467 not to redraw things that don't need to be redrawn. Just hide the
7468 scrollbars when they are no longer needed instead of removing
7469 them, so they don't have to be created again and again.
7471 2005-01-07 Geoff Norton <gnorton@customerdna.com>
7473 * XplatUIOSX.cs (SetCaretPos): We need to translate the view
7474 coordinates to window space to place the caret properly, FIXED.
7475 Implement GetWindowState & SetWindowState
7477 2005-01-06 Peter Bartok <pbartok@novell.com>
7480 - Implemented ClientSize property
7481 - Implemented DesktopBounds property
7482 - Implemented DesktopLocation property
7483 - Implemented IsRestrictedWindow property
7484 - Implemented Size property
7485 - Implemented TopLevel property
7486 - Implemented FormWindowState property
7488 - Implemented GetTopLevel() method
7489 - Implemented SetTopLevel() method
7490 * X11Structs.cs (Atom):
7491 - Added AnyPropertyType definition
7492 - Added MapState definiton and updated XWindowAttribute struct
7493 * XplatUI.cs: Added GetWindowState() and SetWindowState() methods
7494 * XplatUIDriver.cs: Added GetWindowState() and SetWindowState() methods
7495 * XplatUIOSX.cs: Stubbed GetWindowState() and SetWindowState() methods
7497 - Implemented GetWindowState() and SetWindowState() methods
7498 - Fixed Win32GetWindowLong return type
7500 - Introduced central function for sending NET_WM messages
7501 - Implemented GetWindowState() and SetWindowState() methods
7502 * TextBoxBase.cs (set_Lines):
7503 - Now uses Foreground color for text added via Text property (Duh!)
7504 - Added code to remember programmatically requested size (fixes
7505 behaviour when Multiline is set after Size)
7506 - Added AutoSize logic
7508 2005-01-06 Jackson Harper <jackson@ximian.com>
7510 * TreeView.cs: Draw the image after the checkbox if checkboxes are enabled.
7512 2005-01-06 Jackson Harper <jackson@ximian.com>
7514 * ListBox.cs: Don't allow the horizontal scrollbars maximum to be
7517 2005-01-06 Jackson Harper <jackson@ximian.com>
7519 * ScrollableControl.cs: Lazy init the scrollbars.
7521 2005-01-06 Jackson Harper <jackson@ximian.com>
7523 * Theme.cs: Speed up getting pens and solid brushes, by using
7524 their ARGB as a hash instead of tostring and not calling Contains.
7526 2005-01-06 Peter Bartok <pbartok@novell.com>
7529 - Implemented OnActivated and OnDeactivate event trigger
7530 - Implemented Activate() method
7531 - Fixed ShowDialog() to activate the form that was active before
7532 the dialog was shown
7534 - Added global active_window var that tracks the currently active
7536 - Now always grabs Property changes from the root window to always
7537 catch changes on the active window property
7538 - Added code to PropertyNotify handler to send Active/Inactive
7539 messages when state changes. This puts X11 and Win32 en par on
7540 WM_ACTIVATE notifications (except for double notifications when
7541 the user clicks away from our modal window to another one of our
7544 2005-01-05 Jackson Harper <jackson@ximian.com>
7546 * ImageList.cs: Implment ctor
7548 2005-01-05 Geoff Norton <gnorton@customerdna.com>
7550 * XplatUIOSX.cs: Implement Activate/SetTopmost
7552 2005-01-05 Geoff Norton <gnorton@customerdna.com>
7554 * XplatUIOSX.cs: Implement SetZOrder, minor cleanup
7556 2005-01-05 Geoff Norton <gnorton@customerdna.com>
7558 * XplatUIOSX.cs: Implement GetActive/SetFocus.
7560 2005-01-05 Peter Bartok <pbartok@novell.com>
7562 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs,
7563 XplatUIOSX.cs: Added GetActive method to return the currently
7564 active window for the application (or null, if none is active)
7566 - Implemented ActiveForm
7567 - Commented out owner assignment for modal dialogs (causes problems
7568 on Win32, since the owner will be disabled)
7569 - Reworked some Active/Focus handling (still incomplete)
7570 * CommonDialog.cs: Commented out owner assignment for modal dialogs
7571 (causes problems on Win32, since the owner will be disabled)
7572 * IWin32Window: Added ComVisible attribute
7574 2005-01-05 Peter Bartok <pbartok@novell.com>
7576 * ToolTip.cs (WndProc): Enable setting focus now that we have the
7577 required XplatUI functions.
7579 2005-01-05 Peter Bartok <pbartok@novell.com>
7581 * XplatUI.cs, XplatUIOSX.cs, XplatUIWin32.cs, XplatUIDriver.cs,
7582 XplatUIX11.cs, X11Structs.cs, Form.cs: Framework code required
7583 to implement focus and activation handling; still incomplete and
7586 2005-01-04 Peter Bartok <pbartok@novell.com>
7588 * TextBoxBase.cs: Changed access level for Document property to
7589 match switch to internal for TextControl
7591 2005-01-04 Peter Bartok <pbartok@novell.com>
7593 * AccessibleObject: Added ComVisible attribute
7595 2005-01-04 Jackson Harper <jackson@ximian.com>
7597 * X11Keyboard.cs: Remove unneeded var.
7599 2005-01-04 Jackson Harper <jackson@ximian.com>
7601 * XplatUIX11.cs (DoEvents): Implement, Just cast aside all events
7603 * XplatUIX11.cs (GetMessage): Call Exit when we get an unknown
7604 ClientMessage. This makes apps exit cleanly (more often).
7606 2005-01-04 Jackson Harper <jackson@ximian.com>
7608 * TreeNode.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) for
7609 handling focus, return correct colors and fonts,
7610 * TreeView.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) to
7611 handle selection, horizontal scrolling, and mouse interaction.
7613 2005-01-04 Peter Bartok <pbartok@novell.com>
7615 * ICommandExecutor.cs: Added
7616 * IDataGridColumnStyleEditingNotificationService.cs: Added
7617 * IFeatureSupport.cs: Added
7618 * IFileReaderService.cs: Added
7619 * IDataObject.cs: Added ComVisible attribute
7620 * AmbientProperties.cs: Added
7621 * BaseCollection.cs: Added missing attributes
7622 * ListBindingConverter.cs: Added (stubbed, required for certain attributes)
7623 * BaseCollection.cs: Added missing attributes
7624 * Binding.cs: Added TypeConverter attribute
7625 * BindingContext.cs: Added DefaultEvent attribute
7626 * BindingsCollection.cs: Added DefaultEvent attribute
7627 * Button.cs: Added DefaultValue attribute
7628 * DragEventArgs.cs: Added ComVisible attribute
7629 * GiveFeedbackEventArgs.cs: Added ComVisible attribute
7630 * KeyEventArgs.cs: Added ComVisible attribute
7631 * KeyPressEventArgs.cs: Added ComVisible attribute
7632 * MouseEventArgs.cs: Added ComVisible attribute
7633 * NavigateEventArgs.cs: Added
7634 * NavigateEventHandler.cs: Added
7635 * FeatureSupport.cs: Added
7636 * OSFeature.cs: Added
7637 * Theme.cs: Added abstract Version property to support OSFeature
7638 * ThemeWin32Classic.cs: Added Version property to
7639 support OSFeature.Themes
7640 * ProgressBar.cs: Removed OnPaintBackground override, not required since
7641 the proper styles to avoid background drawing are set, also doesn't
7643 * QueryAccessibilityHelpEventArgs.cs: Added ComVisible attribute
7644 * QueryContinueDragEventArgs.cs: Added ComVisible attribute
7645 * ScrollEventArgs.cs: Added ComVisible attribute
7646 * SplitterEventArgs.cs: Added ComVisible attribute
7647 * AccessibleSelection.cs: Added Flags attribute
7648 * Appearance.cs: Added ComVisible attribute
7649 * Border3DSide.cs: Added ComVisible attribute
7650 * Border3DStyle.cs: Added ComVisible attribute
7651 * BorderStyle.cs: Added ComVisible attribute
7652 * DragAction.cs: Added ComVisible attribute
7653 * ErrorBlinkStyle.cs: Added
7654 * ScrollEventType.cs: Added ComVisible attribute
7655 * AnchorStyles.cs: Added Editor attribute
7656 * DockStyle.cs: Added Editor attribute
7657 * HorizontalAlignment.cs: Added ComVisible attribute
7658 * HelpEventArgs.cs: Added ComVisible attribute
7659 * PaintEventArgs.cs: Added IDisposable
7661 2005-01-04 Peter Bartok <pbartok@novell.com>
7663 * TextControl.cs: Switched Line, LineTag and Document classes to
7666 2005-01-04 Jordi Mas i Hernandez <jordi@ximian.com>
7668 * ComboBox.cs, ThemeWin32Classic.cs, ListBox.cs, Theme.cs:
7669 Simple mode, fixes, IntegralHeight, etc.
7671 2005-01-04 Peter Bartok <pbartok@novell.com>
7673 * TextBoxBase.cs: Using proper font variable now
7675 2005-01-04 Peter Bartok <pbartok@novell.com>
7677 * Form.cs (ShowDialog): Set parent to owner, if provided
7678 * GroupBox.cs: Removed unused vars
7680 - Added GetHashCode() for Document and LineTag classes
7681 - Removed unused variables
7682 - Added CharIndexToLineTag() and LineTagToCharIndex() methods
7683 to allow translation between continuous char position and line/pos
7684 * CheckBox.cs: Removed vars that are provided by base class
7685 * RadioButton.cs: Removed vars that are provided by base class, added
7686 new keyword where required
7687 * LinkLabel.cs: Added new keyword where required
7688 * Control.cs (WndProc): Removed unused variable
7690 - Finished SelectionLength property
7691 - Implemented SelectionStart property
7692 - Implemented Text property
7693 - Removed unused vars
7694 * MessageBox.cs: Added new keyword where required
7695 * TextBox.cs: Removed Text property code (now in TextBoxBase), fixed
7697 * MenuAPI.cs: Added new keyword where required
7698 * ButtonBase.cs: Removed vars that are provided by base class, added
7699 new keyword where required
7700 * ThemeWin32Classic.cs (DrawMonthCalendarDate): Now cast Math.Floor
7701 argument to double, to allow compiling with csc 2.0 (Atsushi ran
7703 * Application.cs (Run): Now triggers the ThreadExit event
7704 * CommonDialog.cs: Added new keyword where required; now properly sets
7705 parent (owner) for dialog
7706 * XplatUIX11.cs: Commented out unused vars
7707 * StatusBar.cs: Fixed signature for Text property
7708 * TabPage.cs: Undid Jordi's removal of unused var, now using the var
7710 2005-01-04 Jordi Mas i Hernandez <jordi@ximian.com>
7712 * ComboBox.cs, TabPage.cs, MenuAPI.cs, ThemeWin32Classic.cs,
7713 TrackBar.cs, MonthCalendar.cs: remove unused vars
7715 2005-01-03 Jackson Harper <jackson@ximian.com>
7717 * ThemeWin32Classic.cs:
7718 * X11Keyboard.cs: Remove unused vars.
7720 2005-01-03 Peter Bartok <pbartok@novell.com>
7723 - set_Text: Tied into TextControl
7724 - set_TextAlignment: Tied into TextControl
7726 - Added alignment properties and implemented alignment handling
7727 and drawing (still has a bug, not generating proper expose events)
7728 - Added new Line() constructor to allow passing the line alignment
7729 - Fixed selection setting, properly handling end<start now
7730 - Added aligment considerations to RecalculateDocument()
7732 - Now properly enforces control height for single line controls
7733 - Added support for CharacterCasing
7734 - Added IsInputKey override
7735 - Fixed Keys.Enter logic
7736 - Added SetBoundsCore override
7737 - Fixed mouse selection handling
7739 2005-01-03 Jackson Harper <jackson@ximian.com>
7742 - Collapse and uncheck all nodes when CheckBoxes is disabled.
7743 - Checkboxes are always aligned to the bottom of the node,
7744 regardless of item height.
7745 - Use the node bounds to draw the text so we can center it when
7746 the item height is greater then the font height.
7747 - Node::Bounds are only the text part of the node.
7748 * TreeNode.cs: New method to combine collapsing and unchecking all
7751 2005-01-02 Jackson Harper <jackson@ximian.com>
7753 * TreeView.cs: Draw checkmarks, handle detecting check mark clicks
7754 * TreeNode.cs: Add a bounding box for the checkbox, refresh the
7755 tree when a check is changed. TODO: Only refresh the checked node.
7757 2004-12-30 Jackson Harper <jackson@ximian.com>
7759 * TreeView.cs: Draw checkbox boxes when checkboxes are enabled.
7760 * TreeNode.cs: When collapsing make sure to never collapse the
7763 2004-12-29 Jackson Harper <jackson@ximian.com>
7765 * TreeView.cs: Align lines to the bottom of plus minus boxes properly.
7767 2004-12-28 Zoltan Varga <vargaz@freemail.hu>
7769 * X11Structs.cs X11Keyboard.cs XplatUIX11.cs: Fix 64 bit issues.
7771 2004-12-28 Peter Bartok <pbartok@novell.com>
7773 * MessageBox.cs (get_CreateParams): Don't use owner var if it's
7776 2004-12-28 Peter Bartok <pbartok@novell.com>
7778 * Control.cs (WndProc): Added WM_HELP handler, now generates
7780 * Form.cs: Added HelpButton property and required support code
7781 * XplatUIStructs.cs: Added HELPINFO structure for WM_HELP handling
7783 2004-12-28 Peter Bartok <pbartok@novell.com>
7786 - Made DialogForm.owner variable internal
7787 - Added check to ensure owner form is set before setting
7788 owner properties in CreateParams
7790 2004-12-28 Geoff Norton <gnorton@customerdna.com>
7792 * XplatUIOSX.cs: Implement mouse hovering. Fix QDPoint struct to avoid
7793 swizzling. Implement ClientToScreen and ScreenToClient. Implement
7794 GetCursorPos. Fix major visibility issues. Rework the windowing
7795 system to support borderless/titleless windows (implements menus).
7796 Fix GetWindowPos. Implement initial background color support for
7799 2004-12-28 Peter Bartok <pbartok@novell.com>
7801 * Form.cs (get_CreateParams): Make sure we have an owner before using
7802 the owner variable. Implement proper default if no owner exists
7804 2004-12-28 Peter Bartok <pbartok@novell.com>
7806 * In preparation for making Managed.Windows.Forms the default build target
7807 for System.Windows.Forms, the following stubbed files were added.
7808 Dialogs are currently being implemented by contributors and are only
7809 short-term place holders.
7810 * ColorDialog.cs: Initial check-in (minmal stub)
7811 * DataGrid.cs: Initial check-in (minimal stub)
7812 * DataGridLineStyle.cs: Initial check-in (minimal stub)
7813 * DataGridParentRowsLabelStyle.cs: Initial check-in (minimal stub)
7814 * DataGridTableStyle.cs: Initial check-in (minimal stub)
7815 * FontDialog.cs: Initial check-in (minimal stub)
7816 * FileDialog.cs: Initial check-in (minimal stub)
7817 * GridColumnStylesCollection.cs: Initial check-in (minimal stub)
7818 * GridTableStylesCollection.cs: Initial check-in (minimal stub)
7819 * OpenFileDialog: Initial check-in (minimal stub)
7820 * IComponentEditorPageSite.cs: Initial check-in
7821 * Splitter.cs: Initial check-in (for Jackson)
7822 * SplitterEventArgs.cs: Initial check-in (for Jackson)
7823 * SplitterEventHandler.cs: Initial check-in (for Jackson)
7824 * TextBox.cs: Initial check-in; still needs some wiring to
7826 * Form.cs: Implemented ControlBox property
7827 * MessageBox.cs: Added proper coding for Minimize/Maximize/ControlBox
7828 * CommonDialog.cs: Added proper coding for Minimize/Maximize/ControlBox
7829 * TextControl.cs: Added selection functionality; added todo header
7831 - Implemented Lines property
7832 - Implemented TextHeight property
7833 - Implemented SelectedText property
7834 - Implemented SelectionLength property
7835 - Implemented SelectAll method
7836 - Implemented ToString method
7837 - Removed and cleaned up some debug code
7838 - Implemented (still buggy) mouse text selection
7840 2004-12-27 Jordi Mas i Hernandez <jordi@ximian.com>
7842 * ComboBox.cs: Complete DropDownList implementation, fixes.
7844 2004-12-26 Jordi Mas i Hernandez <jordi@ximian.com>
7846 * ThemeWin32Classic, Theme.cs: ComboBox drawing methods
7847 * ComboBoxStyle.cs: ComboBoxStyle enum
7848 * ComboBox.cs: Initial work on ComboBox control
7850 2004-12-21 Peter Bartok <pbartok@novell.com>
7852 * Control.cs (ctor, CreateParams): Moved setting of is_visible
7853 forward so that anything that creates a window gets the default,
7854 also no longer uses Visible property in CreateParams to avoid
7855 walking up the parent chain and possibly get the wrong visible
7856 status. Fixed IsVisible to no longer walk up to the parent.
7858 2004-12-21 Peter Bartok <pbartok@novell.com>
7860 * Form.cs (ShowDialog): Unset modality for the proper window
7862 2004-12-20 Peter Bartok <pbartok@novell.com>
7864 * CommonDialog.cs: Initial check-in
7866 2004-12-20 Peter Bartok <pbartok@novell.com>
7868 * Control.cs (Visible): Now uses the parent window instead of the
7869 client area window for the property
7872 - ShowDialog(): Now uses the proper window for modality
7873 - The default visibility state for the form parent is now false. This
7874 will prevent the user from seeing all the changes to the form and
7875 its controls before the application hits Application.Run()
7876 - Removed some stale commented out code
7879 - Added FindWindow() method to have a method to check for existence
7881 - Added ability to override default exception handling (for example
7882 when debugging with VS.Net; to do this the ExternalExceptionHandler
7884 - Removed some useless debug output
7887 - Removed r37929 (SetModal patch from Ashwin Bharambe), was
7888 not working as expected
7889 - Implemented modal_window stack and checking for _WM_ACTIVE_WINDOW
7890 property to allow switching back to the modal window if focus is
7891 given to another one of our windows (Application Modal)
7892 - Now only sets override_redirect if we create a window
7894 - Moved EventMask selection before mapping of newly created window
7895 so we can catch the map event as well
7896 - Implemented Activate() method via the _WM_ACTIVE_WINDOW property
7897 - Added various Atom related DllImports
7898 - Implemented Exit() method
7899 - .ctor() : No longer shows window if WS_VISIBLE is not defined
7902 * MessageBox.cs: Now properly deals with the FormParent window by
7903 providing an override the FormParent CreateParams property to
7904 set as POPUP instead of OVERLAPPED window.
7906 2004-12-19 Geoff Norton <gnorton@customerdna.com>
7908 * XplatUIOSX.cs: Implement DestroyWindow. Implement ScrollWindow
7911 2004-12-19 Geoff Norton <gnorton@customerdna.com>
7913 * XplatUIOSX.cs (SetModal): Implement this method on OSX.
7915 2004-12-18 Peter Bartok <pbartok@novell.com>
7917 * XplatUIX11.cs (SetModal): Applied patch from Ashwin Bharambe,
7918 implementing SetModal() method
7920 2004-12-18 Peter Bartok <pbartok@novell.com>
7922 * X11Structs.cs (XGCValues): Fixed type of function element
7923 * XplatUI.cs: Added ScrollWindow() method
7924 * XplatUIDriver.cs: Added ScrollWindow() abstract
7925 * XplatUIWin32.cs: Implemented ScrollWindow() method
7926 * XplatUIX11.cs: Implemented ScrollWindow() method
7927 * XplatUIOSX.cs: Stubbed out ScrollWindow() method
7929 2004-12-17 Geoff Norton <gnorton@customerdna.com>
7931 * XplatUIOSX.cs: Fix cursor to use an Invert instead of drawing it
7932 Some more keyboard support (INCOMPLETE)
7934 2004-12-17 Peter Bartok <pbartok@novell.com>
7937 - Added color attribute to line tags.
7938 - Added color argument to all functions dealing with tags
7939 - Added color argument support to various functions
7940 - Fixed miss-calculation of baseline/shift in certain circumstances
7942 * TextBoxBase.cs: Added new color option to test code
7944 2004-12-17 Jackson Harper <jackson@ximian.com>
7947 * MonthCalendar.cs: Signature fixes
7949 2004-12-17 Geoff Norton <gnorton@customerdna.com>
7951 * XplatUIOSX.cs: Find the missing caret; caret was dissappearing after a
7952 keyboard event moved it. Create a new graphics context for each paint resolves this
7954 2004-12-17 Geoff Norton <gnorton@customerdna.com>
7956 * XplatUIOSX.cs: Fix hard cpu eat on loop with existing timers,
7957 Make caret exist and go blink blink. Initial keyboard support.
7958 Fix exception handler, Add Invalidate support. Change way RefreshWindow
7961 2004-12-17 Jackson Harper <jackson@ximian.com>
7963 * XplatUIStructs.cs: Updated set of virtual keycodes.
7964 * KeyboardLayouts.cs: SCROLL_LOCK is now SCROLL
7966 2004-12-17 Jackson Harper <jackson@ximian.com>
7968 * XplatUIX11.cs: Prune old keyboard code.
7970 2004-12-17 Jackson Harper <jackson@ximian.com>
7972 * XplatUIX11.cs: When generating mouse wparams get the modifier
7973 keys from the ModifierKeys property.
7975 2004-12-17 Jackson Harper <jackson@ximian.com>
7977 * X11Keyboard.cs: Send up/down input when generating
7978 messages. Remove some unused vars.
7980 2004-12-17 Jackson Harper <jackson@ximian.com>
7983 * TreeView.cs: get rid of warnings.
7985 2004-12-17 Jackson Harper <jackson@ximian.com>
7987 * XplatUIStructs.cs: Fix a couple wrong virtual keycodes.
7989 2004-12-17 Jordi Mas i Hernandez <jordi@ximian.com>
7991 * ListBox.cs: bug fixes, changes for CheckedListBox.cs
7992 CheckedListBox.cs: Implementation
7994 2004-12-17 Peter Bartok <pbartok@novell.com>
7996 * TextControl.cs (RecalculateLine): Fixed baseline aligning calcs
7998 2004-12-16 Peter Bartok <pbartok@novell.com>
8001 - InsertCharAtCaret(): Fixed start pos fixup
8002 - CaretLine_get: No longer derives the line from the tag, the tag
8003 could be stale if lines in the document have been added or deleted
8004 - RebalanceAfterDelete(): Fixed bug in balancing code
8005 - RebalanceAfterAdd(): Fixed really stupid bug in balancing code
8006 - Line.Streamline(): Now can also elminate leading empty tags
8007 - DumpTree(): Added a few more tests and prevented exception on
8009 - Added Debug section for Combining lines
8010 - Delete(): Now copies all remaining properties of a line
8013 - Left mousebutton now sets the caret (and middle button still acts
8014 as formatting tester, which must go away soon)
8015 - Added Debug section for Deleting/Combining lines
8016 - Fixed calculations for UpdateView after Combining lines
8018 2004-12-16 Peter Bartok <pbartok@novell.com>
8020 * TextControl.cs: Now properly aligns text on a baseline, using the
8021 new XplatUI.GetFontMetrics() method. Simplified several calculations
8022 * TextBoxBase.cs: Moved #endif to allow compiling if Debug is not
8025 2004-12-16 Peter Bartok <pbartok@novell.com>
8027 * XplatUI.cs: Added GetFontMetrics() method
8028 * XplatUIDriver.cs: Added GetFontMetrics() abstract
8029 * XplatUIX11.cs: Implemented GetFontMetrics() method, now calls
8030 into libgdiplus, our private GetFontMetrics function
8031 * XplatUIOSX.cs: Implemented GetFontMetrics() method, same as X11
8032 * XplatUIWin32.cs: Implemented GetFontMetrics() method
8034 2004-12-16 Jackson Harper <jackson@ximain.com>
8036 * XplatUIStruct.cs: Add enum for dead keys
8037 * X11Keyboard.cs: Map and unmap dead keys.
8039 2004-12-16 Jackson Harper <jackson@ximian.com>
8041 * X11Keyboard.cs: Detect and use the num lock mask.
8043 2004-12-16 Peter Bartok <pbartok@novell.com>
8045 * Control.cs (CreateGraphics): Added check to make sure the
8046 handle of the window exists before calling Graphics.FromHwnd()
8048 2004-12-16 Peter Bartok <pbartok@novell.com>
8050 * TextBoxBase.cs: Initial check-in. DO NOT TRY TO USE THIS YET. It
8051 contains a lot of code that's not supposed to be there for the
8052 real thing, but required for developing/testing the textbox
8055 2004-12-16 Peter Bartok <pbartok@novell.com>
8058 - Fixed Streamline method
8059 - Added FindTag method to Line
8060 - Added DumpTree method for debugging
8061 - Added DecrementLines() method for deleting lines
8062 - Fixed UpdateView to update the cursor to end-of-line on single-line
8064 - Added PositionCaret() method
8065 - Fixed MoveCaret(LineDown) to move into the last line, too
8066 - Added InsertChar overload
8067 - Fixed InsertChar tag offset calculations
8068 - Added DeleteChar() method
8069 - Added Combine() method for folding lines
8070 - Fixed Delete() method, no longer allocates wasted Line object and
8071 now copies all properties when swapping nodes
8072 - Delete() method now updates document line counter
8074 2004-12-15 Jackson Harper <jackson@ximian.com>
8076 * XplatUIX11.cs: Get the modifier keys from the keyboard driver
8077 * X11Keyboard.cs: Expose the currently selected modifier keys
8080 2004-12-15 Peter Bartok <pbartok@novell.com>
8082 * TextControl.cs: Initial check-in. Still incomplete
8084 2004-12-15 Jackson Harper <jackson@ximian.com>
8087 * TreeView.cs: Fix build on csc (second time today ;-))
8089 2004-12-15 Jackson Harper <jackson@ximian.com>
8091 * TreeView.cs: Store the treenodes plus/minus box bounds when it
8092 is calculated and use this for click testing.
8093 * TreeNode.cs: Add functionality to store the nodes plus minus box bounds.
8095 2004-12-15 Jackson Harper <jackson@ximian.com>
8097 * TreeView.cs: Pass the nodes image index to the image list when
8100 2004-12-15 Jackson Harper <jackson@ximian.com>
8102 * X11Keyboard.cs: Set messages hwnd.
8103 * XplatUIX11.cs: Pass proper hwnd wot keyboard driver. Set hwnd on
8106 2004-12-15 Jackson Harper <jackson@ximian.com>
8108 * X11Keyboard.cs: Fix to compile with csc.
8110 2004-12-15 Jackson Harper <jackson@ximian.com>
8112 * X11Structs.cs: Add key mask values
8113 * XplatUIStruct.cs: Add keyboard event flags, and keyboard definitions
8114 * X11Keyboard.cs: New file - Extrapolates and interpolates key
8115 down/up foo into WM_CHAR foo
8116 * KeyboardLayouts.cs: Common keyboard layouts
8117 * XplatUIX11.cs: Add the keyboard driver. Add functionality to
8118 post messages into the main queue.
8120 2004-12-13 Jordi Mas i Hernandez <jordi@ximian.com>
8122 * Button.cs: implement ProcessMnemonic
8123 * ThemeWin32Classic.cs: use ResPool (caching) instead of creating
8125 * Control.cs: fixes IsMnemonic (support for &&, case insensitive, etc)
8126 * ButtonBase.cs: Show HotkeyPrefix (not the &)
8128 2004-12-12 John BouAntoun <jba-mon@optusnet.com.au>
8130 * MonthCalendar.cs: Implemented click-hold for next/previous month
8133 2004-12-11 Peter Bartok <pbartok@novell.com>
8136 - Added XKeyboardState (moved from XplatUIX11.cs)
8137 - Added XCreateGC related enums and structures
8138 - Added GXFunction for XSetFunction
8140 * XplatUIStructs.cs: Added missing WS_EX_xxx definitions
8142 * XplatUI.cs: Added CreateCaret(), DestroyCaret(), SetCaretPos() and
8143 CaretVisible() calls
8145 * ToolTip.cs: Added code to prevent stealing focus from app windows
8147 * XplatUIDriver.cs: Added abstracts for caret functions (CreateCaret,
8148 DestroyCaret, SetCaretPos and CaretVisible)
8151 - Added implementation for caret functions
8152 - Moved hover variables into a struct, to make it a bit easier
8153 on the eyes and to debug
8154 - Removed XKeyboardState (moved to XplatUIX11.cs)
8155 - Moved Keyboard properties into the properties region
8157 * Control.cs (get_Region): Control.CreateGraphics is the appropriate
8158 call to get a graphics context for our control
8160 * XplatUIOSX.cs: Added empty overrides for the new caret functions
8162 * TreeView.cs: Fixed bug. No matter what color was set it would always
8163 return SystemColors.Window
8165 * XplatUIWin32.cs: Implemented caret overrides
8167 2004-12-10 Jordi Mas i Hernandez <jordi@ximian.com>
8169 * ListBox.cs: fire events, implement missing methods and properties,
8172 2004-12-10 John BouAntoun <jba-mono@optusnet.com.au>
8174 * MonthCalendar.cs: invalidation bug fixing
8175 * ThemeWin32Classic.cs: paint fixing
8177 2004-12-09 Geoff Norton <gnorton@customerdna.com>
8179 * XplatUIOSX.cs: Refactor to pass the real hwnd into Graphics.FromHwnd, we
8180 prepare the CGContextRef there now.
8182 2004-12-09 John BouAntoun <jba-mono@optusnet.com.au>
8185 - optimisationL only invalidate areas that have changed
8186 * ThemeWin32Classic.cs:
8187 - only paint parts that intersect with clip_area
8189 2004-12-09 Peter Bartok <pbartok@novell.com>
8191 * Application.cs: Undid changes from r37004 which cause problems
8194 2004-12-09 Ravindra <rkumar@novell.com>
8196 * ToolBar.cs: Added support for displaying ContextMenu
8197 attached to a button on ToolBar.
8198 * ToolBarButton.cs: Uncomment/fixed the DropDownMenu
8201 2004-12-09 Jordi Mas i Hernandez <jordi@ximian.com>
8203 * Label.cs: autosize works in text change and removes unnecessary
8206 2004-12-09 Jordi Mas i Hernandez <jordi@ximian.com>
8208 * ThemeWin32Classic.cs, XplatUIOSX.cs, XplatUIWin32.cs:
8211 2004-12-08 Geoff Norton <gnorton@customerdna.com>
8213 * XplatUIOSX.cs: Added mouse move/click/grab support
8214 Remove some debugging WriteLines not needed anymore.
8215 Add window resizing/positioning.
8216 Fix visibility on reparenting.
8218 2004-12-08 Peter Bartok <pbartok@novell.com>
8220 * XplatUIOSX.cs: Added Idle event, now compiles on VS.Net
8222 2004-12-07 Geoff Norton <gnorton@customerdna.com>
8224 * XplatUIOSX.cs: Initial checkin
8225 * XplatUI.cs: Use the Quartz driver if the environment is set to use it
8227 2004-12-03 Ravindra <rkumar@novell.com>
8229 * ListView.cs: Added some keybindings and fixed scrolling.
8230 ScrollBars listen to ValueChanged event instead of Scroll
8231 Event. This would let us take care of all changes being
8232 done in the scrollbars' values programmatically or manually.
8233 * ListView.cs (CanMultiselect): Added a check for shift key.
8234 * ListView.cs (EnsureVisible): Fixed. Do proper scrolling.
8235 * ListViewItem.cs (Clone): Fixed. We need to make a copy
8236 of ListViewSubItemCollection as well.
8238 2004-12-06 Peter Bartok <pbartok@novell.com>
8240 * Control.cs (Parent): Added check and exception to prevent
8243 2004-12-03 Jordi Mas i Hernandez <jordi@ximian.com>
8245 * ListBox.cs: implemented clipping, selection single and multiple,
8248 2004-12-03 Ravindra <rkumar@novell.com>
8250 * ListView.cs (ListView_KeyDown):
8251 * ListView.cs (ListView_KeyUp): Fixed multiple selection handling
8252 when CTRL key is pressed.
8253 * ListViewItem.cs (Selected): Fixed setting the property.
8255 2004-12-03 Marek Safar <marek.safar@seznam.cz>
8257 * Application.cs (OnThreadException): Use ThreadExceptionDialog.
8259 * Form.cs: Add ActiveForm, FormBorderStyle, MaximizeBox,
8260 MinimizeBox, ShowInTaskbar, TopMost properties.
8262 * ThreadExceptionDialog.cs: Implemented (disabled TextBox until
8263 will be implemented).
8265 2004-12-03 Marek Safar <marek.safar@seznam.cz>
8267 * OwnerDrawPropertyBag.cs: New internal parameterless ctor.
8269 * TreeNode.cs: Implemented ICloneable, Fixed to pass my simple
8272 * TreeNodeCollection.cs: Add exception throwing for Add,AddRange.
8274 * TreeView.cs: BackColor is Colors.Window.
8276 2004-12-01 Jackson Harper <jackson@ximian.com>
8278 * TreeView.cs: When resizing the tree if the user is making it
8279 smaller we don't get expose events, so we need to handle adding
8280 the horizontal scrollbar in the size changed handler as well as
8283 2004-12-02 Jordi Mas i Hernandez <jordi@ximian.com>
8285 * DrawItemState.cs: fixes wrong enum values
8287 2004-12-01 Jackson Harper <jackson@ximian.com>
8289 * TreeView.cs: Resize the hbar as well as the vbar on resize.
8291 2004-12-01 Jackson Harper <jackson@ximian.com>
8293 * NodeLabelEditEventArgs.cs:
8294 * NodeLabelEditEventHandler.cs:
8295 * OpenTreeNodeEnumerator.cs:
8297 * TreeNodeCollection.cs:
8299 * TreeViewAction.cs:
8300 * TreeViewCancelEventArgs.cs:
8301 * TreeViewCancelEventHandler.cs:
8302 * TreeViewEventArgs.cs:
8303 * TreeViewEventHandler.cs: Initial implementation.
8305 2004-12-01 Ravindra <rkumar@novell.com>
8307 * ListView.cs (CalculateListView): Fixed scrolling related
8308 calculations. Also, removed some debug statements from other
8310 * ListViewItem.cs: Changed access to 'selected' instance variable
8311 from private to internal.
8312 * ThemeWin32Classic.cs (DrawListViewItem): Fixed SubItem drawing.
8314 2004-12-01 Jordi Mas i Hernandez <jordi@ximian.com>
8316 * ThemeWin32Classic.cs: remove cache of brush and pens for
8317 specific controls and use the global system, fixes scrollbutton
8318 bugs (for small sizes, disabled, etc)
8320 * ScrollBar.cs: does not show the thumb for very small controls
8321 (as MS) and allow smaller buttons that the regular size
8323 2004-12-01 Miguel de Icaza <miguel@ximian.com>
8325 * UpDownBase.cs: Add abstract methods for the interface.
8326 Add new virtual methods (need to be hooked up to TextEntry when it
8328 Add override methods for most features.
8329 Computes the size, forces the height of the text entry.
8331 * NumericUpDown.cs: Put here the current testing code.
8333 * Set eol-style property on all files that do not have mixed line
8334 endings, to minimize the future problems. There are still a few
8335 files with mixed endings, and someone should choose whether they
8336 want to move it or not.
8338 2004-11-30 Jordi Mas i Hernandez <jordi@ximian.com>
8340 * MonthCalendar.cs, ListView.cs: use Theme colours instead of
8343 2004-11-30 Ravindra <rkumar@novell.com>
8345 * ThemeWin32Classic.cs (DrawListViewItem): Fixed selected item
8346 drawing and replaced use of SystemColors by theme colors.
8347 * ListView.cs (ListView_Paint): Fixed painting done during scrolling.
8348 * ListView.cs (ListViewItemCollection.Add): Throw exception when
8349 same ListViewItem is being added more than once.
8351 2004-11-30 John BouAntoun <jba-mono@optusnet.com.au>
8354 - ControlStyles love to make the control not flicker
8356 2004-11-30 Peter Bartok <pbartok@novell.com>
8358 * CharacterCasing.cs: Added
8360 2004-11-29 Peter Bartok <pbartok@novell.com>
8362 * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
8363 TreeViewAction.cs, TreeViewEventArgs.cs: Removed new files.
8364 I am removing these files as they conflict with already completed
8365 work. While it is fantastic to get contributions to MWF, I
8366 respectfully ask that everyone please coordinate their contributions
8367 through mono-winforms-list or #mono-winforms at this time. We're
8368 explicitly avoiding stubbing and don't want controls that don't have
8369 their basic functionality implemented in svn. Please also see
8370 http://www.mono-project.com/contributing/winforms.html
8373 2004-11-29 Marek Safar <marek.safar@seznam.cz>
8375 * Application.cs (ModalRun): Don't hang after exit.
8377 * Theme.cs: New TreeViewDefaultSize property.
8379 * ThemeWin32Classic.cs: Replaced hardcoded defaultWindowBackColor
8380 with less hardcoded SystemColors constant.
8381 Implemented TreeViewDefaultSize.
8383 * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
8384 TreeViewAction.cs, TreeViewEventArgs.cs: New files.
8387 2004-11-29 John BouAntoun <jba-mono@optusnet.com.au>
8390 - Fix NextMonthDate and PrevMonthDate click moving calendar
8392 2004-11-26 John BouAntoun <jba-mono@optusnet.com.au>
8395 - Fix usage of ScrollChange Property when scrolling months
8397 2004-11-26 Jordi Mas i Hernandez <jordi@ximian.com>
8399 * Menu.cs, MainMenu.cs, MenuItem.cs, MenuAPI.cs
8400 - Fixes menu destroying
8401 - Support adding and removing items on already created menus
8403 2004-11-26 John BouAntoun <jba-mono@optusnet.com.au>
8406 - Re-worked all bolded dates handling to match win32
8407 * ThemeWin32Classic.cs:
8408 - Fixed rendering with bolded dates
8410 2004-11-25 Jordi Mas i Hernandez <jordi@ximian.com>
8412 * ListBox.cs, Theme.cs, ThemeWin32Classic.cs:
8413 - Horizontal scroolbar
8418 2004-11-25 John BouAntoun <jba-mono@optusnet.com.au>
8421 - Fix Usage of MaxSelectionCount from SelectionRange
8422 - Fixed Shift + Cursor Selection
8423 - Fixed Shift + (Pg up/Pg dn, Home/End) selection
8424 - Fixed normal cursor selection to be compat with win32
8425 - Fixed Shift + Mouse Click selection
8427 2004-11-24 Peter Bartok <pbartok@novell.com>
8429 * XplatUI.cs (DispatchMessage): Switched to return IntPtr
8430 * XplatUIDriver.cs (DispatchMessage): Switched to return IntPtr
8432 - CreatedKeyBoardMsg now updates keystate with Alt key
8433 - Added workaround for timer crash to CheckTimers, Jackson will
8434 develop a proper fix and check in later
8435 - Implemented DispatchMessage
8436 - Removed calling the native window proc from GetMessage (call
8437 now moved to DispatchMessage)
8439 * KeyEventArgs.cs (Constructor): Now combines modifierkeys into
8440 the keydata (Fixes bug #69831)
8443 - (DispatchMessage): Switched to return IntPtr
8444 - Added DllImport for SetFocus
8446 2004-11-24 Ravindra <rkumar@novell.com>
8448 * ThemeWin32Classic.cs: Fixed ListView border and checkbox
8450 * ListViewItem.cs: Fixed various properties, calculations
8451 and Clone() method. Fixed ListViewSubItemCollection.Clear() method.
8452 * ListView.cs: Fixed calculations, BackColor, ForeColor properties
8453 and some internal properties. Fixed MouseDown handler and Paint
8456 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
8458 * MonthCalendar.cs: Add TitleMonth ContextMenu handling
8460 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
8462 * ContainerControl.cs: correct accidental check in of local changes
8464 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
8466 * ThemeWin32Classic.cs:
8467 - Fixed Drawing Last month in grid (sometimes not showing)
8469 - Fixed title width calculation bug (makeing title small)
8471 2004-11-23 Peter Bartok <pbartok@novell.com>
8474 - Added generation of WM_MOUSEHOVER event
8475 - Added missing assignment of async_method atom
8476 - Fixed WM_ERASEBKGND; now only redraws the exposed area
8478 2004-11-23 John BouAntoun <jba-mono@optusnet.com.au>
8480 * ThemeWin32Classic.cs:
8481 - Fixed Drawing of today circle when showtodaycircle not set
8482 - fixed drawing of first and last month in the grid (gay dates)
8484 - Fixed Drawing of today circle
8485 - Fixed drawing of grady dates
8486 - Fixed HitTest for today link when ShowToday set to false
8487 - Fixed DefaultSize to obey ShowToday
8489 2004-11-23 John BouAntoun <jba-mono@optusnet.com.au>
8491 * ThemeWin32Classic.cs: Fixed DrawMonthCalendar and private support methods
8492 * System.Windows.Forms/Theme.cs
8493 * MonthCalendar.cs: added for MonthCalendar
8494 * SelectionRange.cs: added for MonthCalendar
8495 * Day.cs: added for MonthCalendar: added for MonthCalendar
8496 * DateRangeEventArgs.cs: added for MonthCalendar
8497 * DateRangeEventHandler.cs: added for MonthCalendar
8499 2004-11-22 Ravindra <rkumar@novell.com>
8501 * ThemeWin32Classic.cs: Fixed ListViewDrawing with 'UseItemStyleForSubItems'
8504 2004-11-22 Miguel de Icaza <miguel@ximian.com>
8506 * UpDownBase.cs (InitTimer): Use prehistoric C# 1.0 notation for
8509 * NumericUpDown.cs: Added new implementation.
8510 * UpDownBase.cs: Added new implementation.
8512 * XplatUIWin32.cs (KeyboardSpeed, KeyboardDelay): added default
8515 * XplatUIX11.cs (KeyboardSpeed, KeyboardDelay): added default
8518 * XplatUIDriver.cs ((KeyboardSpeed, KeyboardDelay): added new
8521 2004-11-21 Miguel de Icaza <miguel@ximian.com>
8523 * Timer.cs (Dispose): Should call the base dispose when
8526 2004-11-19 Jordi Mas i Hernandez <jordi@ximian.com>
8528 * ScrollBar.cs: updates thumb position when max, min or increment
8531 2004-11-21 Ravindra <rkumar@novell.com>
8533 * ListView.cs: Implemented item selection, activation and
8534 column header style. Fixed properties to do a redraw, if
8535 required. Added support for MouseHover, DoubleClick, KeyDown
8536 and KeyUp event handling and some minor fixes.
8537 * ListViewItem.cs: Fixed constructor.
8538 * ThemeWin32Classic.cs: Improved drawing for ListView.
8540 2004-11-19 Jordi Mas i Hernandez <jordi@ximian.com>
8542 * ThemeWin32Classic.cs: initial listbox drawing code
8543 * DrawMode.cs: new enumerator
8544 * ListControl.cs: stubbed class
8545 * ListBox.cs: initial implementation
8546 * Theme.cs: new methods definitions
8547 * SelectionMode.cs: new enumerator
8549 2004-11-17 Peter Bartok <pbartok@novell.com>
8551 * XplatUIWin32.cs: Added double-click events to the class style
8552 * Control.cs (WndProc):
8553 - Added handling of click-count to MouseDown/ MouseUp events.
8554 - Added handling of middle and right mouse buttons
8555 - Removed old debug code
8557 2004-11-17 Jackson Harper <jackson@ximian.com>
8559 * XplatUIX11.cs: Use the new Mono.Unix namespace.
8561 2004-11-17 Ravindra <rkumar@novell.com>
8563 * ListView.cs: Added event handling for MouseMove/Up/Down.
8564 * ColumnHeader.cs: Added a read-only internal property 'Pressed'.
8565 * ThemeWin32Classic.cs: We need to clear the graphics context and
8566 draw column header in a proper state.
8569 2004-11-17 Jordi Mas i Hernandez <jordi@ximian.com>
8571 * Menu.cs: fixes signature
8573 2004-11-16 Peter Bartok <pbartok@novell.com>
8575 * XplatUIX11.cs (GetMessage): Implemented generation of
8576 double click mouse messages
8578 2004-11-12 Jordi Mas i Hernandez <jordi@ximian.com>
8580 * Form.cs, MainMenu.cs, MenuAPI.cs: tracker should be for tracking session
8583 2004-11-11 Peter Bartok <pbartok@novell.com>
8585 * HandleData.cs: Added Visible property
8586 * XplatUIX11.cs (IsVisible): Now uses Visible property from
8588 * XplatUIX11.cs: Removed old debug leftovers
8589 * XplatUIX11.cs (DefWndProc): Added WM_ERASEBKGND handler
8590 * Control.cs (WndProc): Removed old debug leftovers,
8591 streamlined handling of WM_WINDOWPOSCHANGED, removed un-
8592 needed WM_SIZE handling
8594 2004-11-11 Jackson Harper <jackson@ximian.com>
8596 * OwnerDrawPropertyBag.cs:
8597 * TreeViewImageIndexConverter.cs: Initial implementation
8599 2004-11-10 Jackson Harper <jackson@ximian.com>
8601 * ThemeWin32Classic.cs:
8602 * TabControl.cs: instead of moving tabs by the slider pos just
8603 start drawing at the tab that is offset by the slider. This way
8604 scrolling always moves by exactly one tab.
8606 2004-11-10 Jackson Harper <jackson@ximian.com>
8608 * TabControl.cs: You can only scroll left when the slider has
8609 already ben moved right.
8611 2004-11-10 Jackson Harper <jackson@ximian.com>
8613 * ThemeWin32Classic.cs: Do not draw the selected tab if its not in
8616 2004-11-10 Jackson Harper <jackson@ximian.com>
8618 * ThemeWin32Classic.cs: Don't bother drawing tabs outside of the
8621 2004-11-09 Jackson Harper <jackson@ximian.com>
8623 * TabControl.cs (CalcXPos): New helper method so we can determine
8624 the proper place to start drawing vertical tabs.
8625 * ThemeWin32Classic.cs (DrawTab): Draw right aligned tabs.
8627 2004-11-09 Jackson Harper <jackson@ximian.com>
8629 * TabControl.cs: Calculate sizing and rects for left aligned tabs.
8630 * ThemeWin32Classic.cs (GetTabControl*ScrollRect): Only handle Top
8631 and Bottom, left and right are illegal values for this and
8632 multiline is enabled when the alignment is set to left or right.
8633 (DrawTab): Each alignment block should draw the text itself now
8634 because Left requires special love. Also add rendering for Left
8637 2004-11-09 Jordi Mas i Hernandez <jordi@ximian.com>
8639 * Form.cs, MainMenu.cs, MenuAPI.cs: fixes menu navigation, fixes popups,
8640 does not destroy the windows, removes debugging messages
8642 2004-11-09 jba <jba-mono@optusnet.com.au>
8644 * ThemeWin32Classic.cs
8645 (DrawButtonBase): Fix verticle text rect clipping in windows
8646 (DrawCheckBox): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
8647 rendering and incorrect text rect clipping
8648 (DrawRadioButton): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
8649 rendering and incorrect text rect clipping
8651 2004-11-08 Jackson Harper <jackson@ximian.com>
8653 * ThemeWin32Classic.cs (DrawTabControl): Render tabs from top to
8654 bottom when they are bottom aligned so the bottoms of the tabs get
8656 * TabControl.cs (DropRow): Move rows up instead of down when the
8657 tab control is bottom aligned.
8659 2004-11-08 13:59 pbartok
8662 - Added handling for various window styles
8663 - Added handling for popup windows
8664 - Added SetTopmost handling
8666 2004-11-08 13:55 pbartok
8669 - Added argument to SetTopmost method
8670 - Fixed broken ClientToScreen function
8672 2004-11-08 13:53 pbartok
8674 * XplatUIStructs.cs:
8675 - Added missing WS_EX styles
8677 2004-11-08 13:53 pbartok
8679 * XplatUI.cs, XplatUIDriver.cs:
8680 - Added argument to SetTopmost
8682 2004-11-08 13:52 pbartok
8685 - Added XSetWindowAttributes structure
8686 - Improved XWindowAttributes structure
8687 - Added SetWindowValuemask enum
8688 - Added window creation arguments enum
8689 - Added gravity enum
8690 - Added Motif hints structure
8691 - Added various Motif flags and enums
8692 - Added PropertyMode enum for property functions
8694 2004-11-08 13:50 pbartok
8697 - Fixed arguments for updated SetTopmost method
8699 2004-11-08 13:49 pbartok
8702 - Fixed arguments for updated SetTopmost function
8703 - Fixed usage of PointToClient
8705 2004-11-08 13:44 pbartok
8708 - Added Clipping of children and siblings
8710 2004-11-08 13:41 pbartok
8713 - Removed SetMenuBarWindow call. We do this in Form.cs
8715 2004-11-08 13:40 jackson
8717 * TabControl.cs, Theme.cs, ThemeWin32Classic.cs: Render the little
8718 scrolling jimmi in the correct location with bottom aligned tabs
8720 2004-11-08 13:36 pbartok
8722 * ContainerControl.cs:
8723 - Implemented BindingContext
8724 - Implemented ParentForm
8726 2004-11-08 12:46 jackson
8728 * TabControl.cs: Put bottom rendered tabs in the right location
8730 2004-11-08 07:15 jordi
8732 * ScrollBar.cs, ThemeWin32Classic.cs: fixes vertical scrollbar and
8735 2004-11-05 17:30 jackson
8737 * TabControl.cs: When selected tabs are expanded make sure they
8738 don't go beyond the edges of the tab control
8740 2004-11-05 14:57 jackson
8742 * TabControl.cs: Reset show_slider so if the control is resized to
8743 a size where it is no longer needed it's not displayed anymore
8745 2004-11-05 13:16 jackson
8747 * TabControl.cs: Make tab pages non visible when added to the
8750 2004-11-05 12:42 jackson
8752 * TabControl.cs: Implement SizeMode.FillToRight
8754 2004-11-05 12:16 jackson
8756 * Control.cs: Do not call CreateHandle if the handle is already
8759 2004-11-05 11:46 jackson
8761 * TabControl.cs: Remove superflous call to CalcTabRows
8763 2004-11-05 09:07 jackson
8765 * XplatUIX11.cs: Update for Mono.Posix changes
8767 2004-11-05 07:00 ravindra
8769 * ListView.cs, ListViewItem.cs: Implemented some methods and fixed
8772 2004-11-04 22:47 jba
8774 * ThemeWin32Classic.cs:
8775 - Fix Button rendering for FlatStyle = Flat or Popup
8776 - Fix RadioButton and CheckBox rendering when Appearance = Button
8777 (normal and flatstyle).
8778 - Correct outer rectangle color when drawing focus rectangle
8779 - Adjust button bounds to be 1 px smaller when focused
8780 - Make button not draw sunken 3d border when pushed (windows compat)
8781 - Fix CPDrawBorder3D to not make bottom right hand corner rounded
8782 - Offset the text in RadioButton and Checkbox when being rendered as
8784 - Hover and Click behaviour for Colored FlatStyle.Flat and Popup
8786 - Fixed disabled rendering for colored flatstyle radiobuttons (both)
8787 - Fixed disabled text rendering for normally rendered radiobuttons
8789 2004-11-04 10:26 jackson
8791 * TabControl.cs: Recalculate tab rows when resizing
8793 2004-11-04 07:47 jordi
8795 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs:
8796 collection completion, drawing issues, missing features
8798 2004-11-04 05:03 ravindra
8801 - We need to recalculate the Thumb area when
8802 LargeChange/maximum/minimum values are changed.
8803 - We set the 'pos' in UpdatePos() method to minimum, if it's less
8804 than minimum. This is required to handle the case if large_change is
8805 more than max, and use LargeChange property instead of large_change
8807 - We return max+1 when large_change is more than max, like MS does.
8809 2004-11-04 04:29 ravindra
8811 * ColumnHeader.cs, ListView.cs, ListViewItem.cs:
8812 - Changed default value signatures (prefixed all with ListView).
8813 - Fixed/implemented layout LargeIcon, SmallIcon and List views for
8815 - Fixed calculations for ListViewItem and implemented Clone()
8818 2004-11-04 04:26 ravindra
8820 * Theme.cs, ThemeWin32Classic.cs:
8821 - Changed default ListView values signatures (prefixed all with
8823 - Fixed default size values for VScrollBar and HScrollBar.
8824 - Fixed DrawListViewItem method.
8826 2004-11-04 04:05 ravindra
8828 * ColumnHeaderStyle.cs: Typo. It should be Nonclickable.
8830 2004-11-04 04:04 ravindra
8832 * ImageList.cs: Implemented the missing overload for Draw method.
8834 2004-11-03 19:29 jackson
8836 * TabControl.cs: Handle dropping rows on selection properly
8838 2004-11-03 11:59 jackson
8840 * TabControl.cs: remove debug code
8842 2004-11-03 11:52 jackson
8844 * TabControl.cs, ThemeWin32Classic.cs: Initial implementation of
8845 the scrolly widgerywoo
8847 2004-11-02 13:52 jackson
8849 * TabControl.cs: Resize the tab pages and tabs when the tab control
8852 2004-11-02 13:40 jackson
8854 * TabControl.cs, ThemeWin32Classic.cs: Move the row with the
8855 selected tab to the bottom
8857 2004-11-02 13:39 jackson
8859 * TabPage.cs: Store the tab pages row
8861 2004-11-02 12:33 jordi
8863 * MenuItem.cs: fixes handle creation
8865 2004-11-02 11:42 jackson
8867 * TabControl.cs: signature fix
8869 2004-11-02 08:56 jackson
8871 * TabControl.cs: Calculate whether the tab is on an edge properly.
8872 Remove top secret debugging code
8874 2004-11-01 19:57 jackson
8876 * TabControl.cs: Add click handling, and proper sizing
8878 2004-11-01 19:47 jackson
8880 * Theme.cs, ThemeWin32Classic.cs: New rendering and sizing code for
8883 2004-11-01 19:39 jackson
8885 * TabPage.cs: add internal property to store the bounds of a tab
8888 2004-10-30 04:23 ravindra
8890 * Theme.cs, ThemeWin32Classic.cs: Drawing ListView and some default
8893 2004-10-30 04:21 ravindra
8895 * ListView.cs, ListViewItem.cs: Added support for scrolling and
8898 2004-10-30 03:06 pbartok
8901 - Removed extension of DllImported libs
8903 2004-10-29 09:55 jordi
8905 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: Menu key
8906 navigation, itemcollection completion, menu fixes
8908 2004-10-27 22:58 pbartok
8911 - Now throws a nice error message when no X display could be opened
8913 2004-10-26 13:51 jordi
8915 * ListView.cs: removes warning
8917 2004-10-26 03:55 ravindra
8919 * ColumnHeader.cs, ListView.cs, ListViewItem.cs,
8920 ThemeWin32Classic.cs: Some formatting for my last checkins.
8922 2004-10-26 03:36 ravindra
8924 * ThemeWin32Classic.cs: Implemented DetailView drawing for ListView
8925 control and default values.
8927 2004-10-26 03:35 ravindra
8929 * Theme.cs: Added some default values for ListView control.
8931 2004-10-26 03:33 ravindra
8933 * ToolBar.cs: ToolBar should use the user specified button size, if
8934 there is any. Added a size_specified flag for the same.
8936 2004-10-26 03:33 ravindra
8938 * ColumnHeader.cs: Added some internal members and calculations for
8941 2004-10-26 03:32 ravindra
8943 * ListViewItem.cs: Calculations for ListViewItem.
8945 2004-10-26 03:31 ravindra
8947 * ListView.cs: Added some internal members and calculations for
8950 2004-10-22 13:31 jordi
8952 * MenuAPI.cs: speedup menus drawing
8954 2004-10-22 13:16 jackson
8956 * XplatUIX11.cs: Make sure to update exposed regions when adding an
8959 2004-10-22 11:49 jackson
8963 2004-10-22 11:41 jackson
8965 * Control.cs: Check to see if the window should have its background
8966 repainted by X when drawing.
8968 2004-10-22 11:31 jackson
8970 * XplatUIX11.cs: When invalidating areas only use XClearArea if
8971 clear is true, this way we do not get flicker from X repainting the
8974 2004-10-22 11:28 jackson
8976 * XEventQueue.cs: Queue properly
8978 2004-10-21 09:38 jackson
8980 * XEventQueue.cs: Fix access modifier
8982 2004-10-21 09:36 jackson
8984 * XEventQueue.cs: Don't loose messages
8986 2004-10-21 09:22 jackson
8988 * XEventQueue.cs: Don't loose messages
8990 2004-10-20 04:15 jordi
8992 * BootMode.cs: enum need it by SystemInfo
8994 2004-10-19 21:58 pbartok
8997 - Small sanity check
8999 2004-10-19 21:56 pbartok
9002 - Added private FormParentWindow class which acts as the container
9003 for our form and as the non-client area where menus are drawn
9004 - Added/Moved required tie-ins to Jordi's menus
9005 - Fixed/Implemented the FormStartPosition functionality
9007 2004-10-19 21:52 pbartok
9010 - Removed unneeded locals
9011 - Added code to all size and location properties to understand and
9012 deal with the parent container of Form
9014 2004-10-19 21:33 pbartok
9017 - Fixed to deal with new Form subclasses for menus
9019 2004-10-19 17:48 jackson
9021 * XEventQueue.cs: commit correct version of file
9023 2004-10-19 16:50 jackson
9025 * XEventQueue.cs, XplatUIX11.cs: New optimized event queue
9027 2004-10-19 16:15 jordi
9029 * MenuAPI.cs: MenuBarCalcSize returns the height
9031 2004-10-19 08:31 pbartok
9034 - Added missing call to PreProcessMessage before calling OnXXXKey
9037 2004-10-19 00:04 ravindra
9039 * ToolTip.cs: Fixed constructor.
9041 2004-10-18 09:31 jordi
9043 * MenuAPI.cs: menuitems in menubars do not have shortcuts
9045 2004-10-18 09:26 jordi
9047 * MenuItem.cs: fixes MenuItem class signature
9049 2004-10-18 08:56 jordi
9051 * MenuAPI.cs: prevents windows from showing in the taskbar
9053 2004-10-18 00:28 ravindra
9055 * ToolTip.cs: Suppressed a warning message.
9057 2004-10-18 00:27 ravindra
9059 * Control.cs: Default value of visible property must be true.
9061 2004-10-17 23:19 pbartok
9064 - Complete implementation
9066 2004-10-17 23:19 pbartok
9069 - Added EnableWindow method
9070 - Added SetModal stub
9071 - Added generation of WM_ACTIVATE message (still needs testing)
9072 - Added SetTopMost stub
9073 - Changes to deal with VirtualKeys being moved to XplatUIStructs.cs
9075 2004-10-17 23:17 pbartok
9078 - Removed VirtualKeys to XplatUIStructs
9079 - Implemented SetTopMost method
9080 - Implemented EnableWindow method
9081 - Bugfix in ScreenToClient()
9082 - Bugfixes in ClientToScreen()
9084 2004-10-17 22:51 pbartok
9086 * XplatUIStructs.cs:
9087 - Added WS_EX styles to WindowStyles enumeration
9089 2004-10-17 22:50 pbartok
9091 * XplatUI.cs, XplatUIDriver.cs:
9092 - Added method for enabling/disabling windows
9093 - Added method for setting window modality
9094 - Added method for setting topmost window
9096 2004-10-17 22:49 pbartok
9098 * ThemeWin32Classic.cs:
9099 - Added ToolTip drawing code
9101 2004-10-17 22:49 pbartok
9104 - Added ToolTip abstracts
9106 2004-10-17 22:47 pbartok
9109 - Fixed Form.ControlCollection to handle owner relations
9110 - Added Owner/OwnedForms handling
9111 - Implemented Z-Ordering for owned forms
9112 - Removed unneeded private overload of ShowDialog
9113 - Fixed ShowDialog, added the X11 incarnation of modal handling (or
9115 - Fixed Close(), had wrong default
9116 - Added firing of OnLoad event
9117 - Added some commented out debug code for Ownership handling
9119 2004-10-17 22:16 pbartok
9122 - Fixed/implemented flat list of controls
9124 2004-10-17 22:14 pbartok
9127 - Added code to simulate modal dialogs on Win32
9129 2004-10-17 16:11 jordi
9131 * ScrollBar.cs: disabled scrollbar should not honor any keyboard or
9134 2004-10-17 13:39 jordi
9136 * MenuAPI.cs: menu drawing fixes
9138 2004-10-15 09:10 ravindra
9140 * StructFormat.cs: General Enum.
9142 2004-10-15 09:09 ravindra
9144 * SizeGripStyle.cs: Enum for Form.
9146 2004-10-15 09:08 ravindra
9148 * Theme.cs, ThemeWin32Classic.cs: Added ColumnHeaderHeight property
9149 in Theme for ListView.
9151 2004-10-15 09:06 ravindra
9153 * ColumnHeader.cs: Flushing some formatting changes.
9155 2004-10-15 09:05 ravindra
9157 * ListViewItem.cs: Implemented GetBounds method and fixed coding
9160 2004-10-15 09:03 ravindra
9162 * ListView.cs: Implemented Paint method and fixed coding style.
9164 2004-10-15 07:34 jordi
9166 * MenuAPI.cs: fix for X11
9168 2004-10-15 07:32 ravindra
9170 * ButtonBase.cs, CheckBox.cs, RadioButton.cs:
9171 - Renamed Paint() method to Draw() for clarity. Also, moved
9172 DrawImage() to OnPaint().
9174 2004-10-15 07:25 ravindra
9176 * CheckBox.cs, RadioButton.cs:
9177 - Removed Redraw (), we get it from ButtonBase.
9178 - Implemented Paint (), to do class specific painting.
9180 2004-10-15 07:16 ravindra
9183 - Redraw () is not virtual now.
9184 - Added an internal virtual method Paint (), so that
9185 derived classes can do their painting on their own.
9186 - Modified OnPaint () to call Paint ().
9188 2004-10-15 06:43 jordi
9190 * ContextMenu.cs, DrawItemEventHandler.cs, Form.cs, MainMenu.cs,
9191 MenuAPI.cs, MenuItem.cs: menu work, mainmenu, subitems, etc
9193 2004-10-15 00:30 ravindra
9196 - MessageBox on windows does not have min/max buttons.
9197 This change in CreateParams fixes this on Windows. We
9198 still need to implement this windowstyle behavior in
9201 2004-10-14 05:14 ravindra
9204 - Changed Redraw () to do a Refresh () always.
9205 - Fixed the MouseMove event handling when mouse is pressed,
9206 ie drag event handling.
9207 - Replaced the usage of ToolBarButton.Pressed property to
9208 ToolBarButton.pressed internal variable.
9210 2004-10-14 05:10 ravindra
9213 - Added an internal member 'inside' to handle mouse move
9214 with mouse pressed ie mouse drag event.
9215 - Changed 'Pressed' property to return true only when
9216 'inside' and 'pressed' are both true.
9217 - Some coding style love.
9219 2004-10-14 00:17 ravindra
9221 * Form.cs: Fixed class signature. ShowDialog (Control) is not a
9224 2004-10-14 00:15 ravindra
9226 * ButtonBase.cs: Redraw () related improvements.
9228 2004-10-14 00:14 ravindra
9230 * MessageBox.cs: Moved InitFormSize () out of Paint method and
9231 removed unnecessary calls to Button.Show () method.
9233 2004-10-13 17:50 pbartok
9237 - Removed destroying of window until we solve the problem of X
9238 destroying the window before us on shutdown
9240 2004-10-13 16:32 pbartok
9243 - Now Redraws on MouseUp for FlatStyle Flat and Popup
9245 2004-10-13 14:18 pbartok
9248 - Added code to destroy the X window
9250 2004-10-13 14:18 pbartok
9253 - Added code to destroy a window
9255 2004-10-13 14:12 pbartok
9258 - Added the Redraw on Resize that got dropped in the last rev
9260 2004-10-13 09:06 pbartok
9262 * ThemeWin32Classic.cs:
9263 - Path from John BouAntoun:
9264 * Fix check rendering (centre correctly for normal style, offset
9265 correctly for FlatStyle).
9266 * Fix border color usage (use backcolor) for FlatStyle.Popup
9267 * Use checkbox.Capture instead of checkbox.is_pressed when
9268 rendering flatstyle states.
9270 2004-10-12 21:48 pbartok
9272 * ThemeWin32Classic.cs:
9273 - Removed all occurences of SystemColors and replaced them with the
9274 matching theme color
9276 2004-10-12 21:41 pbartok
9278 * ThemeWin32Classic.cs:
9279 - From John BouAntoun: Added an overload to CPDrawBorder3D to allow
9280 him using the function for flatstyle drawing
9281 - Changed functions to use the new version of CPDrawBorder3D
9283 2004-10-12 21:15 pbartok
9286 - Fixed Dark(), DarkDark(), Light() and LightLight() methods to
9287 match MS documentation. They need to return defined colors if the
9288 passed color matches the configured control color. Thanks to John
9289 BouAntoun for pointing this out.
9291 2004-10-12 20:57 pbartok
9294 - Fix from John BouAntoun: Raise ForeColorChanged event when text
9297 2004-10-12 20:46 pbartok
9300 - Fix from John BouAntoun: Now properly sets the Appearance property
9302 2004-10-12 20:45 pbartok
9304 * ThemeWin32Classic.cs:
9305 - Fixes from John BouAntoun: now handles forecolors and backcolors
9306 for flatstyle rendered controls much better; It also fixes normal
9307 checkbox rendering when pushed or disabled.
9309 2004-10-08 02:50 jordi
9311 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: more menu
9314 2004-10-07 08:56 jordi
9316 * ThemeWin32Classic.cs: Removes deletion of cached brushes
9318 2004-10-06 03:59 jordi
9320 * Control.cs, StatusBar.cs, ThemeWin32Classic.cs, ToolBar.cs,
9321 XplatUIWin32.cs: removes warnings from compilation
9323 2004-10-05 12:23 jackson
9325 * RadioButton.cs: Fix ctor
9327 2004-10-05 11:10 pbartok
9330 - Partial implementation by Benjamin Dasnois
9332 2004-10-05 10:15 jackson
9334 * ThemeWin32Classic.cs: Improve rendering of the radio button patch
9337 2004-10-05 03:07 ravindra
9340 - Removed a private method, Draw ().
9341 - Fixed the ButtonDropDown event handling.
9342 - Fixed MouseMove event handling.
9344 2004-10-05 03:04 ravindra
9346 * ThemeWin32Classic.cs:
9347 - Added DrawListView method and ListViewDefaultSize property.
9348 - Changed ControlPaint method calls to CPDrawXXX wherever possible.
9349 - Changed DOS style CRLF to Unix format (dos2unix).
9351 2004-10-05 03:03 ravindra
9354 - Added DrawListView method and ListViewDefaultSize property.
9356 2004-10-05 02:42 ravindra
9358 * ToolBarButton.cs: Added an internal member dd_pressed to handle
9359 clicks on DropDown arrow.
9361 2004-10-04 22:56 jackson
9363 * ButtonBase.cs, Label.cs, MenuAPI.cs, ProgressBar.cs,
9364 ScrollBar.cs, StatusBar.cs, ToolBar.cs, TrackBar.cs: Let the base
9365 Control handle the buffers, derived classes should not have to
9366 CreateBuffers themselves.
9368 2004-10-04 21:20 jackson
9370 * StatusBar.cs: The control handles resizing the buffers now.
9372 2004-10-04 21:18 jackson
9374 * Control.cs: When resizing the buffers should be invalidated. This
9375 should be handled in Control not in derived classes.
9377 2004-10-04 14:45 jackson
9381 2004-10-04 02:14 pbartok
9383 * LeftRightAlignment.cs:
9386 2004-10-04 01:09 jordi
9388 * ThemeWin32Classic.cs: fixes right button position causing right
9389 button not showing on horizontal scrollbars
9391 2004-10-02 13:12 pbartok
9394 - Simplified the Invalidate method by using an X call instead of
9395 generating the expose ourselves
9396 - Added an expose when the window background is changed
9397 - Implemented ClientToScreen method
9399 2004-10-02 13:08 pbartok
9402 - Added Win32EnableWindow method (test for implementing modal
9404 - Added ClientToScreen method and imports
9406 2004-10-02 13:07 pbartok
9408 * XplatUI.cs, XplatUIDriver.cs:
9409 - Added ClientToScreen coordinate translation method
9411 2004-10-02 13:06 pbartok
9413 * KeyPressEventArgs.cs:
9414 - Fixed access level for constructor
9416 2004-10-02 13:06 pbartok
9419 - Changed access level for the window_collection hash table
9421 2004-10-02 13:05 pbartok
9424 - Added KeyPreview property
9425 - Added Menu property (still incomplete, pending Jordi's menu work)
9426 - Implemented ProcessCmdKey
9427 - Implemented ProcessDialogKey
9428 - Implemented ProcessKeyPreview
9430 2004-10-02 13:02 pbartok
9433 - Added private method to get the Control object from the window
9435 - Implemented ContextMenu property
9436 - Implemented PointToScreen
9437 - Implemented PreProcessMessage
9438 - Implemented IsInputChar
9439 - Implemented IsInputKey
9440 - Implemented ProcessCmdKey
9441 - Completed ProcessKeyEventArgs
9442 - Fixed message loop to call the proper chain of functions on key
9444 - Implemented ProcessDialogChar
9445 - Implemented ProcessDialogKey
9446 - Implemented ProcessKeyMessage
9447 - Implemented ProcessKeyPreview
9448 - Added RaiseDragEvent stub (MS internal method)
9449 - Added RaiseKeyEvent stub (MS internal method)
9450 - Added RaiseMouseEvent stub (MS Internal method)
9451 - Added RaisePaintEvent stub (MS Internal method)
9452 - Added ResetMouseEventArgs stub (MS Internal method)
9453 - Implemented RtlTranslateAlignment
9454 - Implemented RtlTranslateContent
9455 - Implemented RtlTranslateHorizontal
9456 - Implemented RtlTranslateLeftRight
9457 - Added generation of KeyPress event
9459 2004-10-02 05:57 ravindra
9461 * ListViewItem.cs: Added attributes.
9463 2004-10-02 05:32 ravindra
9465 * ListView.cs: Added attributes.
9467 2004-10-01 11:53 jackson
9469 * Form.cs: Implement the Close method so work on MessageBox can
9472 2004-09-30 14:06 pbartok
9477 2004-09-30 11:34 jackson
9479 * RadioButton.cs: Fix typo. Patch by John BouAntoun.
9481 2004-09-30 07:26 ravindra
9483 * ListViewItemConverter.cs: Converter for ListViewItem.
9485 2004-09-30 07:26 ravindra
9487 * SortOrder.cs: Enum for ListView control.
9489 2004-09-30 07:25 ravindra
9491 * ColumnHeader.cs: Supporting class for ListView control.
9493 2004-09-30 07:24 ravindra
9495 * ListView.cs, ListViewItem.cs: Initial implementation.
9497 2004-09-30 07:20 ravindra
9499 * ItemActivation.cs: Enum for ListView Control.
9501 2004-09-29 20:29 pbartok
9504 - Added lookup of pixel value for background color; tries to get a
9505 color 'close' to the requested color, it avoids having to create a
9506 colormap. Depending on the display this could mean the used color
9507 is slightly off the desired color. Might have to change it to a more
9508 resource intensive colormap approach, but it will work as a
9509 workaround to avoid red screens.
9511 2004-09-29 14:27 jackson
9513 * XplatUIX11.cs: Set the X DisplayHandle in System.Drawing
9515 2004-09-28 12:44 pbartok
9517 * ButtonBase.cs, CheckBox.cs, ControlPaint.cs, GroupBox.cs,
9518 HScrollBar.cs, Label.cs, LinkLabel.cs, Panel.cs, PictureBox.cs,
9519 ProgressBar.cs, RadioButton.cs, ScrollBar.cs, StatusBar.cs,
9520 Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs, ToolBar.cs,
9521 TrackBar.cs, VScrollBar.cs:
9522 - Streamlined Theme interfaces:
9523 * Each DrawXXX method for a control now is passed the object for
9524 the control to be drawn in order to allow accessing any state the
9527 * ControlPaint methods for the theme now have a CP prefix to avoid
9528 name clashes with the Draw methods for controls
9530 * Every control now retrieves it's DefaultSize from the current
9533 2004-09-28 12:17 jackson
9535 * Button.cs: Do not redraw OnClick MouseUp/Down will handle the
9538 2004-09-24 14:57 jackson
9540 * XplatUIX11.cs: Don't lock/enqueue/dequeue for unhandled messages.
9541 Gives us a nice little performance boost.
9543 2004-09-24 12:02 jackson
9545 * TabAlignment.cs, TabAppearance.cs, TabControl.cs, TabDrawMode.cs,
9546 TabPage.cs, TabSizeMode.cs: Partial implementation of the Tab
9547 Control and supporting classes. Initial checkin
9549 2004-09-23 13:08 jackson
9551 * Form.cs: Temp build fixage
9553 2004-09-23 01:39 ravindra
9555 * ItemChangedEventArgs.cs, ItemChangedEventHandler.cs,
9556 ItemCheckEventArgs.cs, ItemCheckEventHandler.cs,
9557 ItemDragEventArgs.cs, ItemDragEventHandler.cs,
9558 LabelEditEventArgs.cs, LabelEditEventHandler.cs: EventArgs and
9559 EventHandlers needed by ListView Control.
9561 2004-09-22 14:12 pbartok
9563 * ScrollableControl.cs:
9564 - Implemented DockPadding property
9565 - Implemented AutoScroll property
9566 - Implemented AutoScrollMargin property
9567 - Implemented AutoScrollMinSize property
9568 - Implemented AutoScrollPosition property
9569 - Implemented DisplayRectangle property (still incomplete)
9570 - Implemented CreateParams property
9571 - Implemented HScroll property
9572 - Implemented VScroll property
9573 - Implemented OnVisibleChanged property
9575 2004-09-22 14:09 pbartok
9578 - Added Form.ControllCollection class
9579 - Added handling for Form owners: Owner, OwnedForms, AddOwnedForm,
9580 RemoveOwnedForm (still incomplete, missing on-top and common
9581 minimize/maximize behaviour)
9582 - Added StartPosition property (still incomplete, does not use when
9584 - Added ShowDialog() methods (still incomplete, missing forcing the
9587 2004-09-22 14:05 pbartok
9590 - Added message loop for modal dialogs
9592 2004-09-22 14:02 pbartok
9595 - Fixed wrong types for events
9597 2004-09-22 14:00 pbartok
9599 * Shortcut.cs, FormWindowState.cs:
9600 - Fixed wrong values
9602 2004-09-22 12:01 jackson
9604 * Control.cs: Text is never null
9606 2004-09-20 22:14 pbartok
9609 - Fixed accessibility level for Idle handler
9611 2004-09-20 18:54 jackson
9613 * Application.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
9614 XplatUIX11.cs: New message loop that uses poll so we don't get a
9617 2004-09-17 10:43 pbartok
9620 - Fixed behaviour of arrow buttons. Now properly behaves like
9621 Buttons (and like Microsoft's scrollbar arrow buttons)
9623 2004-09-17 10:14 pbartok
9626 - Added missing release of keyboard/mouse capture
9628 2004-09-17 06:18 jordi
9630 * ContextMenu.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs,
9631 Theme.cs: Very early menu support
9633 2004-09-16 17:45 pbartok
9636 - Fixed sending a window to the front
9637 - Added overload for SetWindowPos to avoid casting
9639 2004-09-16 17:44 pbartok
9642 - Added SendToBack and BringToFront methods
9644 2004-09-16 07:00 ravindra
9646 * Copyright: Added Novell URL.
9648 2004-09-16 07:00 ravindra
9650 * ToolBar.cs: Invalidate should be done before redrawing.
9652 2004-09-15 21:19 ravindra
9654 * ColumnHeaderStyle.cs: Enum for ListView Control.
9656 2004-09-15 21:18 ravindra
9658 * ColumnClickEventArgs.cs, ColumnClickEventHandler.cs: Event for
9661 2004-09-13 18:26 jackson
9663 * Timer.cs, XplatUIX11.cs: Remove test code so timers are updated
9666 2004-09-13 18:13 jackson
9668 * Timer.cs, X11Structs.cs, XplatUIX11.cs: Timers are now handled in
9669 a second thread and post messages into the main threads message
9670 queue. This makes timing much more consistent. Both win2K and XP
9671 have a minimum timer value of 15 milliseconds, so we now do this
9674 2004-09-13 15:18 pbartok
9676 * X11Structs.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
9678 - Added Z-Ordering methods
9680 2004-09-13 10:56 pbartok
9683 - Fixed #region names
9684 - Moved properties and methods into their proper #regions
9686 2004-09-13 10:51 pbartok
9689 - Added Accept and CancelButton properties
9690 - Added ProcessDialogKey() method
9692 2004-09-13 08:18 pbartok
9697 2004-09-10 21:50 pbartok
9700 - Added DoDragDrop() [incomplete]
9701 - Properly implemented 'Visible' handling
9702 - Added SetVisibleCore()
9703 - Implemented FindChildAtPoint()
9704 - Implemented GetContainerControl()
9705 - Implemented Hide()
9707 2004-09-10 19:28 pbartok
9710 - Moved methods into their appropriate #regions
9711 - Reordered methods within regions alphabetically
9713 2004-09-10 18:57 pbartok
9715 * XplatUIX11.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
9716 - Added method to retrieve text from window
9718 2004-09-10 18:56 pbartok
9721 - Moved some internal functions into the internal region
9722 - Implemented FontHeight
9723 - Implemented RenderRightToLeft
9724 - Implemented ResizeRedraw
9725 - Implemented ShowFocusCues
9726 - Implemented ShowKeyboardCues
9727 - Implemented FromChildHandle
9728 - Implemented FromHandle
9729 - Implemented IsMnemonic
9730 - Implemented ReflectMessage
9731 - All public and protected Static Methods are now complete
9733 2004-09-10 16:54 pbartok
9736 - Implemented remaining missing public instance properties
9737 - Alphabetized some out of order properties
9739 2004-09-10 05:51 ravindra
9741 * PictureBox.cs: Added a check for null image.
9743 2004-09-10 00:59 jordi
9745 * GroupBox.cs: remove cvs tag
9747 2004-09-09 05:25 ravindra
9749 * ToolBar.cs: Make redraw accessible from ToolBarButton.
9751 2004-09-09 05:23 ravindra
9753 * ToolBarButton.cs: Changes in ToolBarButton need to make it's
9756 2004-09-09 02:28 pbartok
9758 * ThemeWin32Classic.cs:
9759 - Improve disabled string look
9761 2004-09-09 01:15 jordi
9763 * MeasureItemEventArgs.cs, MeasureItemEventHandler.cs: measureitem
9766 2004-09-08 23:56 ravindra
9768 * ItemBoundsPortion.cs: It's enum, not a class!
9770 2004-09-08 23:47 ravindra
9772 * FormBorderStyle.cs, FormStartPosition.cs, FormWindowState.cs:
9775 2004-09-08 21:13 ravindra
9777 * ItemBoundsPortion.cs, ListViewAlignment.cs, View.cs: Enums for
9780 2004-09-08 21:03 ravindra
9782 * ThemeWin32Classic.cs: PictureBox would not draw a null image to
9785 2004-09-08 21:01 ravindra
9787 * ScrollableControl.cs: Removed unreachable code.
9789 2004-09-08 06:45 jordi
9791 * MenuMerge.cs, Shortcut.cs: enumerations need it by menus
9793 2004-09-08 01:00 jackson
9795 * XplatUIX11.cs: Only run the timers when updating the message
9796 queue. This effectively gives X messages a higher priority then
9797 timer messages. Timers still need love though
9799 2004-09-07 14:01 jackson
9801 * XplatUIX11.cs: Do not call XDestroyWindow, X has already done
9802 this for us and the handle is no longer valid.
9804 2004-09-07 13:59 jackson
9806 * HandleData.cs, XplatUIX11.cs: First steps towards a new X event
9807 loop that manages to not crash. TODO: Add poll and cleanup timers
9809 2004-09-07 11:12 jordi
9811 * GroupBox.cs, Theme.cs, ThemeWin32Classic.cs: GroupBox control
9813 2004-09-07 03:40 jordi
9815 * Label.cs, LinkLabel.cs, Theme.cs, ThemeWin32Classic.cs: LinkLabel
9816 fixes, methods, multiple links
9818 2004-09-06 06:55 jordi
9820 * Control.cs: Caches ClientRectangle rectangle value
9822 2004-09-05 02:03 jordi
9824 * ScrollBar.cs, ThemeWin32Classic.cs: fixes bugs, adds flashing on
9827 2004-09-04 11:10 jordi
9829 * Label.cs: Refresh when font changed
9831 2004-09-02 16:24 pbartok
9834 - Added sanity check to creation of double buffer bitmap
9836 2004-09-02 16:24 pbartok
9839 - Fixed selection of text color
9840 - Fixed handling of resize event; now properly recreates double
9842 - Added missing assignment of TextAlignment
9843 - Added proper default for TextAlignment
9845 2004-09-02 14:26 pbartok
9848 - Added missing RadioButton.RadioButtonAccessibleObject class
9850 2004-09-02 14:26 pbartok
9853 - Added missing Control.ControlAccessibleObject class
9854 - Started to implement Select()ion mechanisms, still very incomplete
9856 2004-09-02 14:25 pbartok
9858 * AccessibleObject.cs:
9859 - Added missing methods
9861 2004-09-02 14:23 pbartok
9863 * AccessibleNavigation.cs, AccessibleSelection.cs:
9866 2004-09-02 10:32 jordi
9868 * Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: implements resource
9869 pool for pens, brushes, and hatchbruses
9871 2004-09-01 15:30 jackson
9873 * StatusBar.cs: Fix typo
9875 2004-09-01 14:44 pbartok
9880 2004-09-01 14:39 pbartok
9882 * Button.cs, RadioButton.cs:
9883 - Functional initial check-in
9885 2004-09-01 14:01 pbartok
9888 - Added missing default
9889 - Added missing region mark
9891 2004-09-01 09:10 jordi
9893 * Label.cs: fixes method signatures, new methods, events, fixes
9896 2004-09-01 07:19 jordi
9898 * Control.cs: Init string variables with an empty object
9900 2004-09-01 04:20 jordi
9902 * Control.cs: fires OnFontChanged event
9904 2004-08-31 20:07 pbartok
9907 - Enabled display of strings
9909 2004-08-31 20:05 pbartok
9912 - Added (partial) implementation of DialogResult; rest needs to be
9913 implemented when the modal loop code is done
9915 2004-08-31 19:55 pbartok
9918 - Fixed to match the removal of the needs_redraw concept
9920 2004-08-31 19:55 pbartok
9923 - Removed the rather odd split between 'needs redraw' and redrawing
9924 - Now handles the events that require regeneration (ambient
9925 properties and size)
9927 2004-08-31 19:41 pbartok
9930 - Added firing of BackColorChanged event
9931 - Added TopLevelControl property
9932 - Fixed handling of WM_ERASEBKGRND message
9934 2004-08-31 12:49 pbartok
9940 2004-08-31 12:48 pbartok
9943 - Finished (famous last words)
9945 2004-08-31 04:35 jordi
9947 * ScrollBar.cs: adds autorepeat timer, uses a single timer, fixes
9948 scrolling bugs, adds new methods
9950 2004-08-30 14:42 pbartok
9953 - Implemented CheckBox drawing code
9955 2004-08-30 14:42 pbartok
9958 - Made Redraw() and CheckRedraw() virtual
9959 - Improved mouse up/down/move logic to properly track buttons
9961 2004-08-30 09:44 pbartok
9964 - Updated to fix broken build. Not complete yet.
9966 2004-08-30 09:28 pbartok
9971 2004-08-30 09:17 pbartok
9976 2004-08-27 16:12 ravindra
9978 * ToolBarButton.cs: Added TypeConverter attribute.
9980 2004-08-27 16:07 ravindra
9982 * ImageIndexConverter.cs: Implemented.
9984 2004-08-27 14:17 pbartok
9987 - Removed unneeded stack vars
9988 - First attempt to fix sizing issues when layout is suspended
9990 2004-08-25 15:35 jordi
9992 * ScrollBar.cs: more fixes to scrollbar
9994 2004-08-25 14:04 ravindra
9996 * Theme.cs, ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs:
9997 Added the missing divider code and grip for ToolBar Control.
9999 2004-08-25 13:20 pbartok
10002 - Control now properly passes the ambient background color to child
10005 2004-08-25 13:20 jordi
10007 * ScrollBar.cs: small bug fix regarding bar position
10009 2004-08-25 12:33 pbartok
10012 - Now only calls SetTimer or KillTimer if the enabled state has
10015 2004-08-25 12:33 pbartok
10018 - Fixed timer handling, now seems to work
10019 - Improved error message for window creation
10021 2004-08-25 12:32 pbartok
10024 - Fixed generation of MouseUp message
10026 2004-08-25 12:29 jordi
10028 * ProgressBar.cs, ThemeWin32Classic.cs: new methods, properties,
10029 and fixes for progressbar
10031 2004-08-24 18:43 ravindra
10033 * ThemeWin32Classic.cs, ToolBar.cs: Fixed wrapping related issues
10034 in ToolBar control.
10036 2004-08-24 17:15 pbartok
10040 - Added missing events
10043 2004-08-24 17:14 pbartok
10045 * StatusBar.cs, PictureBox.cs:
10046 - Now uses Control's CreateParams
10048 2004-08-24 16:36 pbartok
10051 - Fixed background color handling
10052 - Fixed sending of enter/leave events on a grab
10054 2004-08-24 16:35 pbartok
10057 - Refined definitions for CrossingEvent
10059 2004-08-24 12:37 jordi
10061 * ScrollBar.cs, Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: fixes
10062 formmating, methods signature, and adds missing events
10064 2004-08-24 12:24 jordi
10066 * Control.cs: fire OnEnabledChanged event
10068 2004-08-24 11:17 pbartok
10071 - Implemented SetTimer() and KillTimer()
10073 2004-08-24 11:16 pbartok
10076 - Now uses Remove instead of Add to kill the timer
10078 2004-08-24 10:16 jackson
10080 * PictureBox.cs, Theme.cs, ThemeWin32Classic.cs: Handle drawing
10081 picture boxes in the theme now. Draw picture box borders and obey
10084 2004-08-24 05:49 jackson
10086 * Timer.cs: Remove top secret debugging code
10088 2004-08-24 05:34 jackson
10090 * PictureBox.cs: Temp hack to make picture boxes draw their full
10093 2004-08-24 05:29 jackson
10095 * Timer.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10096 XplatUIX11.cs: Move timers to the driver level. On X they are
10097 queued by the driver and checked on idle.
10099 2004-08-24 01:07 jackson
10101 * XplatUIX11.cs: Use a queue for async messages instead of passing
10102 them as ClientMessages since that was totally broken. Also simply
10103 check for events and return an idle message if none are found. This
10104 gives us an idle handler, and prevents deadlocking when no messages
10107 2004-08-23 18:19 ravindra
10109 * XplatUIWin32.cs: Removed the unwanted destructor.
10111 2004-08-23 17:27 pbartok
10114 - Finishing touches. Works now, just needs some optimizations.
10116 2004-08-23 16:53 jordi
10118 * ScrollBar.cs: small fix
10120 2004-08-23 16:45 pbartok
10123 - Removed debug output
10126 2004-08-23 16:43 jordi
10128 * ScrollBar.cs: [no log message]
10130 2004-08-23 16:10 pbartok
10133 - Fixed handling of WM_CLOSE message
10134 - Removed debug output
10136 2004-08-23 16:09 pbartok
10139 - Added handling of Idle event
10140 - Added handling of form closing
10141 - Fixed reporting of MessageLoop property
10142 - Removed some unneeded code, should provide a bit of a speedup
10144 2004-08-23 15:22 pbartok
10147 - Added InitLayout() method
10148 - Added code to properly perform layout when Anchor or Dock property
10150 - Changed 'interpretation' of ResumeLayout. MS seems to have a
10151 LAMESPEC, tried to do it in a way that makes sense
10153 2004-08-23 14:10 jordi
10155 * HScrollBar.cs, ScrollBar.cs, TrackBar.cs, VScrollBar.cs: fixes
10156 properties and methods
10158 2004-08-23 13:55 pbartok
10161 - Properly fixed Jordi's last fix
10162 - Now uses Cursor's Position property instead of calling XplatUI
10165 2004-08-23 13:44 jordi
10167 * PaintEventHandler.cs: Adding missing attribute
10169 2004-08-23 13:39 pbartok
10172 - Implemented Position property
10174 2004-08-23 13:39 pbartok
10176 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
10177 - Added method to move mouse cursor
10179 2004-08-23 13:39 pbartok
10182 - Fixed setting of background color
10183 - Added method to move mouse cursor
10185 2004-08-23 13:16 jordi
10187 * Control.cs: avoids null exception
10189 2004-08-22 17:46 jackson
10191 * PictureBox.cs, PictureBoxSizeMode.cs: Initial implementation of
10194 2004-08-22 17:40 jackson
10196 * XplatUIX11.cs: Add some missing locks
10198 2004-08-22 15:10 pbartok
10200 * Control.cs, Form.cs:
10201 - Removed OverlappedWindow style from Control, instead it's default
10203 - Made form windows OverlappedWindow by default
10205 2004-08-22 13:34 jackson
10207 * ScrollBar.cs: Update the position through the Value property so
10208 the OnValueChanged event is raised.
10210 2004-08-22 12:04 pbartok
10213 - Added Cursor.cs and UserControl.cs
10215 2004-08-22 12:03 pbartok
10218 - Started implementation, not usable yet
10220 2004-08-22 12:00 pbartok
10223 - Implemented UserControl (complete)
10225 2004-08-21 19:20 ravindra
10227 * ToolBar.cs: Correcting the formatting mess of VS.NET.
10229 2004-08-21 18:49 ravindra
10231 * ToolBar.cs: Probably this completes the missing attributes in
10234 2004-08-21 18:03 ravindra
10236 * ToolBar.cs, ToolBarButton.cs, ToolBarButtonClickEventArgs.cs:
10237 Fixed toolbar control signatures.
10239 2004-08-21 16:32 pbartok
10244 2004-08-21 16:30 pbartok
10249 2004-08-21 16:19 pbartok
10251 * Control.cs, Label.cs:
10254 2004-08-21 15:57 pbartok
10257 - Added loads of debug output for development
10258 - Fixed typo in method name
10260 2004-08-21 15:52 pbartok
10262 * ToolBarButtonClickEventArgs.cs:
10263 - Added missing base class
10265 2004-08-21 14:53 pbartok
10268 - Updated to match new GrabWindow signature
10270 2004-08-21 14:51 pbartok
10272 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
10273 - Added method to get default display size
10275 2004-08-21 14:23 pbartok
10277 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
10278 - Added method to query current grab state
10279 - Added argument to allow confining a grab to a window
10281 2004-08-21 14:22 pbartok
10284 - Added [Flags] attribute so that modifiers can be used in bitwise
10287 2004-08-21 14:21 pbartok
10289 * TrackBar.cs, ScrollBar.cs:
10290 - Replaced direct XplatUI calls with their Control counterpart
10292 2004-08-21 13:32 pbartok
10295 - Implemented Created property
10297 2004-08-21 13:28 pbartok
10300 - Implemented ContainsFocus
10302 2004-08-21 13:26 pbartok
10305 - Implemented CausesValidation
10307 2004-08-21 13:21 pbartok
10310 - Implemented CanFocus
10311 - Implemented CanSelect
10312 - Implemented Capture
10314 2004-08-21 12:35 pbartok
10317 - Fixed bug with Async message handling
10318 - Implemented getting the ModifierKeys
10320 2004-08-21 12:32 jackson
10322 * AsyncMethodResult.cs: Make sure we have the mutex before we
10323 release it. Fixes BeginInvoke on windows
10325 2004-08-21 11:31 pbartok
10327 * XplatUIWin32.cs, XplatUIX11.cs:
10328 - Drivers now return proper mouse state
10330 2004-08-21 10:54 jackson
10332 * Control.cs: Implement EndInvoke
10334 2004-08-21 10:48 jackson
10336 * Timer.cs: Remove unneeded finalizer
10338 2004-08-20 19:52 ravindra
10340 * ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs: Improvments
10341 in mouse event handling in the ToolBar control.
10343 2004-08-20 19:50 ravindra
10345 * ImageList.cs: Changed draw method to use the arguments passed in
10348 2004-08-20 18:58 pbartok
10350 * XplatUIStructs.cs:
10351 - Added private message for async communication
10353 2004-08-20 17:38 ravindra
10355 * Control.cs: Made RightToLeft property virtual and removed a
10358 2004-08-20 14:39 jordi
10360 * ThemeGtk.cs: use style_attach
10362 2004-08-20 14:39 pbartok
10365 - Added jackson's Async code from X11 to Win32
10367 2004-08-20 14:09 pbartok
10370 - Added all new files
10372 2004-08-20 14:09 pbartok
10375 - Added call to set window background color
10377 2004-08-20 14:03 pbartok
10379 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
10380 - Added method for setting the window background
10382 2004-08-20 14:02 pbartok
10385 - Added method for setting the background color
10386 - Added handling for erasing the window background
10388 2004-08-20 13:45 jordi
10390 * TrackBar.cs: fixes timer, new properties and methods
10392 2004-08-20 13:34 jackson
10394 * ScrollBar.cs: Use the SWF timer so callbacks are run in the
10397 2004-08-20 13:22 jackson
10399 * Timer.cs: Timer Tick events are now handed through Controls Async
10400 mechanism so the callbacks are executed in the same thread as X
10402 2004-08-20 13:19 jackson
10404 * XplatUIDriver.cs: Expose functionality to send async messages
10407 2004-08-20 13:18 jackson
10409 * Control.cs: Implement Begininvoke
10411 2004-08-20 13:14 jackson
10413 * XplatUI.cs, XplatUIWin32.cs: Expose functionality to send async
10414 messages through the driver
10416 2004-08-20 13:12 jackson
10418 * XplatUIX11.cs: Lock before all X operations. Also added Async
10419 method functionality through XSendEvent
10421 2004-08-20 13:11 jackson
10423 * X11Structs.cs: Use IntPtrs for ClientMessage extra data (TODO:
10424 This will screw up on 64 bit systems)
10426 2004-08-20 13:10 jackson
10428 * AsyncMethodData.cs, AsyncMethodResult.cs: Classes for sending
10429 Async messages through X/Win32
10431 2004-08-19 19:39 pbartok
10434 - Updated code to match new HandleData.DeviceContext type
10436 2004-08-19 19:38 pbartok
10439 - Made DeviceContext a generic object to allow usage from various
10441 - Added support for queueing Windows messages
10443 2004-08-19 19:37 pbartok
10446 - Added generation of MouseEnter, MouseLeave and MouseHover events
10447 - Added cleanup on EndPaint
10449 2004-08-19 19:17 pbartok
10452 - Added handling of WM_MOUSEHOVER
10453 - Worked around 'bug' in Win32 WM_MOUSE_ENTER/WM_MOUSE_LEAVE driver
10456 2004-08-19 18:55 jordi
10458 * ThemeGtk.cs: fixes button order
10460 2004-08-19 18:12 jordi
10462 * Theme.cs, ThemeWin32Classic.cs: fixes methods signature
10464 2004-08-19 17:09 pbartok
10467 - Added Right property
10468 - Added RightToLeft property
10470 2004-08-19 16:27 jordi
10472 * ThemeGtk.cs: experimental GTK theme support
10474 2004-08-19 16:26 jordi
10476 * ITheme.cs, Theme.cs: move themes from an interface to a class
10478 2004-08-19 16:25 jordi
10480 * Control.cs, ScrollBar.cs, ThemeEngine.cs, ThemeWin32Classic.cs:
10483 2004-08-19 16:04 pbartok
10486 - Added colormap basics
10487 - Added a way to re-initialize with a different display handle
10488 - Fixed setting of the window background color
10489 - Added various X11 imports related to colors and colormaps
10491 2004-08-19 15:51 pbartok
10494 - Removed packing hints (Paolo suggested this a while back)
10495 - fixed colormap type
10496 - Added default Atom types
10497 - Added Screen and color structs and enums
10499 2004-08-19 15:39 pbartok
10502 - Added missing Draw() method
10503 - Added missing RecreateHandle event
10505 2004-08-19 15:30 pbartok
10508 - Added handling of WM_CLOSE
10510 2004-08-18 13:16 jordi
10512 * ITheme.cs, ThemeWin32Classic.cs, XplatUIWin32.cs: Move colors to
10515 2004-08-18 09:56 jordi
10517 * ScrollBar.cs: fixes to scrollbar: steps and multiple timers
10519 2004-08-17 15:31 ravindra
10521 * SWF.csproj: Updated project.
10523 2004-08-17 15:25 pbartok
10526 - Drawing improvement; don't call UpdateBounds if we are not visible
10527 (or have been minimized)
10529 2004-08-17 15:24 pbartok
10532 - Finished IsVisible
10533 - Added Win32GetWindowPlacement
10535 2004-08-17 15:08 jackson
10537 * Panel.cs: Initial checkin of the Panel
10539 2004-08-17 14:25 pbartok
10542 - Fixed broken handling of default window sizes
10544 2004-08-17 13:29 jackson
10546 * ThemeWin32Classic.cs: Don't use KnownColor to create colours. It
10547 has a large startup time.
10549 2004-08-17 10:25 jackson
10551 * HandleData.cs: union areas properly
10553 2004-08-17 10:12 jackson
10555 * HandleData.cs: union areas properly
10557 2004-08-16 20:00 ravindra
10559 * ToolBar.cs, ToolBarButton.cs: Added attributes.
10561 2004-08-16 18:48 ravindra
10563 * ToolBar.cs: Added attributes.
10565 2004-08-16 17:17 ravindra
10567 * SWF.csproj: Updated project.
10569 2004-08-16 17:16 jackson
10571 * XplatUIX11.cs: Check for more expose events before sending a
10572 WM_PAINT so they can all be grouped together. This makes dragging a
10573 window across another window redraw in a sane way.
10575 2004-08-16 15:47 pbartok
10578 - Added handling of WM_MOUSE_ENTER & WM_MOUSE_LEAVE to
10579 support OnMouseEnter/Leave()
10580 - Added WS_CLIPSIBLINGS and WS_CLIPCHILDREN window styles to improve
10583 2004-08-16 15:46 pbartok
10585 * XplatUIStructs.cs, XplatUIX11.cs:
10586 - Added WM_MOUSE_ENTER & WM_MOUSE_LEAVE to support
10587 OnMouseEnter/Leave()
10589 2004-08-16 15:34 jackson
10591 * XplatUIX11.cs: Group multiple expose events in HandleData, make
10592 sure messages get the message field set to WM_NULL if they are not
10595 2004-08-16 15:24 jackson
10597 * HandleData.cs: HandleData is used for storing message information
10600 2004-08-15 17:23 ravindra
10602 * ColorDepth.cs: Added attribute.
10604 2004-08-15 17:23 ravindra
10606 * SWF.csproj: Updated project for ToolBar Control.
10608 2004-08-15 17:20 ravindra
10610 * ITheme.cs, ThemeWin32Classic.cs: Changes to Theme for ToolBar
10611 control and also dos2unix format.
10613 2004-08-15 17:13 ravindra
10615 * ToolBar.cs, ToolBarAppearance.cs, ToolBarButton.cs,
10616 ToolBarButtonClickEventArgs.cs,
10617 ToolBarButtonClickEventHandler.cs, ToolBarButtonStyle.cs,
10618 ToolBarTextAlign.cs: First Implementation of ToolBar control.
10620 2004-08-15 15:31 pbartok
10623 - First (mostly) working version
10625 2004-08-13 16:15 pbartok
10628 - Fixed Anchor default
10630 2004-08-13 15:43 pbartok
10633 - Changed GetCursorPos signature
10635 2004-08-13 15:42 pbartok
10637 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
10638 - Changed signature for GetCursorPos
10640 2004-08-13 15:25 pbartok
10644 - Fixed resizing/exposure handling
10646 2004-08-13 15:22 jordi
10648 * ThemeWin32Classic.cs: removes redundant code and fixes issues
10651 2004-08-13 14:55 jordi
10653 * TrackBar.cs: change from wndproc to events
10655 2004-08-13 13:00 jordi
10657 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10658 XplatUIX11.cs: implements PointToClient (ScreenToClient)
10660 2004-08-13 12:53 pbartok
10663 - Changed GetWindowPos to also provide client area size
10664 - Fixed broken prototypes for several win32 functions
10666 2004-08-13 12:53 pbartok
10668 * XplatUI.cs, XplatUIDriver.cs:
10669 - Changed GetWindowPos to also provide client area size
10671 2004-08-13 12:52 pbartok
10674 - Added generation of WM_POSCHANGED
10675 - Changed GetWindowPos to also provide client area size
10677 2004-08-13 12:52 pbartok
10680 - Added Dispose() and destructor
10681 - Fixed resizing and bounds calculation
10683 - Added memory savings for invisible windows
10685 2004-08-13 12:46 jordi
10687 * TrackBar.cs: adds timer and grap window
10689 2004-08-13 10:25 jackson
10691 * Timer.cs: SWF Timer
10693 2004-08-12 16:59 pbartok
10695 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
10696 - Implemented method to get current mouse position
10698 2004-08-12 14:29 jordi
10700 * ITheme.cs, ThemeWin32Classic.cs, TrackBar.cs: Trackbar
10701 enhancement, fix mouse problems, highli thumb, etc
10703 2004-08-12 13:31 pbartok
10706 - Fixed Anchoring bugs
10708 2004-08-12 13:01 jackson
10710 * StatusBar.cs: Don't forget things
10712 2004-08-12 12:54 jackson
10714 * ThemeWin32Classic.cs: Handle owner draw status bars
10716 2004-08-12 12:54 jackson
10718 * StatusBar.cs: Implement missing properties, events, and methods.
10719 Handle mouse clicking
10721 2004-08-12 10:19 jackson
10723 * StatusBarPanelClickEventArgs.cs,
10724 StatusBarPanelClickEventHandler.cs: Classes for handling status
10725 bar panel click events
10727 2004-08-12 10:10 jackson
10729 * Control.cs: Add missing properties
10731 2004-08-12 09:46 pbartok
10733 * BindingsManagerBase.cs:
10734 - Name changed to BindingManagerBase.cs
10736 2004-08-12 09:25 jordi
10738 * ScrollableControl.cs: calls ctrlbase instead of exeception
10740 2004-08-11 16:28 pbartok
10742 * InputLanguageChangingEventArgs.cs:
10743 - Never check in before compiling. Fixes the last check-in
10745 2004-08-11 16:26 pbartok
10747 * InputLanguageChangingEventArgs.cs:
10748 - More signature fixes
10750 2004-08-11 16:20 pbartok
10752 * BindingManagerBase.cs, BindingMemberInfo.cs, ContainerControl.cs,
10753 Control.cs, ControlEventArgs.cs, ControlPaint.cs, Form.cs,
10754 ImageListStreamer.cs, InputLanguage.cs,
10755 InputLanguageChangedEventArgs.cs,
10756 InputLanguageChangingEventArgs.cs, Keys.cs, LayoutEventArgs.cs,
10757 LinkArea.cs, Message.cs, MouseEventArgs.cs, NativeWindow.cs,
10758 ScrollEventArgs.cs, ScrollableControl.cs, XplatUI.cs,
10759 XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
10762 2004-08-11 16:16 pbartok
10766 - Added .Net 1.1 method
10768 2004-08-11 15:25 pbartok
10771 - Fixed BindingManagerBase.cs filename
10773 2004-08-11 15:22 pbartok
10775 * BindingManagerBase.cs:
10776 - Was checked in with wrong filename
10778 2004-08-11 14:50 pbartok
10783 2004-08-11 13:41 jordi
10785 * XplatUIWin32.cs: Fixes ClientRect
10787 2004-08-11 13:19 pbartok
10789 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10791 - We had SetWindowPos and MoveWindow to set window positions and
10792 size, removed MoveWindow. We have GetWindowPos, so it made sense to
10793 keep SetWindowPos as matching counterpart
10794 - Added some X11 sanity checking
10796 2004-08-11 12:59 pbartok
10799 - Major cleanup of my SetBounds/SetBoundsCore/UpdateBounds mess
10800 (It seems that SetBounds is just a front for SetBoundsCore and
10801 SetBoundsCore updates the underlying window system and
10802 UpdateBounds is responsible for updating the variables associated
10803 with the Control and sending the events)
10804 - Major cleanup of Size handling; we now have two sizes, client_size
10805 and bounds. Bounds defines the window with decorations, client_size
10808 2004-08-11 12:55 pbartok
10810 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
10811 - Added method to calculate difference between decorated window and
10814 2004-08-11 12:54 pbartok
10817 - Forcing redraw on resize
10819 2004-08-11 11:43 pbartok
10822 - Removed disposing of the actual images when the list is disposed
10824 2004-08-11 09:13 pbartok
10827 - Now properly reparents windows
10829 2004-08-11 08:37 pbartok
10834 2004-08-11 07:47 pbartok
10837 - Rewrote the collection stuff. Might not be as fast now, not
10838 keeping the number of children around and accessible directly, but
10839 it's more straightforward
10841 2004-08-11 07:44 pbartok
10843 * AccessibleObject.cs:
10844 - Fixed to match ControlCollection rewrite
10846 2004-08-11 07:43 pbartok
10849 - Added missing creation of the collection list
10851 2004-08-10 20:08 jackson
10853 * StatusBar.cs: Get the paint message from WndProc
10855 2004-08-10 19:31 jackson
10857 * ThemeWin32Classic.cs: Create Brushes as little as possible
10859 2004-08-10 19:20 jackson
10861 * UICues.cs: Add Flags attribute
10863 2004-08-10 19:19 jackson
10865 * StatusBarPanel.cs: Signature cleanup
10867 2004-08-10 19:10 jackson
10869 * StatusBarDrawItemEventArgs.cs, StatusBarDrawItemEventHandler.cs:
10870 Initial implementation of status bar item drawing
10872 2004-08-10 17:27 jordi
10874 * TrackBar.cs: add missing methods, properties, and restructure to
10877 2004-08-10 16:24 jackson
10879 * AccessibleStates.cs, Border3DSide.cs, Border3DStyle.cs,
10880 ButtonState.cs, ControlStyles.cs, DragDropEffects.cs: Add flags
10883 2004-08-10 13:21 jordi
10885 * ITheme.cs, ScrollBar.cs, ThemeWin32Classic.cs: scrollbar
10886 enhancements and standarize on win colors defaults
10888 2004-08-10 12:52 jackson
10890 * DrawItemEventArgs.cs, DrawItemState.cs, ITheme.cs,
10891 ThemeWin32Classic.cs: Implement DrawItem functionality
10893 2004-08-10 12:47 jordi
10895 * XplatUIWin32.cs: Calls InvalidateRect before UpdateWindow
10897 2004-08-10 12:32 jordi
10899 * Control.cs: throw ontextchange event
10901 2004-08-10 11:43 pbartok
10904 - Added more to the still unfinished Dock/Anchor layout code
10906 2004-08-10 11:39 pbartok
10908 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
10909 - Added GetWindowPos method
10911 2004-08-10 11:36 pbartok
10914 - Implemented several methods
10916 2004-08-10 09:47 jackson
10918 * TrackBar.cs: Allow control to handle buffering
10920 2004-08-10 09:41 jackson
10922 * ProgressBar.cs, ScrollBar.cs: Allow control to handle buffering
10924 2004-08-10 09:24 jackson
10926 * Label.cs, LinkLabel.cs: Let Control handle buffering.
10928 2004-08-10 09:09 jackson
10930 * StatusBar.cs: Let Control handle all the buffering.
10932 2004-08-10 09:08 jackson
10934 * Control.cs: Control will now handle the buffering code, so each
10935 control does not have to implement this.
10937 2004-08-10 08:34 jackson
10939 * XplatUIDriver.cs: Use default colors from the theme
10941 2004-08-09 17:12 pbartok
10944 - Fixed several bugs Ravindra pointed out
10946 2004-08-09 16:11 pbartok
10949 - Added incomplete dock layout code
10950 - Added support for mouse wheel
10952 2004-08-09 16:09 pbartok
10955 - Added handling for middle and right mousebutton
10956 - Added handling for mouse wheel
10957 - Added handling for key state and mouse state and position
10958 - Now properly generates WM_xBUTTONx messages and WM_MOUSEWHEEL
10961 2004-08-09 15:40 jackson
10963 * StatusBarPanel.cs, StatusBarPanelAutoSize.cs,
10964 StatusBarPanelBorderStyle.cs, StatusBarPanelStyle.cs: Initial
10967 2004-08-09 15:37 jackson
10969 * StatusBar.cs: Initial implementation of StatusBar
10971 2004-08-09 15:36 jackson
10973 * ITheme.cs: Add support for drawing status bar and getting status
10976 2004-08-09 15:35 pbartok
10981 2004-08-09 15:34 jackson
10983 * ThemeWin32Classic.cs: Add support for drawing status bar and get
10984 status bar item sizes
10986 2004-08-09 15:21 jackson
10988 * ThemeWin32Classic.cs: Use known colors for default control
10991 2004-08-09 15:12 jackson
10993 * ThemeWin32Classic.cs: Make the default font static, it is static
10994 in control so this doesn't change functionality and creating fonts
10997 2004-08-09 14:56 pbartok
11000 - Added GrabMode enum
11002 2004-08-09 14:55 pbartok
11004 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11005 - Removed Run method, was only required for initial development
11007 2004-08-09 14:51 pbartok
11009 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11010 - Implemented GrabWindow/ReleaseWindow methods to allow pointer
11013 2004-08-09 13:48 pbartok
11016 - Fixed default sizing for child windows
11018 2004-08-09 12:56 pbartok
11021 - Added generation of WM_DESTROY message
11022 - Added handling of window manager induced shutdown
11024 2004-08-09 11:31 jackson
11026 * ThemeWin32Classic.cs: New names for control properties
11028 2004-08-09 11:25 jackson
11030 * Control.cs: Use new color names
11032 2004-08-09 11:02 jackson
11034 * XplatUI.cs: Get default window properties from the theme
11036 2004-08-09 11:01 jackson
11038 * ITheme.cs: The theme engine now controls default window
11041 2004-08-09 11:00 jackson
11043 * ThemeWin32Classic.cs: Add default window color properties
11045 2004-08-09 10:17 jackson
11047 * ThemeWin32Classic.cs: Use correct default back color
11049 2004-08-09 10:05 jackson
11051 * XplatUIWin32.cs, XplatUIX11.cs: These properties are handled by
11054 2004-08-09 09:56 jackson
11056 * XplatUI.cs: Remove defaults, these are handled by the theme now.
11058 2004-08-09 09:54 jackson
11060 * Control.cs: Get default properties from the theme.
11062 2004-08-09 09:53 jackson
11064 * ITheme.cs: Themes now handle default control properties
11066 2004-08-09 09:53 jackson
11068 * ThemeWin32Classic.cs: Themes now handle default control
11069 properties so coloring will be consistent
11071 2004-08-08 16:54 jordi
11073 * ITheme.cs, ThemeWin32Classic.cs: Label BorderStyles
11075 2004-08-08 15:08 jordi
11077 * XplatUIX11.cs: fixes keyboard crash
11079 2004-08-08 13:47 jordi
11081 * Label.cs: add cvs header info
11083 2004-08-08 12:09 jackson
11085 * ThemeWin32Classic.cs: Add pen_buttonface
11087 2004-08-08 11:52 jordi
11089 * Label.cs, LinkLabel.cs: [no log message]
11091 2004-08-08 11:34 jordi
11093 * ThemeWin32Classic.cs: Use Windows Standard Colours
11095 2004-08-07 17:32 jordi
11097 * TrackBar.cs: throw exceptions of invalid enums values
11099 2004-08-07 17:31 jordi
11101 * Label.cs, LinkLabel.cs, ThemeWin32Classic.cs: fixes label bug and
11104 2004-08-07 16:56 jackson
11106 * HorizontalAlignment.cs: Initial checkin
11108 2004-08-07 13:16 jordi
11110 * Label.cs, LinkLabel.cs: throw exceptions, fixes events, missing
11113 2004-08-07 13:05 jordi
11115 * ITheme.cs, ThemeWin32Classic.cs: Theme colour support and
11116 GetSysColor defines
11118 2004-08-06 18:01 pbartok
11120 * ThemeWin32Classic.cs:
11121 - Fixed some rounding issues with float/int
11123 2004-08-06 18:00 jackson
11125 * DockStyle.cs, AnchorStyles.cs:
11127 Add flags and serializable attributes.
11129 2004-08-06 17:46 pbartok
11132 - Implemented GetParent
11134 2004-08-06 17:18 pbartok
11137 - Fixed some rounding issues with float/int
11139 2004-08-06 17:17 pbartok
11141 * X11Structs.cs, XplatUIX11.cs:
11142 - Fixed Refresh and Invalidate
11144 2004-08-06 15:30 pbartok
11146 * Control.cs, X11Structs.cs, XplatUIX11.cs:
11147 - Fixed recursive loop when resizing
11148 - Improved/fixed redrawing on expose messages
11150 2004-08-06 09:53 jordi
11152 * Control.cs, X11Structs.cs, XplatUIWin32.cs, XplatUIX11.cs: X11
11153 keyboard navigation
11155 2004-08-06 08:02 pbartok
11157 * X11Structs.cs, XplatUIX11.cs:
11158 - Fixed reparenting
11159 - Fixed window border creation
11161 2004-08-05 15:38 pbartok
11164 - Attempted fix for reparenting problems
11166 2004-08-04 15:14 pbartok
11169 - Fixed Invalidation bug (calculated wrong client area)
11170 - Added ClientSize setter
11172 2004-08-04 15:13 pbartok
11175 - Added AutoScale properties
11177 2004-08-04 15:13 pbartok
11180 - Added latest files
11182 2004-08-04 14:11 pbartok
11184 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
11186 - Added Invalidate handling
11188 2004-08-03 17:09 jordi
11190 * XplatUIDriver.cs: fixes spelling mistake
11192 2004-07-27 09:53 jordi
11194 * TrackBar.cs: fixes trackbar events, def classname, methods
11197 2004-07-27 09:29 jordi
11199 * ScrollBar.cs: fixes scrollbar events
11201 2004-07-27 04:38 jordi
11203 * Control.cs: changes to be able to run winforms samples
11205 2004-07-26 11:42 jordi
11207 * ControlPaint.cs, ITheme.cs, ProgressBar.cs, ScrollBar.cs,
11208 ThemeEngine.cs, ThemeWin32Classic.cs, TrackBar.cs: Theme support
11210 2004-07-26 05:41 jordi
11212 * MessageBox.cs, MessageBoxButtons.cs, MessageBoxDefaultButton.cs,
11213 MessageBoxIcon.cs, MessageBoxOptions.cs: initial messagebox
11216 2004-07-22 09:22 jordi
11218 * LinkLabel.cs, LinkLabelLinkClickedEventHandler.cs: link label:
11219 check link overlapping, implement events, and fixes
11221 2004-07-21 10:28 jordi
11223 * DialogResult.cs, IButtonControl.cs: fixes comments filenames
11225 2004-07-21 10:19 jordi
11227 * DialogResult.cs, IButtonControl.cs, Label.cs, LinkArea.cs,
11228 LinkBehavior.cs, LinkClickedEventArgs.cs, LinkLabel.cs,
11229 LinkLabelLinkClickedEventArgs.cs,
11230 LinkLabelLinkClickedEventHandler.cs, LinkState.cs,
11231 XplatUIWin32.cs, LinkClickedEventHandler.cs: LinkLabel control
11234 2004-07-19 13:09 jordi
11236 * Control.cs, Label.cs: label control re-written: added missing
11237 functionlity, events, and properties
11239 2004-07-19 10:49 jordi
11241 * Control.cs: fixes SetBounds logic
11243 2004-07-19 01:29 jordi
11245 * Control.cs: Call RefreshWindow only if the window has created
11247 2004-07-15 14:05 pbartok
11249 * ColorDepth.cs, ImageList.cs, ImageListStreamer.cs, SWF.csproj:
11250 - Implemented ImageList and ImageList.ImageCollection classes
11251 - Added ColorDepth enumeration
11252 - Updated SWF VS.Net project
11254 2004-07-15 11:06 jordi
11256 * XplatUIStructs.cs: added MsgButons enum
11258 2004-07-15 11:03 jordi
11260 * Control.cs: added basic mouse handeling events
11262 2004-07-15 03:38 jordi
11264 * Orientation.cs, TickStyle.cs, TrackBar.cs: Horizontal and
11265 Vertical TrackBar control implementation
11267 2004-07-13 09:33 jordi
11269 * HScrollBar.cs, VScrollBar.cs: vertical and hort. classes commit
11271 2004-07-13 09:31 jordi
11273 * Control.cs, Form.cs: commit: new properties and fixes form size
11276 2004-07-09 14:13 miguel
11278 * ProgressBar.cs: Spelling
11280 2004-07-09 11:25 pbartok
11283 - Removed usage of Rectangle for drawing. Miguel pointed out it's
11286 2004-07-09 11:17 miguel
11288 * ProgressBar.cs: 2004-07-09 Miguel de Icaza <miguel@ximian.com>
11290 * ProgressBar.cs: Fixed spelling for `block'
11292 drawProgressBar: renamed to `DrawProgressBar' to follow the coding
11295 Avoid using the += on rect.X, that exposed a bug in the compiler.
11297 2004-07-08 23:21 pbartok
11299 * AccessibleObject.cs, AccessibleRole.cs, AccessibleStates.cs,
11300 AnchorStyles.cs, Application.cs, ApplicationContext.cs,
11301 BaseCollection.cs, Binding.cs, BindingContext.cs,
11302 BindingMemberInfo.cs, BindingsCollection.cs,
11303 BindingsManagerBase.cs, Border3DSide.cs, Border3DStyle.cs,
11304 BorderStyle.cs, BoundsSpecified.cs, ButtonBorderStyle.cs,
11305 ButtonState.cs, CaptionButton.cs, CheckBox.cs,
11306 ContainerControl.cs, Control.cs, ControlEventArgs.cs,
11307 ControlEventHandler.cs, ControlPaint.cs, ControlStyles.cs,
11308 ConvertEventArgs.cs, ConvertEventHandler.cs, Copyright,
11309 CreateParams.cs, DockStyle.cs, DragAction.cs, DragDropEffects.cs,
11310 DragEventArgs.cs, DragEventHandler.cs, FlatStyle.cs, Form.cs,
11311 FrameStyle.cs, GiveFeedbackEventArgs.cs,
11312 GiveFeedbackEventHandler.cs, HelpEventArgs.cs,
11313 HelpEventHandler.cs, IContainerControl.cs, IDataObject.cs,
11314 IMessageFilter.cs, IWin32Window.cs, ImeMode.cs, InputLanguage.cs,
11315 InputLanguageChangedEventArgs.cs,
11316 InputLanguageChangedEventHandler.cs,
11317 InputLanguageChangingEventArgs.cs,
11318 InputLanguageChangingEventHandler.cs, InputLanguageCollection.cs,
11319 InvalidateEventArgs.cs, InvalidateEventHandler.cs,
11320 KeyEventArgs.cs, KeyEventHandler.cs, KeyPressEventArgs.cs,
11321 KeyPressEventHandler.cs, Keys.cs, Label.cs, LayoutEventArgs.cs,
11322 LayoutEventHandler.cs, MenuGlyph.cs, Message.cs, MouseButtons.cs,
11323 MouseEventArgs.cs, MouseEventHandler.cs, NativeWindow.cs,
11324 PaintEventArgs.cs, PaintEventHandler.cs, ProgressBar.cs,
11325 QueryAccessibilityHelpEventArgs.cs,
11326 QueryAccessibilityHelpEventHandler.cs,
11327 QueryContinueDragEventArgs.cs, QueryContinueDragEventHandler.cs,
11328 RightToLeft.cs, SWF.csproj, SWF.csproj.user, ScrollBar.cs,
11329 ScrollBars.cs, ScrollButton.cs, ScrollEventArgs.cs,
11330 ScrollEventHandler.cs, ScrollEventType.cs, ScrollableControl.cs,
11331 TODO, TODOAttribute.cs, UICues.cs, UICuesEventArgs.cs,
11332 UICuesEventHandler.cs, X11Structs.cs, XplatUI.cs,
11333 XplatUIDriver.cs, XplatUIStructs.cs, XplatUIWin32.cs,
11334 XplatUIX11.cs, lang.cs: