1 2006-03-30 Alexander Olk <alex.olk@googlemail.com>
3 * ThemeWin32Classic.cs: Updated MainMenu drawing of selected and
4 highlighted menu items to match ms
6 2006-03-30 Peter Dennis Bartok <pbartok@novell.com>
8 * XplatUIX11.cs: Don't set a clip rectangle unless it's not empty
10 2006-03-30 Mike Kestner <mkestner@novell.com>
12 * Menu.cs (SelectedItem): use new MenuItem.Selected prop.
13 * MenuAPI.cs: use new MenuItem.Selected prop. redraw MainMenu when we
14 go active to account for HotLight to Selected transition.
15 * MenuItem.cs: add internal Selected prop. Fill out the Status
16 property by calculating it from item info. Add HotLight,
17 NoAccelerator, Checked, Grayed, and Disabled flags where appropriate.
19 2006-03-30 Mike Kestner <mkestner@novell.com>
21 * MenuItem.cs: only emit DrawItem and MeasureItem for OwnerDraw.
23 2006-03-29 Peter Dennis Bartok <pbartok@novell.com>
25 * PrintPreviewDialog.cs: Implemented missing methods and events; still
26 missing proper dialog setup in the constructor
28 2006-03-29 Peter Dennis Bartok <pbartok@novell.com>
30 * ProgressBar.cs: Added 2.0 Style property that apps seem to use
32 - Implemented CheckForIllegalCrossThreadCalls, removed TODO
33 - Fixed ResetBindings and removed TODO
34 - Added check for cross-thread calls to get_Handle()
35 - Added Marshaller attribute for set_Font to satisfy class status
36 * FontDialog.cs: Removed TODOs that seemed implemented
37 * UpDownBase.cs: Removed unneeded TODO and Fixme
38 * MessageBox.cs: Implemented support for Default button and removed TODO
39 * FileDialog.cs: Removed obsolete TODO
40 * DomainUpDown.cs: Removed obsolete TODO
41 * ButtonBase.cs: Removed obsolete TODO
42 * XplatUIWin32.cs: Removed obsolete TODO
44 - Removed obsolete TODO
45 - Calling CheckAcceptButton when the acceptbutton is changed to allow
46 internal status updates
47 - Making sure the active control is selected when the control is created
48 * CurrencyManager.cs: Removed obsolete TODO
50 2006-03-29 Mike Kestner <mkestner@novell.com>
52 * *.cs: fix remaining corcompare issues for 1.1 API with the exception
53 of PrintPreviewDialog and RichTextBox.
55 2006-03-29 Alexander Olk <alex.olk@googlemail.com>
57 * Theme.cs: Added a little helper to SystemResPool to get the Dark,
58 DarkDark, Light and LightLight colors for a specific color
59 * ThemeWin32Classic.cs:
60 - Use Button drawing code to draw RadioButtons and CheckBoxes with
62 - Make use of the new ResPool helper CPColor
63 - Draw ProgressBar and StatusBar with correct 3D borders
65 2006-03-29 Alexander Olk <alex.olk@googlemail.com>
67 * ColorDialog.cs: Return selected color. Fixes bug #77940.
69 2006-03-28 Mike Kestner <mkestner@novell.com>
71 * ListView.cs: fix Icon layout to plan for scrollbar widths when
72 calculating col/row counts.
74 2006-03-28 Mike Kestner <mkestner@novell.com>
80 switch to explicit interface method implementation for some methods
81 corcompare identifies as inconsistent with MS.
83 2006-03-28 Mike Kestner <mkestner@novell.com>
87 add a few missing methods from the class status output.
89 2006-03-28 Alexander Olk <alex.olk@googlemail.com>
91 * ControlPaint.cs: Fixed ControlPaint.Light method. Results are now
94 2006-03-28 Mike Kestner <mkestner@novell.com>
96 * MenuAPI.cs: Deactivate on MainMenu item click. Fixes #77917.
98 2006-03-27 Mike Kestner <mkestner@novell.com>
100 * ThemeWin32Classic.cs: Switch flat toolbars to use RaisedInner for
101 the Hilight state to adapt to Alex's CPDrawBorder3D changes.
103 2006-03-27 Alexander Olk <alex.olk@googlemail.com>
105 * ThemeWin32Classic.cs: Rewrote Button drawing code to match ms.
107 2006-03-25 Alexander Olk <alex.olk@googlemail.com>
109 * ThemeWin32Classic.cs:
110 - GroupBox: Inserted a little gap between the text and the lines
112 - Made the code in CPDrawBorder3D more readable
113 - Corrected the drawing location of the up and down arrows in
116 2006-03-25 Alexander Olk <alex.olk@googlemail.com>
118 * ControlPaint.cs: Corrected line widths in DrawBorder for
119 ButtonBorderStyle Inset and Outset
121 2006-03-25 Alexander Olk <alex.olk@googlemail.com>
123 * ThemeWin32Classic.cs:
124 - Rewrote the totally broken CPDrawBorder3D method. That was
125 one of the main problems for the terrific ThemeWin32Classic
127 - Updated and corrected Button drawing
128 - Correct the dimensions of the SizeGrip to match ms ones
129 - Removed a small drawing glitch in DrawComboBoxEditDecorations
130 * XplatUIX11.cs: Draw borders with BorderStyle = Fixed3D with
131 Border3DStyle.Sunken to match ms.
133 2006-03-25 Alexander Olk <alex.olk@googlemail.com>
135 * ThemeWin32Classic.cs: First small part of the "de-uglify
136 ThemeWin32Classic" effort, SizeGrip
138 2006-03-24 Jackson Harper <jackson@ximian.com>
140 * XplatUIX11.cs: Give a max idle time of one second, this matches
141 MS and forces an Idle event every second when there are no other
144 2006-03-24 Mike Kestner <mkestner@novell.com>
146 * ListView.cs: Handle (Large|Small)ImageList == null more robustly.
147 * ListView.Item.cs: fix layout issues with null image lists and images
148 smaller than checkbox size.
149 * ThemeWin32Classic.cs: Draw a 12 pixel line in ListView LargeIcon
150 mode like MS does. It's weird, but consistent. ;-)
153 2006-03-24 Mike Kestner <mkestner@novell.com>
155 * ListView.cs: Scroll wheel support for the item control. Fixes
158 2006-03-23 Jackson Harper <jackson@ximian.com>
160 * ScrollableControl.cs: Special case negative sized areas, not
162 * MonthCalendar.cs: Save the rect of the clicked date so we can
163 use it for invalidation.
164 - Try to cut down on the number of invalidates
165 - Invalidate the rect the mouse is over and was over when moving
166 the mouse, so we get the focus box following the cursor.
168 2006-03-23 Mike Kestner <mkestner@novell.com>
170 * ThemeWin32Classic.cs: fix FullRowSelect selection background and
171 focus rectangle drawing. Fixes #77835.
173 2006-03-23 Mike Kestner <mkestner@novell.com>
175 * XplatUIX11.cs: rework the fix for #77828 by changing the order of
176 the if and else if and reverting back to the original == check on the
179 2006-03-23 Alexander Olk <alex.olk@googlemail.com>
181 * FontDialog.cs: Update the example panel if the selected index of
182 the fontListBox changes.
184 2006-03-23 Alexander Olk <alex.olk@googlemail.com>
186 * FileDialog.cs: Make FileDialog remember which directory it was in
187 last in the same execution.
189 2006-03-22 Mike Kestner <mkestner@novell.com>
191 * FileDialog.cs: make the DropDownMenu on the toolbar display
192 RadioChecks since they are mutually exclusive and that's what MS does.
194 2006-03-22 Mike Kestner <mkestner@novell.com>
196 * Theme.cs: add Color param to CPDrawMenuGlyph.
197 * ThemeWin32Classic.cs: do color specific menu glyph rendering so that
198 checks and radio marks and arrows are visible on highlighted items.
199 * ControlPaint.cs: update to use new Theme signature.
201 2006-03-22 Mike Kestner <mkestner@novell.com>
203 * MenuAPI.cs: only process Enter and arrow keypresses if the tracker
204 is active. Fixes #77870.
206 2006-03-22 Alexander Olk <alex.olk@googlemail.com>
208 * FileDialog.cs: Corrected TabIndex order and set fileNameComboBox
209 to be focused/selected after startup
211 2006-03-22 Alexander Olk <alex.olk@googlemail.com>
214 - Corrected behaviour of Color, AllowFullOpen, FullOpen,
215 CustomColors and ShowHelp properties
216 - Some internal rewrites to get better results when using the
219 2006-03-22 Mike Kestner <mkestner@novell.com>
221 * ListView.cs: hook into Peter's new ResetMouseHover capability to fix
222 HoverSelection. Fixes #77836.
224 2006-03-22 Mike Kestner <mkestner@novell.com>
226 * FileDialog.cs: bugfixes for the toolbar. Use PushButtons instead of
227 ToggleButtons. (De)Sensitize the Back button around a stack count of
228 1, not 0. Update ButtonSize based on a pixel count of the win32
229 control. Adjust the toolbar size/location for new button size.
231 2006-03-22 Jackson Harper <jackson@ximian.com>
233 * XplatUIX11.cs: Don't handle configurenotifys if PostQuitState is
235 * ScrollBar.cs: When doing increments and decrements we need to
236 set the Value property so that ValueChanged gets raised. A
237 possible optimization here would be to make an internal SetValue
238 that doesn't invalidate immediately.
239 * ToolTip.cs: Tooltips get added to their container (when
240 supplied) so they get disposed when the container is disposed.
241 - Don't create tooltips for String.Empty. This prevents all these
242 little 2-3 pixel windows from showing up when running nunit-gui
244 * Form.cs: Don't set topmost when setting the owner if the handles
245 haven't been created yet. The topmost set will happen when the
248 2006-03-22 Peter Dennis Bartok <pbartok@novell.com>
251 - DeriveWindowStyles: Fixed typo in borderstyle generation (#77828)
252 - SetVisible: Sending WINDOWPOSCHANGED for all controls when made
253 visible (to allow them to recalculate their sizes)
255 2006-03-21 Mike Kestner <mkestner@novell.com>
257 * ThemeWin32Classic.cs: major refactoring of the ToolBar rendering
258 methods. Removed a ton of redundant code. Still not really happy with
259 the border rendering, but I think that's mainly because of the
260 ControlDarkDark being black instead of a dark grey. Depending on how
261 close we want to be, we might want to revisit those color choices.
262 Among the new features added during the refactor were DropDownArrow
263 pressed rendering, Disabled image rendering. Proper flat appearance
264 boundary rendering. Removed the Divider and Wrapping dividers since I
265 can't figure out any combination of themes and conditions to make the
266 MS control draw a horizontal line on a toolbar despite what the
267 Divider property docs indicate.
268 * ToolBar.cs: rewrite the layout engine. Fixes numerous flicker
269 conditions and incorrect layout. Updated to coding standard.
270 * ToolBarButton.cs: refactored layout and positioning code from
271 ToolBar to here. Invalidate wherever possible instead of forcing
272 redraws of the whole toolbar.
273 (Known remaining issues: explicit ButtonSize smaller than provided
276 2006-03-21 Mike Kestner <mkestner@novell.com>
278 * ContextMenu.cs (Show): use the position parameter instead of just
279 showing at the MousePosition.
282 2006-03-21 Jackson Harper <jackson@ximian.com>
284 * TabControl.cs: Remove the call to ProcessKeyEventArgs and let
286 * TreeNodeCollection.cs: If we are clearing the root node we need
287 to reset top_node so calcs can still happen.
288 * ThemeWin32Classic.cs: This is a Flags so we need to check
291 2006-03-21 Jackson Harper <jackson@ximian.com>
293 * DataGrid.cs: Create columns when the binding context has been
295 * X11Structs.cs: Keysyms are uints.
296 - Add size to fix build.
298 2006-03-21 Peter Dennis Bartok <pbartok@novell.com>
300 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
302 - Added ResetMouseHover method to allow controls to retrigger
303 hovering if they need it more than once
304 - Implemented MouseHoverTime and MouseHoverSize properties
305 * Timer.cs: Start() must reset the interval
306 * SystemInformation.cs: Added 2.0 MouseHoverTime and MouseHoverSize
309 2006-03-21 Jackson Harper <jackson@ximian.com>
311 * X11Keyboard.cs: improved layout detection. Move the nonchar
312 tables into this file.
313 * KeyboardLayouts.cs: Move the tables into resource files.
315 2006-03-21 Mike Kestner <mkestner@novell.com>
317 * ListView.cs: use OnItemActivated to raise events. Fixes #77834.
319 2006-03-21 Alexander Olk <alex.olk@googlemail.com>
321 * Mime.cs: Various speed optimizations. Looking up mime types
322 is now 2 times faster than before
324 2006-03-17 Peter Dennis Bartok <pbartok@novell.com>
326 * CreateParams.cs: Added internal menu field
328 - Switched call order for UpdateBounds; now we always call
329 the one that also takes ClientSize, and we're calculating the
330 client size via driver method in the others. The previous
331 method of tracking client size by difference wasn't working
332 for forms where even the starting client size wouldn't match
333 the overall form size (due to borders) (Part of fix for #77729)
334 - CreateParams(): Do not use parent.Handle unless the handle is
335 already created. Causes havoc with Nexxia and throws off our
338 - Created new PerformNCCalc method to trigger WM_NCCALCSIZE message
339 - Switched handling of ConfigureNotify over to new PerformNCCalc
340 method (consolidates code)
341 - Changed RequestNCRecalc to use new PerformNCCalc method
342 - Added calls to RequestNCRecalc when menus and borders are changed
343 to allow app to set NC size. (Part of fix for #77729) This matches
344 when MS send a WM_NCRECALC on Win32 windows.
345 - Now sending WM_WINDOWPOSCHANGED when toplevel for is made visible
346 (Part of fix for #77729). This matches what MS does, they also
347 send that message when the form is made visible.
348 - XException.GetMessage: Improved usability of X errors by including
349 a translation of the window into Hwnd and Control class
350 - Improved debug info for window creation, reparenting and destruction
351 - Created helper method WindowIsMapped() [Currently not used]
352 * XplatUIWin32.cs: Added ToString() debug helper to RECT structure
354 - CreateParams: Now setting our menu on the new internal menu field
355 - SetClientSizeCore: Now passing cp.menu instead of ActiveMenu to
356 avoid calculating the same property twice
358 - Improved usability of ToString() for debugging purposes
359 - GetWindowRectangle(): Now uses proper CalcMenuBarSize method to
360 determine the height of the menu, instead of just the font. This
361 required to also create a graphics context and to keep a bmp
362 around (for performance reasons)
364 2006-03-17 Peter Dennis Bartok <pbartok@novell.com>
366 * MenuAPI.cs: Added OnMouseUp method
368 - Now remembering the requested client size, avoids size errors
369 - WndProc: Now handling WM_xBUTTONUP and passing it to MenuTracker
370 instead of base if the menu is active. This is required due to
371 control now capturing and releasing on down/up and it would
372 prematurely release our menu capture
374 2006-03-17 Jackson Harper <jackson@ximian.com>
376 * KeyboardLayouts.cs: Add the czech layouts.
378 2006-03-16 Jackson Harper <jackson@ximian.com>
380 * Control.cs: Use the viewport space when sizing not the controls
381 client size, so things like ScrollableControl that effect the
382 viewport size (when scrollbars are added) are computed correctly.
383 * BindingContext.cs: Cleanup to use the DataSourceEntrys instead
385 - Handle creating BindingManagers for null data sources.
386 * DataGrid.cs: Bind the cached_currencymgr_events to the real data
387 source, otherwise when rows are added they are added to the 'fake'
388 datasource and we will crash when trying to set the position in
390 - Use Implicit scrollbars on the datagrid so they arent
393 2006-03-16 Jackson Harper <jackson@ximian.com>
396 * InternalWindowManager.cs:
397 * MdiWindowManager.cs:
398 * X11Keyboard.cs: I really want Mike to love me again (fix
401 2006-03-16 Peter Dennis Bartok <pbartok@novell.com>
404 - OnMouseDown: Switch to editing mode when clicking on the cell
405 even if we're clicking on the cell that's currently
407 - ProcessGridKey: Left/Right now wrap like MS.Net does
408 - ProcessGridKey: Tab now knows to add a new row when tab is
409 pressed in the cell of the last column of the
411 - ProcessGridKey: Enter now adds another row if pressed in the last
412 row and selectes the new row, same column cell
413 - ProcessGridKey: Home/End navigate columns, not rows, like
414 originally implemented
415 - Broke ProcessKeyPreview code out into an extra Internal method
416 so it can be called from the edit code
417 * DataGridTextBox.cs (ProcessKeyMessage):
418 - Switched to accept Tab keypresses
419 - Added F2 handling to allow jumping to the end of the edited cell
420 - Added logic to allow moving caret left/right inside edited cell
421 and making the edited cell jump when the caret hits cell borders
422 - Tab and Enter are now passed to the datagrid after being handled
424 - Removed capture code now that Control handles it
425 - set_SelectionStart now ensures caret is visible
427 2006-03-16 Jackson Harper <jackson@ximian.com>
429 * TrackBar.cs: Debackwards the increment/decrement for handling
430 mouse clicks on the bar with vertical trackbars.
431 * ThemeWin32Classic.cs: Draw vertical trackbars with 0 at the
434 2006-03-16 Mike Kestner <mkestner@novell.com>
436 * ListView.cs: make shift/ctrl keyboard and mouse selection
437 consistent with the MS control. Fix a bug in
438 SelectedListViewItemCollection.Clear that was pissing me off for the
439 better part of a day because the collection was being altered
440 underneath us as we walked the list.
442 2006-03-16 Peter Dennis Bartok <pbartok@novell.com>
444 * Control.cs: Not sure how we could miss this so long, but it seems
445 that MS.Net has Capture set all the way from before calling
446 OnMouseDown through sending the mouse events until after
447 OnMouseUp. This will fix DataGrid's selection being set to end
448 at the location of the MouseUp.
450 2006-03-15 Jackson Harper <jackson@ximian.com>
452 * BindingContext.cs: Check the binding after its added so that it
453 can initialize the binding managers and hookup to events.
454 * Binding.cs: Data members seem to sometimes include rows/cols in
455 the format Row.Column we now take this into account.
456 - Hookup to the position changed event so we can update the
457 control when the position has changed in the data set.
458 * CurrencyManager.cs: Take into account the row/col naming
459 convention when creating dataset tables.
460 * BindingContext.cs: Using a newer better way of storing
461 datasource/datamember pairs. Hopefully this better matches MS for
462 looking up binding managers.
465 2006-03-15 Jackson Harper <jackson@ximian.com>
467 * BindingContext.cs: The currency manager needs the data member
468 name, if the member is a data set we use the name to find the
470 * CurrencyManager.cs: When creating the list prefer an IList over
472 - Attempt to create a DataTable from a DataSet (TODO: might need
473 some better error checking here, although MS doesn't seem to have much)
474 - If we have a DataTable create a view and use it as our list.
476 2006-03-15 Mike Kestner <mkestner@novell.com>
478 * ListView.cs: keep a matrix of the icon mode layout to facilitate
479 keyboard navigation. Support Up/Down/Left/Right selection correctly
480 for all 4 View modes.
481 * ListViewItem.cs: add internal row/col fields for icon layouts.
483 2006-03-15 Jackson Harper <jackson@ximian.com>
485 * TabControl.cs: Redraw the tabs when we resize so their newly
486 calculated sizes are drawn on screen.
487 * X11Keyboard.cs: Begginnings of XIM support. We also now support
488 composite characters.
489 * XplatUIX11.cs: Keyboard driver needs to know about focus changes
490 - filter events so that composite characters can be created
492 * X11Structs.cs: Add XIMProperties enum.
494 2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
496 * Control.cs (BringToFront, SendToBack): Don't use window or handle
499 2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
501 * Control.cs (PerformLayout): We don't need to consider visiblity
502 for anchoring, only for docking. This fixes 'whacky' alignment
503 in listbox and other controls that use implicit scrollbars after
504 the previous PerformLayout patch
505 * ListBox.cs: Switched to use implicit scrollbars
507 2006-03-14 Mike Kestner <mkestner@novell.com>
511 - chain up the "new event" overrides to base and use
512 OnEvent to raise them. Part of fix for bug #76509.
514 2006-03-14 Alexander Olk <alex.olk@googlemail.com>
516 * FileDialog.cs: Do not select an item in the parent directory
519 2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
521 * Control.cs (PerformLayout): It would seem that we considered
522 invisible windows for our layout. Not quite the right thing
523 to do. Now we don't any longer, thereby fixing bug #76889.
525 2006-03-14 Peter Dennis Bartok <pbartok@novell.com>
527 * Control.cs (CanFocus): I goofed. A control can have focus
528 even though it's not selectable. Made it match MS docs.
530 2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
532 * ControlPaint.cs (DrawBorder3D): DrawBorder3D does not fill the
533 center by default (fixes #76895)
534 * ThemeWin32Classic.cs, ThemeNice.cs, ThemeClearlooks.cs: Replaced
535 all uses of Border3DSides.All with the explicit ORd together
536 Left|Right|Top|Bottom because I assume that nobody was aware
537 that All also implies a center fill. Most places I checked had
539 * ProgressBarStyle.cs: Added
541 2006-03-13 Mike Kestner <mkestner@novell.com>
543 * ListView.cs: fix breakage in drag shadow header positioning
544 from Peter's csc compilation fix.
546 2006-03-13 Mike Kestner <mkestner@novell.com>
548 * ListView.cs: fix NRE produced by backspacing twice in a focused
551 2006-03-13 Mike Kestner <mkestner@novell.com>
553 * ListView.cs: proxy Key(Down|Up) from ItemControl to ListView.
555 2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
557 * Hwnd.cs: Added fixed_size field to track windows whose size cannot
559 * XplatUIX11.cs: Now setting fixed_size on hwnd and if set, re-setting
560 the allowed size before making programmatic size changes
562 2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
564 * XplatUIX11.cs: Don't call XSetWMNormalHints if no flags are
565 set, metacity is broken and will still use the emty sizes in
566 the struct. (Fix for #77089)
568 2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
570 * XplatUIStructs.cs: Split WindowStyles into WindowStyles and
571 WindowExStyles and marked both enums as Flags
572 * Form.cs, ComboBox.cs, ToolTip.cs, Control.cs, PropertyGridView.cs,
573 NotifyIcon.cs, MenuAPI.cs, XplatUIOSX.cs, MonthCalendar.cs: Updated
574 to match WindowStyles split
576 - SetWMStyles: Added cehck to not apply WM attributes to Child windows
577 - Updated to match WindowStyles split
579 - Fixed FosterParent creation, was using ExStyle on the Style field
580 (This should help with Popup focus issues)
581 - Updated to match WindowStyles split
583 2006-03-13 Jackson Harper <jackson@ximian.com>
585 * MdiWindowManager.cs: Use the system menu height. Fixes some
586 strange sizing issues.
588 2006-03-12 Peter Dennis Bartok <pbartok@novell.com>
590 * RichTextBox.cs: Need to scroll to caret after text is inserted (#77672)
592 - Scroll to caret after inserting text (#77672)
593 - Make scroll range one pixel higher, fixes off-by-one error (and
594 makes underlines visible on the last line)
596 2006-03-12 Peter Dennis Bartok <pbartok@novell.com>
598 * XplatUIX11.cs: Added call to new Keyboard.ResetKeyState to prevent
599 the keyboard state from being stuck with keys in 'pressed' state when
600 focus is switched away via keyboard
601 * X11Keyboard.cs: Added new ResetKeyState method to allow drivers to
602 reset the keyboard if no X11 KeyUp events are expected to come
603 * X11Structs.cs: Switched type of Visible to bool to match driver
605 2006-03-12 Peter Dennis Bartok <pbartok@novell.com>
608 - Switched caret to be just 1 pixel wide, matches MS and looks less
610 - Moved caret display 1 pixel down from the top of the control
612 - InsertCharAtCharet: Update the selection start if moving the caret
613 (fixes bug #77696; based on patch suggested by kazuki@panicode.com)
614 - No longer always creating the caret when the caret methods are
615 called. Only the actual ShowCaret/HideCaret will do that now
616 - Only setting caret visible if the owner control has focus
617 - UpdateView: Added invalidation-shortcut logic for center and right
618 aligned text. Previously we'd update all according to the left
619 logic which caused drawing errors. Also fixed height of invalidated
620 areas, now properly invalidating the whole area (was off-by-one)
621 - owner_HandleCreated: Always generate the document when the
622 handle is created; this ensures that
624 - Fixed situation where caret would disappear under the right
625 window border, also improved scrolling behaviour on left-
627 - Fixed right-aligned textboxes to have a border to the
628 right instead of the caret being under the right border
630 - Switched from 'nested' to simple visible/not visible tracking
631 for caret (part of fix for #77671)
632 - No longer passing through translated FocusIn/FocusOut messages
633 since we were notifying too often and the wrong windows. Instead
634 we just notify our focussed window of receiving or loosing focus
635 * XplatUIWin32.cs: Switched from 'nested' show/hide
636 counting for caret to simple visible yes/no behaviour (part of
639 2006-03-11 Alexander Olk <alex.olk@googlemail.com>
641 * Mime.cs: Remove debug code...
643 2006-03-11 Alexander Olk <alex.olk@googlemail.com>
645 * MimeGenerated.cs: Removed
646 * Mime.cs: Mime now reads the mime data (magic, globs, aliases
647 and subclasses) from /usr/(local/)share/mime and
648 $HOME/.local/share/mime.
650 2006-03-10 Jackson Harper <jackson@ximian.com>
652 * MdiWindowManager.cs: Recalc the NC area when a window is
653 maximized/restored so that the menu area is drawn on forms that
656 2006-03-10 Peter Dennis Bartok <pbartok@novell.com>
658 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
659 XplatUIX11.cs: Added RequestNCRecalc method to driver to allow
660 us to force a WM_NCCALCRESIZE message being sent. This is needed
663 2006-03-10 Jackson Harper <jackson@ximian.com>
665 * Form.cs: We need to use the ActiveMenu when calculating menu
667 - Fix nullref when the window manager hasn't been created yet.
668 * Control.cs: Fix nullref when we try to bring a control to the
669 front that has no parent.
670 * MdiWindowManager.cs: Use the MaximizedMenu for calculating
672 - Add a dummy item to the maximized menu so it always has the
673 correct height. Otherwise when there are no menus we don't get our
677 2006-03-10 Jackson Harper <jackson@ximian.com>
679 * MenuAPI.cs: Make this available elsewhere. I need it in some MDI
681 * Form.cs: Make the window_state internal so the window managers
683 - When an MDI child is maximized let its window manager create the
684 main menu (so it can add its icon).
685 - Notify the window managers of state changes
686 - Let the window manager paint its buttons and handle button
687 clicks on the menu when it is maximized.
688 * InternalWindowManager.cs: Move the prev_bounds into the mdi
689 window manager, since tool windows don't use it, only mdi windows.
690 - Tell the main form that we don't want it to handle NCPAINT
691 itself to avoid extra painting.
692 - Handle clicks on a maximized windows menu.
693 - Handle window state changes
694 - Handle minimize/maximize clicks correctly by setting the window state.
695 * MdiWindowManager.cs: Add an icon menu that (the menu you get
696 when clicking on the forms icon).
697 - New method to create a forms maximized menu. This is its normal
699 - Handle window state changes.
700 - Handle sizing of maximized windows. Maximized windows are just
701 drawn bigger then the parent visible area. All controls are still
702 there, they are just outside the visible area (this matches windows).
703 * MdiClient.cs: No scrollbars when a child window is maximized.
704 - Let the children windows figure out how big they should be when
705 sizing maximized windows.
706 - Implement a version of ArrangeIconicWindows somewhat similar to
707 Windows version. There are some little differences, but I don't
708 think any app will rely on the layout of minimized mdi windows.
710 2006-03-10 Peter Dennis Bartok <pbartok@novell.com>
712 * Padding.cs: Several fixes to allow compiling with csc 2.0
714 2006-03-09 Jackson Harper <jackson@ximian.com>
717 * MenuItem.cs: Cheap hack so we can add items to the list without
718 the events being raised. This allows adding mdi items during
719 drawing. TODO: Should probably find a better time to add the items.
721 2006-03-10 Peter Dennis Bartok <pbartok@novell.com>
723 * ThemeWin32Classic.cs:
724 - CheckBox_DrawText: Added logic to not wrap if not enough space
725 is available (Fix for bug #77727)
726 - RadioButton_DrawText: Added logic not to wrap if not enough
727 space is available (Fix for bug #77727). Also removed some
728 duplicate code, DrawString always drawing the regular text
729 before hitting the if statement.
731 2006-03-10 Peter Dennis Bartok <pbartok@novell.com>
733 * XplatUIX11.cs: Handle an unmapped window state in SetWindowState
735 2006-03-10 Peter Dennis Bartok <pbartok@novell.com>
737 * PictureBox.cs: Implemented ISupportInitialize interface (fixes #77726)
738 * ContainerControl.cs: Partial implementation of some 2.0 scaling
739 methods. Moved the new 2.0 properties into alphabetical order with
740 other properties and added MonoTODO tags
742 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
744 * AutoScaleMode.cs: Added. Fix build.
746 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
748 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
749 XplatUIOSX.cs: Removed HWnd argument from CalcuateClientRect, not used
750 and was requiring premature handle creation for calls from above
751 * Form.cs, Control.cs: Removed handle arguments from calls to
752 CalculateClientRect()
754 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
756 * ListView.cs (HeaderMouseMove): Fix csc compilation.
757 drag_column.column_rect is MarshalByRef and can't be used that way
759 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
761 * AxHost.cs: Added deserialization constructor for
762 AxHost+State (fixes 77743)
764 2006-03-09 Mike Kestner <mkestner@novell.com>
767 - Added column drag reordering for details view.
768 - fixed behavior when mouse is dragged off column and
769 AllowColumnReorder is false.
770 * ColumnHeader.cs: clone the format too in Clone.
771 * Theme.cs: add DrawListViewHeaderDragDetails method.
772 * ThemeWin32Classic.cs:
773 - impl new method for drawing drag column shadows and targets.
774 - support column offset for details mode in DrawListViewItem.
776 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
778 * TextControl.cs: Reset the char_count when the document is cleared
779 (Fixes bug reported on mono-winforms mailing list)
781 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
783 * TextBoxBase.cs: Honor the Handled state of KeyPress events. Instead
784 of calling base we simply process the key ourselves, since both
785 DefWindowProc and the handled method would set m.Result.
788 2006-03-09 Peter Dennis Bartok <pbartok@novell.com>
790 * Form.cs(ScaleCore): No longer calling base.ScaleCore since that
791 method also moves the window; instead implemented a copy of
792 Control.ScaleCore (Part of fix for #77456)
794 - Created new CreateGraphicsInternal method to allow providing
795 a graphics context when no handle is created without triggering
796 handle creation. (Part of fix for #77456)
797 - Replaced use of Control.CreateGraphics with CreateGraphicsInternal
799 - Switched Constructor to require TextBoxBase instead of Control (to
800 allow uncast access to CreateGraphicsInternal)
801 - Safeguarded use of owner.Handle property. No longer accessing it
802 unless the handle is already created.
803 - Replaced use of Control.CreateGraphics with CreateGraphicsInternal
804 - Now triggering a recalc when owning control becomes visible
805 * TextBox.cs, RichTextBox.cs: Switched to use new internal
806 TextBoxBase.CreateGraphicsInternal() method to avoid triggering
807 premature handle creation (Part of fix for #77456)
809 - We now only destroy our double-buffering buffers when the
810 control is resized or disposed, but not when visibility
811 changes. (The code even re-created them twice every time)
812 - Now requiring a redraw of the buffer on visibility changes
813 (fixes bug 77654 part 2)
814 - Not passing OnParentVisibleChanged up unless the control
816 - CanFocus: Fixed to match MS documentation
817 - Focus: Fixed to return actual focus state and to check if
818 setting focus is legal before setting it
820 2006-03-08 Peter Dennis Bartok <pbartok@novell.com>
822 * ThemeWin32Classic.cs: TabPages cannot have focus. Determine
823 when to draw focus rectangle by looking at parent focus and
824 selected state instead. This fixes TabPages on Linux sometimes
825 having none or multiple focus rectangles.
826 * XplatUIX11.cs (SetFocus):
827 - Don't set the focus if the same window already has focus
828 - Use SendMessage instead of PostMessage (like it's Win32
829 equivalent) and send the WM_SETFOCUS before the WM_KILLFOCUS
830 to match MS behaviour
831 * TabControl.cs(SelectedIndex): Don't set Focus on TabPage, TabPages
834 2006-03-07 Jackson Harper <jackson@ximian.com>
836 * PictureBox.cs: Revert line I accidently committed last week.
838 2006-03-07 Peter Dennis Bartok <pbartok@novell.com>
841 - Added new IsRecreating and ParentIsRecreating properties to
842 allow testing if RecreateHandle has been called on ourselves
843 or one of our parents
844 - WndProc(WM_DESTROY): If our control handle is being recreated
845 we immediately need to create the handle when receiving the
846 destroy, that way our child windows find a valid parent handle
847 when they themselves are being recreated upon WM_DESTROY receipt
848 (fix for bug #77654 part 1)
850 - DestroyWindow: WM_DESTROY must be sent to our own window before
851 notifying any child windows. MS documents that child windows
852 are still valid when WM_DESTROY is received. (Control now relies on
854 - Added some fine-grain debug options
856 2006-03-06 Jackson Harper <jackson@ximian.com>
858 * MdiClient.cs: Redid scrolling logic a bit to create a virtual
859 box and base calculations off this.
860 * MdiChildContext.cs:
861 * MdiWindowManager.cs: Don't need to ensure scrollbars here
864 2006-03-06 Peter Dennis Bartok <pbartok@novell.com>
866 * Splitter.cs: In situations where the affected control is added
867 to the parent's control list after the splitter, we would not
868 populate affected. Now we try populating it on mousedown, if
869 it's not already set, and force it to be re-set whenever our
872 2006-03-03 Matt Hargett <matt@use.net>
874 * Control.cs: implement Control.Padding
875 * Padding.cs: -Padding.All returns -1 when constructing with the
876 implicit default ctor
877 -Padding.ToString() matches MS.NET
878 * ContainerControl.cs: implement
879 ContainerControl.AutoScaleDimensions
880 * ListControl.cs: implement ListControl.FormattingEnabled
881 * TextBox.cs: Implemented TextBox.UseSystemPasswordChar.
883 * TabPage.cs: Implement UseVisualStyleBackColor.
884 * PictureBox.cs: Implement PictureBox.InitialImage.
886 2006-03-03 Mike Kestner <mkestner@novell.com>
888 * ListView.cs: Refactor into HeaderControl and ItemControl. Fix new
889 event declarations to proxy to base event.
890 * ListViewItem.cs: update to use ItemControl.
891 * Theme.cs: make DrawListViewHeader. s/DrawListView/DrawListViewItems.
892 * ThemeWin32Classic.cs: update to new ListView theme API and fix
893 column header label rendering for 0 width columns.
895 2006-03-03 Peter Dennis Bartok <pbartok@novell.com>
897 * Control.cs (ControlCollection.SetChildIndex): Avoid using a call
898 that causes the control to be created. Fixes #77476.
900 2006-03-02 Jackson Harper <jackson@ximian.com>
902 * Hwnd.cs: Clear the nc pending when clearing the NC area, not the
905 2006-03-02 Peter Dennis Bartok <pbartok@novell.com>
907 * Control.cs: Implemented 2.0 feature where OnClick has MouseEventArgs
908 passed in for the EventArgs (fixes #77690)
910 2006-03-01 Jackson Harper <jackson@ximian.com>
912 * ScrollBar.cs: Refresh afterbeing resized.
914 2006-02-28 Mike Kestner <mkestner@novell.com>
916 * MenuAPI.cs: Call PerformPopup internal method to emit Popup.
917 Clean up a tracker compile warning.
918 * MenuItem.cs: add internal PerformPopup method.
921 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
923 * TextBoxBase.cs (set_Text): Recalculate the document (causing an
924 implicit expose) when the text is set to null
926 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
928 * RichTextBox.cs (FlushText): When newline is true, we always
929 need to split the line, even if no text is on it and we may
930 never eat newlines. (Fixes #77669)
932 2006-02-28 Mike Kestner <mkestner@novell.com>
934 * ListView.cs: Add UpdateSelection internal method. Remove SelectItem
935 and set Selected instead.
936 * ListViewItem.cs: Call owner.UpdateSelection to manipulate the
939 2006-02-28 Peter Dennis Bartok <pbartok@novell.com>
941 * ComboBox.cs: Allow setting SelectedIndex to -1. Fixes #77665
943 2006-02-28 Alexander Olk <alex.olk@googlemail.com>
946 - Got rid of the panel. All controls are now directly added to
948 - It is now possible to set a font with the Font property
949 - MinSize and MaxSize property do now what they should
950 - ShowApply, ShowHelp, ShowColor, ShowEffects likewise
951 - Searching and selecting a font with the font textbox works now,
952 the same applies to the style and size textbox
953 - Draw the correct 3D border in the example panel
954 - Fixed a little mem leak (unused fonts didn't get disposed)
955 - Many other internal updates/rewrites...
958 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
961 - InsertRTFFromStream: Added 'number of characters inserted' argument
962 - set_SelectedRTF: Now using the number of characters to calculate
963 the new location for the selection and cursor (x/y cannot be used
964 due to potentially already wrapped text)
966 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
968 * TextControl.cs: Added property and implemented means to allow
969 disabling recalculation of a document (can be used to speed up
970 multiple inserts and is needed to make RTF inserts predictable, see
972 * RichTextBox.cs: Using the new NoRecalc property of Document to
973 keep x/y insert locations predictable. Also makes it faster inserting
976 2006-02-27 Peter Dennis Bartok <pbartok@novell.com>
978 * Control.cs: Separated special WM_SYSKEYUP keyboard handling. That way
979 it's easier for a child control to handle the other messages without
980 having to duplicate the special functionality
982 - WndProc: Removed calling base handler for WM_KEYDOWN and added
983 code to handle processing the key ourselves, in order to get
984 access to the result of KeyEventArgs.Handled. We now only call
985 ProcessKey if they key hasn't been handled already. Fixes #77526.
986 - set_Text: If null or empty string is given, just clear the
987 document. Fixes part of #77526
989 2006-02-27 Jackson Harper <jackson@ximian.com>
991 * SizeGrip.cs: Paint the background color before painting the grip
992 so things look right.
993 * MdiClient.cs: Add the sizegrip when both scrollbars are used.
995 2006-02-27 Mike Kestner <mkestner@novell.com>
998 - Restructure layout and invalidation model to remove a ton of
999 flicker from the control and speed up performance in general.
1000 - Add manual column resize, flickers like crazy, but I already have
1001 some ideas on how I'll fix that. (#76822)
1002 - Merge the three Icon-based views into a single layout method.
1003 - Move item selection interaction logic from the item since
1004 interaction with the collections is more appropriate to the view.
1005 - Deselection on non-item clicks.
1007 - Encapsulate most of the layout. Add some internal props to trigger
1008 layout. Move to a model where Items invalidate themselves instead
1009 of just invalidating the whole control every time something changes.
1010 - Invalidate on Text/Caption changes.
1011 - switch to an offset based layout model to avoid having to absolute
1012 position every element on item moves.
1013 - correct checkbox layout to conform to MS layout.
1014 * ThemeWin32Classic.cs:
1015 - refactor some column header drawing code.
1016 - fix string justification for column headers (#76821)
1017 - make SmallIcon labels top justified for compat with MS impl.
1018 * ThemeClearlooks.cs:
1019 - adjust to new ListViewItem internal checkbox bounds api.
1021 2006-02-27 Jackson Harper <jackson@ximian.com>
1023 * Control.cs: Change where implicit controls fall in the zorder.
1024 They are now on top of all children.
1025 - Synced AddImplicit code with Add
1026 - Removed unused enumerator.
1027 * SizeGrip.cs: Remove the TODO as its been TODONE.
1029 2006-02-26 Peter Dennis Bartok <pbartok@novell.com>
1031 * TextControl.cs(Insert): Combine the last lines unless the insertion
1032 string ends with \n\n, otherwise we leave one line too many (Fixes
1033 something I noticed with the testapp for #77526; the bug itself was
1034 already fixed in the previous checkin)
1036 2006-02-26 Peter Dennis Bartok <pbartok@novell.com>
1039 - SelectionColor and SelectionFont methods no longer set absolute
1040 styles. Instead, the keep font or color respectively (This
1041 resolves a long-standing FIXME in the code)
1042 - When flushing RTF text, the insert code now considers text trailing
1043 behind the insertion point (Fixes the bug where when replacing
1044 the selected text via SelectedRTF the remainder of the line behind
1045 the selection would stay on the first insertion line)
1047 - AppendText now updates the selection points after inserting text
1048 - AppendText now ensures that the last tag (sometimes 0-length) of
1049 the document is used for the style information (Fixes part of
1052 - Created new FontDefiniton class to allow describing partial style
1054 - StreamLine() now takes a lines argument, to allow it to decide
1055 whether an encountered zero-length tag is the last in the document
1056 (which must be kept to not loose the font/color contained in it,
1058 - Created Combine() and Split() methods for Marker structs, to
1059 support marker updates due to reformatted documents (soft line
1061 - Implemented Document.CaretTag setter
1062 - Fixed MoveCaret(CtrlEnd) handling, now moves to the last character
1063 of the last line (Not the cause, but also exposed by bug #77220)
1064 - Added LineTag argument to InsertString method, to allow callers
1065 to force a certain tag to be used (required to force use of the
1066 trailing zero-length tag of a document)
1067 - Now updating markers in Combine(), to avoid stale tag markers
1068 - Added some method descriptions to aid maintenance
1069 - Implemented new FormatText concept, allowing additive/subtractive
1070 formatting by only specifying the components that are to be
1071 changed. This was needed for resolving the RTB.SelectedColor/
1072 RTB.SelectedFont fixmes
1073 - Added Break() support method to allow breaking up linetags (used
1074 for partial formatting)
1075 - Added GenerateTextFormat() method. It is used for partial
1076 formatting and allows to generate a full font/color from given
1077 attributes and an existing tag.
1079 2006-02-26 Jackson Harper <jackson@ximian.com>
1081 * XplatUIX11.cs: Use the correct caption height.
1082 - Translate hittest coordinates to screen coords to match MS.
1083 * XplatUIWin32.cs: When we create MDI windows we need to reset
1084 some of the style flags, so we get a nice blank window, and can
1085 draw all the decorations ourselves.
1086 - Set a clipping rectangle on the non client paint event, the
1087 window manager drawing code needs one.
1088 * Form.cs: The window manager needs to know when the window state
1090 * Hwnd.cs: The window manager stuff now does a proper NCCALC so we
1091 don't need to factor in border and title sizes in these
1092 methods. TODO: Remove the args and fix the call points.
1093 * InternalWindowManager.cs: Handle NCHITTEST and NCCALCAREA
1095 - Let the driver set the cursors.
1096 - Improve active window handling
1097 - Correct sizes for title bars and buttons.
1098 - Match MS drawing better
1099 * MdiWindowManager.cs: We don't need to handle border style
1100 updates specially anymore.
1101 - Check for scrollbars when windows are done moving
1102 - Handle Active properly.
1103 * MimeIcon.cs: Don't crash when we can't load the GNOME stuff
1104 correctly. I am spewing the exception though, so we don't hide the
1107 2006-02-26 Pedro Martinez Julia <pedromj@gmail.com>
1109 * DataGridViewRowPostPaintEventArgs.cs,
1110 DataGridViewCellPaintingEventArgs.cs,
1111 DataGridViewRowCollection.cs,
1112 DataGridViewRowPrePaintEventArgs.cs,
1113 DataGridViewCell.cs: Clear a few warnings and implement a few
1114 exceptions that should be thrown.
1116 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
1118 * ScrollBar.cs (ctor): Explicitly set a cursor to avoid
1119 'inheriting' our parent's (non-default) cursor. (Part of
1122 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
1124 * XplatUIX11.cs: Fixed cast to make csc happy
1126 2006-02-22 Peter Dennis Bartok <pbartok@novell.com>
1128 * Control.cs (WndProc): Only handle WM_SETCURSOR messages if
1129 it's for the client area (part of fix for #77479 and needed
1130 for MDI window cursor handling)
1132 - DefWindowProc: Now handles the WM_SETCURSOR messages, setting
1133 the appropriate default cursors and also passing the message
1135 - GetMessage: Now generating WM_NCHITTEST and WM_SETCURSOR even
1136 for non-client areas
1138 2006-02-15 Jackson Harper <jackson@ximian.com>
1140 * XplatUIWin32.cs: Since we fake MDI dont tell Windows that this
1141 is a real MDI window
1143 2006-02-14 Alexander Olk <alex.olk@googlemail.com>
1145 * X11DesktopColors.cs: Instead of checking the desktop session
1146 string for "KDE" check if it starts with "KDE"
1148 2006-02-10 Jackson Harper <jackson@ximian.com>
1150 * XplatUIX11.cs: These should be unsigned (fixes crash on 32 bit
1153 2006-02-10 Alexander Olk <alex.olk@googlemail.com>
1155 * FileDialog.cs: Added Refresh to RunDialog to fix some drawing
1158 - Got rid of the panel. All controls are now directly added to
1160 - Changed to mono coding style
1162 2006-02-10 Jackson Harper <jackson@ximian.com>
1164 * InternalWindowManager.cs: We don't need the set visibility to
1165 false hack anymore now that peter has written beautiful shutdown
1168 2006-02-10 Peter Dennis Bartok <pbartok@novell.com>
1170 * XplatUIX11.cs: Ignore DestroyNotify messages for windows that
1171 where already explicitly destroyed
1173 2006-02-10 Jackson Harper <jackson@ximian.com>
1175 * MdiClient.cs: Handle the case where windows are too high or to
1176 the left and we need scrollbars.
1178 2006-02-10 Alexander Olk <alex.olk@googlemail.com>
1180 * MimeIcon.cs: Added some icons
1183 - Got rid of the panel. All controls are now directly added to
1185 - Changed to mono coding style
1186 - On Linux "My Computer" and "My Network" will now show some
1187 more usefull information. A new class, MasterMount, gathers
1188 this information from /proc/mount. Updated MWFFileView to make
1189 use of this information
1190 - Fixed a bug that caused FileDialog to crash when
1191 ".recently_used" file had a zero size
1192 - FilterIndex does now what it should
1194 * OpenFileDialog.cs, SaveFileDialog.cs: Updated to reflect latest
1197 2006-02-09 Jackson Harper <jackson@ximian.com>
1199 * ComboBox.cs: Don't touch if null.
1201 2006-02-09 Peter Dennis Bartok <pbartok@novell.com>
1203 * Cursor.cs: 64bit safeness fix
1204 * XplatUIX11.cs: Removed several unneeded and one moronic cast.
1206 2006-02-09 Jackson Harper <jackson@ximian.com>
1208 * Form.cs: If a form is made into an MDI form update the styles so
1209 all the props can get set correctly.
1210 - Kill the mdi_container when we dont need it anymore.
1211 * InternalWindowManager.cs: Add missing NOT
1213 2006-02-08 Jackson Harper <jackson@ximian.com>
1215 * InternalWindowManager.cs: Respek clipping when drawing MDi
1218 2006-02-08 Jackson Harper <jackson@ximian.com>
1220 * Hwnd.cs: Add bits to track non client expose events.
1221 * XplatUIX11.cs: Track non client expose events on the hwnd. This
1222 gives us a proper invalid rect and will allow for some nice
1223 optimizations with NC client drawing
1224 - MDI windows are children windows, so move their style handling
1225 into the child window block.
1226 * InternalWindowManager.cs: Remove a state reset that was
1227 getting invoked at the wrong time. Fixes managed windows getting
1228 into a 'stuck' captured state.
1230 2006-02-07 Peter Dennis Bartok <pbartok@novell.com>
1232 * TextControl.cs (Document.ctor): Now initializing
1233 selection_anchor. Fixes #77493
1235 2006-02-07 Jackson Harper <jackson@ximian.com>
1237 * TrackBar.cs: The increment/decrements were backwards.
1239 2006-02-07 Mike Kestner <mkestner@novell.com>
1241 * Theme*.cs : remove ThemeEngine.Current usage as it just points back
1242 to the instance itself.
1244 2006-02-07 Peter Dennis Bartok <pbartok@novell.com>
1246 * X11DesktopColors.cs, ThemeGtk.cs: The GObject structure is based
1247 on ulongs and pointers, the size differs between 32bit and 64bit
1250 2006-02-07 Mike Kestner <mkestner@novell.com>
1252 * XplatUIX11.cs : force the WorkingArea away from XGetWindowProperty
1253 for 64 bit platforms to work around a metacity bug.
1255 2006-02-07 Jackson Harper <jackson@ximian.com>
1257 * TrackBar.cs: Process the input keys we need, and hookup to
1258 KeyDown instead of using WndProc, so we get key messages.
1260 2006-02-06 Peter Dennis Bartok <pbartok@novell.com>
1262 * XplatUIX11.cs: Atoms are only 32bit on the wire, no matter what
1264 * X11Dnd.cs(SetAllowDrop): Since atoms are always 32bit on the wire
1265 we need to translate the XdndVersion atoms array before sending it
1267 2006-02-06 Peter Dennis Bartok <pbartok@novell.com>
1270 - The preceeding 64bit fixes had a bug: ChangeProperty expects the
1271 number of bits for the property, not the number of bytes. The
1272 change to provide IntPtr.Size broke 32bit. (64bit was also wrong
1273 but would not crash since it specified 8 bits instead of 4 bits)
1274 - More 64bit fixes: Switched all atoms from int to IntPtr (they are
1275 defined as XID -> long in the C headers)
1276 - Removed 'new IntPtr((int))' and '(IntPtr)' casts from all NetAtoms
1277 references since those are now IntPtr to begin with
1278 - Switched all Atom.XXX 'int' casts to IntPtr casts
1279 - Fixed XGrabPointer DllImport signature to work for 64bit (cursor arg)
1280 - Fixed XInternAtom signature for 64bit, now returns an IntPtr
1281 - Added XChangeActivePointerGrab DllImport (for X11DnD)
1283 - Changed 'int' type for Atoms in XEvent structures to IntPtr
1284 - Changed atom in HoverStruct to be IntPtr
1286 - Removed local DllImports, switched code to use those from XplatUIX11
1287 - Removed/fixed casts related to the switch of Atom to be a IntPtr
1289 2006-02-06 Mike Kestner <mkestner@novell.com>
1291 * XplatUIX11.cs : many more 64 bit pinvoke changes. I've audited all the
1292 method signatures in the import region. There may still be some
1293 lingering struct marshaling issues, as I didn't drill down into those.
1296 2006-02-06 Jackson Harper <jackson@ximian.com>
1298 * ComboBox.cs: Dont manually set the top_item, this is computed
1299 when the scrollbar position is set.
1301 2006-02-06 Mike Kestner <mkestner@novell.com>
1303 * XplatUIX11.cs : 64 bit changes to XGetWindowProperty usage. Fixes
1304 startup crashes on amd64. There's other fixes needed. All pinvoke
1305 usage of Atom needs to be mapped to IntPtr for example. And there are
1306 likely other int/long issues to be addressed.
1308 2006-02-04 Alexander Olk <alex.olk@googlemail.com>
1310 * FileDialog.cs: One more...
1312 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
1314 * FileDialog.cs: Next try
1316 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
1318 * FileDialog.cs: First part of fix for #77464
1320 2006-02-03 Alexander Olk <alex.olk@googlemail.com>
1322 * ButtonBase.cs, ContainerControl.cs, Forms.cs,
1323 ThemeWin32Classic.cs: Fix for #77458. Correct handling of
1324 AcceptButton border drawing.
1326 2006-02-03 Peter Dennis Bartok <pbartok@novell.com>
1328 * Form.cs: Moved positioning of form after auto scaling is applied,
1329 otherwise it would possibly use wrong form size.
1331 2006-02-03 Peter Dennis Bartok <pbartok@novell.com>
1333 * Control.cs (RecreateHandle): No need to re-create any child
1334 controls, the child windows will get destroyed automatically by
1335 the windowing system or driver, and re-created when the handle
1336 is being accessed the first time. Fixes #77456
1337 * Form.cs: No longer setting the form to closing if the handle is
1338 being recreated. This seems like the right thing to do, don't
1339 have a bug or testcase for this, though.
1341 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
1343 * FileDialog.cs: Suspend/Resume layouting when changing sizes of
1344 controls to avoid unwanted side effects
1346 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
1349 - ScaleCore needs to scale the bounds, not the ClientSize of the
1350 control. Fixes #77416.
1351 - DefaultSize is 0,0 for control
1353 - DefaultSize is 100, 20
1354 - SetBoundsCore: Now enforcing the height, no matter if the provided
1355 height is more or less than the preferred one, as long as AutoSize
1357 * Form.cs: Apply documented fudge factor. Part of item 3 fix for #77416
1359 2006-02-02 Peter Dennis Bartok <pbartok@novell.com>
1362 - ResumeLayout: Fixed logic when to call PerformLayout, we may not
1363 call unless both performLayout is true *and* we have a pending
1365 - ResumeLayout: MS does not completely nest Suspend and Resume,
1366 they bottom out at 0, fixed our code to match that.
1367 - UpdateBounds/SetBoundsCore: Moved calling of UpdateDistances() to
1368 SetBoundsCore, we were updating even when we shouldn't. This fixes
1369 swf-anchors mis-anchoring when resizing the app fast and lots.
1370 - UpdateDistances: Now only setting the left and top distance if
1371 we have a parent and are not suspended, this is based on
1372 a suggestion by Don Edvaldson in bug #77355.
1373 - OnVisibleChanged: Fixed logic when to create the control. We may
1374 not create the control if we have no parent or if it's not visible;
1375 switched to using Visible property instead of is_visible field
1376 since the property also considers parent states. This fixes a bug
1377 when starting Paint.Net
1379 2006-02-02 Jackson Harper <jackson@ximian.com>
1381 * Form.cs: If the forms handle hasn't been created yet don't call
1382 into xplatui to make it top most, just set the topmost flag on the
1383 form in CreateParams
1384 * XplatUIX11.cs: Handle WS_EX_TOPMOST.
1386 2006-02-01 Jackson Harper <jackson@ximian.com>
1388 * ScrollableControl.cs: Refactored the Recalculate method a
1389 little, this wasn't handling all the variants of bottom and right
1390 bars needed to be added and added/removed based on their
1391 counterparts being added/removed (which changes the drawable
1392 size). Also we special case client widths and heights of 0 and
1393 don't add the scrollbar for those.
1395 2006-02-01 Peter Dennis Bartok <pbartok@novell.com>
1398 - Added method to get AbsoluteGeometry(); currently unused, but might
1399 be used in the future, if we try again to figure out toplevel
1400 coordinates with some more crappy window managers
1401 - Added FrameExtents() method to retrieve the WM set decoration size
1402 - Tried to fix up AddConfigureNotify and handling of ReparentNotify
1403 to deal with at least KDE, FVWM and metacity (Fixes #77092)
1405 - Added whacky_wm tracking var for metacity
1406 - Added logic to have default menu height if the actual menu height
1407 has not yet been calculated (part of fix for #77426)
1408 * Form.cs: Keep track whether client size has been set and re-set
1409 it if a menu is added/removed afterwards (Fixes #77426)
1411 2006-01-31 Jackson Harper <jackson@ximian.com>
1413 * Control.cs: When a new Site is set on the component attempt to
1414 pull the AmbientProperties from it.
1416 2006-01-31 Peter Dennis Bartok <pbartok@novell.com>
1418 * ThemeWin32Classic.cs: Menu background is drawn in ColorMenu, not
1419 in the background of the owning form. Fixes #77332
1421 2006-01-31 Alexander Olk <alex.olk@googlemail.com>
1423 * MimeIcon.cs: Fix for #77409
1425 2006-01-31 Alexander Olk <alex.olk@googlemail.com>
1427 * XplatUIX11GTK.cs: Initial import
1429 2006-01-31 Jordi Mas i Hernandez <jordimash@gmail.com>
1431 * FixedSizeTextBox: fixes class signature
1433 2006-01-30 Jackson Harper <jackson@ximian.com>
1435 * FixedSizeTextBox.cs: New internal class that represents a
1436 textBox that will not be scaled.
1439 * UpDownBase.cs: Use the new FixedSizeTextBox instead of a
1442 2006-01-30 Peter Dennis Bartok <pbartok@novell.com>
1444 * XplatUIX11.cs: Retrieve default screen number instead of
1445 assuming 0. Attempted fix for #77318
1447 2006-01-30 Peter Dennis Bartok <pbartok@novell.com>
1450 - GetWindowPos: When a window is parented by FosterParent, use
1451 the desktop instead of FosterParent as the base to get coordinates
1452 - CreateWindow: Don't make FosterParent the parent window for Popups
1453 if we don't want a taskbar entry, Popups automatically don't get one
1454 * Hwnd.cs: Need to call remove to actually remove the key from the
1457 2006-01-30 Mike Kestner <mkestner@novell.com>
1459 * MenuAPI.cs: adjust MainMenu item popup location to y=0.
1461 2006-01-30 Jackson Harper <jackson@ximian.com>
1464 * TreeNode.cs: Raise events no matter how the treenode is
1465 checked. Patch by Don Edvalson.
1467 2006-01-30 Jackson Harper <jackson@ximian.com>
1469 * TreeNode.cs: Signature fix.
1471 2006-01-29 Alexander Olk <alex.olk@googlemail.com>
1473 * ThemeClearlooks.cs: Fixed a crash in ProgressBar drawing.
1475 2006-01-20 Mike Kestner <mkestner@novell.com>
1477 * Form.cs: Add ActiveTracker property to do Captures and perform mouse
1478 event forwarding when menus are active.
1479 * MenuAPI.cs: kill the GrabControl hack. Use Form.ActiveTracker.
1480 Most of the patch is pdb's with a little rework.
1482 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
1484 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs:
1485 Removed GetMenuDC and ReleaseMenuDC methods; replaced
1486 by PaintEventStart(handle, false) and PaintEventEnd(handle, false)
1487 * Form.cs: Changed WM_NCPAINT handler to use PaintEventStart and End
1488 * InternalWindowManager.cs: Added use of PaintEventStart/End to
1489 handling of WM_NCPAINT message, now passing the PaintEventArgs to
1490 the PaintWindowDecorations method
1491 * MainMenu.cs: Switched logic from GetMenuDC to PaintEventStart
1492 * MdiChildContext.cs: Switched logic from GetMenuDC to PaintEventStart
1493 * MenuAPI.cs: Made tracker window invisible
1495 - Removed GetMenuDC and ReleaseMenuDC methods
1496 - Implemented the client=false path for PaintEventStart and
1499 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
1501 * XplatUIWin32.cs(SetBorderStyle): Fixed3D needs a border
1502 * XplatUIX11.cs(DeriveWindowStyles): Updated to match fixed Form
1505 - MaximizeBox, MinimizeBox: Recreate the handle when setting
1507 - CreateParams: Reworked the styles to match MS look'n'feel,
1508 removed automatic setting of MinimizeBox, MaximizeBox, etc. via
1509 the WS_OVERLAPPEDWINDOW style. This fixes #76823.
1511 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
1513 * XplatUIX11.cs(GetWindowState): Now throwing an exception when the
1514 window is not mapped, since otherwise every form that's being
1515 created is considered minimized, which is wrong.
1516 * Form.cs: Catching the exception and returning our internal value
1519 2006-01-26 Peter Dennis Bartok <pbartok@novell.com>
1521 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs: Added new driver method
1522 SetWindowMinMax() to have means to tell the driver about the minimum,
1523 maximum and maximized state window sizes. (Part of the fix for #76485)
1525 - Implemented tracking of minimum and maximum window size, now calling
1526 new SetWindowMinMax() driver method to tell the driver (Part of the
1528 - Finished handling of WM_GETMINMAXINFO method, now setting all values
1529 (Completes fix for #76485)
1530 - Calling new SetWindowMinMax driver method when the handle for a
1531 form is created, to make sure the driver knows about it even if
1532 the values have been set before the window was created
1533 - Now eating the WM_WINDOWPOSCHANGED message if the form is minimized
1534 to avoid messing up our anchoring calculations (partial fix
1536 * XplatUIStructs.cs: Added MINMAXINFO struct (moved from Win32 driver)
1538 - Added _NET_WM_STATE_HIDDEN property for detecting minimized state
1539 - Improved GetWindowState() to detect 'Minimized' state on Metacity
1540 (and presumably other freedesktop.org compliant WMs). Left the
1541 assumption unmapped=minimized, needed for SetVisible to work.
1542 - Now setting the window state when creating windows
1543 - Fixed SetVisible to consider/set the window state when mapping
1544 a Form. We cannot set the state before it's mapped, and we cannot
1545 use Form.WindowState once it's mapped (since it would ask the
1546 driver and get 'normal'. Therefore, we grab the state before
1547 mapping, map, and then set state.
1548 - Implmemented SetWindowMinMax method; Metacity does not seem to
1549 honor the ZoomHints, though.
1551 - Removed MINMAXINFO (moved to XplatUIStructs)
1552 - Added SetWindowMinMax stub (on Win32 the only way to set that
1553 information is in response to the WM_GETMINMAXINFO message, which
1554 is handled in Form.cs)
1555 - Added logic to SetVisible to set the proper window state when a
1556 form is made visible (fixes #75720)
1558 2006-01-26 Jackson Harper <jackson@ximian.com>
1560 * Control.cs (BeginInvoke): Automagically handle EventHandlers the
1561 same way we handle them with Invoke.
1563 2006-01-25 Peter Dennis Bartok <pbartok@novell.com>
1566 - Added tracking of window state so CreateParams can return
1567 the appropriate style
1568 - Moved setting of WS_CAPTION style in CreateParams to allow
1569 styles without caption
1570 * DataGridTextBoxColumn.cs: We are now also creating the TextBox
1571 control if the TextBox property is accessed. Fixes #77345
1573 - get_Created: now uses is_disposed and is_created to determine
1574 return value (suggested by Jackson)
1575 - CreateHandle: No longer exits if the handle is being recreated
1576 - RecreateHandle: If the handle is not yet created call the
1577 appropriate method to create either control or handle. If the
1578 control is already created CreateHandle will simply exit instead
1579 of just creating the handle
1580 * Hwnd.cs: Removed expose_pending tracking, no longer needed since we
1581 now SendMessage WM_DESTROY directly to the control when DestroyWindow
1584 - When DestroyWindow is called, instead of waiting for the
1585 DestroyNotification from X11, we directly post it to the WndProc
1586 and immediately dispose the hwnd object.
1587 Same applies to DestroyChildWindows, and this obsoletes the
1588 expose_pending tracking. Contrary to Win32 behaviour we destroy our
1589 child windows before our own, to avoid X11 errors.
1590 - Removed the direct sending of WM_PAINT on UpdateWindow
1592 - Reworked DoEvents and GetMessage to allow access to internal queue
1593 even when trying non-blocking access to the queue. Fixes #77335.
1594 Based on a patch suggestion by Don Edvalson. The new private
1595 GetMessage can now also be used as a backend for a PeekMessage
1597 * XplatUI.cs: Improved debug output for CreateWindow
1599 2006-01-25 Jackson Harper <jackson@ximian.com>
1601 * Help.cs: Allow param to be null. Patch by Don Edvalson.
1603 2006-01-24 Jackson Harper <jackson@ximian.com>
1605 * ComboBox.cs: Clamp the max value set for the vertical scrollbar
1606 when we have a MaxDropItems lower then the selected index.
1608 2006-01-24 Jackson Harper <jackson@ximian.com>
1610 * Control.cs: Don't allow selection of non visible controls, allow
1611 selection of controls without parents.
1613 2006-01-24 Jordi Mas i Hernandez <jordimash@gmail.com>
1615 * ThemeWin32Classic.cs: Fixes Datagrid drawing issues
1616 * DataGridDrawingLogic.cs: Add editing row only when is necessary
1618 2006-01-23 Jackson Harper <jackson@ximian.com>
1620 * UpDownBase.cs: Make the textbox handle all the selection and
1621 tabbing. This fixes tabing to updown controls.
1623 2006-01-24 Jordi Mas i Hernandez <jordimash@gmail.com>
1625 * TextBoxBase.cs: fixes exception thown the object was null
1627 2006-01-23 Jackson Harper <jackson@ximian.com>
1629 * ButtonBase.cs: Just use the base CreateParams. They set
1630 visibility and enabled correctly.
1633 * MonthCalendar.cs: Lets let the base set as much of the
1634 createparams as possible so we don't have duplicate code all over
1637 2006-01-22 Alexander Olk <alex.olk@googlemail.com>
1639 * ThemeGtk.cs: Added TrackBar and some experimental code to
1640 get double buffering back
1642 2006-01-21 Jordi Mas i Hernandez <jordimash@gmail.com>
1644 * DataGrid.cs: Allows row number set internally higher than the last
1645 when creating a new row. Restores the editing functionality.
1647 2006-01-20 Mike Kestner <mkestner@novell.com>
1649 * MimeIcon.cs: delay Image creation until the icons are accessed
1650 instead of creating 190 scaled images on GnomeHandler startup.
1652 2006-01-19 Peter Dennis Bartok <pbartok@novell.com>
1654 * TextBoxBase.cs (WndProc): When handling WM_KEYDOWN we need to
1655 first call base before processing the event. Fixes #77279
1657 2006-01-19 Peter Dennis Bartok <pbartok@novell.com>
1659 * XplatUIWin32.cs, Cursor.cs: Fixed code that wrongly assumed
1660 that the stride for the GDI bitmap would match the stride of
1663 2006-01-19 Alexander Olk <alex.olk@googlemail.com>
1665 * ThemeGtk.cs: Added ProgressBar, RadioButton, CheckBox
1667 2006-01-19 Jackson Harper <jackson@ximian.com>
1669 * ComboBox.cs: Hookup the text controls keydown event so we get
1670 those when the text control has the focus.
1672 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
1674 * Label.cs: Now using the base events instead of defining new ones;
1675 this allows us to just call the base properties without having to
1676 duplicate all base property logic
1678 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
1680 * Label.cs: A label by default is not a tabstop (Fixes one of our
1681 failing nunit tests)
1683 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
1685 * XplatUIWin32.cs: Fixed wrong DoEvents logic. Fixes #77282
1686 * XplatUIX11.cs: Removed WM_PAINT check from DoEvents. Fixes #77282
1688 2006-01-18 Peter Dennis Bartok <pbartok@novell.com>
1690 * Cursor.cs: Reimplemented creating cursor bitmaps without using
1691 the Bitmap(Stream) constructor which is semi-broken on MS GDI+.
1694 - Reimplemented creating Bitmaps from DIBs since the Bitmap(Stream)
1695 constructor creates images that can't be saved. Part of the fix
1697 - Added handling of CF_BITMAP as CF_DIB to clipboard code (Fixes #76103)
1698 - SetWindowState: Switched ShowWindow flags (part of an upcoming
1699 bug fix for handling window state in forms properly)
1701 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
1703 * ThemeGtk.cs: Simplify ScrollBar drawing
1705 2006-01-18 Jackson Harper <jackson@ximian.com>
1707 * Splitter.cs: Set the default dock style for the splitter control
1710 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
1712 * ThemeGtk.cs: Corrected StateType and ShadowType for
1715 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
1717 * Control.cs: Make use of Theme.DoubleBufferingSupported
1719 - Added drawing for flat style buttons
1720 - Added ScrollBar drawing
1722 2006-01-18 Alexander Olk <alex.olk@googlemail.com>
1724 * ThemeClearlooks.cs: Removed some unneeded code.
1725 * ThemeGtk.cs: First part of ThemeGtk enhancements.
1727 2006-01-17 Peter Dennis Bartok <pbartok@novell.com>
1729 * LinkLabel.cs: We need to update the hover drawing when
1730 leaving the control as well.
1732 2006-01-18 Jordi Mas i Hernandez <jordimash@gmail.com>
1734 * DataGrid.cs: Clicking on non empty areas in the columns
1735 area was giving an exception
1737 2006-01-17 Jackson Harper <jackson@ximian.com>
1739 * ThemeWin32Classic.cs:
1740 * ListView.cs: Do not draw/clip the headers when the header style
1743 2006-01-17 Jordi Mas i Hernandez <jordimash@gmail.com>
1745 * DataGrid.cs: Fixes 77260
1747 2006-01-17 Jordi Mas i Hernandez <jordimash@gmail.com>
1749 * DataGrid.cs: Clicking on a column on a empty grid was giving
1752 2006-01-17 Peter Dennis Bartok <pbartok@novell.com>
1754 * DataGrid.cs (OnKeyDown): Don't use the array if it's empty
1755 or any keypress will crash the grid.
1757 2006-01-17 Mike Kestner <mkestner@novell.com>
1759 * MainMenu.cs (OnMenuChanged): set Height=0 to cause relayout.
1760 * ThemeWin32Classic.cs (CalcItemSize): clear Height/Width for
1761 invisible/previously-visible items.
1764 2006-01-17 Alexander Olk <alex.olk@googlemail.com>
1766 * ThemeClearlooks.cs:
1767 - Added CL_Draw_Button method; now other theme controls that are
1768 not derived from button or do not have a button can draw buttons
1770 - Updated ComboBox drawing
1771 - Beautified RadioButton drawing
1772 - Corrected drawing of bottom and left tabs
1773 - Beautified DateTimePicker and MonthCalendar
1774 - Added CPDrawButton and CPDrawRadioButton
1776 2006-01-16 Jackson Harper <jackson@ximian.com>
1778 * ComboBox.cs: Set the initial value of the scrollbar to the
1779 current index. Reduce the numbers of refreshs and IndexOfs called.
1781 2006-01-14 Alexander Olk <alex.olk@googlemail.com>
1783 * FileDialog.cs: When the file listview is focused hitting the
1784 backspace key moves the fileview to the parent directory
1786 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
1789 - Added RecreateHandle call when changing taskbar visibility to
1790 trigger reparenting in Win32 driver (Fixes #75719)
1791 - If a window has minimize or maximize buttons, it cannot have
1794 - CreateWindow: When no WS_EX_APPWINDOW style is found we parent
1795 the toplevel form with FosterParent (A toolwindow not on the
1796 taskbar) (Fixes #75719)
1797 - Made FosterParent a toolwindow
1799 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
1801 * FileDialog.cs: Don't crash if InitialDirectory doesn't exist
1803 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
1805 * ToolTip.cs: If SetToolTip is called from a control and the mouse
1806 is currently over that control, make sure that tooltip_window.Text
1809 2006-01-13 Mike Kestner <mkestner@novell.com>
1811 * MimeIcon.cs: size_t on lp64 fix for gdk_pixbuf_save_to_file extern.
1813 2006-01-13 Jackson Harper <jackson@ximian.com>
1815 * TreeView.cs: On MS GetNodeAt never actually factors in the X
1816 value passed. Also redraw the selected node when we recieve
1817 focus, so tabbing between trees works correctly.
1819 2006-01-13 Alexander Olk <alex.olk@googlemail.com>
1821 * MimeIcon.cs: GnomeHandler: older gnome versions don't have
1822 ~/.gconf/%gconf-tree.xml, so use
1823 .gconf/desktop/gnome/interface/%gconf.xml
1825 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
1827 * TextControl.cs: Draw text in gray if control is disabled
1829 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
1831 * TreeView.cs: Draw the focus rectangle outside the highlight, to
1832 make sure it's always visible. Fixes #76680.
1834 2006-01-13 Peter Dennis Bartok <pbartok@novell.com>
1836 * TreeView.cs: Implemented Wheel scrolling. Fixes #76531
1838 2006-01-13 Jonathan Chambers <jonathan.chambers@ansys.com>
1840 * PageSetupDialog.cs: Added.
1841 * PrintDialog.cs: Attributes.
1842 * PrintPreviewControl.cs: Updates.
1843 * PrintPreviewDialog.cs: Updates.
1845 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1847 * Control.cs: Undid my selection check fix, since it's not needed
1849 - Now considering the presence of hscroll/vscroll when sizing
1850 vscroll/hscroll respectively. Fixed bug #77077
1851 - Added Left/Up/Down/Right to IsInputKey list to prevent
1852 ContainerControl from stealing them. This fixes what I broke
1853 with my last checkin.
1855 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1857 * ScrollableControl.cs: Implemented dockpadding. Fixes #77166. And
1858 I finally understand how the property can be set without a setter :-)
1860 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1863 - Switched RunLoop to use static Message.Create to create a
1865 - Added PreProcessMessage call in runloop for keyboard events; this
1866 is part of the fix for #77219, I overlooked this originally in the
1867 MSDN doc for PreProcessMessage
1869 - Removed call to PreProcessMessage from handling of keyboard
1870 messages; it's supposed to be done in the message pump
1871 - Moved call to ProcessKeyEventArgs inside ProcessKeyMessage as
1872 per MSDN documentation.
1873 - IsInputChar: All chars are input chars by default; removed the
1874 parent calling chain, MS does not document that
1875 - PreProcessMessage: If IsInputChar is true, we want to return false
1876 to allow dispatching of the message
1877 - When selecting the next control, now also check that we're not
1878 selecting ourselves again and therefore return a false positive.
1880 - Tried to match return values for IsInputKey and ProcessDialogKey
1881 to what MS returns; moved processing of our special keys outside
1882 ProcessDialogKey since MS does not seem to return true on those.
1883 - Moved code that previously was in ProcessDialogKey into new private
1884 ProcessKey method, which gets called upon receipt of WM_KEYDOWN
1885 - Reworked handling of WM_CHAR to not have to duplicate code from
1886 Control.cs anymore, instead we simply call down to base.
1888 2006-01-12 Jackson Harper <jackson@ximian.com>
1890 * ComboBox.cs: We always need to refresh the text area when
1891 EndUpdate is called. Fixes the combobox in the file dialog.
1892 * Control.cs: Don't create the creator_thread until the controls
1893 handle is created. Also in InvokeRequired we check if the
1894 creator_thread is null. This gives the effect of InvokeRequired
1895 returning true if the controls handle is not created yet, and
1898 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1901 - Added StartLoop() driver method. This is used to allow drivers to
1902 prepare for an upcoming GetMessage/TranslateMessage/DispatchMessage
1903 loop for a particular thread
1904 - Added EndLoop() driver method. This is called once the message
1905 pump for the thread is shut down
1906 - Added SupportsTransparency method to allow the driver to indicate
1907 opacity support for windows
1909 - Removed TODO attribute, completed AllowTransparency property
1910 - Added documented logic to Opacity
1911 * GroupBox.cs, Label.cs, LinkLabel.cs, PropertyGrid.cs, Control.cs,
1912 ButtonBase.cs, CheckedListBox.cs: Combined Jackson's and Miguel's
1913 versions of CompatibleTextRendering
1914 * X11Structs.cs: Added opacity atom to our atom enumeration
1915 * Hwnd.cs: Added opacity tracking (we need to track since the opacity
1916 of a form might be set before it's reparented by the WM, and we need
1917 the opacity value without calling up to Form)
1918 * XplatUIDriver.cs: Added StartLoop(), EndLoop() and
1919 SupportsTransparency() driver methods
1920 * Application.cs: Now calling StartLoop and EndLoop driver methods
1922 - Added opacity atom registration
1923 - Added StartLoop()/EndLoop() methods. They're empty right now but
1924 will need to get implemented when we switch to a per-thread queue
1925 - Implemented SupportsTransparency() method
1926 - Implemented SetWindowTransparency() method
1927 - Added support for setting the opacity value when a window is
1928 reparented (since the opacity needs to be set on the WM frame)
1929 * XplatUIOSX.cs, XplatUIWin32.cs:
1930 - Added SupportsTransparency(), StartLoop() and EndLoop() methods
1932 2006-01-12 Alexander Olk <alex.olk@googlemail.com>
1934 * ThemeClearlooks.cs: Don't crash if TabControl.Parent is null.
1936 2006-01-12 Alexander Olk <alex.olk@googlemail.com>
1938 * FileDialog.cs: Added ToolTip for MWFFileView
1939 * MimeIcon.cs: Rewrote GnomeHandler.
1940 - Get currently used gnome icon theme from
1941 ($HOME)/.gconf/%gconf-tree.xml
1942 - Make use of inherited icon themes
1943 - Support SVG icon themes like Tango via librsvg
1945 2006-01-12 Miguel de Icaza <miguel@novell.com>
1947 Revert's Jackson's revert which broke 2.0 builds. Fix both
1950 * Application.cs: Move the use_compatible_text_rendering outside
1951 the NET_2_0 define. If we ever need to use the
1952 use_compatible_text_rendering on the individual controls they will
1953 access the variable from the common shared code paths.
1955 2006-01-12 Peter Dennis Bartok <pbartok@novell.com>
1958 - Added more granular debug options
1959 - Added method to print both window text and id
1960 - Switched debug output to use new Window() debug method
1961 - Added IsEnabled() driver method
1962 - Added EnableWindow() driver method
1964 - Removed end_modal; no longer needed, new loop handles termination
1965 via 'closing' variable
1966 - If form is modal, setting DialogResult will now initiate loop
1967 termination via 'closing' variable
1968 - Added support for is_enabled/WS_DISABLED to CreateParams
1969 - Close() now just send the WM_CLOSE message; the WM_CLOSE handler
1971 - Removed code that's now in RunLoop from ShowDialog()
1972 - Added various documented sanity checks to ShowDialog()
1973 - Added handling of WM_DESTROY message; we set 'closing' on getting
1974 the message to indicate the message pump to terminate
1975 - Added handling of new internal WM_CLOSE_INTERNAL message - it's
1976 send by the Application.ExitThread method. (We send the message
1977 to destroy the window after all other events have been
1978 processed through the queue, instead of destroying the handle
1980 - Moved code from Close() method to WM_CLOSE handler; added logic
1981 to only send close-related events if the form is not displayed
1983 * Splitter.cs (..ctor): Fixed typo in resource name
1985 - DrawBackgroundImage: Explicitly selecting the wrap mode for the
1987 - set_Cursor: Now only setting calling into XplatUI if the handle for
1988 the control is already created; this avoids implict handle creation
1989 or crashes if it's not created
1990 - set_Enabled: Now setting the enabled state via the new driver method
1991 instead of just tracking it
1992 - CreateParams: Added logic to set WS_DISABLED based on enabled state
1993 - CreateControl: Reordered event firing and method calls to more
1994 closely fire events in the order MS does. Now setting the
1995 enabled state in the driver when creating the control.
1996 - SetVisibleCore: Moved when the OnVisibleChanged event is fired to
1998 * FolderBrowserDialog.cs, MessageBox.cs, ButtonBase.cs, TrackBar.cs,
1999 MonthCalendar.cs: get_CreateParams: Added setting of WS_DISABLED
2000 * XplatUIStructs.cs: Added internal WM_CLOSE_INTERNAL mesage id
2002 - Added tracking of window enabled state (get_Enabled/set_Enabled)
2003 - Added EnabledHwnd property to easily allow a driver to find the
2004 handle of the first enabled window in the parent chain (this is
2005 used by drivers to pass up input events of disabled windows)
2006 * XplatUIDriver.cs: Added IsEnabled() method
2008 - Removed crude and obsolete exiting tracking variable
2009 - Removed internal ModalRun(); replaced by RunLoop()
2010 - Implemented private CloseForms() method to allow closing all
2011 windows owned by a particular (or all) threads
2012 - Exit() now properly closes all windows without forcing the message
2014 - Removed obsolete InternalExit() method
2015 - Changed Run() methods to use new RunLoop() message pump
2016 - Implemented new RunLoop() method for both modal and non-modal forms
2018 - get_CreateParams: Added setting of WS_DISABLED
2019 - Simplified ShowDialog(); now all the work is done in RunLoop(),
2020 invoked via Form.ShowDialog()
2021 * NativeWindow.cs: We don't remove the window from the collection when
2022 the handle is destroyed; there might still be messages for it in the
2023 queue (mainly the resulting WM_DESTROY); instead it will be removed
2024 when Control calls InvalidateHandle in the WM_DESTROY handler
2026 - CreateWindow: Added logic to handle the WS_DISABLED window style
2027 - EnableWindow: Implemented based on Hwnd.Enabled
2028 - GetMessage: Reset PostQuitState so the method can be called again
2029 - Implemented support for disabled windows (passing messages to the
2030 first enabled parent) in handling all input messages
2031 - Added optimizations for handling Expose events
2032 - Implemeted new driver method IsEnabled()
2033 - Now always resetting paint pending tracking vars when we start paint
2034 - Re-implemented UpdateWindow via just sending a WM_PAINT message
2035 * XplatUIOSX.cs: Added IsEnabled method stub
2036 * XplatUIWin32.cs: Implemented new IsEnabled() method
2038 2006-01-11 Jackson Harper <jackson@ximian.com>
2040 * ButtonBase.cs, CheckedListBox.cs, GroupBox.cs, Label.cs,
2041 LinkLabel.cs, PropertyGrid.cs: Unbreak 1.1 build. Consolidate the
2043 * ColorDialog.cs: Clear out the old form before adding the new
2046 2006-01-11 Jackson Harper <jackson@ximian.com>
2048 * X11Dnd.cs: Make sure to add all the text formats when adding
2049 strings to the data object.
2050 * TreeNodeCollection.cs: When adding to a sorted tree we need to
2051 do some redrawing too. Also change the UpdateNode to an
2052 UpdateBelow so the newly added node gets painted.
2054 2006-01-11 Miguel de Icaza <miguel@novell.com>
2056 * ButtonBase.cs, CheckedListBox.cs, GroupBox.cs, Label.cs,
2057 LinkLabel.cs, PropertyGrid.cs: Implement the
2058 UseCompatibleTextRendering property for 2.x
2060 * Application.cs (SetCompatibleTextRenderingDefault): Add.
2062 2006-01-11 Jackson Harper <jackson@ximian.com>
2064 * TreeView.cs: Use the property for setting the selected node so
2065 the correct events get raised.
2066 * TreeNode.cs: Update the tree when the fore/back colours of a
2069 2006-01-10 Jackson Harper <jackson@ximian.com>
2071 * TreeView.cs: Allow setting SelectedNode to null.
2073 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2075 * Form.cs: Fix support for Form TransparencyKey and Opacity on Windows.
2077 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2079 * PrintControllerWithStatusDialog.cs: Update page number in dialog.
2081 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2083 * PrintDialog.cs: Added attributes and set default property values.
2085 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2087 * PrintControllerWithStatusDialog.cs:
2088 Added PrintControllerWithStatusDialog.
2090 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2092 * XplatUI.cs, Form.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs,
2093 XplatUIWin32.cs: Added support for Form TransparencyKey and Opacity on Windows.
2095 2006-01-9 Jonathan Chambers <jonathan.chambers@ansys.com>
2097 * ComboBox.cs: Fix crash when there is no selected item (due to last commit)
2099 2006-01-09 Jonathan Chambers <jonathan.chambers@ansys.com>
2101 * ComboBox.cs: Added KeyDown event handler for processing arrow keys
2102 and PgUp/PgDown. Also, scroll to selected item upon dropdown. Bugs 76857 and 76788.
2104 2006-01-08 Alexander Olk <alex.olk@googlemail.com>
2106 * MimeIcon.cs: Added internal class SVGUtil.
2108 2006-01-08 Alexander Olk <alex.olk@googlemail.com>
2110 * FileDialog.cs: Don't crash if there are two files with the
2111 same name but different locations.
2113 2006-01-08 John BouAntoun <jba-mono@optusnet.com.au>
2115 * MonthCalendar.cs: Fixed annoying rendering bug when selecting
2116 dates across multiple month grids. Used to not highlight entire
2117 month, but does now.
2119 2006-01-06 Jackson Harper <jackson@ximian.com>
2121 * MonthCalendar.cs: Removed DoEvents call to prevent a running
2122 message loop. Change timer intervals to numbers that seem more
2125 2006-01-06 John BouAntoun <jba-mono@optusnet.com.au>
2127 * DateTimePicker.cs: Modified CalculateDropDownLocation to use the screen
2128 object for location info since screen object is now implemented.
2130 2006-01-05 Jackson Harper <jackson@ximian.com>
2132 * AsyncMethodData.cs: Check if the call is complete before doing a WaitOne
2133 * AsyncMethodResult.cs: We no longer use a WeakReference for the
2134 AsyncMethodResult, this is because we ALWAYS want the
2135 ManualResetEvent to get set.
2136 * Control.cs: When disposing use an async invoke to call shutdown
2137 code, so that thigns don't block on the finalizer thread. Also
2138 check if we even have a message loop before trying to send
2139 messages, if we don't then don't bother sending messages.
2140 - No more weak references for async methods
2141 * XplatUIDriver.cs: No more weak references for async methods.
2143 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
2145 * FontDialog.cs: Fix, don't throw an exception if FontFamily.Families
2146 returns two FontFamily with the same name
2148 2006-01-04 Peter Dennis Bartok <pbartok@novell.com>
2150 * ThemeWin32Classic.cs, ThemeClearlooks.cs: Dropped stupid scheme of
2151 drawing disabled text. Instead using the ColorGrayText color
2153 2006-01-04 Jackson Harper <jackson@ximian.com>
2155 * TreeNode.cs: redraw the node when its image index is changed.
2157 2006-01-04 Peter Dennis Bartok <pbartok@novell.com>
2159 * RichTextBox.cs: Same fix as last, just for SelectionColor. This
2160 time I checked there are no others like it.
2162 2006-01-04 Jackson Harper <jackson@ximian.com>
2164 * AsyncMethodResult.cs: Use a ManualResetEvent instead of a mutex,
2165 this gives the behavoir I was looking for.
2166 * Control.cs: Special case Invoking EventHandlers, this matches MS
2167 and fixes part of bug #76326.
2169 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
2171 * ThemeClearlooks.cs, FileDialog.cs:
2172 - Reflect the latest Theme class changes
2173 - Remove Mono.Unix.Syscall.time in FileDialg and replace it
2176 2006-01-04 Alexander Olk <alex.olk@googlemail.com>
2178 * Theme.cs: Cache UI resource images and resize them if needed
2180 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
2182 * RichTextBox.cs: FormatText is 1-based, make it so when SelectionFont
2183 is called. This fixes the crash in Nexxia when setting the font
2184 attributes in the chat. [However, RTF needs a look-over to make sure
2185 that all SelectionXXX methods handle the special case that selection
2186 is empty and therefore the change must be applied to all text starting
2187 at the cursor/selection start]
2189 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
2191 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
2192 XplatUIOSX.cs: Added SendMessage and PostMessage methods
2193 * X11Keyboard.cs: Switched to new way of calling PostMessage
2195 2006-01-03 Peter Dennis Bartok <pbartok@novell.com>
2197 * Theme.cs: Added theme interface for images to allow the theme to
2198 control what images are used for things like FileDialog, MessageBox
2200 * MessageBox.cs: Now uses the new Theme icon/image interfaces
2202 2006-01-03 Alexander Olk <alex.olk@googlemail.com>
2205 - Removed some dead code
2206 - Opening a recently used file does work now
2207 - Small UI enhancements
2210 2006-01-02 Alexander Olk <alex.olk@googlemail.com>
2212 * FileDialog.cs: Forgot too add __MonoCS__
2214 2006-01-02 Alexander Olk <alex.olk@googlemail.com>
2216 * FileDialog.cs: We are able to read recently used files now let's
2217 go on and write them.
2219 2006-01-01 Alexander Olk <alex.olk@googlemail.com>
2221 * FileDialog.cs: Breathe some life into "last open"/"recently used"
2223 * MimeIcon.cs: Do a check for the top level media type also
2225 2005-12-31 Alexander Olk <alex.olk@googlemail.com>
2227 * ThemeClearlooks.cs:
2228 - Added CPDrawStringDisabled
2229 - ButtonBase_DrawText: Workaround for a DrawString bug; cut off
2230 some chars if the text doesn't fit into text_rect
2231 - DrawListViewItem: If View = View.LargeIcon center the image;
2232 rewrote the drawing of ListViewItem.Text if View =
2235 2005-12-31 Alexander Olk <alex.olk@googlemail.com>
2237 * MimeIcon.cs: Use default KDE icon theme if there is no
2238 "48x48" directory for the current icon theme, fixes #77114
2239 * Mime.cs: Disable not working and actually not used code.
2240 * ThemeWin32Classic.cs:
2241 - Replace "new SolidBrush" in GetControlBackBrush and
2242 GetControlForeBrush with ResPool.GetSolidBrush
2243 - Changed DrawListViewItem from private to protected virtual
2245 - Added form.MaximizeBox = true
2246 - Don't throw an exception if there is a broken symbolic link
2248 2005-12-23 Jackson Harper <jackson@ximian.com>
2250 * TabControl.cs: Give the panels focus, keyboard navigation is
2251 fixed so this works correctly now.
2252 - We need these key events also.
2253 * ToolBar.cs: Remove some of the poor mans double buffering.
2255 2005-12-24 Alexander Olk <alex.olk@googlemail.com>
2257 * ComboBox.cs: The internal TextBox now returns the focus.
2259 2005-12-23 Jackson Harper <jackson@ximian.com>
2261 * ThemeWin32Classic.cs: Draw the text for all tab appearances.
2263 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
2265 * Control.cs: Removed debug code
2266 * XplatUIX11.cs: Changed DestroyChildWindows to also consider
2269 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
2271 * Control.cs: When creating the control, update the Z-order after
2272 all it's children are created, too. (Fixes nexxia not showing
2275 2005-12-23 Peter Dennis Bartok <pbartok@novell.com>
2277 * Control.cs: Do not update the anchoring distances if layout is
2278 suspended, instead do it once layout is resumed
2280 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
2283 - After many hours of debugging, for both Jackson and
2284 myself, it turns out that it helps to set the parent of a control
2285 if you want to actually see it onscreen. In the spirit of that
2286 discovery, we're now setting the parent of the control and
2287 it's children when the control's handle is created. This fix
2288 will make Lutz Roeder's Reflector run happily.
2289 - now just creating the handle instead of the whole control when
2290 getting a graphics context for the control.
2292 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
2294 * ScrollableControl.cs: When calculating the canvas, don't consider
2295 the scrollbar widths. Instead, predict if horizontal scrollbar
2296 will affect canvas when deciding on vertical display and vice versa.
2298 2005-12-22 Peter Dennis Bartok <pbartok@novell.com>
2300 * RichTextBox.cs: Set default RTF font for documents that don't
2301 have a font table (Fixes #77076)
2303 2005-12-22 Jackson Harper <jackson@ximian.com>
2305 * TextBoxBase.cs: It's difficult to do, but you can have an empty
2306 clipboard. This prevents a NullRef in that case.
2307 * XplatUIX11.cs: Use CLIPBOARD not PRIMARY for our
2308 clipboard. PRIMARY is for the currently selected text only. (We
2309 should implement PRIMARY at some point.
2311 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
2313 * XplatUIWin32.cs: Fixed the TEXTMETRIC structure, we were calling
2314 a Unicode function with a structure that was defined in Ansi way.
2317 2005-12-21 Jackson Harper <jackson@ximian.com>
2319 * StatusBar.cs: Statusbar handles its fore/back colours on it's
2320 on. Because thats how it rolls. (and this avoids it using ambient
2322 * ThemeWin32Classic.cs: Use the proper back color for filling.
2323 * Menu.cs: Use the system menu bar color for drawing menu
2324 bars. Using the window back color will bring ambient colours into
2327 2005-12-21 Alexander Olk <alex.olk@googlemail.com>
2329 * ColorDialog.cs: Fixed a memory leak that caused a SIGSEV. A lot of
2330 Bitmaps were created and not disposed.
2332 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
2334 * Control.cs (CreateControl): Don't do anything if the control is
2335 already created, otherwise we'd fire the OnCreated event more than
2338 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
2340 * ComboBox.cs (FindStringCaseInsensitive): Don't search for emtpy strings,
2341 will always match. Instead return -1. Fixes #76464.
2343 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
2345 * TextControl.cs (RecalculateLine): Only wrap if the wrap point is
2346 neither the beginning nor the end of the line (Fixes bug #76479)
2348 2005-12-21 Peter Dennis Bartok <pbartok@novell.com>
2351 - ControlNativeWindow.ControlFromHandle(): Now handling situation
2352 where handle is invalid
2353 - FromHandle(): Now using hashtable-based ControlFromHandle() lookup
2354 instead of slower linear search
2355 * NativeWindow.cs: Don't remove the window from the hashtable until
2356 after the driver has destroyed it (since the driver might use
2357 Control.FromHandle to lookup the control object
2358 * Hwnd.cs: Added DestroyPending property to track if a window is
2359 already destroyed as far as the driver is concerned and only hasn't
2360 yet notified the control
2362 - Activate(): Check if the window is still valid before using the
2364 - Implemented DestroyChildWindow() method to mark child windows as
2365 destroyed when a window is destroyed. This prevents situations
2366 where we might call an X method based on queued events for a
2367 window that already has been destroyed but we haven't yet pulled
2368 the destroy method from the queue.
2369 - Added a call to the new DestroyChildWindow() method to the drivers
2370 DestroyWindow code. Also now marking the destroyed window itself
2373 2005-12-20 Jackson Harper <jackson@ximian.com>
2376 * StatusBarPanel.cs: Don't calculate panel sizes on draw
2377 anymore. Just do them when needed, also track the rects of panels
2378 so that we can optimize refreshing more in the future.
2380 2005-12-20 Alexander Olk <alex.olk@googlemail.com>
2382 * ColorDialog.cs: Fixed focus drawing in small color controls
2384 2005-12-19 Jackson Harper <jackson@ximian.com>
2386 * InternalWindowManager.cs:
2387 * MdiWindowManager.cs: Cleanup some coordinate system changes so
2388 moving windows works properly.
2390 2005-12-19 Peter Dennis Bartok <pbartok@novell.com>
2393 - Removed call to InitLayout() from SetBoundsCore(); doc says
2394 it's only called when a control is added to a container
2395 - Split InitLayout logic, moved to separate UpdateDistances() method
2396 since we need to perform those calculations more often than just
2397 when adding the control to a container. (Needed to fix #77022)
2398 - Now calling UpdateDistances() from UpdateBounds() (fixes #77022)
2399 - Reduced the OnBindingContextChanged events count, don't send them
2400 unless the control is created, we still aren't totally matching
2401 MS, but I can't quite figure out some of their rules
2403 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
2405 * ThemeClearlooks.cs: Corrected distance between ProgressBar
2408 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
2410 * ThemeClearlooks.cs:
2411 - Updated ProgressBar drawing
2412 - Corrected drawing of ScrollBars and scroll buttons
2413 - Some temporary fixes for minor pixel artefacts
2415 2005-12-18 Peter Dennis Bartok <pbartok@novell.com>
2418 - Reworked Controls.Add(), Controls.Remove() and set_Parent() to
2419 cause events to be sent in the same order as MS does.
2420 - Added ChangeParent() method to trigger various OnXXXChanged events
2421 that need to be fired when a parent changes (This is a reworking
2422 of the patch from r54254, with the X11 errors fixed)
2423 - Removed SuspendLayout()/ResumeLayout() calls from Controls.Clear()
2424 since on MS we get OnLayoutChanged events when calling Clear()
2425 - Changed Enabled property to consider parent state as well, if a
2426 parent is not enabled, the control will not be either
2427 - Changed Parent property to simply call Controls.Add() since that
2428 now does all the work required, this way we avoid code duplication
2429 - Threw in a few OnBindingsContextChanged calls to try and match
2430 when MS sends them. We seem to send a few too many, though.
2431 - Added call to CreateControl when adding the control to a parent.
2432 We were never calling CreateControl. Still needs some work, in
2433 some places we treat HandleCreated and ControlCreated as equal,
2435 - Removed obsolete commented out code from UpdateZOrder()
2437 2005-12-18 Alexander Olk <alex.olk@googlemail.com>
2439 * ThemeClearlooks.cs: Updated TrackBar drawing.
2441 2005-12-17 Alexander Olk <alex.olk@googlemail.com>
2443 * FileDialog.cs: Patch for #76901 by Atsushi Enomoto
2445 2005-12-17 Alexander Olk <alex.olk@googlemail.com>
2447 * FileDialog.cs: Add the Help button and the open readonly
2448 checkbox only if needed
2450 2005-12-16 Jackson Harper <jackson@ximian.com>
2452 * Control.cs: Make sure we have an active menu before trying to
2453 process commands on it. Prevents menu-less forms from crashing
2454 when Alt is pressed.
2455 * TreeNodeCollection.cs: Some fixes to prevent null refs. Patch by
2457 * RichTextBox.cs: Expand statement to help out gmcs and fix the
2460 2005-12-16 Jackson Harper <jackson@ximian.com>
2462 * InternalWindowManager.cs: Don't translate tool windows screen
2463 coordinates. This fixes windows 'bouncing' around when being moved.
2465 2005-12-15 Peter Dennis Bartok <pbartok@novell.com>
2468 - MaxLength now treats 2^31-1 equal to unlimited length (this is
2469 not quite MS compatible, MS uses that number only for single line
2470 and 2^32-1 for multi-line, but I figure it won't hurt keeping
2472 - Now enforcing the MaxLength limit when entering characters
2473 - Added argument to internal Paste() method to track if it's called
2474 from programatically or via keyboard, since keyboard driven pastes
2475 need to enforce max-length
2476 - Added logic to Paste to only paste as many chars as MaxLength
2478 * RichTextBox.cs: Updated to use new obey argument for internal Paste()
2480 - Added Length property to return number of characters in document
2481 - Added private CharCount property which only tracks actual chars
2482 in the document (no linefeeds) and fires event when CharCount
2484 - Added tracking of character count to all methods that alter it
2485 - Added LengthChanged event to allow applications to subscribe
2486 to any changes to the document
2488 2005-12-15 Peter Dennis Bartok <pbartok@novell.com>
2491 - Removed local password_char field (moved to TextBoxBase)
2492 - Now setting the document's password var when password is
2495 - Added password_char field (needed here so MultiLine can
2497 - Added logic to MultiLine property setter to set the document's
2498 variable when password display is allowed
2499 - Removed debug code and made some debug code conditional
2501 - Added RecalculatePasswordLine() method to handle special password
2503 - Added PasswordChar property, also added related tracking vars
2504 - Draw() method now uses local text var for grabbing text to draw,
2505 this var is set to line.text unless we're doing password display,
2506 then it is set to the pre-generated all-password-chars line
2507 - Added calling RecalculatePasswordLine() method for password lines
2509 2005-12-14 Peter Dennis Bartok <pbartok@novell.com>
2512 - Added Reparented property to allow tracking of Window Manager
2513 reparenting actions (which affect X/Y calculations of toplevel
2515 - Made ToString() print window handles in hex
2517 - AddConfigureNotify(): Now uses reparented state off Hwnd to
2518 determine if X/Y needs offsetting
2519 - AddConfigureNotify(): Fixed offset calculations
2520 - Now adds ReparentNotify messages into the queue
2521 - Now processes ReparentNotify messages and causes a
2522 WM_WINDOWPOSCHANGED message to be sent upstream if a window
2523 is reparented (as most likely it's X/Y coordinates are changed
2526 2005-12-14 Jackson Harper <jackson@ximian.com>
2528 * XplatUIX11.cs: Tool windows still need to respek focus.
2530 2005-12-14 Peter Dennis Bartok <pbartok@novell.com>
2532 * Control.cs: Undid 54254 (causing XConfigure errors) so we can
2533 have a working release
2535 2005-12-13 Jackson Harper <jackson@ximian.com>
2537 * Form.cs: Update styles after setting the border style regardless
2538 of whether or not the window is using a window manager.
2540 2005-12-13 Jackson Harper <jackson@ximian.com>
2542 * Form.cs: We now hook into an internal window manager instead of just an
2543 MDI subsystem, this is so we can have properly behaving tool windows.
2544 * MdiClient.cs: Naming change, MdiChildContext is now WindowManager
2545 * InternalWindowManager.cs: New internal class that acts as a
2546 window manager for tool windows and as a base for mdi windows.
2547 * MdiWindowManager.cs: New class that acts as a window manager for
2550 2005-12-12 Jackson Harper <jackson@ximian.com>
2552 * Control.cs: Updates so we match behavoir for for implicit
2553 controls. Fixes explosions in MDI.
2555 2005-12-12 Jackson Harper <jackson@ximian.com>
2557 * Control.cs: Implement Invalidate (Region).
2559 2005-12-12 Peter Dennis Bartok <pbartok@novell.com>
2562 - Changed handling of Controls.Add/Controls.Remove to fire (almost)
2563 the same events as MS does. MS fires events for each property
2564 except, for unknown reasons, Cursor, when the control is reparented.
2565 I can't seem to totally match add/remove since MS also fires some
2566 VisibleChanged events, which makes no sense. Consolidated the
2567 parenting code into a separate method so it can be called from
2568 both Add and Remove. set_Parent no longer needs any special logic
2569 as it calls the parent's add method which implicitly fires
2571 - Removed some obsolete code and debug output
2572 - Enabled state is inherited from parents, if this is enabled
2574 2005-12-08 Peter Dennis Bartok <pbartok@novell.com>
2576 * Form.cs: Removed commented out code
2578 2005-12-08 Peter Dennis Bartok <pbartok@novell.com>
2581 - Added internal version of Invoke, with additional argument
2582 indicating if we're calling it from a Dispose() handler. That
2583 way we can avoid BeginInvoke throwing an exception if we're
2584 calling for an already destroyed window.
2585 - Added a dispose argument to BeginInvokeInternal, and made the
2586 check if a valid window handle chain exists conditional on
2587 it not being a dispose call
2588 - Removed code in DestroyHandle to destroy our children. Since we
2589 now handle the WM_DESTROY message we will catch all our children
2591 - Now calling OnHandleDestroyed from our new WM_DESTROY handler
2593 - Added a field to track the application context of the form.
2594 - No need to set closing variable as response to WM_CLOSE, instead
2595 we destroy the window. We also call PostQuitMessage if the form
2596 has an application context (which makes it the main app form,
2597 which, when closed terminates the app)
2599 - Dropped Exit() method, it's naming was confusing
2600 - Added PostQuitMessage() which causes GetMessage to return false
2601 once the message queue is empty
2602 * XplatUIDriver.cs, XplatUIWin32.cs: Dropped Exit(), added
2604 * XplatUIOSX.cs: Switched signature for Exit method since Exit() is
2605 no longer a valid XplatUI method, but left it in since it's used
2606 internally. Added empty PostQuitMessage() method.
2607 * MenuAPI.cs: Replaced call to Exit() with call to
2608 PostQuitMessage, even though this is probably no longer needed.
2609 * Hwnd.cs: Added 'pretty' ToString() to support debugging.
2610 * X11Structs.cs: Added pretty XEvent.ToString() to support debugging.
2612 - Replaced call to XplatUI.Exit() with PostQuitMessage()
2613 - Removed old debug code that would call XplatUI for exception
2614 display, enabled standard exception handling (Still not enabled
2615 though, until NativeWindow's ExternalExceptionHandler define
2618 - Added internal method to allow control to update NativeWindow
2619 after a window has been destroyed
2620 - Added handling of already destroyed windows when calling i
2622 - Added removal of handle from list on ReleaseHandle
2624 - Dropped GetMessageResult var and related code
2625 - Added PostQuitState to field to track if PostQuitMessage has been
2627 - Dropped Exit() method
2628 - Added PostQuitMessage() method
2629 - GetMessage now will return false if PostQuitState is set and no
2630 more messages are in the queue.
2631 - Expose handler will no longer generate WM_PAINT messages if we are
2632 in PostQuitState since it's very likely any windows have already
2633 been destroyed, and since Hwnd won't get updated until we have
2634 processed the DestroyNotify we'd be causing X errors.
2636 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
2638 * Control.cs(WndProc): Apparently I'm suffering from brain cloud.
2639 Thanks to Mike for pointing out the err of my ways.
2641 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
2643 * Control.cs(PreProcessMessage): Moved menu handling back, but
2644 after all other key handling, to match MS (who handles Menu in
2646 * Menu.cs (WndProc): Removed my brainfart
2648 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
2650 * Control.cs(PreProcessMessage): Removed special menu handling
2651 * Menu.cs (WndProc): Added handling of WM_SYSKEYUP for menu purposes.
2653 2005-12-07 Mike Kestner <mkestner@novell.com>
2655 * Control.cs : special case SYSKEYUP so that we can adjust keynav
2656 state according in tracker.
2657 * Menu.cs : promote tracker field to base class and provide a tracker
2658 lookup capability. Add/Remove shortcuts dynamically if the top menu
2659 has a tracker. Unparent items that are removed from the collection.
2660 * MenuAPI.cs : implement mnemonic, shortcut, and arrow-based keynav.
2661 * Theme*.cs: add always_show_hotkeys field to support configurability
2662 of mnemonic display. win32 doesn't show mnemonics until Alt is
2665 2005-12-07 Jackson Harper <jackson@ximian.com>
2667 * MdiChildContext.cs: Use Control.ResetCursor.
2668 * Control.cs: ResetCursor needs to set the property so that the
2669 correct XplatUI call gets made.
2671 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
2673 * Control.cs: More fixes to make our key events match MS. We
2674 were not setting the modifier state on KeyData, and we were
2675 not generating any events when Alt was pressed with a key
2676 since handling of WM_SYSxxx was missing for the OnKey methods.
2678 2005-12-07 Jackson Harper <jackson@ximian.com>
2680 * MdiChildContext.cs: reenable the sizing code.
2681 - When the mouse leaves a window reset its cursor.
2683 2005-12-07 Alexander Olk <alex.olk@googlemail.com>
2685 * ThemeClearlooks.cs: Reflect latest Hwnd changes
2687 2005-12-07 Peter Dennis Bartok <pbartok@novell.com>
2689 * Hwnd.cs: Now using the theme 3d bordersize to calculate
2690 widths of Fixed3D borders
2692 2005-12-07 Jackson Harper <jackson@ximian.com>
2694 * MdiClient.cs: Fix warnings. Earn Mike's love.
2696 2005-12-07 Alexander Olk <alex.olk@googlemail.com>
2698 * ThemeClearlooks.cs:
2699 - Adjusted mouse over button color
2700 - Added first parts of CheckBox drawing
2701 - Added correct color for selected text background
2702 - Fixed ComboBox drawing
2703 - Added CPDrawBorder3D and CPDrawBorder
2705 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
2707 * XplatUIX11.cs: Added call to XBell for AudibleAlert
2709 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
2711 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIWin32.cs,
2712 XplatUIOSX.cs: Added AudibleAlert() method to have a means to
2713 alert users via sound. We could add an enum arg with different
2714 types of alerts in the future
2716 2005-12-06 Peter Dennis Bartok <pbartok@novell.com>
2718 * Control.cs: Fix behaviour problems pointed out by Mike
2720 2005-12-05 Mike Kestner <mkestner@novell.com>
2722 * StatusBarPanel.cs: add Invalidate method and hook it into all the
2723 prop setters. Calls parent.Refresh for now, but could be maybe be
2724 optimized with an internal method on StatusBar at some point.
2727 2005-12-05 Peter Dennis Bartok <pbartok@novell.com>
2729 * RichTextBox.cs: Implemented get_SelectionColor
2731 2005-12-05 Alexander Olk <alex.olk@googlemail.com>
2733 * ThemeClearlooks.cs:
2735 - Draw black button border only if button is Form.AcceptButton
2736 - Draw correct button color for pressed RadioButton if the mouse
2737 has entered the button
2738 - Updated ProgressBar drawing!
2739 - Updated CPDrawSizeGrip drawing
2740 - Updated StatusBarPanel drawing
2742 2005-12-05 Mike Kestner <mkestner@novell.com>
2744 * Control.cs (PreProcessMessage): add Keys.Alt based on LParam value.
2745 * X11Keyboard.cs (SendKeyboardInput): formal lParam for alt mod.
2747 2005-12-04 Alexander Olk <alex.olk@googlemail.com>
2749 * ThemeClearlooks.cs: Initial check-in, activate with
2750 export MONO_THEME=clearlooks
2751 * ThemeEngine.cs: Added ThemeClearlooks
2753 2005-12-03 Mike Kestner <mkestner@novell.com>
2755 * MenuAPI.cs: deactivate menus prior to calling item.PerformClick.
2758 2005-12-02 Jackson Harper <jackson@ximian.com>
2760 * Form.cs: If the child form has no menu the default main menu is
2761 used as the active menu.
2763 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
2765 * ListBox.cs: Check if any items exist before trying to resolve
2766 coordinates into items
2768 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
2770 * ThemeWin32Classic.cs: Hatchbrush on Win32 seems to always use white
2771 as the second color for the background hatch
2773 2005-12-02 Peter Dennis Bartok <pbartok@novell.com>
2775 * TextBoxBase.cs: Now uses Jackson's new and improved ImplicitScrollbar
2776 * RichTextBox.cs: FormatText position arguments are 1-based, now making
2777 sure that what we pass to FormatText is always 1-based. Fixes #76885
2779 2005-11-29 Miguel de Icaza <miguel@novell.com>
2781 * NumericUpDown.cs (EndInit): When we are done initializing,
2782 reflect any updates on the UI.
2784 2005-12-02 Jackson Harper <jackson@ximian.com>
2786 * ImplicitHScrollBar.cs:
2787 * ImplicitVScrollBar.cs: New scrollbars that don't take focus from
2788 their container controls.
2789 * TreeView.cs: Use the new implicit scrollbars.
2791 2005-12-02 Jackson Harper <jackson@ximian.com>
2793 * TreeView.cs: Make top_node internal so the TreeNodeCollections
2795 * TreeNodeCollection.cs: If we remove the topnode we need to
2796 update topnode to the next node in line.
2797 - When clearing nodes go through the same process as removing
2798 them, so they get depareneted and checked if they are top node.
2800 2005-12-01 Jackson Harper <jackson@ximian.com>
2802 * TreeView.cs: When imagelists are used the image area is
2803 selectable as well as the text.
2804 - If there are no selected nodes select the first one.
2805 * TreeNodeCollection.cs: Getting the TreeView is mildly expensive,
2806 so don't do it more then we need to.
2808 2005-12-01 Jackson Harper <jackson@ximian.com>
2810 * ThemeWin32Classic.cs: Reimplement the scroll arrow drawing so
2811 that arrows can be scaled.
2813 2005-12-01 Jackson Harper <jackson@ximian.com>
2815 * TreeNode.cs : Fixed bugs that caused FullPathTest + Traverse to
2816 fail. Patch by Dieter Bremes
2818 2005-11-30 Jackson Harper <jackson@ximian.com>
2820 * Form.cs: Property is 2.0 only
2821 * PrintDialog.cs: Signature fix.
2823 2005-11-30 Peter Dennis Bartok <pbartok@novell.com>
2826 - No longer artificially moves text 2 pixels down (now that we have
2827 borders this is no longer needed)
2828 - Added calcs for left, hanging and right indent
2830 2005-11-23 Mike Kestner <mkestner@novell.com>
2832 * Menu.cs: mark MenuChanged internal, since it's not exposed by MS.
2834 2005-11-30 Jackson Harper <jackson@ximian.com>
2836 * MdiChildContext.cs: Set the cloned menus forms, as these don't
2837 get cloned as part of CloneMenu ().
2838 * Menu.cs: Make sure the parent of the items get set correctly
2839 when they are added. And the owners are notified of the changes.
2840 * Form.cs: Create an ActiveMenu property, so that when MDI is used
2841 we can change the menu being displayed/handled by the form without
2842 changing the menu assosciated with the form.
2843 - Don't let Mdi children draw/handle menus.
2845 2005-11-30 Jackson Harper <jackson@ximian.com>
2847 * Menu.cs: Switch the MenuChanged method to OnMenuChanged and add
2848 a MenuChanged event. Just to make the API a little more
2851 * MenuItem.cs: Use the new OnMenuChanged
2852 * MdiChildContext.cs: Handle menu merging.
2853 * Form.cs: Implement MergedMenu.
2855 2005-11-30 Jackson Harper <jackson@ximian.com>
2857 * Menu.cs: We were misusing Add. Add goes behind the specified
2858 index according to the docs, and does not replace the specified
2859 index. So I added an Insert method.
2861 2005-11-30 Peter Dennis Bartok <pbartok@novell.com>
2863 * TextBoxBase.cs: Implemented Ctrl-Ins (Copy), Shift-Ins (Paste) and
2864 Shift-Del (Cut), apparently Emacs uses these old Win 2.x keys. This
2866 * RichTextBox.cs: Added calls to base for DnD events
2868 2005-11-28 Peter Dennis Bartok <pbartok@novell.com>
2871 - Fixed drag-selection related crash; style fixes
2872 - Implemented undo class
2873 o Implemented method to capture document state for specified
2874 range in document tree
2875 o Implemented method to restore captured document state
2876 o Implemented cursor tracking
2877 o Implemented basic undo stack
2878 - Added undo cursor tracking to methods altering cursor location
2879 - Added undo tracking to selection deletion (still missing
2880 other text-altering hookups)
2882 - Added SelectionLength property
2883 - Implemented CanPaste()
2884 - Implemented Paste()
2885 - Added missing protected methods
2886 - Fixed RTF->Document conversion; now uses font index 0 and color
2887 index 0 as the default font for the parsed text
2888 - Fixed RTF<->Document font size translation
2889 - Fixed RTF generation, now properly handles cross-tag boundaries
2890 for single line selection
2891 - No longer always appends blank line to generated RTF
2893 - Added missing attributes
2894 - Hooked up undo-related methods
2896 - Implemented Copy()
2897 - Implemented Paste()
2899 - Fixed caret mis-behaviour on backspace across line-boundaries
2901 2005-11-29 Jackson Harper <jackson@ximian.com>
2903 * MdiClient.cs: Add a method for activating mdi children. Very
2904 basic right now. I imagine someday it might need more girth.
2905 * MenuItem.cs: Implement MDI lists. When mdilist is true the mdi
2906 children windows names are added to the menu item.
2907 * ThemeWin32Classic.cs: Draw the arrow if the item is an
2908 mdilist. This happens regardless of whether or not there are any
2909 mdi windows to see in the list, and according to my tests happens
2910 before the items are even added. Also happens if there isn't even
2911 an mdi client to get windows from.
2913 2005-11-29 Alexander Olk <alex.olk@googlemail.com>
2915 * ThemeWin32Classic.cs: Make DrawFlatStyleRadioButton protected
2916 * ThemeNice.cs: Fix drawing of flatstyle radiobuttons
2918 2005-11-29 Jordi Mas i Hernandez <jordimash@gmail.com>
2920 * DataGridTableStyle.cs:
2921 - Create always the styles for the missing columns even if they are
2922 provided by the user (not default table style)
2925 - Fixes SetDataBinding (always re-attach source)
2926 - Fixes SetNewDataSource (only clear styles if they are not for
2928 - Expands OnTableStylesCollectionChanged to handle style refresh
2931 2005-11-29 Jackson Harper <jackson@ximian.com>
2933 * FileDialog.cs: Implement missing bits, remove some dead
2935 * FontDialog.cs: Implement missing Apply stuff, and ToString. Move
2936 creation of the panel so that the options set on the dialog are
2937 seen when the panel is created.
2938 * TreeView.cs: raise a click when items are clicked.
2940 2005-11-29 Jackson Harper <jackson@ximian.com>
2942 * MdiClient.cs: Pass some signature methods through to base.
2944 2005-11-28 Jackson Harper <jackson@ximian.com>
2946 * ListView.cs: Raise the click event when items are clicked.
2948 2005-11-28 Jackson Harper <jackson@ximian.com>
2950 * MdiClient.cs: Make this algorithm even more beautiful. And fix
2953 2005-11-27 Alexander Olk <alex.olk@googlemail.com>
2955 * ThemeNice.cs: - Removed 1 pixel bitmaps
2956 - Use SmoothingMode.AntiAlias where it makes sense
2957 (ScrollButton arrow for example)
2958 - Enhanced Button focus drawing
2959 - Fixed ComboBox drawing (no artefacts anymore, focus
2960 rectangle is back again, reduced size of ComboButton, etc.)
2961 - Fixed RadioButton focus drawing for Appearence.Button
2962 - Slight ScrollButton redesign
2963 - Some LinearGradientBrush size fixes
2964 - GroupBoxes have now rounded edges
2965 - Fixed StatusBar drawing
2967 2005-11-25 Alexander Olk <alex.olk@googlemail.com>
2969 * ThemeNice.cs: - Remove dead code
2970 - use correct background colors for menus, etc.
2971 - Fake pixel drawing with 1 pixel bitmaps
2973 2005-11-24 Jackson Harper <jackson@ximian.com>
2975 * MdiClient.cs: Size the scrollbars when resizing the window.
2976 - Resize the maximized windows when the client is resized
2977 * Form.cs: Make the child context available
2979 2005-11-23 Jackson Harper <jackson@ximian.com>
2981 * MdiChildContext.cs: Don't size windows if they are maximized.
2983 2005-11-23 Mike Kestner <mkestner@novell.com>
2985 * ContextMenu.cs: use MenuTracker.
2986 * Control.cs: remove menu handle usage.
2987 * Form.cs: remove menu handle usage.
2988 * Hwnd.cs: remove menu handle usage.
2989 * MainMenu.cs: Draw method moved here from MenuAPI.DrawMenuBar. Proxy
2990 motion and clicks to the new Tracker handlers.
2991 * Menu.cs: add sizing accessors, SelectedItem prop, kill CreateItems
2993 * MenuAPI.cs: refactored to combine popup and menubar event handling.
2994 Killed the MENU and MENUITEM data types and associated collections
2995 since we now keep the info on Menu and MenuItem. Expanded TRACKER into
2996 MenuTracker class that exposes the leftovers from the old MenuAPI
2997 static methods. Restructured Capture handling so that only one grab is
2998 done for the entire menu hierarchy instead of handing off grabs to
2999 submenus. Tracker now has an invisible control to Capture when active.
3000 * MenuItem.cs: add sizing accessors, kill Create
3002 * Theme.cs: remove menu handle and MENU(ITEM) usage.
3003 * ThemeWin32Classic.cs: use Menu/MenuItem sizing props instead of
3004 MENU(ITEM). remove menu handle usage, use Menu directly.
3005 * XplatUIDriver.cs: remove menu handle usage.
3006 * XplatUIOSX.cs: remove menu handle usage.
3007 * XplatUIWin32.cs: remove menu handle usage.
3008 * XplatUIX11.cs: remove menu handle usage.
3010 2005-11-22 Jackson Harper <jackson@ximian.com>
3012 * Hwnd.cs: Don't compute the menu size for
3013 DefaultClientRectangle.
3014 - Reenable menu sizes being computed for GetClienRectangle.
3015 * Form.cs: Remove comment of trechery
3017 2005-11-22 Jackson Harper <jackson@ximian.com>
3019 * Hwnd.cs: The adjustments for the menu bar are made when it is
3020 attached to the form.
3022 2005-11-19 Jackson Harper <jackson@ximian.com>
3024 * XplatUIX11.cs: Create an HGRN of the invalid area for WM_NCPAINT
3025 (just like on windows).
3027 2005-11-19 Jackson Harper <jackson@ximian.com>
3029 * MdiChildContext.cs: Handle all the buttons ourselves. We can't
3030 use real buttons anymore because they are in non client area. The
3031 one TODO here is that I need to somehow invalidate a section of
3032 the non client area.
3034 2005-11-18 Jackson Harper <jackson@ximian.com>
3036 * Control.cs: Put the enum check back in now that MDI doesnt have
3037 to use this to set border styles.
3038 * Form.cs: Only set mdi child windows borders if the handle has
3040 * MdiChildContext.cs: Don't set the InternalBorderStyle, just pass
3041 this directly on to the driver.
3042 - Get the move start position before adjusting for the titlebar
3043 height, this fixes the windows "skipping" when they are first
3046 2005-11-18 Jackson Harper <jackson@ximian.com>
3048 * XplatUIX11.cs: Just compute the mdi borders separately as they
3049 don't totally match up with normal form borders.
3051 2005-11-18 Jackson Harper <jackson@ximian.com>
3053 * Control.cs: Set WS_ styles for borders, so that the driver does
3054 not have to retrieve the control instance to figure out what kind
3055 of borders it should have.
3056 * Form.cs: Set the WS_EX_MDICHILD flag on mdi children, so the
3057 driver can know its an mdi child easily.
3058 * XplatUIX11.cs: Get the border styles and whether the window is
3059 MDI from the Styles and ExStyles params instead of having to get a
3060 control. This prevents a chicken and egg problem.
3062 2005-11-18 Jackson Harper <jackson@ximian.com>
3064 * MdiClient.cs: Fix typo so scrollbars show up correctly.
3066 2005-11-18 Jackson Harper <jackson@ximian.com>
3068 * MdiClient.cs: Calculate when to add and remove scrollbars
3070 * MdiChildContext.cs: Adjust the y position to take the titlebar
3072 - No height for FormBorderStyle.None
3074 2005-11-18 Jackson Harper <jackson@ximian.com>
3076 * Control.cs: Allow non enum values to be used for
3077 InternalBorderStyle. MDI does this to set a special border style.
3078 - New utility methods for converting points to/from client coords
3079 - Add the newly created control to the Controls collection before
3080 updating its style. This way UpdateStyle can walk the control
3081 heirarchy to find the control if needed.
3082 so I don't need to create a new Point object all the time.
3083 * Form.cs: Let MDI windows handle their border styles.
3084 - Set styles on MDI windows so the correct title style is derived.
3085 * MdiChildContext.cs: Move all the painting and window handling
3086 into the non client area.
3087 - Use correct sizing and put correct buttons on frames based on
3088 the FormBorderStyle.
3089 - Notify the mdi client about scrolling
3090 - Need to handle the buttons ourselves now, because they are all
3091 in non client areas and we can't add controls there.
3092 * MdiClient.cs: Halfway to scrolling, this implementation is
3093 somewhat broken though, we need to check to make sure other
3094 windows aren't causing scrolling before removing the bars. Also
3095 the bars need to be drawn on top, maybe I can switch implicit
3096 controls to be on top.
3097 * Hwnd.cs: caption_height and tool_caption_height are now
3098 properties of an hwnd, this way they can be set by the driver
3099 based on the type of window they are. In X11 the window manager
3100 handles the decorations so caption_height is zero unless its an
3102 - Add 3 pixel borders for MDI windows (0xFFFF).
3103 - Get rid of some code duplication, have DefaultClientRectanle
3104 just call GetClientRectangle.
3105 * XplatUIX11.cs: Pass caption_height and tool_caption_height to
3107 - Set border styles differently for mdi windows.
3108 * XplatUIOSX.cs: Pass caption_height and tool_caption_height to
3111 2005-11-15 Mike Kestner <mkestner@novell.com>
3113 * Menu.cs: when adding an item to the collection, if item is already
3114 parented, remove it from the parent.
3116 2005-11-13 Alexander Olk <alex.olk@googlemail.com>
3118 * X11DesktopColors.cs: Added KDE support
3120 2005-11-11 Peter Dennis Bartok <pbartok@novell.com>
3123 - Clipboard methods now can translate Rtf format
3124 - No longer removes clipboard contents whenever a new format is added
3125 to allow placing multiple formats on the clipboard
3126 * Clipboard.cs: Clipboard now supports getting a IDataObject and
3127 will place all formats contained in it onto the clipboard. Also
3128 now cleans the clipboard before placing a new object onto it
3130 - Implemented set_Rtf
3131 - Implemented set_SelectedRtf
3132 - Created InsertRTFFromStream() method to allow single code base
3133 for all properties and methods that insert RTF into document
3134 - Removed debug output
3136 - Fixed Delete(int) to fix up line numbers
3137 - Fixed ReplaceSelection to combine start and end line
3138 - Fixed serious DeleteChars bug that would leave the document tree
3140 - Improved DumpTree with several logic checks to detect broken
3142 - Removed debug lines
3143 - Fixed Caret.WordForward/WordBack moving code, now always also
3144 updates caret.tag (fixes crash when word-selecting across tag
3145 boundaries via keyboard)
3146 - Added Insert() method for inserting multiline text into documents
3147 - Fixed DeleteChars() calculation errors that would cause a broken
3148 tag chain with multiple tag lines
3149 - DeleteChars() no longer crashes on multi-tag lines if not all tags
3150 - Split() no longer moves caret if split is at caret location
3151 - ReplaceSelection() now updates the cursor and re-displays it
3152 - ReplaceSelection() now uses new Insert() method to avoid code
3154 - FormatText() can now handle formatting partial lines
3156 - Append now uses new TextControl.Insert() method (this avoids
3158 - Implemented Ctrl-X (Cut) (
3159 - Implemented Ctrl-C (Copy)
3160 - Implemented Ctrl-V (Paste) (Still some bugs related to screen
3161 regeneration when pasting text; roundtripping Copy&Paste within
3162 edit control still fails due to some calculation bugs in GenerateRTF)
3163 - The Delete key will now remove the current selection if it is visible
3164 * TextBox.cs: Removed debug lines
3165 * XplatUI.cs: Trigger initialization of DataFormats (which requires the
3166 driver to be initialized and can't therefore be done via a static ctor)
3168 2005-11-10 Peter Dennis Bartok <pbartok@novell.com>
3170 * TextControl.cs: Added backend code for finding char arrays and strings
3172 - Added mouse wheel scroll support
3173 - Added support for VScroll and HScroll events
3175 - Implemented all seven Find() variants
3176 - Implemented GetCharFromPosition()
3177 - Implemented GetCharIndexFromPosition()
3178 - Implemented GetLineFromIndex()
3179 - Implemented GetPositionFromCharIndex();
3180 - Implemented SaveFile for PlainText and UnicodeText
3181 - Fixed set_Font, now setting a new font applies that font to
3183 - Implemented generic Document to RTF converter
3184 - Implemented SaveFile for RichText format (still missing unicode
3185 conversion for non-ansi chars)
3186 - Implemented get_Rtf
3187 - Implemented get_SelectedRtf
3189 2005-11-09 Peter Dennis Bartok <pbartok@novell.com>
3191 * Control.cs (WndProc): Call HandleClick after having sent OnMouseUp
3192 to allow any captures to be released before triggering OnClick. This
3193 way a click handler may capture the mouse without interference.
3194 * XplatUIX11.cs: Always send mouse messages to grab window if one exists.
3195 This way we send them even though X may not allow a grab (if the window
3196 isn't visible, for example)
3198 2005-11-08 Pedro Martinez Julia <pedromj@gmail.com>
3200 * DataGridViewRowEventArgs.cs: DataGridView implementation
3201 * DataGridViewElement.cs: DataGridView implementation
3202 * DataGridViewComboBoxCell.cs: DataGridView implementation
3203 * DataGridViewDataErrorContexts.cs: DataGridView implementation
3204 * DataGridViewCellErrorTextNeededEventArgs.cs: DataGridView implementation
3205 * DataGridViewColumnHeadersHeightSizeMode.cs: DataGridView implementation
3206 * ImageLayout.cs: DataGridView implementation
3207 * DataGridViewComboBoxColumn.cs: DataGridView implementation
3208 * DataGridViewCellMouseEventHandler.cs: DataGridView implementation
3209 * DataGridViewSelectionMode.cs: DataGridView implementation
3210 * IDataGridViewEditingControl.cs: DataGridView implementation
3211 * DataGridViewSortCompareEventHandler.cs: DataGridView implementation
3212 * DataGridViewCellStyleContentChangedEventHandler.cs: DataGridView implementation
3213 * DataGridViewAutoSizeModeEventHandler.cs: DataGridView implementation
3214 * DataGridViewColumnStateChangedEventHandler.cs: DataGridView implementation
3215 * DataGridViewColumnSortMode.cs: DataGridView implementation
3216 * DataGridView.cs: DataGridView implementation
3217 * DataGridViewRowStateChangedEventHandler.cs: DataGridView implementation
3218 * DataGridViewRowPostPaintEventArgs.cs: DataGridView implementation
3219 * DataGridViewDataErrorEventArgs.cs: DataGridView implementation
3220 * Padding.cs: DataGridView implementation
3221 * DataGridViewCellParsingEventArgs.cs: DataGridView implementation
3222 * DataGridViewCellStateChangedEventHandler.cs: DataGridView implementation
3223 * DataGridViewRowEventHandler.cs: DataGridView implementation
3224 * DataGridViewCellPaintingEventHandler.cs: DataGridView implementation
3225 * DataGridViewCellFormattingEventHandler.cs: DataGridView implementation
3226 * DataGridViewButtonCell.cs: DataGridView implementation
3227 * DataGridViewCellStyleContentChangedEventArgs.cs: DataGridView implementation
3228 * DataGridViewEditMode.cs: DataGridView implementation
3229 * DataGridViewCellValueEventArgs.cs: DataGridView implementation
3230 * DataGridViewRowCancelEventArgs.cs: DataGridView implementation
3231 * DataGridViewRowHeadersWidthSizeMode.cs: DataGridView implementation
3232 * DataGridViewCheckBoxColumn.cs: DataGridView implementation
3233 * DataGridViewCellToolTipTextNeededEventHandler.cs: DataGridView implementation
3234 * DataGridViewAutoSizeColumnsMode.cs: DataGridView implementation
3235 * DataGridViewCellEventHandler.cs: DataGridView implementation
3236 * DataGridViewEditingControlShowingEventHandler.cs: DataGridView implementation
3237 * DataGridViewCellStyleConverter.cs: DataGridView implementation
3238 * DataGridViewSelectedRowCollection.cs: DataGridView implementation
3239 * DataGridViewBindingCompleteEventHandler.cs: DataGridView implementation
3240 * DataGridViewColumnEventArgs.cs: DataGridView implementation
3241 * DataGridViewRowHeightInfoPushedEventHandler.cs: DataGridView implementation
3242 * DataGridViewRowContextMenuStripNeededEventHandler.cs: DataGridView implementation
3243 * QuestionEventArgs.cs: DataGridView implementation
3244 * IDataGridViewEditingCell.cs: DataGridView implementation
3245 * DataGridViewTriState.cs: DataGridView implementation
3246 * DataGridViewColumnDesignTimeVisibleAttribute.cs: DataGridView implementation
3247 * DataGridViewCellStateChangedEventArgs.cs: DataGridView implementation
3248 * DataGridViewColumnCollection.cs: DataGridView implementation
3249 * DataGridViewCellValueEventHandler.cs: DataGridView implementation
3250 * DataGridViewRowDividerDoubleClickEventHandler.cs: DataGridView implementation
3251 * DataGridViewCellFormattingEventArgs.cs: DataGridView implementation
3252 * DataGridViewColumn.cs: DataGridView implementation
3253 * DataGridViewCellBorderStyle.cs: DataGridView implementation
3254 * DataGridViewCellContextMenuStripNeededEventHandler.cs: DataGridView implementation
3255 * DataGridViewCellValidatingEventArgs.cs: DataGridView implementation
3256 * DataGridViewRow.cs: DataGridView implementation
3257 * DataGridViewImageCellLayout.cs: DataGridView implementation
3258 * DataGridViewImageCell.cs: DataGridView implementation
3259 * DataGridViewTopLeftHeaderCell.cs: DataGridView implementation
3260 * DataGridViewCheckBoxCell.cs: DataGridView implementation
3261 * DataGridViewHeaderCell.cs: DataGridView implementation
3262 * DataGridViewCellErrorTextNeededEventHandler.cs: DataGridView implementation
3263 * DataGridViewRowHeightInfoPushedEventArgs.cs: DataGridView implementation
3264 * DataGridViewAutoSizeColumnsModeEventHandler.cs: DataGridView implementation
3265 * DataGridViewTextBoxColumn.cs: DataGridView implementation
3266 * QuestionEventHandler.cs: DataGridView implementation
3267 * DataGridViewCellStyleScopes.cs: DataGridView implementation
3268 * DataGridViewSortCompareEventArgs.cs: DataGridView implementation
3269 * DataGridViewCellContextMenuStripNeededEventArgs.cs: DataGridView implementation
3270 * DataGridViewCell.cs: DataGridView implementation
3271 * DataGridViewCellEventArgs.cs: DataGridView implementation
3272 * DataGridViewClipboardCopyMode.cs: DataGridView implementation
3273 * DataGridViewCellStyle.cs: DataGridView implementation
3274 * DataGridViewColumnHeaderCell.cs: DataGridView implementation
3275 * DataGridViewRowPrePaintEventHandler.cs: DataGridView implementation
3276 * DataGridViewRowCancelEventHandler.cs: DataGridView implementation
3277 * TextFormatFlags.cs: DataGridView implementation
3278 * DataGridViewCellToolTipTextNeededEventArgs.cs: DataGridView implementation
3279 * DataGridViewDataErrorEventHandler.cs: DataGridView implementation
3280 * DataGridViewAdvancedCellBorderStyle.cs: DataGridView implementation
3281 * DataGridViewCellPaintingEventArgs.cs: DataGridView implementation
3282 * DataGridViewButtonColumn.cs: DataGridView implementation
3283 * DataGridViewRowsRemovedEventArgs.cs: DataGridView implementation
3284 * HandledMouseEventArgs.cs: DataGridView implementation
3285 * DataGridViewCellParsingEventHandler.cs: DataGridView implementation
3286 * DataGridViewColumnDividerDoubleClickEventHandler.cs: DataGridView implementation
3287 * DataGridViewCellMouseEventArgs.cs: DataGridView implementation
3288 * DataGridViewAutoSizeRowsMode.cs: DataGridView implementation
3289 * DataGridViewRowCollection.cs: DataGridView implementation
3290 * DataGridViewAdvancedBorderStyle.cs: DataGridView implementation
3291 * DataGridViewCellCancelEventHandler.cs: DataGridView implementation
3292 * DataGridViewHitTestType.cs: DataGridView implementation
3293 * DataGridViewAutoSizeModeEventArgs.cs: DataGridView implementation
3294 * DataGridViewColumnStateChangedEventArgs.cs: DataGridView implementation
3295 * DataGridViewColumnEventHandler.cs: DataGridView implementation
3296 * DataGridViewRowDividerDoubleClickEventArgs.cs: DataGridView implementation
3297 * DataGridViewAutoSizeRowMode.cs: DataGridView implementation
3298 * DataGridViewRowHeightInfoNeededEventArgs.cs: DataGridView implementation
3299 * DataGridViewRowsDeletedEventArgs.cs: DataGridView implementation
3300 * DataGridViewTextBoxEditingControl.cs: DataGridView implementation
3301 * DataGridViewContentAlignment.cs: DataGridView implementation
3302 * DataGridViewRowPostPaintEventHandler.cs: DataGridView implementation
3303 * DataGridViewComboBoxEditingControl.cs: DataGridView implementation
3304 * DataGridViewCellValidatingEventHandler.cs: DataGridView implementation
3305 * DataGridViewSelectedColumnCollection.cs: DataGridView implementation
3306 * DataGridViewPaintParts.cs: DataGridView implementation
3307 * DataGridViewCellCollection.cs: DataGridView implementation
3308 * DataGridViewRowsAddedEventArgs.cs: DataGridView implementation
3309 * DataGridViewImageColumn.cs: DataGridView implementation
3310 * DataGridViewRowsRemovedEventHandler.cs: DataGridView implementation
3311 * DataGridViewElementStates.cs: DataGridView implementation
3312 * DataGridViewRowHeightInfoNeededEventHandler.cs: DataGridView implementation
3313 * DataGridViewColumnDividerDoubleClickEventArgs.cs: DataGridView implementation
3314 * DataGridViewRowPrePaintEventArgs.cs: DataGridView implementation
3315 * DataGridViewRowStateChangedEventArgs.cs: DataGridView implementation
3316 * DataGridViewEditingControlShowingEventArgs.cs: DataGridView implementation
3317 * DataGridViewCellCancelEventArgs.cs: DataGridView implementation
3318 * DataGridViewRowHeaderCell.cs: DataGridView implementation
3319 * DataGridViewBindingCompleteEventArgs.cs: DataGridView implementation
3320 * DataGridViewTextBoxCell.cs: DataGridView implementation
3321 * DataGridViewBand.cs: DataGridView implementation
3322 * DataGridViewAutoSizeColumnModeEventArgs.cs: DataGridView implementation
3323 * DataGridViewHeaderBorderStyle.cs: DataGridView implementation
3324 * DataGridViewRowsAddedEventHandler.cs: DataGridView implementation
3325 * DataGridViewAutoSizeColumnMode.cs: DataGridView implementation
3326 * DataGridViewAutoSizeColumnModeEventHandler.cs: DataGridView implementation
3327 * DataGridViewAutoSizeColumnsModeEventArgs.cs: DataGridView implementation
3328 * DataGridViewRowErrorTextNeededEventHandler.cs: DataGridView implementation
3329 * DataGridViewSelectedCellCollection.cs: DataGridView implementation
3330 * DataGridViewRowContextMenuStripNeededEventArgs.cs: DataGridView implementation
3331 * DataGridViewRowErrorTextNeededEventArgs.cs: DataGridView implementation
3332 * DataGridViewComboBoxDisplayStyle.cs: DataGridView implementation
3334 2005-11-08 Peter Dennis Bartok <pbartok@novell.com>
3336 * ThemeWin32Classic.cs:
3337 - Draw the outside focus rectangle around buttons
3338 - Use CPDrawFocusRectangle to draw focus rectangles until Cairo
3339 doesn't use end caps for every dash of a line anymore. This
3340 workaround ignores the forecolor.
3342 2005-11-08 Kornél Pál <kornelpal@hotmail.com>
3344 * ImageList.cs: Don't use ArgbColor with LayoutKind.Explicit as it isn't
3347 2005-11-07 Jackson Harper <jackson@ximian.com>
3349 * X11Dnd.cs: Set the X/Y positions on the DragEventArgs correctly.
3351 2005-11-07 Jackson Harper <jackson@ximian.com>
3353 * ScrollableControl.cs: Calculate the maximum and change vars
3354 (more) correctly so that scrollbars appear as a sensible size.
3356 2005-11-04 Jackson Harper <jackson@ximian.com>
3358 * TreeNodeCollection.cs: Refresh when nodes are cleared from the
3360 * TreeView.cs: When the tree is sorted null out the top_node so
3361 that it is recalculated.
3362 - Use dotted lines instead of dashed lines to match MS better.
3364 2005-11-04 Jordi Mas i Hernandez <jordimash@gmail.com>
3367 - Implements key search for items. Useful when browsing files with FileDialog
3368 - When changing view mode or when clear the items reset scrollbar positions
3370 2005-11-04 Jackson Harper <jackson@ximian.com>
3372 * CurrencyManager.cs: Implement the MetaDataChanged event, the
3373 Reset method, and the CheckEmpty. CheckEmpty is just a total guess
3374 as to what the method may do as there is no real way of creating a
3375 derived CurrencyManager and calling the method.
3377 2005-11-03 Jackson Harper <jackson@ximian.com>
3379 * ThemeWin32Classic.cs: Implement ownerdrawing in the tab control
3380 * TabControl.cs: Add Ownerdrawing bits, add the UpdateTabSelection
3381 method which seems to just be used internally to refresh the tabs.
3383 2005-11-03 Jackson Harper <jackson@ximian.com>
3385 * TabControl.cs: Implement the remove method. Fix some broken
3388 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
3390 * DateTimePicker.cs:
3391 - Added missing DateTimePickerAccessibleObject class
3392 - Added missing events
3393 - Added OnFontChanged method
3394 * Form.cs: Added missing attributes
3395 * TreeView.cs: Added missing attributes
3397 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
3399 * GridItemCollection.cs: Fix signatures
3401 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
3403 * XplatUI.cs: Updated build rev/date
3404 * ComboBox.cs, DataGridTextBoxColumn.cs Control.cs,
3405 DataGridTableStyle.cs, DataGrid.cs, DateTimePicker.cs: Signature fixes
3406 * Application.cs: Trigger context-specific ExitThread events
3408 2005-11-03 Jackson Harper <jackson@ximian.com>
3412 * GridTableStylesCollection.cs:
3417 * MonthCalendar.cs: Signature fixes
3419 2005-11-03 Jackson Harper <jackson@ximian.com>
3421 * TreeNodeCollection.cs: Remove should not be virtual.
3422 * TreeView.cs: Implement the last of the missing methods.
3424 2005-11-03 Jackson Harper <jackson@ximian.com>
3426 * TreeNodeConverter.cs: Implement to get off my class-status back.
3428 2005-11-03 Jackson Harper <jackson@ximian.com>
3430 * TreeView.cs: Hookup the bits for drag and drop.
3431 * TreeNode.cs: Don't cache the tree_view or index anymore, now
3432 that nodes can be moved from tree to tree easily this just causes
3433 all sorts of problems.
3434 * TreeNodeCollection: Don't need to give treenodes an index and
3435 treeview anymore when they are added, these are computed on the
3436 fly. Also make sure to remove a node before its added.
3438 2005-11-03 Peter Dennis Bartok <pbartok@novell.com>
3441 - Added CaretSelection enum
3442 - Added comparison methods to Marker struct, makes selection code
3444 - Added SelectionStart and SelectionEnd as 'moveable' location for
3445 the CaretDirection enum and handler
3446 - Added selection_prev variable to track optimized invalidation for
3447 word and line selection
3448 - Added SelectionVisible property (returns true if there is a valid
3450 - Switched CaretHasFocus to only display the caret if there is no
3452 - Avoiding StringBuilder.ToString to retrieve a single char, instead
3453 using the direct character index; should be much faster
3454 - Added various conditional debug statements
3455 - Fixed invalidation calculation for selection ranges
3456 - Added ExpandSelection() method to support word and line selection
3457 - Switched SetSelectionToCaret to use new Marker compare overloads
3458 - Added central IsWordSeparator() method to determine word
3459 separators/whitespace and FindWordSeparator() to streamline common
3460 usage of IsWordSeparator()
3462 - Removed unneeded grabbed variable, it was just mirroring
3464 - No longer firing OnTextChanged event when Text setter is called,
3465 since the base will fire the event for us
3466 - Added handling of Ctrl-Up/Down selection
3467 - Added handling of Shift-Cursorkey selection
3468 - Added handling for Ctrl-Delete and Ctrl-Backspace to remove
3470 - Added handling of Shift and Ctrl-Shift-Home/End selection
3471 - Removed some debug output
3472 - Added handling for single/double/tripple-click to place caret/
3473 select word/select line respectively (Fixes bug #76031)
3474 - Added support for drag expansion of word/line selection
3475 * RichTextBox.cs: Handle GotFocus event to trigger redrawing of
3478 2005-11-02 Jackson Harper <jackson@ximian.com>
3480 * X11Dnd.cs: If the drag is going to and from a MWF window just
3481 copy the data instead of sending it out through the X Selection
3484 2005-11-02 Jackson Harper <jackson@ximian.com>
3487 * XplatUIX11.cs: When in a drag we don't want motion notify
3488 messages to get passed on to the other controls. This prevents
3489 mouse move messages from showing up in the drag source.
3491 2005-11-02 Jackson Harper <jackson@ximian.com>
3493 * X11Dnd.cs: Remove unneeded call to XAllowEvents. Make sure that
3494 the correct button is release to end a drag.
3495 * XplatUIX11.cs: Make the button state internal so the drag system
3496 can access it. Dragging needs to know about all button releases,
3497 not just left button.
3499 2005-11-02 Miguel de Icaza <miguel@novell.com>
3501 * Form.cs (Icon): If the icon is null, reset the icon to the
3504 * Cursor.cs: When writing the AND-mask bitmap do not include the
3505 number of colors, but hardcode those to two (black and white),
3506 fixes the loading of color cursors (Paint Dot Net).
3508 * Form.cs: To debug, allow MONO_MWF_SCALING=disable variable to
3509 turn off autoscaling.
3511 * Cursor.cs: Allow resource type to be 1 or 2 (from ImageMagic).
3513 2005-11-02 Jackson Harper <jackson@ximian.com>
3515 * X11Dnd.cs: Make sure to send a status message if the pointer
3516 enters a control that can not accept a drop, otherwise the cursor
3517 isn't updated correctly. Also tried to compress the lines of code
3520 2005-11-02 Jackson Harper <jackson@ximian.com>
3522 * X11Dnd.cs: Change cursors based on drag action. Also attempt to
3523 set actions correctly. This isn't perfect as XDND and win32 have
3524 some differences on how you allow actions. I'll clear this up by
3525 adding a path for drag from MWF to MWF windows.
3526 * XplatUIX11.cs: Hook into the dnd system.
3528 2005-11-02 Jordi Mas i Hernandez <jmas@softcatala.org>
3530 * ListView.cs: Fixes scroll bar visibility. Hide them if they were
3531 previously shown but they are no longer need it. Very obvious when
3532 browsing files with FileDialog.
3534 2005-11-01 Peter Dennis Bartok <pbartok@novell.com>
3536 * Control.cs: We always need to call OnPaintBackground. We pretty much
3537 ignore AllPaintingInWmPaint and always do the painting there, whether
3538 it's set or not, since we always ignore the WM_ERASEBKGND message
3539 (which we don't generate on X11). This fixes #76616.
3540 * Panel.cs: Removed unneeded background painting. This happens properly
3541 in Control.cs already
3543 2005-10-31 Mike Kestner <mkestner@novell.com>
3545 * Menu.cs: Add items to collection before setting their index.
3546 * MenuItem.cs : add range checking with ArgumentException like MS.
3549 2005-10-31 Jackson Harper <jackson@ximian.com>
3551 * ListBox.cs: Invalidate if the area is visible at all not just
3552 contained in the visible rect. Fixes unselection of semi visible
3555 2005-10-31 Jackson Harper <jackson@ximian.com>
3557 * Control.cs: Consistently name the dnd methods. Make them
3558 internal so we can override them to match some MS behavoir
3560 * Win32DnD.cs: Use the new consistent names.
3562 2005-10-31 Jackson Harper <jackson@ximian.com>
3564 * TreeView.cs: Don't draw the selected node when we lose focus.
3566 2005-10-31 Jackson Harper <jackson@ximian.com>
3568 * X11Dnd.cs: We still need to reset the state even though a full
3569 reset isn't being done, otherwise status's still get sent all over
3572 2005-10-31 Jackson Harper <jackson@ximian.com>
3574 * Control.cs: Make the dnd_aware flag internal so the dnd
3575 subsystem can check it. Catch exceptions thrown in dnd handlers to
3577 * Hwnd.cs: Add a flag for whether or not a window is dnd aware.
3578 * X11Dnd.cs: Handle null data in the converters. Set the XDND
3579 version when sending a XdndEnter. Use the control/hwnd dnd_aware
3580 flags to reduce the number of dnd enters/status's sent.
3582 2005-10-31 Jackson Harper <jackson@ximian.com>
3584 * X11Dnd.cs: Don't need the sizeof here. Patch by Jordi Mas.
3586 2005-10-31 Jordi Mas i Hernandez <jordi@ximian.com>
3588 * PictureBox.cs: Fixes 76512
3590 2005-10-28 Jackson Harper <jackson@ximian.com>
3592 * X11Dnd.cs: Early implementation to support winforms being a drag
3593 source for data on X11. Also restructured the converters so they
3594 can go both ways now.
3595 * XplatUIX11.cs: Tie ins to the the Dnd stuff.
3597 2005-10-27 Peter Dennis Bartok <pbartok@novell.com>
3599 * XplatUIX11.cs: Fixed FIXME - implemented ASCII encoding for XA_STRING
3602 2005-10-27 Jackson Harper <jackson@ximian.com>
3604 * TreeNode.cs: Implement serialization so my DnD examples will work.
3606 2005-10-24 Kornél Pál <kornelpal@hotmail.com>
3608 * ButtonBase.cs, ListView.cs, NotifyIcon.cs, PictureBox.cs, ToolBar.cs,
3609 TreeView.cs: Don't dispose objects that are not owned.
3611 2005-10-24 Peter Dennis Bartok <pbartok@novell.com>
3613 * Cursor.cs: Defaulting the Current cursor to Cursors.Default. We
3614 should retrieve the current cursor and report that, but XplatUI
3615 doesn't (yet) have an interface for that (and I'm not sure I even
3617 * XplatUIWin32.cs: Fixed override behaviour. The override is temporary,
3618 until any message loop processing is done (and the WM_SETCURSOR
3619 replaces the cursor to the proper one)
3621 - Fixed override behaviour, we can't set the cursor globally on X11,
3622 just for our windows.
3623 - Invalidating the System.Drawing X11 display handle when we are
3625 * Control.cs: Fix to make csc happy
3627 2005-10-23 Peter Dennis Bartok <pbartok@novell.com>
3630 - get_Text: Add last line (without trailing newline) to returned
3632 - get_TextLength: Count last line in returned length
3633 - ToString: Call Text property instead of duplicating code
3635 2005-10-23 Kornél Pál <kornelpal@hotmail.com>
3637 * ImageList.cs: Dispose ImageAttributes objects.
3639 2005-10-22 Kornél Pál <kornelpal@hotmail.com>
3641 * ImageList.cs: Use attribute constructors with less arguments where
3644 2005-10-22 Kornél Pál <kornelpal@hotmail.com>
3646 * ImageList.cs: Added lastKeyIndex field and use in IndexOfKey.
3647 Use typeof instead of strings when assembly is referenced. Added
3650 2005-10-21 Jackson Harper <jackson@ximian.com>
3652 * ListView.cs: Raise a double click event. Also tried to somewhat
3653 fix when the selectedindexchanged event is raised. Its still
3656 2005-10-21 Jackson Harper <jackson@ximian.com>
3658 * TreeView.cs: New method to invalidate the plus minus area of a
3659 node without invalidating the whole node (maybe this can be used
3660 in some more places).
3661 * TreeNodeCollection.cs: When adding to an empty node we need to
3662 invalidate its plus minus area so the little block shows up.
3664 2005-10-21 Jackson Harper <jackson@ximian.com>
3666 * TreeView.cs: Make sure that when we invalidate a node the bounds
3667 are big enough to cover the selected box and the focus
3668 rectangle. Use a different colour for the lines connecting nodes
3669 so they show up with all themes.
3671 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
3673 * NativeWindow.cs: Don't call anything that could call into the driver,
3674 we might be on a different thread.
3676 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
3678 * Control.cs(Dispose): Since Dispose might run on a different thread,
3679 make sure that we call methods that could call into the driver via
3680 invoke, to avoid thread issues
3682 2005-10-21 Peter Dennis Bartok <pbartok@novell.com>
3684 * XplatUI.cs: Removed finalizer
3685 * XplatUIX11.cs: Removed Destructor, was causing crashes due to X11
3686 not allowing to be called on the finalizer thread.
3688 2005-10-21 Kornél Pál <kornelpal@hotmail.com>
3691 - Reverted r51889 and r51891.
3692 - Added ImageListItem class that stores unmodified image items and image
3693 properties required to create list images until handle is created.
3694 - Added AddItem and moved image creation logic to AddItemInternal.
3695 - Added CreateHandle method that creates images based on unmodified items.
3696 - Added DestroyHandle that changes state to store unmodified items.
3697 - Add and AddStrip methods no more create handle.
3698 - ReduceColorDepth has no return value.
3699 - Dispose destroys handle.
3700 - Modified other methods to reflect the above changes.
3701 - Implemented key support.
3702 - Added profile 2.0 members and attributes.
3703 - Added private Reset and ShouldSerialize methods that provide the same
3704 behavior as MS.NET but the Visual Studio .NET designer seems to ignore
3705 them as they are private.
3706 - Added some more comments about implementation details.
3708 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
3710 * DataGrid.cs: Adds support for vertical scrolling using the mousewheel
3712 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
3714 * Binding.cs: No PushData/PullData if there is no binding (fixes crash)
3716 2005-10-21 Jordi Mas i Hernandez <jordi@ximian.com>
3718 * DataGridDrawingLogic.cs: Fixes column hit calcultation
3719 * DataGridColumnStyle.cs: Remove debug message
3721 2005-10-20 Jackson Harper <jackson@ximian.com>
3723 * TreeView.cs: We can always get input keys regardless of whether
3724 or not editing is enabled. They are used for navigation.
3726 2005-10-20 Jackson Harper <jackson@ximian.com>
3728 * TreeNode.cs: Use the viewport rect for determining if a node
3729 needs to be moved for visibility. Don't use Begin/End edit. This
3730 calls a full refresh when its done.
3731 * TreeView.cs: New SetBottom works correctly. Make the viewport
3732 rect property internal so the treenodes can see it. When clicking
3733 on a node we need to ensure that its visible because it might just
3734 be partly visible when clicked.
3736 2005-10-20 Jackson Harper <jackson@ximian.com>
3738 * TreeNodeCollection.cs: Remove debug code.
3740 2005-10-20 Jordi Mas i Hernandez <jordi@ximian.com>
3742 * Datagrid.cs: Implements column sorting in Datagrid
3743 * DataGridColumnStyle.cs: Implements column sorting in Datagrid
3745 2005-10-20 Jackson Harper <jackson@ximian.com>
3747 * TreeNodeCollection.cs: Remove items properly. Update the correct
3748 area after removing them.
3750 2005-10-20 Jordi Mas i Hernandez <jordi@ximian.com>
3752 * Datagrid.cs: Should not call base.OnPaintBackground
3754 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
3756 * XplatUIX11.cs (GetMessage):
3757 - Now properly calculates NC_xBUTTONDOWN coordinates off the whole
3758 window instead of client window
3759 - Now properly calculates NC_xBUTTONUP message coordinates
3760 - ScreenToMenu now properly calculates it's coordinates of whole
3761 window, since menus are in the whole window, not in the client
3763 - Added WholeToScreen coordinate translation method
3765 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
3767 * XplatUIX11.cs (GetMessage): Don't return in situations where we don't
3768 want to return a message, loop back to the beginning of the function
3769 and grab the next real message to process instead.
3771 2005-10-20 Peter Dennis Bartok <pbartok@novell.com>
3773 * Splitter.cs: Properly set limits if no filler control is used
3775 2005-10-19 Jackson Harper <jackson@ximian.com>
3777 * ColorDialog.cs: Don't show the help button if it is not enabled
3778 instead of disabling it (this is what MS does). Don't create the
3779 panel until the dialog is run, otherwise the vars (such as
3780 ShowHelp) are not set yet.
3782 2005-10-19 Jackson Harper <jackson@ximian.com>
3784 * TreeView.cs: Implement Begin/EndEdit more correctly so refreshes
3785 are reduced when adding nodes.
3787 * TreeNodeCollection.cs: Use UpdateNode instead of refreshing the
3790 2005-10-19 Jackson Harper <jackson@ximian.com>
3792 * FolderBrowserDialog.cs: End editing our treeview so the window
3793 actually gets refreshed.
3795 2005-10-18 Peter Dennis Bartok <pbartok@novell.com>
3797 * Control.cs: Fixed logic flip on when to call OnPaintBackground.
3798 Obsoleted handling of WM_ERASEBKGND, now always draws our background
3801 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
3803 * MenuAPI.cs: Returns after Hidding window
3804 * XplatUIX11.cs: Added TODO found while debugging menu issues
3806 2005-10-18 Peter Dennis Bartok <pbartok@novell.com>
3808 * XplatUIX11.cs: Do not re-map the whole window when it's size
3809 becomes non-zero unless it's supposed to be actually visible
3811 2005-10-18 Jackson Harper <jackson@ximian.com>
3813 * TreeView.cs: We don't need to keep a count anymore.
3814 * TreeNodeCollection.cs: Fix off by one in RemoveAt, Insert can
3815 use the Grow method.
3817 2005-10-18 Jackson Harper <jackson@ximian.com>
3819 * TreeNodeCollection.cs: Insert is not supported on arrays, so
3820 implement it manually here.
3822 2005-10-18 Jackson Harper <jackson@ximian.com>
3824 * ImageList.cs: Dont kill the list when the colour depth is
3825 changed, just change the colour depth of all the images.
3826 - Same goes for setting the image size. Just resize them all
3827 instead of killing the list softly.
3829 2005-10-18 Jackson Harper <jackson@ximian.com>
3831 * Control.cs: Don't invalidate empty rectangles.
3833 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
3836 - Adds checked item to the Checked/Item lists (where empty before)
3837 - Do not add items to the Selected lists if they are already present
3839 - Fixes IsFixedSize, SyncRoot, IsReadOnly in many collections
3840 - When deleting items make sure that we delete them for the Selected
3841 and Checked list also.
3843 2005-10-18 Jordi Mas i Hernandez <jordi@ximian.com>
3845 * Label.cs: Dispose objects no longer used
3846 * ThemeWin32Classic.cs: Dispose objects no longer used
3848 2005-10-18 Jackson Harper <jackson@ximian.com>
3850 * TabControl.cs: Don't refresh the whole control when the tabs are
3851 scrolled, we just need to refresh the tab area.
3853 2005-10-17 Jackson Harper <jackson@ximian.com>
3855 * XplatUIX11.cs: Compress code a little bit. Only calculate the
3856 after handle when we need it.
3858 2005-10-17 Peter Dennis Bartok <pbartok@novell.com>
3860 * Control.cs: When the parent size changes, recalculate anchor
3861 positions. Partial fix for #76462
3863 2005-10-17 Peter Dennis Bartok <pbartok@novell.com>
3865 * ThemeWin32Classic.cs: Make sure the picturebox has it's background
3868 2005-10-17 Jackson Harper <jackson@ximian.com>
3870 * MonthCalendar.cs: Don't create the numeric up down until our
3871 handle is created. Otherwise our handle is created in the
3872 constructor and we don't know if we are a WS_CHILD or WS_POPUP
3875 2005-10-17 Jackson Harper <jackson@ximian.com>
3877 * TreeView.cs: Merge in patch by Rafael Teixeira to align strings
3880 2005-10-17 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
3881 * TreeNode.cs : small logical fix (was using local var instead of field)
3883 2005-10-17 Jordi Mas i Hernandez <jordi@ximian.com>
3885 * ThemeWin32Classic.cs: Fixes vert/horz scrollbar colours
3887 2005-10-17 Jordi Mas i Hernandez <jordi@ximian.com>
3889 * ThemeWin32Classic.cs: Fixes focus drawing in for non-flat/popup buttons
3891 2005-10-16 Peter Dennis Bartok <pbartok@novell.com>
3894 - Re-implemented anchoring code. My first version was really broken.
3895 This fixes bug #76033. Unlike the previous implementation we will
3896 no longer have round errors since all numbers are calculated from
3897 scratch every time. Removed various anchor-related obsolete vars.
3898 - InitLayout no longer causes layout event firing and layout to be
3901 2005-10-16 Jackson Harper <jackson@ximian.com>
3903 * Hwnd.cs: Compute invalid area correctly (fixes my last commit
3906 2005-10-16 Jackson Harper <jackson@ximian.com>
3908 * TabControl.cs: Remove debug code.
3910 2005-10-16 Jackson Harper <jackson@ximian.com>
3912 * XEventQueue.cs: Increase the default queue size (very simple
3913 apps needed to grow the queue).
3914 * Hwnd.cs: No finalizer so we don't need to suppress
3915 finalization. Compute the invalid area manually so a new rectangle
3916 does not newto be created.
3917 * ScrollableControl.cs: Don't set any params (otherwise visibility
3918 isn't set correctly).
3919 * MdiChildContext.cs: New constructor takes the mdi parent so it
3920 doesn't have to be computed and avoids a crash on windows. Draw
3921 the window icon properly, and allow the text to be seen.
3922 * Form.cs: Use new MdiChildContext constructor. Make sure the
3923 child context isn't null in wndproc.
3924 * TabControl.cs: Don't set focus, this is muddling keyboard
3925 behavoir. Expand the tab rows when a window size increase will
3926 allow extra tabs to be seen. Don't allow tabs smaller than the
3927 width of a window to be scrolled out of view.
3929 * TreeView.cs: Use measure string to calculate a nodes width, the
3930 width is cached and only updated when the text or the font is
3931 changed. Don't check for expand/collapse clicks on the first level
3932 nodes if root lines are disabled.
3934 2005-10-16 Ritvik Mayank <mritvik@novell.com>
3936 * TextBoxBase.cs: Fixes #76352 (passing tab key in a multiline textbox)
3938 2005-10-16 Jordi Mas i Hernandez <jordi@ximian.com>
3940 * DataGridBoolColumn.cs: fixes warning
3942 2005-10-16 Jordi Mas i Hernandez <jordi@ximian.com>
3944 * ControlPaint.cs: Fixes methods Dark, DarkDark, Light, LightLight
3945 to match more to match more precisely the MS Net behavior
3947 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3949 * Hwnd.cs: Added field to track if window is mapped
3951 - Unmap windows if they become 0-size, re-map when
3952 they are >0 again; fixes #76035
3953 - Re-set our error handler after initializing X11Desktop
3954 to override any error handlers Gtk or whatever was called
3957 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3959 * CheckedListBox.cs: Removed unused vars
3960 * ListView.cs: Fixed signatures
3961 * RichTextBox.cs: Removed unused vars
3962 * TextBoxBase.cs: Removed unused vars
3963 * XplatUIWin32.cs: Removed unused vars
3964 * XplatUIX11.cs: Removed unused vars
3965 * XplatUI.cs: Updated version and date to latest published
3967 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3969 * Cursor.cs: Added private .ctor to work around a bug in
3970 resourceset (Thanks to Geoff Norton for the help on this)
3971 * SplitterEventArgs.cs: Made fields accessible so we don't
3972 waste boatloads of objects and can reuse the same one
3974 * XplatUIWin32.cs(DrawReversibleLine): Now also considers
3975 any captions and borders when generating screen coordinates
3976 * Splitter.cs: Reimplemented control, now fully complete, uses
3977 rubberband drawing, supports and obeys all properties, has
3980 2005-10-13 Miguel de Icaza <miguel@novell.com>
3982 * Form.cs (Form): Setup default values for autoscale and
3983 autoscale_base_size; Make these instance variables, not static
3986 (OnLoad): on the first load, adjust the size of the form.
3988 2005-10-13 Peter Dennis Bartok <pbartok@novell.com>
3990 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs: Added
3991 width argument to DrawReversibleRectangle()
3992 * XplatUIWin32.cs, XplatUIX11.cs:
3993 - Implemented width for DrawReversibleRectangle()
3994 - Added logic to DrawReversibleRectangle that recognizes a zero
3995 width or height and only draws a line in that situation
3997 2005-10-12 Peter Dennis Bartok <pbartok@novell.com>
3999 * XplatUI.cs, XplatUIDriver.cs: Added GetAutoScaleSize()
4000 * XplatUIOSX.cs: Stubbed GetAutoScaleSize() method
4001 * XplatUIWin32.cs, XplatUIX11.cs: Implemented GetAutoScaleSize()
4002 method (it uses our FosterParent window to get a graphics context)
4004 2005-10-12 Peter Dennis Bartok <pbartok@novell.com>
4006 * XplatUI.cs, XplatUIDriver.cs: Removed EraseWindowBackground
4007 and SetWindowBackground methods
4009 - Setting proper ControlStyles
4010 - We no longer call XplatUI.SetWindowBackground and XplatUI.
4011 EraseWindowBackground, instead we draw the window background
4012 ourselves in PaintControlBackground. This behaviour is
4013 required to match MS, where, when OnPaintBackground is not
4014 called, the background is not drawn.
4015 - Removed unneeded Refresh() in set_Text
4016 * Hwnd.cs: Dropped the ErasePending support. No longer needed
4018 - Created DeriveStyles method to translate from CreateParams to
4019 FormBorderStyle and TitleStyle, also handles BorderStyle (which
4020 matches FormBorderStyle enum values)
4021 - Consolidated SetHwndStyles and CalculateWindowRect border/title
4022 style calculations into single DeriveStyles method
4023 - Fixed CreateWindow to (finally) use Gravity. This prevents X11
4024 from redrawing the whole window on any resize or expose.
4025 - Fixed CreateWindow usage of SetWindowValuemask. Before not
4026 all styles were applied to our whole/client window appropriately
4027 - Removed EraseWindowBackground() and SetWindowBackground() methods
4028 - Removed handling of WM_ERASEBKGND message from DefWndProc, we
4029 no longer clear/redraw the background through X
4030 - Removed handling of erase_pending bit, we have no use for it (or
4033 - Removed generation and handling of WM_ERASEBKGND message
4034 - Removed EraseWindowBackground() and SetWindowBackground() methods
4035 - Removed handling of hwnd.ErasePending flag
4037 - Removed EraseWindowBackground() and SetWindowBackground() methods
4038 - We no longer call EraseWindowBackground on PaintEventStart, we
4039 ignore the fErase flag, erasing is handled in Control in the
4041 * Button.cs, GroupBox.cs, Label.cs, CheckBox.cs, ProgressBar.cs,
4042 LinkLabel.cs, ListControl.cs, TabPage.cs, UpDownBase.cs,
4043 TextBoxBase.cs, TextBox.cs, ListView.cs, ButtonBase.cs,
4044 CheckedListBox.cs, MdiClient.cs, Panel.cs, DataGrid.cs,
4045 DataGridTextBox.cs, ScrollBar.cs, ListBox.cs, TrackBar.cs,
4046 TabControl.cs, ScrollableControl.cs, ToolBar.cs, PictureBox.cs,
4047 DateTimePicker.cs, StatusBar.cs, MonthCalendar.cs: Setting proper ControlStyles
4049 2005-10-12 Jonathan Chambers <jonathan.chambers@ansys.com>
4051 * PropertyGrids.cs: Get sub properties
4052 * PropertyGridView.cs: Fix drawing code
4054 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
4056 * ListBox.cs: Fixes 76383
4058 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
4060 * DataGridTextBoxColumn.cs: Sets location and size before attachment
4061 * ThemeWin32Classic.cs: Fixes border drawing and calculations
4062 * DataGridDrawingLogic.cs: Fixes border drawing and calculations
4065 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
4067 * ComboBox.cs: Fixes border drawing
4069 2005-10-10 Miguel de Icaza <miguel@novell.com>
4071 * MimeIcon.cs: Ignore errors if the file can not be read.
4073 2005-10-11 Jordi Mas i Hernandez <jordi@ximian.com>
4075 * Theme.cs, ThemeWin32Classic.cs, ListBox.cs:
4076 - Fixed border calculations
4077 - Fixed horizontal scrolling in single column listboxes
4078 - Fixed drawing issues
4080 2005-10-10 Peter Dennis Bartok <pbartok@novell.com>
4082 * XplatUI.cs, XplatUIOSX.cs, XplatUIWin32.cs: Switched from BorderStyle to
4083 FormBorderStyle enum
4084 * XplatUIX11.cs: Switched BorderStyle to FormBorderStyle, added
4085 code to determine FormBorderStyles from CreateParams
4087 - Fixed bug where we'd set the wrong window styles if we were
4088 not creating an MDI window
4089 - Added call to XplatUI.SetBorderStyle when form borders are set
4090 * Control.cs: Casting BorderStyles to accommodate changed XplatUI APIs
4092 - Removed obsolete edge style
4093 - Switched from BorderStyle to FormBorderStyle
4095 2005-10-10 Jackson Harper <jackson@ximian.com>
4097 * Form.cs: Use the property to get the window handle instead of
4098 accessing it directly. Prevents a null reference exception.
4100 2005-10-10 Jackson Harper <jackson@ximian.com>
4102 * TreeView.cs: Don't adjust the rect given to DrawString now that
4103 our libgdiplus draws correctly.
4105 2005-10-08 Jackson Harper <jackson@ximian.com>
4107 * TreeView.cs: Don't try to find the clicked on node if there are
4108 no nodes in the tree.
4110 2005-10-08 Alexander Olk <alex.olk@googlemail.com>
4116 2005-10-08 Alexander Olk <alex.olk@googlemail.com>
4118 * ImageListStreamer.cs, TreeView.cs, UpDownBase.cs, RichTextBox.cs,
4119 ColorDialog.cs, TextControl.cs, Panel.cs, MdiChildContext.cs,
4121 Use ResPool for brushes and dispose System.Drawing objects that
4122 are not used anymore.
4124 2005-10-07 Jackson Harper <jackson@ximian.com>
4126 * MdiChildContext.cs: Use the new borders instead of drawing them
4129 2005-10-06 Jordi Mas i Hernandez <jordi@ximian.com>
4131 * Calling UpdateBounds after changing the window's BorderStyle
4132 since the style can change the ClientSize
4134 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4136 * Control.cs: Made PaintControlBackground virtual
4137 * Panel.cs: Overriding PaintControlBackground instead of using paint
4138 event; paint event method was interfering with 'real' users of the
4141 2005-10-06 Jordi Mas i Hernandez <jordi@ximian.com>
4143 * ThemeWin32Classic.cs: remove border drawing since it is handled
4144 by the base control class now and was causing double border drawing.
4146 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4148 * Panel.cs: Redraw our background on paint. Not a pretty solution,
4149 but it does seem to match MS behaviour. This fixes bug #75324
4151 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4153 * XplatUIX11.cs: A better DrawReversibleRectangle version, however
4154 somewhat hackish looking
4156 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4159 - We now accept Enter even if AcceptEnter is false, if the containing
4160 form does not have an AcceptButton configured (fixes bug #76355)
4161 - Calculations are now fixed to no longer use Width/Height, but
4162 ClientSize.Width/Height, since we now support borders (this was
4163 a result of fixing borders and therefore bug #76166)
4164 - We no longer show the horizontal scrollbar if TextBox.WordWrap is
4165 true (fixes bug #76354)
4167 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4170 - Defaulting BorderStyle and setting it in XplatUI when our window
4172 - Added enum check to InternalBorderStyle setter
4174 - Added drawing of window borders
4175 - Now properly calculates WM decorations offset for toplevel
4176 windows (fixes bug #74763)
4178 - Implemented BorderStyles for windows (we're letting win32 draw
4180 - Fixed the signature for SetWindowLong
4181 * PictureBox.cs, DataGrid.cs, TextBoxBase.cs, ToolBar.cs, Panel.cs,
4182 ListBox.cs, Label.cs: Now uses Control.InternalBorderStyle for
4184 * UpDownBase.cs: Remove drawing of borders, this is handled by
4185 the driver, outside the client area
4186 * ListView.cs: Removed bogus border calculations. The control should
4187 be oblivious to borders, since those are not part of the client
4189 * X11DesktopColors.cs: Commented out (currently) unneeded variables
4190 * ThemeWin32Classic.cs: Removed border calculations from ListView
4193 2005-10-06 Jackson Harper <jackson@ximian.com>
4195 * MdiChildContext.cs: Clear out the old virtual position remove
4196 all the unneeded calls to CreateGraphics.
4198 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4200 * TextControl.cs: Use proper color for highlighted text; fixes #76350
4202 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4205 - Added loading and setting of our new default icon
4206 - Only set icon if window is already created
4208 2005-10-06 Peter Dennis Bartok <pbartok@novell.com>
4211 - Do not explicitly set the foreground and background colors, to
4212 allow inheriting from parents (fixes #76302)
4213 - Use Control's InternalBorderStyle property to deal with borders
4215 2005-10-06 Jackson Harper <jackson@ximian.com>
4217 * MdiChildContext.cs: Use the new xplatui function to draw a
4220 2005-10-06 Jackson Harper <jackson@ximian.com>
4222 * Form.cs: Add the parent before creating the child context cause
4223 we need the parent when setting up the child.
4225 2005-10-06 Jackson Harper <jackson@ximian.com>
4227 * FolderBrowserDialog.cs: redo the tree population code so a
4228 second thread isn't used. Should be a lot faster and more stable
4231 2005-10-05 Jackson Harper <jackson@ximian.com>
4233 * TreeView.cs: There are no expand/collapse boxes if the node has
4236 2005-10-05 Jackson Harper <jackson@ximian.com>
4238 * X11DesktopColors.cs: Get menu colours for the gtk theme.
4240 2005-10-05 Alexander Olk <alex.olk@googlemail.com>
4242 * FileDialog.cs: Fix InitialDirectory
4244 2005-10-05 Jordi Mas i Hernandez <jordi@ximian.com>
4247 - Fixes changing between styles
4249 - Fixes last item crashing when navigating with keyboard
4251 2005-10-05 Jordi Mas i Hernandez <jordi@ximian.com>
4253 * LinkLabel.cs: Related to 76045. Stops the LinkLabel been drawn as a Label
4255 2005-10-05 Jackson Harper <jackson@ximian.com>
4257 * TreeView.cs: If updating the root node do a full refresh.
4258 * TreeNode.cs: The root node should be expanded by default. Also
4259 added a utility prop to tell if we are the root node.
4260 * TreeNodeCollection.cs: Only refresh if the node we are being
4261 added to is expanded. Also added a comment on a potential
4264 2005-10-04 Peter Dennis Bartok <pbartok@novell.com>
4266 * Cursor.cs, Hwnd.cs: Added call to GC.SuppressFinalize()
4267 in dispose method. Fixes #76330
4269 2005-10-04 Jordi Mas i Hernandez <jordi@ximian.com>
4271 * ListView.cs, ThemeWin32Classic.cs, ListViewItem.cs:
4273 - Implements vertical and horizontal scrolling using XplatUI
4274 - Fixes keyboard navagation
4275 - Fixes EnsureVisible
4277 - Handles and draws focus properly
4280 2005-10-04 Kornél Pál <kornelpal@hotmail.com>
4282 * ImageList.cs: Use upper case initials for internal fields. ImageStream:
4283 Create handle. NET_2_0: Destroy handle when value is null.
4285 2005-10-03 Jackson Harper <jackson@ximian.com>
4287 * ScrollBar.cs: My last scrollbar patch was broken. This is a
4288 revert and a new patch to prevent the thumb from refreshing so
4291 2005-10-02 Jackson Harper <jackson@ximian.com>
4293 * ScrollBar.cs: Don't update position if it hasn't actually
4294 changed. This occurs when you hold down the increment/decrement
4295 buttons and the thumb gets to the max/min.
4297 2005-10-01 Jackson Harper <jackson@ximian.com>
4300 * MdiChildContext.cs:
4301 * MdiClient.cs: Implement ActiveMdiChild in Form.
4303 2005-10-01 Jordi Mas i Hernandez <jordi@ximian.com>
4305 * ComboBox.cs: Include ComboBoxEdit flag for the edit item
4307 2005-10-01 Peter Dennis Bartok <pbartok@novell.com>
4309 * X11DesktopColors.cs: Bow out gracefully if the Gtk libs cannot
4312 2005-09-30 Jackson Harper <jackson@ximian.com>
4314 * ListBox.cs: Don't do a full refresh unless some data has
4317 2005-09-30 Jackson Harper <jackson@ximian.com>
4319 * TreeView.cs: Make sure that the checkboxes size is factored in
4320 even when not visible.
4322 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
4324 * FileDialog.cs: Fix Jordi's build break
4326 2005-09-30 Jordi Mas i Hernandez <jordi@ximian.com>
4329 - Use standard the Windows colours for the combobox as espected
4330 - Dispose objects that use resouces when no longer need them
4332 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
4334 * X11DesktopColors.cs: Initial incomplete implementation
4335 * XplatUIX11.cs: Added call to initialize X11DesktopColors
4337 2005-09-30 Peter Dennis Bartok <pbartok@novell.com>
4340 - Switched Theme color names to match the names defined in
4341 System.Drawing.KnownColors. Life's hard enough, no need to make
4343 - Added setters to all theme color properties so themes can set
4344 their color schemes. The setters also propagate the color changes
4345 to System.Drawing.KnownColors via reflection
4346 * ControlPaint.cs, Label.cs, TextControl.cs, ToolTip.cs, ThemeNice.cs,
4347 ComboBox.cs, MdiChildContext.cs, TextBoxBase.cs, DateTimePicker.cs
4348 DataGridColumnStyle.cs, MonthCalendar.cs, TreeView.cs: Updated to
4349 use the new, more logical theme color names
4350 * XplatUIWin32.cs: Updated the GetSysColorIndex enum to include new
4352 * ThemeWin32Classic.cs:
4353 - Removed code to set the old classic Windows colors. Instead it
4354 now relies on the colors returned by System.Drawing.KnownColors
4355 which will be either modern static colors (Unix) or colors
4356 read from the user's configuration (Win32)
4357 - Updated to use the new, more logical theme color names
4358 - Switched DataGrid drawing code to use only Theme colors instead of
4359 a mix of System.Drawing.KnownColors and Theme colors
4360 - DrawFrameControl(): Removed code that fills the button area, the
4361 fill would overwrite any previous fill done by a control. This
4363 - Added DrawReversibleRectangle() stub
4364 * ScrollableControl.cs: Set visible state to false when scrollbars
4365 are removed (pdn fix)
4366 * XplatUI.cs, XplatUIOSX.cs, XplatUIDriver.cs: Added
4367 DrawReversibleRectangle() method to allow drawing primitive
4369 * XplatUIX11.cs: Implemented DrawReversibleRectangle()
4371 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4373 * ImageList.cs: Add(Icon): Create handle.
4375 2005-09-30 Jordi Mas i Hernandez <jordi@ximian.com>
4378 * ThemeWin32Classic.cs:
4381 - Issues with drawing
4383 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4385 * ImageList.cs: Moved RecreateHandle back to ImageList as event
4386 source has to be the ImageList.
4388 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4390 * ImageList.cs: Add(Icon): Use Graphics.DrawIcon instead of Icon.ToBitmap.
4392 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4394 * ImageList.cs: ReduceColorDepth: Clean up pointer operations.
4396 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4398 * ImageList.cs: ImageCollection: Removed owner field as it is no more used.
4400 2005-09-29 Jonathan Chambers <jonathan.chambers@ansys.com>
4401 * GridItem.cs: Fixed TODOs
4402 * GridItemCollection.cs: Added ICollection interface
4404 2005-09-30 Kornél Pál <kornelpal@hotmail.com>
4406 * ImageList.cs: Resize icons when needed.
4408 2005-09-29 Jordi Mas i Hernandez <jordi@ximian.com>
4411 - Fixes GetBounds and returns on screen rects
4413 - Fixes vertical and horzintal scrolling of items
4414 * ThemeWin32Classic.cs:
4417 2005-09-29 Raja R Harinath <harinath@gmail.com>
4419 * ImageList.cs (ImageStream) [NET_2_0]: Reflect re-factoring.
4421 2005-09-29 Kornél Pál <kornelpal@hotmail.com>
4423 * ImageList.cs: Added comments about handle creation. Moved Handle,
4424 HandleCreated and OnRecreateHandle implementations to ImageCollection.
4425 Handle is created in Add methods.
4427 2005-09-28 Jordi Mas i Hernandez <jordi@ximian.com>
4429 * DataGridDrawingLogic.cs:
4430 - Takes rows into account on Colum calculations
4431 - Returns the column when clickig
4433 - Fixes default HitTestInfo values
4434 - Fixes HitTestInfo.ToString
4435 - Fixes ResetBackColor
4437 2005-09-28 Jackson Harper <jackson@ximian.com>
4439 * MdiChildContext.cs: Obey rules for fixed sized windows (no
4440 sizing or cursor changes). Also added some temp code to draw the
4441 titlebars text (Makes dev a little easier).
4443 2005-09-28 Kornél Pál <kornelpal@hotmail.com>
4445 * ImageList.cs: AddStrip: Throw ArgumentException when Image is not a Bitmap.
4447 2005-09-28 Jordi Mas i Hernandez <jordi@ximian.com>
4449 * ListBox.cs: Fixes bug 76253
4451 2005-09-28 Kornél Pál <kornelpal@hotmail.com>
4453 * ImageList.cs: Added comments about the current implementation. Added
4454 ReduceColorDepth, IndexedColorDepths and GetNearestColor to can use
4455 Format32bppArgb to preserve transparency and can use Graphics.FromImage
4456 while using the specified ColorDepth. ReduceColorDepth uses unsafe code
4457 with Bitmap.LockBits for better performance. Revised the whole file to
4458 match MS.NET behaviour and provide better performance. Non-public
4459 interface members are calling public members even when they throw
4460 NotSupportedException for better maintainability. Moved ColorDepth,
4461 ImageSize, ImageStream and TransparentColor implementations to
4462 ImageCollection for better performance as these properties are not used
4464 * ImageListStreamer.cs: Added a new internal constructor that takes an
4465 ImageList.ImageCollection and serializes Images based on
4466 ImageCollection.ToArray(). Renamed ImageColorDepth to ColorDepth to
4467 match ImageList property name.
4469 2005-09-28 Kazuki Oikawa <kazuki@panicode.com>
4471 * ListBox.cs: Fixes IndexFromPoint for last item
4473 2005-09-27 Jackson Harper <jackson@ximian.com>
4475 * Form.cs: Set the position of new mdi children correctly.
4477 2005-09-27 Jackson Harper <jackson@ximian.com>
4479 * MdiClient.cs: New mdi children need to be added to the back of
4480 the controls collection so the zorder is set correctly. Also add a
4481 count of all the child windows that have been created.
4483 2005-09-27 Jackson Harper <jackson@ximian.com>
4485 * Form.cs (CreateParams): Setup MDI forms correctly.
4487 2005-09-27 Jackson Harper <jackson@ximian.com>
4489 * MdiChildContext.cs:
4496 * ScrollableControl.cs:
4497 * ComboBox.cs: Add implicit controls using the new implict control
4498 functionality in ControlCollection. Also try to block multiple
4499 control add in a suspend/resume layout to save some cycles.
4501 2005-09-27 Jackson Harper <jackson@ximian.com>
4503 * Control.cs: Add functionality to the controls collection to add
4504 'implicit controls' these are controls that are created by the
4505 containing control but should not be exposed to the user. Such as
4506 scrollbars in the treeview.
4507 * Form.cs: The list var of the ControlsCollection is no longer
4508 available because of the potential of implicit controls getting
4509 ignored by someone accessing the list directly.
4511 2005-09-26 Peter Dennis Bartok <pbartok@novell.com>
4513 * Control.cs: Fixed SetChildIndex; it no longer causes a child to
4514 loose it's parent. (Fixed bug introduced in r49103 when we added
4515 setting the child parent to null on Remove)
4517 2005-09-26 Gert Driesen <drieseng@users.sourceforge.net>
4519 * DataGridBoolColumn.cs: Marked CheckState private to fix public API.
4520 * Splitter.cs: Added missing attributes for BorderStyle property.
4521 * TextBoxBase.cs: Marked Calculate* methods internal.
4522 * TextBox.cs: Fixed DefaultValue for PasswordChar property to match
4525 2005-09-26 Jordi Mas i Hernandez <jordi@ximian.com>
4527 * ListBox.cs: Fixes navigation to the last item in multicolumn lists
4529 2005-09-25 Jackson Harper <jackson@ximian.com>
4531 * TreeView.cs: Update the node bounds correctly regardless of
4532 whether the node is visible.
4534 2005-09-25 Jackson Harper <jackson@ximian.com>
4536 * ImageList.cs: Don't dispose the image after it is added to the
4537 image list. Only reformat images that need to be resized.
4539 2005-09-25 Jackson Harper <jackson@ximian.com>
4541 * ImageList.cs: Don't set the format when changing the image.
4543 2005-09-25 Jackson Harper <jackson@ximian.com>
4545 * TreeView.cs: We can't just assume the node has a font. Use the
4546 treeviews font if no node font is available.
4548 2005-09-25 Jackson Harper <jackson@ximian.com>
4550 * TreeView.cs: Allow the scrollbars to be reset with negative
4552 - Don't add scrollbars to negative sized windows.
4554 2005-09-23 Jackson Harper <jackson@ximian.com>
4556 * XplatUIX11.cs: Update to use Mono.Posix.Native instead of plain
4557 old Mono.Posix. Also remove some stray code that shouldn't have
4560 2005-09-23 Jackson Harper <jackson@ximian.com>
4562 * TreeView.cs: Attempt at proper sizing of the horizontal
4563 scrollbar. Also don't resize the scrollbars unless they are
4566 2005-09-23 Jackson Harper <jackson@ximian.com>
4568 * TreeView.cs: We don't need to expand the invalid area when the
4569 selection changes, as this is all drawn in the node's bounding
4570 box. The area needs to be expanded (previous typo was contracting
4571 it) when the focus rect moves.
4573 2005-09-23 Jackson Harper <jackson@ximian.com>
4575 * TreeView.cs: Display the selection box under the correct
4576 circumstances. We were rendering white text with no selection box
4579 2005-09-23 Peter Dennis Bartok <pbartok@novell.com>
4581 * TextControl.cs(Split): Now updates selection start/end if it points
4582 into a line that's being split. Fixes a FIXME and bug #75258
4584 2005-09-23 Jackson Harper <jackson@ximian.com>
4587 * ListControl.cs: Don't use the path when retrieving binding
4588 managers from the binding context. My bat sense tells me that the
4589 path is only used on insertion.
4591 2005-09-22 Jackson Harper <jackson@ximian.com>
4593 * Splitter.cs: Set the cursor an easier way. (Thanks peter).
4595 2005-09-22 Jackson Harper <jackson@ximian.com>
4597 * Splitter.cs: There are special cursors used for splitting.
4598 * XplatUIX11.cs: The VSplit and HSplit cursors were backwards.
4600 2005-09-22 Jackson Harper <jackson@ximian.com>
4602 * Splitter.cs: Change the cursor appropriately when the splitter
4603 is moused over, so the user actually knows there is a splitter
4606 2005-09-22 Hisham Mardam Bey <hisham.mardambey@gmail.com>
4608 * Label.cs : Fix ToString method to give same output as MS.NET
4610 2005-09-22 Jackson Harper <jackson@ximian.com>
4612 * TreeView.cs: Create the scrollbars when the handle is created
4613 and add them right away, just make them invisble. Also account for
4614 the window being shrunk vertically to the point that the vert
4615 scrollbar needs to be added.
4616 - Remove some 0.5 adjustments to get around anti aliasing issues.
4618 2005-09-22 Jordi Mas i Hernandez <jordi@ximian.com>
4620 * MainMenu.cs: Fixes default value
4621 * MenuItem.cs: Fixes default value
4623 2005-09-22 Kazuki Oikawa <kazuki@panicode.com>
4625 * AsyncMethodResult.cs: Fixes Control.Invoke is blocked infinitely.
4627 2005-09-21 Jackson Harper <jackson@ximian.com>
4629 * Control.cs: Don't try to set the border style on the window if
4630 it hasn't been created. When the window is created the border
4633 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
4635 * Control.cs (Update): Don't call XplatUI if we don't have a
4638 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
4640 * ContainerControl.cs: Instead of throwing an exception, print
4641 a one-time warning about Validate not being implemented
4642 * XplatUIWin32.cs: Removed debug output
4644 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
4646 * Control.cs: Only set XplatUI background if we expect the windowing
4647 system to handle the background. This stops controls that draw their
4648 own background from flickering
4650 * XplatUIX11.cs: Support custom visuals and colormaps for window
4651 creation. This allows, amongst other things, using MWF X11 windows
4654 2005-09-21 Peter Dennis Bartok <pbartok@novell.com>
4656 * OpenFileDialog.cs, ContentsResizedEventArgs.cs, LibSupport.cs, GridItem.cs,
4657 CursorConverter.cs, SplitterEventHandler.cs, PropertyGridTextBox.cs,
4658 GridTablesFactory.cs, MethodInvoker.cs, AccessibleEvents.cs,
4659 SplitterEventArgs.cs, XplatUI.cs, Mime.cs, PropertySort.cs,
4660 TreeViewCancelEventHandler.cs, Form.cs, PropertyGridCommands.cs,
4661 IDataGridEditingService.cs, DateBoldEventHandler.cs, Label.cs,
4662 KeyboardLayouts.cs, TextControl.cs, ProgressBar.cs, ToolTip.cs,
4663 RadioButton.cs, OSFeature.cs, LinkLabel.cs, ColorDialog.cs,
4664 ThemeNice.cs, ErrorIconAlignment.cs, TreeNode.cs, MimeGenerated.cs,
4665 ComboBox.cs, DataGridTextBoxColumn.cs, ArrangeStartingPosition.cs,
4666 GridColumnStylesCollection.cs,
4667 IDataGridColumnStyleEditingNotificationService.cs,
4668 PropertyGrid.cs, IFeatureSupport.cs, ICommandExecutor.cs,
4669 MdiLayout.cs, GridEntry.cs, ControlBindingsCollection.cs,
4670 GridTableStylesCollection.cs, TreeViewCancelEventArgs.cs,
4671 TreeNodeCollection.cs, AmbientProperties.cs,
4672 RichTextBoxSelectionAttribute.cs, RichTextBoxSelectionTypes.cs,
4673 DataObject.cs, ErrorProvider.cs, Splitter.cs,
4674 DataGridLineStyle.cs, Shortcut.cs, Control.cs,
4675 FontDialog.cs, SecurityIDType.cs, GridItemType.cs,
4676 BindingMemberInfo.cs, DataGridCell.cs, MdiChildContext.cs,
4677 IRootGridEntry.cs, PropertyGridView.cs, DataGridParentRowsLabelStyle.cs,
4678 FolderBrowserDialog.cs, OpacityConverter.cs, HelpProvider.cs,
4679 IComponentEditorPageSite.cs, DataGridTableStyle.cs, NavigateEventArgs.cs,
4680 NotifyIcon.cs, ContentsResizedEventHandler.cs, MenuItem.cs,
4681 PropertyTabChangedEventHandler.cs, TextBoxBase.cs, OpenTreeNodeEnumerator.cs,
4682 SelectionMode.cs, TextBox.cs, ListBindingConverter.cs,
4683 FileDialog.cs, KeysConverter.cs, DomainUpDown.cs,
4684 DataFormats.cs, SaveFileDialog.cs, GridItemCollection.cs,
4685 ArrangeDirection.cs, FeatureSupport.cs, SelectionRangeConverter.cs,
4686 RichTextBoxScrollBars.cs, NodeLabelEditEventHandler.cs, TreeNodeConverter.cs,
4687 MimeIcon.cs, X11Structs.cs, PropertyGridEntry.cs,
4688 ImageList.cs, ThemeWin32Classic.cs, X11Keyboard.cs,
4689 CheckedListBox.cs, HelpNavigator.cs, DateTimePickerFormat.cs,
4690 MdiClient.cs, DataGridDrawingLogic.cs, DataGridBoolColumn.cs,
4691 NodeLabelEditEventArgs.cs, Screen.cs, PropertyManager.cs,
4692 ComponentModel.cs, PropertiesTab.cs, CurrencyManager.cs,
4693 SizeGrip.cs, DateBoldEventArgs.cs, X11Dnd.cs, Panel.cs,
4694 Hwnd.cs, OSXStructs.cs, DrawMode.cs, XplatUIDriver.cs,
4695 RichTextBox.cs, PropertyTabChangedEventArgs.cs, CommonDialog.cs,
4696 DataGrid.cs, XplatUIX11.cs, RichTextBoxStreamType.cs, Win32DnD.cs,
4697 ErrorBlinkStyle.cs, TreeViewEventHandler.cs,
4698 PropertyValueChangedEventHandler.cs, IFileReaderService.cs,
4699 DataGridTextBox.cs, SelectedGridItemChangedEventArgs.cs, ScrollBar.cs,
4700 ListBox.cs, TreeViewAction.cs, Help.cs, TrackBar.cs,
4701 AxHost.cs, PropertyValueChangedEventArgs.cs, XplatUIOSX.cs,
4702 RichTextBoxFinds.cs, UpDownEventArgs.cs, Cursors.cs,
4703 CategoryGridEntry.cs, RichTextBoxWordPunctuations.cs, DataGridColumnStyle.cs,
4704 SelectedGridItemChangedEventHandler.cs, DateTimePicker.cs, NavigateEventHandler.cs,
4705 Clipboard.cs, UpDownEventHandler.cs, MonthCalendar.cs,
4706 SendKeys.cs, DataGridPreferredColumnWidthTypeConverter.cs, TreeView.cs,
4707 ThreadExceptionDialog.cs, ImageListConverter.cs, XplatUIWin32.cs,
4708 TreeViewEventArgs.cs: Fixed whitespace and set eol-style:native attribute
4710 2005-09-21 Jackson Harper <jackson@ximian.com>
4712 * TreeNode.cs: Call Before/After Expand not Collapse when
4715 2005-09-20 Jackson Harper <jackson@ximian.com>
4717 * XplatUIX11.cs: Use the more hand looking hand (in most themes).
4719 2005-09-16 Jordi Mas i Hernandez <jordi@ximian.com>
4723 - Fixes proper storing of subitems
4724 - Fixes not updated items
4726 2005-09-20 Peter Dennis Bartok <pbartok@novell.com>
4728 * Control.cs, TextBoxBase.cs, TextControl.cs: Don't do certain
4729 things if our window handle isn't created yet. Also disabled
4730 debug for TextBoxBase
4732 2005-09-20 Peter Dennis Bartok <pbartok@novell.com>
4734 * MenuAPI.cs: Remove filtering of events to allow menu usage
4736 2005-09-20 Miguel de Icaza <miguel@novell.com>
4738 * Cursor.cs: Allow null to be passed to Cursor.Current.
4740 2005-09-20 Alexander Olk <alex.olk@googlemail.com>
4742 * ThemeWin32Classic.cs:
4743 - Change some private methods/fields to protected virtual so that
4744 they can be accessed and overriden in derived classes
4745 - First refactoring of some methods. Derived themes now don't
4746 need to duplicate the complete code from ThemeWin32Classic
4748 - Added nice StatusBar
4749 - Derive from ThemeWin32Classic and not Theme
4750 - Removed duplicate ThemeWin32Classic code
4752 2005-09-20 Miguel de Icaza <miguel@novell.com>
4754 * Control.cs (ControlCollection.Add): If the value null is passed
4755 the control is ignored.
4759 2005-09-19 Peter Dennis Bartok <pbartok@novell.com>
4761 * MenuAPI.cs: Replaced Application.Run() with a loop that tracks
4762 PostQuitMessage state.
4763 * XplatUIWin32.cs: Removed bogus PostQuitMessage P/Invoke with HWND arg
4765 2005-09-19 Peter Dennis Bartok <pbartok@novell.com>
4767 * Application.cs: Our constructor will never get called, move
4768 initialization to fields; fixes bug #75933
4770 2005-09-19 Hisham Mardam Bey <hisham.mardambey@gmail.com>
4773 - Allow files to be selected properly using file name
4775 - Add ability to change diretory (absolute / relative)
4776 using file name combo box.
4778 2005-09-16 Jordi Mas i Hernandez <jordi@ximian.com>
4781 - Fixes Multicolumn listboxes item wrong calculations
4782 - Allows to click when only one item is in the listbox
4783 - Fixes crash when no items using keyboard navigation
4785 2005-09-16 Alexander Olk <alex.olk@googlemail.com>
4787 * ComboBox.cs: Reverted almost everything from the latest patch which
4790 2005-09-16 Kazuki Oikawa <kazuki@panicode.com>
4793 - Fixed #Mtd2 of ToolTipTest.RemoveToolTipTest.
4795 - When DropDownStyle is Simple, it does not show scrollbar
4796 to the last item of the list.
4797 - When DropDownStyle is Simple, it crashed when the list was
4798 scrolled down with the down cursor key.
4799 - Fixed a bug that when DropDownStyle is DropDownList, the
4800 selected item was not shown.
4801 - The position of the selected item was not preserved when
4802 the next dropdown happened.
4803 * ThemeWin32Classic.cs:
4804 - Items were wrapped at the right end.
4805 * CheckedListBox.cs:
4808 - Items should be fully shown.
4809 - When resizing and vertical scrollbar disappeared, the item
4810 of index 0 should be on the top of the list.
4811 - GetItemRectangle should consider the size of ver. scrollbar
4813 - SizingGrip area should not be allocated when it is not
4815 - Now it reflects MinWidth of the containing panel and
4816 fixed a crash that happens when its width becomes so small.
4818 2005-09-13 Jordi Mas i Hernandez <jordi@ximian.com>
4820 * CheckedListBox.cs: Fixes bug 76028
4821 * ListBox.cs: Fixes bug 76028
4823 2005-09-13 Jordi Mas i Hernandez <jordi@ximian.com>
4825 * ThemeWin32Classic.cs: Sets clipping on DataGridPaintRowsHeaders
4826 * DataGridDrawingLogic.cs: fixes issues with Datagrid drawing
4828 2005-09-12 Jordi Mas i Hernandez <jordi@ximian.com>
4830 * XplatUIX11.cs: fixes System.NullReferenceException in some situations
4832 2005-09-09 Jonathan Chambers <jonathan.chambers@ansys.com>
4834 * IRootGridEntry.cs: Changed namespace to PropertyGridInternal
4836 2005-09-09 Jonathan Chambers <jonathan.chambers@ansys.com>
4838 * IRootGridEntry.cs: Added
4839 * PropertyGridCommands.cs: Added
4840 * PropertiesTab.cs: Added missing methods and property
4841 * PropertyGridView.cs: Made class internal
4842 * PropertyGridTextBox.cs: Made class internal
4844 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4846 * MimeIcon.cs: Try to check some other environment variables
4847 if "DESKTOP_SESSION" returns "default"
4849 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4851 * ThemeNice.cs: Corrected background colors (e.g. menus)
4852 * ColorDialog.cs: Use correct background colors for controls
4854 2005-09-09 Alexander Olk <alex.olk@googlemail.com>
4856 * ThemeNice.cs: Merged r49535 from ThemeWin32Classic
4858 2005-09-08 Peter Dennis Bartok <pbartok@novell.com>
4860 * RichTextBox.cs: Added initial implementation
4861 * lang.cs: Removed. Was accidentally checked in long time ago
4862 * TODO: Removed. Contents were obsolete
4864 2005-09-06 Jonathan Chambers <jonathan.chambers@ansys.com>
4866 * PropertiesTab.cs : Added
4868 2005-09-06 Jonathan Chambers <jonathan.chambers@ansys.com>
4870 * PropertyGrid.cs : Update
4871 * PropertyGridView.cs : Update
4872 * System.Windows.Forms.resx : Added images and strings
4874 2005-09-06 Peter Dennis Bartok <pbartok@novell.com>
4876 * ThemeNice.cs: Do not dispose Pens retrieved from ResPool
4878 2005-09-06 Peter Dennis Bartok <pbartok@novell.com>
4880 * XplatUIX11.cs: Force a flush after Ungrab; if case the app enters
4881 a busy loop right after the Ungrab the X11 display is otherwise
4884 2005-09-06 Jordi Mas i Hernandez <jordi@ximian.com>
4886 * ThemeWin32Classic.cs: Optimise the use of clipping
4888 2005-09-05 Jordi Mas i Hernandez <jordi@ximian.com>
4890 * DataGrid.cs: fixes recursion bug
4892 2005-09-03 Alexander Olk <alex.olk@googlemail.com>
4895 - Draw RadioButton and CheckBox Buttons with DrawButtonBase
4898 2005-09-02 Alexander Olk <alex.olk@googlemail.com>
4900 * ThemeNice.cs: Draw nice ProgressBars
4902 2005-09-01 Miguel de Icaza <miguel@novell.com>
4904 * VScrollBar.cs: Another buglet found by Aaron's tool.
4906 * ProgressBar.cs: Fix three recursive bugs found by Aaron Tomb's
4909 2005-08-30 Alexander Olk <alex.olk@googlemail.com>
4912 - Added nicer menu drawing
4916 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4918 * CreateParams.cs (ToString): Made output match MS
4919 * Control.cs (Text): Don't set Text or Focus via XplatUI unless
4920 handle is already created (to avoid forcing window creation)
4921 * XplatUIX11.cs: Set window text to caption after creating window,
4922 in case Text was set before window was created
4923 * Form.cs: Use this.Text instead of a static string as caption
4925 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4927 * NotifyIcon.cs: Don't set the window to visible; this screws
4928 up Win32 (causes WM_NCPAINT to be sent on Win32, which calls
4929 OnPaint without a bitmap)
4930 * XplatUIX11.cs: Removed Visible optimization in AddExpose; doesn't
4931 happen very often anyway; we could add the check to the WM_PAINT
4932 event generation code
4934 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4936 * NotifyIcon.cs: Fill the icon area with a background color, to
4937 avoid 'residue' when transparent icons are drawn
4939 - Handle whole_window == client_window when destroying windows
4940 - SystrayAdd(): Set client_window to whole_window value to
4941 get mouse and other events passed to NotifyIcon
4943 2005-08-30 Peter Dennis Bartok <pbartok@novell.com>
4945 * Form.cs: Set proper default for Opacity property
4947 - ShowSystray(): Don't bother creating telling the OS
4948 about the systray item if no icon is provided
4949 - Now handles WM_NCPAINT message to deal with whole/client window
4951 - Create window as visible to not get caught by Expose optimization
4952 * Hwnd.cs: Removed debug message
4953 * ComboBox.cs, ScrollBar.cs, ListBox.cs, TrackBar.cs, TabControl.cs,
4954 StatusBar.cs, TreeView.cs, XplatUIOSX.cs, XplatUIWin32.cs: Switched
4955 PaintEventStart/End to use new client argument
4957 - Commented out debug messages
4958 - Switched PaintEventStart/End to use new client argument
4959 * XplatUI.cs: Added client window bool to PaintEventStart()/
4960 PaintEventEnd() calls, to support drawing in non-client areas
4962 - Added client window bool to PaintEventStart()/PaintEventEnd()
4963 calls, to support drawing in non-client areas
4964 - Added conditional compile to allow using MWF BeginInvoke
4967 - Added some conditional debug output
4968 - Fixed SystrayAdd() method to support new (for SystrayAdd, anyway)
4969 whole/client window split
4970 - Implemented handling of client argument to PaintEventStart()/End()
4972 - Throw exception if BeginInvoke() is called and the window handle
4973 or one of the window's parent handles is not created
4974 - Added conditional compile to allow using MWF BeginInvoke on
4976 - get_Parent(): Only sets parent if handle is created. This avoids
4977 forcing window handle creation when parent is set.
4978 - Now fires Layout and Parent changed events in proper order
4979 - Switched to use Handle instead of window.Handle for Z-Order setting,
4980 the get_Parent() patch above causes us to possibly get null for 'window'
4981 - Implemented handling of client argument to PaintEventStart()/End()
4982 - Now reports back to windows that WM_SETCURSOR was handled (to avoid
4984 - Now sends a Refresh() to all child windows when Refresh() is called
4986 2005-08-29 Peter Dennis Bartok <pbartok@novell.com>
4988 * Form.cs: Added (non-functional) Opacity property
4989 * XplatUIWin32.cs (SystrayAdd): Removed bogus line of code
4991 2005-08-29 Alexander Olk <xenomorph2@onlinehome.de>
4992 * ThemeNice.cs: New theme for MWF, based on ThemWin32Classic
4993 use export MONO_THEME=nice to activate it.
4994 Currently supported controls:
4998 - TabControl (TabAlignment.Top only, other will follow)
4999 * ThemeEngine.cs: Add theme nice
5000 * ButtonBase.cs: Redraw button on MouseEnter and MouseLeave everytime,
5003 2005-08-25 Jonathan Chambers <jonathan.chambers@ansys.com>
5005 * Splitter.cs: Resize docked control and its neighbor.
5007 2005-08-24 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
5008 -- Making Windows with Menus layout correctly --
5009 * Form.cs : The first leg of the fix
5010 Menu setter - adjust Client Size as needed to make space for the menu
5011 SetClientSizeCore - doesn't call base version to be able to pass the
5012 menu handle to XplatUI.CalculateWindowRect
5013 * Hwnd.cs: Fix for menu_height, now gets from MenuAPI.MENU
5014 * XplatUIX11.cs: The critical second leg of the fix
5015 GetWindowPos needs to use a recalculated client_rect
5016 so that resizing the window doesn't break layout of child controls.
5017 Also a more complete rule to avoid X Server roundtrips in SetWindowPos
5020 2005-08-23 Peter Dennis Bartok <pbartok@novell.com>
5022 * Label.cs: Now properly recalculates width and height on Font and Text
5023 changes if AutoSize is set
5025 2005-08-19 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
5026 * TreeView.cs : Revamped drawing logic, and support for FullRowSelect
5028 2005-08-19 Jordi Mas i Hernandez <jordi@ximian.com>
5030 * ImageList.cs: Makes ToString method compatible with MS
5032 2005-08-18 Jordi Mas i Hernandez <jordi@ximian.com>
5034 * MenuAPI.cs: fixes bug 75716
5036 2005-08-11 Umadevi S <sumadevi@novell.com>
5037 * Control.cs: Fixed Remove & RemoveAt to make the parent of the control null.
5039 2005-08-11 Umadevi S <sumadevi@novell.com>
5040 * Contorl.cs: Fixed ResetRightToLeft and ResetImeMode to work correctly
5042 2005-08-10 Umadevi S <sumadevi@novell.com>
5043 * CheckedListBox.cs: Fixed event firing on Adding to the CheckedListBox
5045 2005-08-07 Jordi Mas i Hernandez <jordi@ximian.com>
5047 * Menu.cs: fixes bug 75700
5048 * MenuAPI.cs: fixes navigation issues
5050 2005-08-09 Umadevi S <sumadevi@novell.com>
5051 * CheckedListBox.cs - simple fix for GetItemChecked.
5053 2005-08-08 Jordi Mas i Hernandez <jordi@ximian.com>
5055 * ComboBox.cs: Serveral fixes
5056 * ListBox.cs: Serveral fixes
5058 2005-08-05 Jordi Mas i Hernandez <jordi@ximian.com>
5060 * ComboBox.cs: Fixes FindString methods and GetItemHeight
5061 * ListBox.cs: Fixes FindString methods
5063 2005-08-05 Jordi Mas i Hernandez <jordi@ximian.com>
5065 * DataGrid.cs: fixes bugs exposed by new tests
5067 2005-08-04 Peter Dennis Bartok <pbartok@novell.com>
5069 * Mime.cs: Compile Mono assembly references only if compiling
5070 with Mono (Allows to build with VS.Net again)
5072 2005-07-28 Marek Safar <marek.safar@seznam.cz>
5074 * Control.cs (PaintControlBackground): Draw background image
5076 (CheckForIllegalCrossThreadCalls): Stubbed.
5078 * Form.cs (OnCreateControl): Center when should be centered.
5080 * ThemeWin32Classic.cs (DrawPictureBox): Pass size.
5082 2005-07-19 Jordi Mas i Hernandez <jordi@ximian.com>
5084 * Binding.cs: Binding to properties should be case unsensitive
5086 2005-07-18 vlindos@nucleusys.com
5088 * DataGrid.cs: fixes setmember order
5090 2005-07-07 Alexander Olk <xenomorph2@onlinehome.de>
5092 * MimeIcon.cs: added MimeIcon stuff (MimeIconEngine)
5093 * FileDialog.cs: FileDialog is now resizable and uses the new
5096 2005-07-06 Jordi Mas i Hernandez <jordi@ximian.com>
5098 * DataGridTextBoxColumn.cs: default value
5099 * GridColumnStylesCollection.cs: fixes event firing, checking MappingName
5100 * GridTableStylesCollection.cs: fixes checking MappingName
5101 * DataGridDrawingLogic.cs: fixes drawing logic issues
5102 * DataSourceHelper.cs: rewritten to make compatible with more data sources
5103 * DataGrid.cs: fixes
5105 2005-07-06 Alexander Olk <xenomorph2@onlinehome.de>
5107 * MimeGenerated.cs: Use case sensitive comparer for
5108 NameValueCollections
5110 2005-07-01 Jordi Mas i Hernandez <jordi@ximian.com>
5112 * DataGridTextBoxColumn.cs: bug fixes, code refactoring
5113 * ThemeWin32Classic.cs: bug fixes, code refactoring
5114 * DataGridDrawingLogic.cs: bug fixes, code refactoring
5115 * DataGrid.cs: bug fixes, code refactoring
5116 * DataGridTextBox.cs: bug fixes, code refactoring
5117 * DataGridColumnStyle.cs: bug fixes, code refactoring
5118 * Theme.cs: bug fixes, code refactoring
5120 2005-07-01 Peter Bartok <pbartok@novell.com>
5122 * TextControl.cs: Quick fix for the reported crash on ColorDialog
5123 and other text box usage
5125 2005-07-01 Jackson Harper <jackson@ximian.com>
5127 * TabControl.cs: Make sure the bottom of the tab covers the pages
5130 2005-06-30 Peter Bartok <pbartok@novell.com>
5132 * Form.cs (ShowDialog): Assign owner of the dialog
5133 * TextBoxBase.cs: Always refresh caret size when deleting, caret
5134 might have been moved to a tag with different height
5136 2005-06-30 Jackson Harper <jackson@ximian.com>
5138 * Form.cs: Don't create an infinite loop when setting focus
5139 * MenuItem.cs: Don't dirty the parents if we don't have any
5141 2005-06-29 Ben Maurer <bmaurer@ximian.com>
5143 * LibSupport.cs: Rename
5145 2005-06-29 Peter Bartok <pbartok@novell.com>
5147 * TextBoxBase.cs: Re-align caret after deleting a character
5149 - DeleteChars(): Ensure that tag covers the provided position
5150 - StreamLine(): Drop reference for dropped tag
5152 2005-06-29 Peter Bartok <pbartok@novell.com>
5155 - Selections now work properly, anchoring at the initial location
5156 and properly extending in either direction (SetSelectionToCaret(),
5157 SetSelectionStart() and SetSelectionEnd())
5158 - No longer redraws the whole control on selection change, now
5159 calculates delta between previous and new selection and only
5160 invalidates/redraws that area
5161 - Fixed FindPos() math off-by-one errors
5162 - Changed DeleteChars() to verify the provided tag covers the
5163 provided position, selections may have a tag that doesn't cover
5164 the position if the selection is at a tag border
5165 - Fixed off-by-one errors in DeleteChars()
5166 - Added missing streamlining check in DeleteChars() to remove
5168 - Implemented Invalidate() method, now properly calculates exposures
5169 between two given lines/positions
5170 - Implemented SetSelection()
5171 - Obsoleted and removed FixupSelection()
5172 - Improved RecalculateDocument() logic, removing code duplication
5174 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5176 * LibSupport.cs: changes to match different input/output arguments.
5178 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5180 * LibSupport.cs: added libsupport.so init routine.
5182 2005-06-29 Jordi Mas i Hernandez <jordi@ximian.com>
5184 * ControlBindingsCollection.cs
5185 - Throws an exception on null datasource when adding
5186 - Checks for duplicated bindings when adding
5188 2005-06-28 Jackson Harper <jackson@ximian.com>
5190 * TreeView.cs (OnKeyDown): Support left and right properly
5191 (navigates as well as expanding and collapsing.
5192 - Add support for Multiply, this expands all the selected nodes
5196 2005-06-28 Jackson Harper <jackson@ximian.com>
5198 * TreeView.cs: Implement keyboard navigation, currently supports,
5199 LEFT, RIGHT, UP, DOWN, PGUP, PGDOWN, HOME, END, ADD, SUBTRACT. Add
5200 support for toggling checkboxes with the space bar.
5202 2005-06-28 Jackson Harper <jackson@ximian.com>
5204 * OpenTreeNodeEnumerator.cs: Don't move past the begining of the
5207 2005-06-28 Jackson Harper <jackson@ximian.com>
5209 * TreeView.cs: Add missing event.
5211 2005-06-27 Peter Bartok <pbartok@novell.com>
5214 - Made line ending size configurable (now allows for counting
5215 lineendings as \n or \r\n)
5216 - Added margin to viewport to keep caret visible on right side
5217 - Fixed translation routines for line/pos to documentpos to consider
5218 cr/lf when counting (Fixes RichTextBox.SelectionFont issues)
5219 - Fixed some line-endings to be unix style
5220 - Fixed Document.FormatText to perform it's calculations 1-based
5221 - Added descriptions for a few methods that might otherwise get
5223 - Added NOTE section with some basic conventions to remember at
5225 - Major fixup for RichTextBox selection drawing:
5226 * Fixed crashes when multiple tags on a single line were selected
5227 * fixed selection box drawing not overlaying text
5228 * fixed bogus offset calculation for tags not starting at index 1
5229 * Switched behaviour from using multiple Substrings of a
5230 StringBuilder.ToString() to using multiple
5231 StringBuilder.ToString(start, length) statements, hoping this is
5232 faster (kept original version commented out in the code, in case
5233 original version was faster)
5234 * TextBox.cs (set_TextAlignment): TextBox always needs to wrap if
5236 * TextBoxBase.cs (CalculateDocument): Made protected so RichTextBox can
5239 2005-06-27 Jackson Harper <jackson@ximian.com>
5241 * TabControl.cs: Move to the left and right with the arrow
5242 keys. These keys don't cycle beyond first and last like
5243 tab. Refresh all the tabs when scrolling them to the left or
5246 2005-06-27 Jackson Harper <jackson@ximian.com>
5249 - ToString: Added method
5250 - CreateParams: Remove TODO and comment
5251 - OnKeyDown: Cycle through bounds properly.
5252 - SelectedIndex: Scroll to the right or left if we need to
5253 display the newly selected tab.
5255 2005-06-23 Jackson Harper <jackson@ximian.com>
5257 * TabControl.cs: Stay in bounds when cycling. Make sure Handled is
5260 2005-06-23 Jackson Harper <jackson@ximian.com>
5262 * TabControl.cs: Keyboard handling. We now support CTRL-TAB,
5263 CTRL-SHIFT-TAB, and HOME, END are there any others?
5265 2005-06-23 Jackson Harper <jackson@ximian.com>
5267 * XplatUIX11.cs: Get the modifier keys from the keyboard driver.
5269 2005-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
5271 * DataGridTextBoxColumn.cs: fixes and enhancements
5272 * ThemeWin32Classic.cs: fixes and enhancements
5273 * DataGridBoolColumn.cs: fixes and enhancements
5274 * DataGridDrawingLogic.cs: fixes and enhancements
5275 * CurrencyManager.cs: fixes and enhancements
5276 * DataGrid.cs: fixes and enhancements
5277 * DataGridColumnStyle.cs: fixes and enhancements
5279 2005-06-22 Jackson Harper <jackson@ximian.com>
5281 * TabControl.cs: Add some missing methods that just call into the
5282 base. Make the TabPageCollection's IList interface behave in the
5283 same manner as the MS implementation.
5285 2005-06-22 Peter Bartok <pbartok@novell.com>
5287 * TextControl.cs: Added sanity check
5289 - Fixed wrapping behaviour, don't set wrap on single line controls
5290 (this fixes the breakage of colordialog introduced in an earlier
5292 - Added rudimentary support for autoscrolling right-aligned controls
5293 (still needs fixing, also, center alignment scroll is missing)
5295 2005-06-22 Jordi Mas i Hernandez <jordi@ximian.com>
5297 * ScrollBar.cs: Fixes thumbpos on Maximum values
5299 2005-06-21 Jonathan Chambers <jonathan.chambers@ansys.com>
5301 * PropertyGridView.cs: Pass context information to UITypeEditors
5303 2005-06-21 Peter Bartok <pbartok@novell.com>
5306 - Now calling PositionCaret with absolute space coordinates
5307 - Enabled vertical scrolling
5308 - Better tracking of scrollbar changes, tied into WidthChange
5310 - Improved cursor tracking
5311 - Removed debug output
5313 - PositionCaret coordinates are now works in absolute space, not
5315 - Improved tracking of document size
5316 - Added events for width and height changes
5318 2005-06-21 Peter Bartok <pbartok@novell.com>
5320 * Form.cs: Set focus to active control when form is activated
5322 - Added word-wrap functionality to RecalculateLine()
5323 - Added some short function descriptions for VS.Net to aid in
5324 writing dependent controls
5325 - Added Caret property, returning the current coords of the caret
5326 - Added ViewPortWidth and ViewPortHeight properties
5327 - Added Wrap property
5328 - Added CaretMoved event
5329 - Removed some old debug code
5330 - Split() can now create soft splits
5331 - Added PreviousTag()/NextTag() to allow walking "tag-lists"
5332 - Added method to format existing text
5333 - Fixed size/alignment calculations to use viewport
5334 - RecalculateDocument now can handle changing line-numbers while
5338 - Added some wrap logic, we don't wrap if alignment is not left
5339 - Added casts for scrollbar var, base class switched types to
5340 also support RichTextBoxA
5341 - Implemented handling of scrollbar visibility flags
5344 - Switched scrollbars type to RichTextBoxScrollBars to support
5346 - Added tracking of canvas width/height
5347 - Switched scrollbars to be not selectable (to keep focus on text)
5348 - Added central CalculateDocument() method to handle all redraw
5350 - Added ReadOnly support
5351 - Added WordWrap support
5352 - Fixed handling of Enter key (we now treat it as a DialogKey)
5353 - Fixed caret positioning when h or v scroll is not zero
5354 - Fixed placing/generation of vertical scrollbar
5355 - Added CalculateScrollBars() method to allow updating scrollbar
5356 limits and visibility
5357 - Fixed handling of horizontal scroll
5358 - Added handling of vertical scroll
5359 - Implemented auto-'jump' when caret moves to close to a left or
5360 right border and there is text to be scrolled into view (currently
5361 there's the potential for a stack overflow, until a bug in
5364 2005-06-21 Geoff Norton <gnorton@customerdna.com>
5366 * XplatUIOSX.cs: Initial implementation of WM_ERASEBKGND
5368 2005-06-19 Alexander Olk <xenomorph2@onlinehome.de>
5372 - return application/x-zerosize for files with size zero
5373 (if no extension pattern matches).
5374 - check matches collection for strings too.
5375 - return only the first mime type if the name value
5376 collection has more than one mime type.
5378 2005-06-18 Jonathan Chambers <jonathan.chambers@ansys.com>
5380 * PropertyGrid.cs: Cleaned up some TODOs
5381 * PropertyGridView.cs: Added support for UITypeEditors
5383 2005-06-17 Jordi Mas i Hernandez <jordi@ximian.com>
5385 * DataGrid.cs: clears cached value
5387 2005-06-17 Jordi Mas i Hernandez <jordi@ximian.com>
5389 * DataGridTextBoxColumn.cs: new rows, speed improvements, fixes, readonly prop.
5390 * DataGridDrawingLogic.cs: new rows, speed improvements, fixes, readonly prop.
5391 * DataGrid.cs: new rows, speed improvements, fixes, readonly prop.
5392 * DataGridColumnStyle.cs: new rows, speed improvements, fixes, readonly prop.
5394 2005-06-16 Jordi Mas i Hernandez <jordi@ximian.com>
5396 * ThemeWin32Classic.cs: fixes colour
5398 2005-06-15 Peter Bartok <pbartok@novell.com>
5400 * MWFCategoryAttribute.cs: Added (Needed for PropertyGrid designer support)
5401 * MWFDescriptionAttribute.cs: Added (Needed for PropertyGrid designer support)
5402 * ButtonBase.cs: Added MWFCategory and MWFDescription attributes
5403 * Control.cs: Added some MWFCategory and MWFDescription attributes
5404 * ScrollBar.cs: Added some MWFCategory and MWFDescription attributes
5406 2005-06-15 Alexander Olk <xenomorph2@onlinehome.de>
5408 * Mime.cs, MimeGenerated.cs: First draft of MWF mime stuff, see Mime.cs for
5411 2005-06-14 Jordi Mas i Hernandez <jordi@ximian.com>
5413 * DataGridTextBoxColumn.cs: default datagrid settings for Default Styles, fixes
5414 * DataGridTableStyle.cs: default datagrid settings for Default Styles, fixes
5415 * DataGridDrawingLogic.cs: default datagrid settings for Default Styles, fixes
5416 * DataGridBoolColumn.cs: default datagrid settings for Default Styles, fixes
5417 * DataGrid.cs: default datagrid settings for Default Styles, fixes
5418 * DataGridColumnStyle.cs: default datagrid settings for Default Styles, fixes
5420 2005-06-13 Jackson Harper <jackson@ximian.com>
5422 * XplatUIX11.cs: Override SetAllowDrop on X11 so an error message
5423 isn't printed when the user enables dropping. (X11 does accept
5426 2005-06-13 Jackson Harper <jackson@ximian.com>
5428 * TreeView.cs: Remove some TODOS.
5430 2005-06-13 Jackson Harper <jackson@ximian.com>
5432 * Form.cs: Hook into the mdi framework.
5433 * MdiClient.cs: Use the base control collections add method so
5434 parents get setup correctly. Set the default back colour and dock
5436 * MdiChildContext.cs: New class, this bad actor handles an
5437 instance of an MDI window. Right now there is only basic
5438 support. You can drag, close, and resize windows. Minimize and
5439 Maximize are partially implemented.
5441 2005-06-13 Jackson Harper <jackson@ximian.com>
5443 * XplatUIX11.cs: Mash numbers together properly, otherwise we get
5444 freaky when both vals are negative. NOTE: There are probably other
5445 places in XplatUIX11 that this needs to be done.
5447 2005-06-13 Jordi Mas i Hernandez <jordi@ximian.com>
5449 * DataGrid.cs: implement missing methods, move KeyboardNavigation
5450 * DataGridColumnStyle.cs: fixes signature
5452 2005-06-12 Jackson Harper <jackson@ximian.com>
5454 * XplatUIX11.cs: Use sizing cursors similar to the ones on
5457 2005-06-11 Jackson Harper <jackson@ximian.com>
5459 * StatusBarPanel.cs: Signature cleanups. Implement
5462 2005-06-10 Jordi Mas i Hernandez <jordi@ximian.com>
5464 * DataGridTextBoxColumn.cs: Honors aligment
5465 * GridColumnStylesCollection.cs: Contains is case unsensitive
5466 * GridTableStylesCollection.cs: several fixes
5467 * DataGridTableStyle.cs: default column creation
5468 * DataGridDrawingLogic.cs: fixes
5469 * CurrencyManager.cs: ListName property
5470 * DataGrid.cs: multiple styles support
5471 * DataGridColumnStyle.cs: fixes
5474 2005-06-10 Peter Bartok <pbartok@novell.com>
5476 * Control.cs(Select): Moved SetFocus call to avoid potential
5477 loops if controls change the active control when getting focus
5478 * UpDownBase.cs: Fixes to allow proper keyboard focus after clicking
5481 2005-06-10 Matthias Felgner <matthiasf@voelcker.ocm>
5483 * ImageListConverter.cs: Implemented
5485 2005-06-10 John BouAntoun <jba-mono@optusnet.com.au>
5487 * MonthCalendar.cs: Wired in NumericUpDown control for year
5489 2005-06-10 John BouAntoun <jba-mono@optusnet.com.au>
5491 * MonthCalendar.cs: Removed MonoTodo attributes on Click and
5492 DoubleClick events, since they are not meant to be fired.
5494 2005-06-09 Peter Bartok <pbartok@novell.com>
5496 * UpDownBase.cs, NumericUpDown.cs, DomainUpDown.cs: Integrated
5497 Jonathan's standalone controls into MWF, implemented missing
5498 events, attributes and methods; added xxxAccessible classes
5499 * AccessibleObject.cs: Made fields internal so other classes
5500 can change them if needed
5502 2005-06-09 Jonathan Gilbert <2a5gjx302@sneakemail.com>
5504 * UpDownBase.cs: Complete implementation
5505 * NumericUpDown.cs: Complete implementation
5506 * DomainUpDown.cs: Complete implementation
5508 2005-06-09 Jordi Mas i Hernandez <jordi@ximian.com>
5510 * DataGridTextBoxColumn.cs: drawing fixes
5511 * DataGridCell.cs: fixes ToString method to match MSNet
5512 * DataGridTableStyle.cs: fixes
5513 * DataGridBoolColumn.cs: fixes, drawing
5514 * DataGridDrawingLogic.cs: fixes, new methods
5515 * DataGridTextBox.cs: Keyboard and fixes
5517 - Keyboard navigation
5519 - Row selection (single, multiple, deletion, etc)
5522 2005-06-07 Jackson Harper <jackson@ximian.com>
5524 * ThemeWin32Classic.cs: Clear the background area when drawing
5527 2005-06-06 Peter Bartok <pbartok@novell.com>
5529 * ImageListStreamer.cs: Fixed signature for GetData
5530 * CheckBox.cs: Fixed base class for CheckBoxAccessibleObject
5532 - Added missing ChildAccessibleObject class
5533 - Added missing OnXXXFocus overrides, switched to using those
5534 instead of the event handler
5536 - Added Parent property for ControlAccessibleObject
5539 - Added ResetBindings()
5540 * ListBindingConverter.cs: Implemented some methods
5541 * ButtonBase.cs: Added missing ButtonBaseAccessibleObject class
5542 * ImageList.cs: Implemented basic handle scheme, removed TODOs
5543 * ContainerControl.cs: Fixed signature, now subscribing to the
5544 ControlRemoved event instead of overriding the handler, LAMESPEC
5545 * CurrencyManager.cs: Added missing attribute
5546 * MonthCalendar.cs: Added missing properties
5548 2005-06-06 Jordi Mas i Hernandez <jordi@ximian.com>
5550 * DataGridColumnStyle.cs: fixes for DataGridColumnStyle
5552 2005-06-06 Gaurav Vaish and Ankit Jain
5554 * DataSourceHelper.cs: Gaurav Vaish and Ankit Jain patch for databinding
5555 * DataGrid.cs: Gaurav Vaish and Ankit Jain patch for databinding
5557 2005-06-06 Jordi Mas i Hernandez <jordi@ximian.com>
5559 * Control.cs: fixes CreateParams Width / Height.
5561 2005-06-05 Peter Bartok <pbartok@novell.com>
5563 * Win32DnD.cs: Removed compilation warnings
5565 2005-06-05 Peter Bartok <pbartok@novell.com>
5567 * Control.cs (CreateParams): Since we don't know if one of the
5568 properties we use is overridden, lets make sure if we fail accessing
5569 we continue with a backup plan
5571 2005-06-05 Peter Bartok <pbartok@novell.com>
5574 - Removed debug output
5575 - Added MarshalAs attribute to ensure proper marshalling of FORMATETC
5577 - Plugged resource leak
5578 * XplatUIStructs.cs: Changed ClipboardFormats size to ushort, to match
5581 2005-06-05 Peter Bartok <pbartok@novell.com>
5583 * XplatUIWin32.cs: Removed DnD code
5584 * Win32DnD.cs: Implemented drop source and drop target functionality
5586 2005-06-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5588 * UpDownBase.cs: remove duplicate addition of event, enable some code
5589 that was commented out.
5590 * NumericUpDown.cs: added missing attributes and Hexadecimal property.
5591 Validate input when a key is pressed. It works fine now for every
5592 combination of Hexadecimal. Only missing some drawing love when sharing
5593 space with other controls.
5595 2005-06-04 Peter Bartok <pbartok@novell.com>
5598 - We need to pass a window for DragDrop, so enable callback events
5599 - Added DnD callback events when being a DragSource
5600 * XplatUI.cs (StartDrag): Added window handle argument
5601 * XplatUIDriver.cs (StartDrag): Added window handle argument
5602 * QueryContinueDragEventArgs: Made fields internally accessible so
5603 drivers can set them
5604 * GiveFeedbackEventArgs: Made fields internally accessible so drivers
5607 2005-06-03 Jordi Mas i Hernandez <jordi@ximian.com>
5609 * DataGridTextBoxColumn.cs: column text editing
5610 * DataGridTableStyle.cs: Respect columns styles created by the user
5611 * DataGridDrawingLogic.cs: lots of drawing fixes and enhanments
5612 * DataGridBoolColumn.cs: bool column editing
5613 * DataGrid.cs: fixes to scrolling, properties, etc
5614 * DataGridTextBox.cs: handle keyboard
5615 * DataGridColumnStyle.cs: fixes
5617 2005-06-02 Jackson Harper <jackson@ximian.com>
5619 * ImageListStreamer.cs: Somewhat broken implementation of
5620 GetObjectData. The RLE needs some work to match MS properly.
5622 2005-06-02 Jackson Harper <jackson@ximian.com>
5624 * X11Dnd.cs: Attempting to keep at least one file in MWF
5627 2005-06-02 Peter Bartok <pbartok@novell.com>
5629 * X11DnD.cs: Use Marshal.SizeOf instead of sizeof, no /unsafe required
5632 2005-06-02 Peter Bartok <pbartok@novell.com>
5634 * Control.cs: Removed MonoTODO from DoDragDrop and added call to Xplat
5635 * XplatUI.cs: Added DoDragDrop() method
5636 * XplatUIDriver.cs: Added DoDragDrop() method
5638 2005-06-02 Jackson Harper <jackson@ximian.com>
5640 * Splitter.cs: Implement BorderStyle.
5642 2005-06-02 Jackson Harper <jackson@ximian.com>
5644 * XplatUIX11.cs: Tie into the X11Dnd subsystem.
5645 * X11Dnd.cs: New file. A subsystem that handles drag and drop on
5648 2005-06-02 Peter Bartok <pbartok@novell.com>
5652 - Fixed broken insertion code for SetData, now also
5653 overwrites any existing entry of the same format name
5654 * Hwnd.cs: Added list of pointers that automatically gets
5655 freed when the window is disposed
5656 * XplatUI.cs: Call driver initialization method when loading
5659 - OnDragLeave takes EventArgs, not DragEventArgs
5660 - Added setting of WS_EX_ACCEPTFILES style when dropping is
5662 - Forces style update when drop state changes
5663 * XplatUIWin32.cs: Implemented Drag'n'Drop (as good as possible,
5664 not perfect since we cannot (yet) call the IDataObject.GetData()
5665 method, we keep getting 0x80004005 error, dunno why)
5667 2005-06-02 Peter Bartok <pbartok@novell.com>
5669 * DragEventArgs.cs: Make fields internal so we can cache the
5670 object and re-set the fields from XplatUI
5672 2005-06-02 Jackson Harper <jackson@ximian.com>
5674 * Control.cs: Add some internal methods so the DnD subsystem can
5675 raise DnD events. Also call into the driver when AllowDrop is set.
5677 * XplatUIDriver.cs: New method for setting whether or not a window
5678 is allowed to accept drag and drop messages.
5680 2005-06-01 Jordi Mas i Hernandez <jordi@ximian.com>
5682 * ScrollBar.cs: Make sure that values sent in Scroll events
5683 are always between Maximum and Minimum.
5685 2005-06-01 Marek Safar <marek.safar@seznam.cz>
5687 * Menu.cs: Call MenuChanged when menuitem visibility has been
5689 * MenuItem.cs: Rebuild menu when item is (not) visible.
5690 * MainMenu.cs: MainMenu has special MenuChanged.
5691 * Theme.cs: Caption and FrameBorderSize are not fixed.
5692 * XplatUI.cs: Added CaptionHeight,FrameBorderSize.
5693 * XplatUIDriver.cs: Introduced Caption and FrameBorderSize.
5695 * XplatUIOSX: Caption and FrameBorderSize not implemented yet.
5696 * XplatUIWin32.cs: Get Caption and FrameBorderSize from system.
5698 2005-05-30 Jackson Harper <jackson@ximian.com>
5700 * DataFormat.cs: We can't statically initialize this stuff because
5701 it calls into the xplatui and could create a loop. So we lazy init
5704 2005-05-28 Jackson Harper <jackson@ximian.com>
5706 * Control.cs: Proper implementation of Product(Name/Version).
5708 2005-05-27 Jackson Harper <jackson@ximian.com>
5710 * DataObject.cs: Dont crash if no data is found.
5712 2005-05-26 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
5713 * MdiClient.cs: Add missing Localizable attribute to BackgroundImage property
5714 as per status page, guessing it should be set to true
5716 2005-05-26 Jordi Mas i Hernandez <jordi@ximian.com>
5718 * DataGridTextBoxColumn.cs: Draws text and basic text formatting
5719 * DataGridTableStyle.cs: set proper formatting text, def header text
5720 * ThemeWin32Classic.cs: new themable paramaters
5721 * DataGridBoolColumn.cs: paint check box, get data, fixes
5722 * DataGridDrawingLogic.cs: huge improvements in painting, fixes, new methods
5723 * DataGrid.cs: fixes properties, implements vertical and horizontal scrolling
5724 * DataGridColumnStyle.cs: fixes
5725 * Theme.cs: new themable paramaters
5727 2005-05-26 Peter Bartok <pbartok@novell.com>
5729 * ContainerControl.cs: Pass AdjustFormScrollbars() call on to base
5731 2005-05-24 Jonathan S. Chambers <jonathan.chambers@ansys.com>
5732 * Control.cs: Fixed LowOrder and HighOrder to preserve sign.
5734 2005-05-24 Peter Bartok <pbartok@novell.com>
5736 * OpenFileDialog.cs, Form.cs, Menu.cs, GroupBox.cs, UserControl.cs,
5737 Label.cs, DataGridTextBoxColumn.cs, PropertyGrid.cs, ErrorProvider.cs
5738 Splitter.cs, Control.cs, FontDialog.cs, TabPage.cs,
5739 FolderBrowserDialog.cs, HelpProvider.cs, DataGridTableStyle.cs,
5740 NotifyIcon.cs, FileDialog.cs, ListView.cs, SaveFileDialog.cs,
5741 ToolBarButton.cs, ImageList.cs, DataGridBoolColumn.cs, Panel.cs,
5742 DataGrid.cs, DataGridTextBox.cs, ListBox.cs, TrackBar.cs,
5743 AxHost.cs, TabControl.cs, ScrollableControl.cs, ToolBar.cs,
5744 DataGridColumnStyle.cs, PictureBox.cs, DateTimePicker.cs,
5745 StatusBar.cs, MonthCalendar.cs, TreeView.cs: Added
5746 missing attributes, etc
5747 * DataGridPreferredColumnWidthTypeConverter.cs: Added
5749 2005-05-24 Peter Bartok <pbartok@novell.com>
5751 * Help.cs: Added, implemented trivial functions, throws up MessageBox
5752 when user tries to get help
5753 * DataObject.cs, DataFormats.cs, LinkArea.cs,
5754 SelectionRangeConverter.cs, Clipboard.cs : Removed unused variables
5755 to suppress warnings
5756 * XplatUIWin32.cs, XplatUIOSX.cs, XplatUIX11.cs: Removed unused code to
5757 avoid unreachable code warning
5759 2005-05-20 Peter Bartok <pbartok@novell.com>
5761 * CursorConverter.cs (ConvertTo): Switched to use Cursor.GetObjectData
5763 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
5765 * DataGridTextBoxColumn.cs: Basic painting methods
5766 * DataGridTableStyle.cs: Set table style in the column
5767 * ThemeWin32Classic.cs: Use Theme for colors
5768 * DataGridDrawingLogic.cs: Implement more drawing
5769 * DataGrid.cs: drawing, theming, enhacements, fixes
5770 * DataGridColumnStyle.cs: fixes, drawing
5771 * Theme.cs: theming for Datagrid
5773 2005-05-20 Peter Bartok <pbartok@novell.com>
5775 * Cursor.cs: Implemented GetObjectData() method
5777 2005-05-20 Peter Bartok <pbartok@novell.com>
5779 * Cursors.cs: Added setting of cursor name
5781 - Implemented constructors
5782 - Implemented Draw and DrawStretched
5783 - Implemented Current property
5784 - Implemented == and != operators
5785 - Implemented Dispose()
5786 - Implemented ToString
5787 - Added missing attributes
5789 - Added missing reset for OverrideCursor when DoEvents is called
5790 - Fixed creation of cursor, logic was wrong
5792 - Added missing reset for OverrideCursor when DoEvents is called
5793 - Fixed creation of cursor, bit arrays were swapped
5794 * Clipboard.cs: Removed obsolete MonoTODO attribute
5796 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
5798 * ComboBox.cs: fixes OnSelectedItemChanged
5799 * ControlBindingsCollection.cs: fixes item range check
5801 2005-05-20 Jordi Mas i Hernandez <jordi@ximian.com>
5804 - Calc preferred height properly
5805 - Implement missing properties
5807 * NumericUpDown.cs: Implement missing events
5809 2005-05-19 Jackson Harper <jackson@ximian.com>
5811 * TabControl.cs: New method that resizes the tab pages before
5812 redrawing them. This as needed as the control is double buffered
5813 and sizing will not be recalculated unless ResizeTabPages is
5815 * TabPage.cs: Set base.Text instead of Text in the constructor so
5816 that UpdateOwner does not get called. Use the new Redraw method of
5817 TabControl instead of Refresh so the sizing is recalculated.
5818 * ThemeWin32Classic.cs: Draw the text for button tabs.
5820 2005-05-19 Jackson Harper <jackson@ximian.com>
5822 * Control.cs: Paint control background images. Fix typo where
5823 PaintControlBackground was not getting called correctly.
5825 2005-05-19 Peter Bartok <pbartok@novell.com>
5827 * ScrollableControl.cs (DisplayRectangle): Undid my last change until
5828 I can investigate, apparently I broke FileDialog
5830 2005-05-19 Marek Safar <marek.safar@seznam.cz>
5832 * AxHost.cs: Some simple properties.
5833 * Control.cs: window must be accessible after ctor.
5834 * Form.cs: Added TransparencyKey property.
5835 * TextBoxBase.cs: Implemented Clear. Text property can be null.
5836 * XplatUIWin32.cs: SetBorderStyle implemented.
5838 2005-05-18 Peter Bartok <pbartok@novell.com>
5840 * DataObject.cs: Entries are not global but particular to the
5841 DataObject, now it behaves that way
5842 * XplatUIWin32.cs: Implemented Clipboard methods
5843 * Clipboard.cs: Implemented
5844 * ScrollableControl.cs (DisplayRectangle): Fixed calculation
5845 * XplatUIOSX.cs: Updated to final clipboard prototypes
5846 * XplatUIX11.cs: Implemented Clipboard methods
5847 * XplatUIDriver.cs: Updated to final clipboard prototypes
5848 * XplatUIStructs.cs:
5849 - Added BITMAPINFOHEADER struct
5850 - Added ClipboardFormats enum
5852 - Added ClipboardStruct
5853 - Added Atom enum items for clipboard types
5854 - Fixed atom types for Selection event structures
5856 - Added internal properties and methods for drivers to enumerate
5858 - Switched initialization method to allow drivers to assign their
5859 own IDs even for the MS predefined clipboard IDs
5860 * XplatUI.cs: Updated to final clipboard interface
5862 2005-05-18 Jonathan S. Chambers <jonathan.chambers@ansys.com>
5863 * PropertyGridView.cs: Fixed compiler warnings.
5865 2005-05-18 Jonathan S. Chambers <jonathan.chambers@ansys.com>
5866 * PropertyGrid.cs: Added some event calls
5867 * PropertyGridView.cs: Change drawing code to use double buffering
5868 * PropertyGridTextBox.cs: Changed Text property name
5869 * GridItem.cs: Added Bounds property.
5870 * GridEntry.cs: Added Bounds property.
5872 2005-05-17 Lluis Sanchez Gual <lluis@novell.com>
5874 * Binding.cs: Use IsInstanceOfType instead of IsAssignableFrom
5875 since GetType() may not return the correct type if the object is
5878 2005-05-17 Jordi Mas i Hernandez <jordi@ximian.com>
5880 * TreeNodeCollection.cs: fixes get/set item ranges
5882 2005-05-15 Jordi Mas i Hernandez <jordi@ximian.com>
5884 * ListBox.cs: Kazuki Oikawa's PreferredHeight and ItemHeight fixes
5886 2005-05-15 Jordi Mas i Hernandez <jordi@ximian.com>
5888 * ComboBox.cs: Fix item range comparation
5889 * ListView.cs: Fix item range comparation
5891 2005-05-03 Alexander Olk <xenomorph2@onlinehome.de>
5894 - Clear example panel when OnPaint is called
5895 - Better solution for displaying the example panel text
5896 - Select default indexes in the ListBoxes
5898 2005-05-11 Geoff Norton <gnorton@customerdna.com>
5900 * XplatUIOSX.cs: Avoid painting into invisible views. Fixes #74926
5902 2005-05-11 Peter Bartok <pbartok@novell.com>
5904 * LinkArea.cs: Added and implemented LinkAreaTypeConverter class
5905 * SelectionRangeConverter.cs: Implemented
5906 * PropertyGrid.cs: Fixed attribute value
5908 - Invoke(): Don't call Begin/EndInvoke if it is not neccessary
5909 - Added Sebastien Pouliot's CAS Stack Propagation fixes
5910 * XplatUIDriver.cs: Added new XplatUIDriverSupport class, for code
5911 that's common to all drivers. First methods to go there are
5912 Sebastien Pouliot's CAS Stack Propagation helper methods
5913 * XplatUIWin32.cs, XplatUIX11.cs, AsyncMethodData.cs: Fixes by
5914 Sebastien Pouliot for CAS Stack Propagation
5916 2005-05-11 Geoff Norton <gnorton@customerdna.com>
5919 XplatUIOSX.cs: More cosmetic cleanup courtesy of Artyom Tyazhelov (Artyom.Tyazhelov@helmes.ee)
5921 2005-05-12 Jordi Mas i Hernandez <jordi@ximian.com>
5923 * DataGridTextBoxColumn.cs: fixed some members
5924 * GridColumnStylesCollection.cs: indexed column is case insensitive
5925 * DataGridTableStyle.cs: fixes
5926 * ThemeWin32Classic.cs: add new theme parameter
5927 * Theme.cs: add new theme parameter
5928 * DataGridDrawingLogic.cs: Datagrid's drawing logic
5929 * DataGrid.cs: fixes, new internal properties, etc.
5930 * DataGridColumnStyle.cs: allows to set grid value
5933 2005-05-10 Peter Bartok <pbartok@novell.com>
5935 * AccessibleObject.cs:
5936 - Removed MonoTODO attribute on help, method is correct
5937 - Fixed Bounds property
5938 * AxHost.cs: Moved MonoTODO
5939 * ButtonBase.cs: Now setting AccessibleObject properties
5940 * RadioButton.cs: Setting proper AccessibleObject role
5941 * CheckBox.cs: Setting proper AccessibleObject role
5942 * ControlBindingsCollection.cs: Added properties, methods and attributes
5943 * DataFormats.cs: Fixed awkward internal API, and changed to enable
5944 userdefined DataFormats.Format items as well
5945 * ListControl.cs: Removed data_member from the public eye
5946 * OpenFileDialog.cs:
5948 - Added missing attributes
5949 * SaveFileDialog.cs: Added missing attributes
5950 * ImageListStreamer.cs: Fixed code that caused warnings
5951 * LinkLabel.cs: Removed unreachable code
5952 * TreeView.cs: Fixed code that caused warnings
5953 * PropertyGridView.cs: Fixed code that caused warnings
5954 * GridColumnStylesCollection.cs: Added missing attributes
5955 * GridTableStylesCollection: Added missing attribute
5956 * PropertyManager: Added .ctor
5957 * SecurityIDType: Added
5958 * DataObject.cs: Implemented class
5959 * LinkArea.cs: Added missing attribute
5961 2005-05-11 Jordi Mas i Hernandez <jordi@ximian.com>
5963 * RadioButton.cs: call base method to allow to fire OnClick event
5964 * UpDownBase.cs: OnMouseUp call base method
5965 * CheckedListBox.cs: call base method before returning
5966 * TrackBar.cs: call base method before returning
5969 2005-05-10 Peter Bartok <pbartok@novell.com>
5971 * XplatUIX11.cs: Fix for #74902, check pending timers when peeking
5974 2005-05-10 Peter Bartok <pbartok@novell.com>
5976 * DataFormats.cs: Implemented
5977 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs,
5978 XplatUIX11.cs: Added Clipboard APIs
5979 * XplatUIWin32.cs: Implemented Clipboard APIs
5980 * FolderBrowserDialog.cs: Added missing event, attributes
5982 2005-05-10 Jordi Mas i Hernandez <jordi@ximian.com>
5984 * CheckBox.cs: call base method to allow to fire OnClick event
5986 2005-05-09 Sebastien Pouliot <sebastien@ximian.com>
5988 * XplatUI.cs: Use PlatformID.Unix under NET_2_0.
5990 2005-05-06 Peter Bartok <pbartok@novell.com>
5992 * XplatUIX11.cs: Redid Jackson's fix, it was causing a busy loop
5993 * Screen.cs: Implemented
5994 * HelpNavigator.cs: Added
5995 * XplatUIWin32.cs: Added SystemParametersInfo call, fixed WorkArea
5997 * HelpProvider.cs: Implemented all we can do until we have a CHM
5998 help library (which means that "What's This" does work now)
6000 2005-05-06 Jackson Harper <jackson@ximian.com>
6002 * XplatUIX11.cs: Fix waking up the main loop.
6004 2005-05-05 Peter Bartok <pbartok@novell.com>
6006 * XplatUI.cs: Updated revision
6007 * Form.cs: Removed enless loop
6008 * GroupBox.cs (OnPaint): Added call to base.OnPaint()
6009 * Label.cs (OnPaint): Added call to base.OnPaint()
6010 * ToolTip.cs: Made ToolTipWindow reusable for other controls
6011 * LinkLabel.cs (OnPaint): Added call to base.OnPaint()
6012 * UpDownBase.cs (OnPaint): Moved base.OnPaint() call to end of method
6014 * ButtonBase.cs: Moved base.OnPaint() call to end of method
6015 * ThemeWin32Classic.cs: Replaced references to ToolTip with references
6016 to ToolTip.ToolTipWindow for drawing and size methods; this allows
6017 reuse of ToolTipWindow by other controls
6018 * SizeGrip.cs: Moved base.OnPaint() call to end of method
6019 * XplatUIX11.cs: Now clipping drawing area (experimental)
6020 * PictureBox.cs: Moved base.OnPaint() call to end of method
6021 * Theme.cs: Fixed ToolTip abstracts to match new format
6022 * ErrorProvider.cs: Implemented
6024 2005-05-05 Jordi Mas i Hernandez <jordi@ximian.com>
6026 * Label.cs: fire events using OnAutoSizeChanged and OnTextAlignChanged
6030 - Implements LinkBehavior
6033 2005-05-03 Jackson Harper <jackson@ximian.com>
6035 * ListView.cs: Calculate the scrollbar positioning on resize and
6036 paint, so they get put in the correct place.
6038 2005-05-03 Alexander Olk <xenomorph2@onlinehome.de>
6040 * ColorDialogs.cs: The small color panels are now handled by
6041 SmallColorControl. This fixes drawing of the focus rectangle
6042 and adds a 3D border.
6044 2005-05-03 Peter Bartok <pbartok@novell.com>
6046 * Control.cs: Modified version of Jonathan Chamber's fix for
6049 2005-05-03 Jackson Harper <jackson@ximian.com>
6051 * ListView.cs: Remove redraw variable. Control now handles whether
6052 or not a redraw needs to be done, and will only raise the paint
6053 event if redrawing is needed.
6055 2005-05-03 Jackson Harper <jackson@ximian.com>
6057 * Splitter.cs: No decorations for the splitter form. Cache the
6060 2005-05-03 Jackson Harper <jackson@ximian.com>
6062 * TreeView.cs: Use dashed lines to connect nodes. Use the
6063 ControlPaint method for drawing the focus rect instead of doing
6066 2005-05-02 Peter Bartok <pbartok@novell.com>
6068 * LinkLabel.cs: Fixed the fixes from r43566 and 43521
6070 2005-04-29 Jackson Harper <jackson@ximian.com>
6072 * ThemeWin32Classic.cs: Don't clear the GC that will clear the
6073 entire image buffer. Just clear the clipping rectangle.
6075 2005-04-29 Jackson Harper <jackson@ximian.com>
6077 * ThemeWin32Classic.cs: Don't draw list view items that are
6078 outside the clipping rectangle.
6080 2005-04-29 Jordi Mas i Hernandez <jordi@ximian.com>
6082 * ListBox.cs: added horizontal item scroll
6084 2005-04-29 Jackson Harper <jackson@ximian.com>
6086 * ThemeWin32Classic.cs: Remove some old debug code that was
6087 causing flicker with the new double buffering code.
6089 2005-04-29 John BouAntoun <jba-mono@optusnet.com.au>
6091 * MonthCalendar.cs, DateTimePicker.cs: Made monthcalendar dropdwon
6092 behave like combobox and comboboxlist (still not sure if this is
6095 2005-04-28 Jackson Harper <jackson@ximian.com>
6097 * ThemeWin32Classic.cs: Don't fill the middle of progress
6098 bars. This fills areas outside of the clip bounds that don't need
6101 2005-04-28 Jackson Harper <jackson@ximian.com>
6103 * Control.cs: Don't expose functionality to touch the image buffers.
6105 * ListView.cs: We do not need to (and no longer can) manipulate
6106 the image buffers directly. All of this is handled by Control.
6108 2005-04-28 Peter Bartok <pbartok@novell.com>
6110 * RichTextBoxSelectionAttribute.cs, RichTextBoxSelectionTypes.cs,
6111 RichTextBoxScrollBars.cs, RichTextBoxStreamType.cs,
6112 RichTextBoxFinds.cs, RichTextBoxWordPunctuations.cs: Added
6114 2005-04-28 Jordi Mas i Hernandez <jordi@ximian.com>
6117 - Adjust control's height for non-simple comboboxes (bug fix)
6119 * MenuAPI.cs: remove unused var
6120 * ScrollBar.cs: remove unsed var
6122 * ListBox.cs: unselect items when clearing
6124 2005-04-28 Jordi Mas i Hernandez <jordi@ximian.com>
6126 * ListControl.cs: honors OnPositionChanged and default Selected Item
6127 * ListBox.cs: unselect items when clearing
6129 2005-04-27 Jackson Harper <jackson@ximian.com>
6131 * X11Keyboard.cs: Initialize a default keyboard and give a warning
6132 if a "correct" keyboard is not found. This will make us not crash,
6133 but might give some users bad keyboard layouts...seems to be the
6134 same thing rewind does.
6136 2005-04-27 Jackson Harper <jackson@ximian.com>
6138 * BindingManagerBase.cs: Attach the current/position changed
6139 handlers to their respective events.
6141 2005-04-27 Jackson Harper <jackson@ximian.com>
6143 * Control.cs: Make sure that the first WM_PAINT does a full draw,
6145 * ThemeWin32Classic.cs: Don't fill the background for picture
6146 boxes. This could overright user drawing.
6147 * ComboBox.cs: Just fill the clipping rect not the entire client
6148 rect when drawing the background. This prevents pieces of the
6149 image buffer from getting overwritten and is theoretically faster.
6151 2005-04-26 Jordi Mas i Hernandez <jordi@ximian.com>
6153 * ComboBox.cs: Databinding support fixes, fire missing events
6154 * ListControl.cs: implement missing methods and properties, fixes
6155 * ThemeWin32Classic.cs: Databiding support on Drawing
6156 * CheckedListBox.cs: Databinding support fixes, fire missing events
6157 * ListBox.cs: Databinding support fixes, fire missing events
6159 2005-04-25 Peter Bartok <pbartok@novell.com>
6161 * LinkLabel.cs: Length of LinkArea is not allowed to be negative
6163 2005-04-25 Jackson Harper <jackson@ximian.com>
6165 * TreeView.cs: Use the horizontal scrollbars height not width when
6166 determining how much of the client area is available.
6168 2005-04-25 Jackson Harper <jackson@ximian.com>
6170 * Control.cs: Double buffering is handled differently now. As per
6171 the spec, the extra buffer is created in the WM_PAINT message and
6172 passed down to the control's drawing code.
6180 * PropertyGridView.cs:
6192 * DateTimePicker.cs:
6194 * TreeView.cs: Update to new double buffering system.
6195 * MonthCalendar.cs: Uncomment block, as Capture is now
6196 working. Update to new double buffering
6197 * LinkLabel.cs: Lazy init the link collection. Update to new double buffering
6198 * PaintEventArgs.cs: New internal method allows us to set the
6199 graphics object. This is used for double buffering.
6200 * ThemeWin32Classic.cs: Give the picture box drawing code a clip
6201 rectangle. The internal paint_area var has been removed from
6202 StatusBar. The clipping rect should be used instead.
6203 * Theme.cs: Give the PictureBox drawing method a clipping rect.
6204 * TabPage.cs: The RefreshTabs method was removed, so just call the
6205 tab controls Refresh method now.
6206 * TabControl.cs: Update to new double buffering. Make sure the
6207 handle is created before sizing the tab pages, otherwise we will
6208 get stuck in a loop.
6210 2005-04-24 Borja Sanchez Zamorano <borsanza@gmail.com>
6212 * LinkLabel.cs: Fix typo, bug #74719; patch
6213 from Borja Sanchez Zamorano
6215 2005-04-22 Jackson Harper <jackson@ximian.com>
6217 * TreeNode.cs: Implement Handle stuff.
6218 * TreeView.cs: Utility methods so nodes can get/lookup by handle.
6220 2005-04-22 Jordi Mas i Hernandez <jordi@ximian.com>
6222 * DataGridTextBoxColumn.cs: call base constructors, fixes
6223 * GridColumnStylesCollection.cs: missing events, methods, and functionality
6224 * GridTableStylesCollection.cs: fixes, check duplicate mapping names
6225 * DataGridTableStyle.cs: implements create default column styles
6226 * DataGridBoolColumn.cs: which types can handle
6227 * DataGrid.cs: missing methods, fixes, new functionality
6228 * DataGridColumnStyle.cs: fixes
6230 2005-04-20 Alexander Olk <xenomorph2@onlinehome.de>
6231 * FolderBrowserDialog.cs:
6232 - Use a thread to fill the TreeView
6233 - Adjusted some sizes
6235 2005-04-19 Peter Bartok <pbartok@novell.com>
6237 * LinkLabel.cs: (Re-)create the pieces when setting the Text
6238 property. Fixes #74360.
6240 2005-04-19 Jackson Harper <jackson@ximian.com>
6242 * XEventQueue.cs: Lock when getting the lockqueue size.
6243 * PictureBox.cs: Call base OnPaint
6245 2005-04-19 Peter Bartok <pbartok@novell.com>
6247 * XplatUIX11.cs: Fixed bug introduced with the HWND rewrite, Async
6248 messages were no longer being processed (this broke BeginInvoke)
6251 2005-04-18 Jackson Harper <jackson@ximian.com>
6253 * TreeView.cs: buglet that caused node images to get drawn
6254 regardless of whether or not they were in the clipping rectangle.
6256 2005-04-18 Jackson Harper <jackson@ximian.com>
6258 * CurrencyManager.cs: There are four rules for GetItemProperties:
6259 - If the type is an array use the element type of the array
6260 - If the type is a typed list, use the type
6261 - If the list contains an Item property that is not an object, use
6263 - use the first element of the list if there are any elements in
6266 2005-04-17 Jackson Harper <jackson@ximian.oom>
6268 * TreeView.cs: Calculate plus minus and checkbox bounds when there is a
6269 click. This handles offsets for scrolling properly and reduces
6270 memory. Also fixed GetNode to not offset now that TopNode works
6272 * TreeNode.cs: No longer need to track the plus minus or checkbox bounds.
6274 2005-04-17 Jackson Harper <jackson@ximian.com>
6276 * CursorConverter.cs: Initial implementation.
6278 2005-04-15 Jordi Mas i Hernandez <jordi@ximian.com>
6280 * ListControl.cs: work towards complex data binding support on ListControl
6281 * CurrencyManager.cs: work towards complex data binding support on ListControl
6282 * ListBox.cs: work towards complex data binding support on ListControl
6285 2005-04-15 Jordi Mas i Hernandez <jordi@ximian.com>
6287 * GridTableStylesCollection.cs: fixes name and constructor
6288 * DataGridTableStyle.cs: fixes
6289 * DataGridBoolColumn.cs: fixes names and constructors
6290 * DataGrid.cs: define methods and properties. Some init implementations
6291 * DataGridCell.cs: define methods and properties. Some init implementations
6292 * GridTablesFactory.cs: Define methods and properties
6294 2005-04-15 Geoff Norton <gnorton@customerdna.com>
6296 * XplatUIOSX.cs: Handle proper mouse tracking even if the current
6297 graphics port changes. We still want the coordinates in global screen
6300 2005-04-14 Jackson Harper <jackson@ximian.com>
6302 * TreeView.cs: Handle clicks when plus minus is disabled. Don't
6303 check plus minus or checkbox clicks unless those features are enabled.
6305 2005-04-14 Jackson Harper <jackson@ximian.com>
6307 * TreeView.cs: Add methods for setting the top and bottom visible
6308 nodes. TreeNode::EnsureVisible uses these methods.
6309 * TreeNode.cs: Implement EnsureVisible
6311 2005-04-13 Jordi Mas i Hernandez <jordi@ximian.com>
6313 * Form.cs: Pospone menu assignation if the window has not been created yet
6314 * XplatUIWin32.cs: Fixes Win32SetWindowPos, then does not change window
6317 2005-04-12 Jackson Harper <jackson@ximian.com>
6319 * TreeView.cs: Set the TopNode properly when scrolling
6320 occurs. This has the added benifit of reducing the amount of
6321 walking that needs to be done when drawing. Also removed an old
6323 * OpenTreeNodeEnumerator.cs: Fix moving backwards.
6325 2005-04-11 Jordi Mas i Hernandez <jordi@ximian.com>
6327 * Timer.cs: fixes interval setting when the timer is already enabled
6329 2005-04-10 Alexander Olk <xenomorph2@onlinehome.de>
6331 * FolderBrowserDialog.cs: First approach
6333 2005-04-09 Peter Bartok <pbartok@novell.com>
6335 * FolderBrowserDialog: Added
6337 2005-04-07 Jordi Mas i Hernandez <jordi@ximian.com>
6339 * LinkLabel.cs: move drawing code into the theme
6340 * ThemeWin32Classic.cs: drawing code and painting background bugfix
6341 * Theme.cs: define DrawLinkLabel method
6343 2005-04-05 Jackson Harper <jackson@ximian.com>
6345 * BindingContext.cs: Use weak references so these bad actors don't
6346 stay alive longer then they need to.
6348 2005-04-05 Jackson Harper <jackson@ximian.com>
6350 * ListControl.cs: Basic implementation of complex databinding.
6352 * ListBox.cs: Add calls to ListControl databinding methods.
6354 2005-04-05 Alexander Olk <xenomorph2@onlinehome.de>
6357 - Don't change PopupButtonState to Normal when the
6358 PopupButton gets pressed several times.
6359 - Renamed ButtonPanel to PopupButtonPanel
6361 2005-04-05 Jordi Mas i Hernandez <jordi@ximian.com>
6363 * ColorDialog.cs: Use cached objects instead of creating them
6364 * LinkLabel.cs: Use cached objects instead of creating them
6365 * Splitter.cs: Use cached objects instead of creating them
6366 * FontDialog.cs: Use cached objects instead of creating them
6367 * PropertyGridView.cs: Use cached objects instead of creating them
6368 * MessageBox.cs: Use cached objects instead of creating them
6369 * FileDialog.cs: Use cached objects instead of creating them
6370 * ThemeWin32Classic.cs: Use cached objects instead of creating them
6371 * TreeView.cs: Use cached objects instead of creating them
6373 2005-04-04 Jordi Mas i Hernandez <jordi@ximian.com>
6375 * Control.cs: use Equals to compare the font since no == op
6376 * ScrollBar.cs: use Equals to compare the font since no == op
6378 2005-04-04 Alexander Olk <xenomorph2@onlinehome.de>
6380 * SaveFileDialog.cs: Open stream in OpenFile with FileMode Create
6382 2005-04-01 Jackson Harper <jackson@ximian.com>
6384 * Binding.cs: Implement IsBinding.
6385 * BindingManagerBase.cs:
6386 * PropertyManager.cs:
6387 * CurrencyManager.cs: Add IsSuspended property.
6389 2005-04-01 Jackson Harper <jackson@ximian.com>
6391 * Binding.cs: Had some IsAssignableFrom calls backwards.
6393 2005-04-01 Jackson Harper <jackson@ximian.com>
6395 * Binding.cs: Handle null data members when pulling data.
6396 * PropertyManager.cs: Handle the data member being a property that
6399 2005-04-01 Jordi Mas i Hernandez <jordi@ximian.com>
6401 * DataGridTextBoxColumn.cs: fixes signature
6402 * DataGrid.cs: calls right constructor
6404 2005-04-01 Jordi Mas i Hernandez <jordi@ximian.com>
6406 * DataGridTextBoxColumn.cs: implements DataGridTextBoxColumn class
6407 * GridColumnStylesCollection.cs: implements GridColumnStylesCollection
6408 * GridTableStylesCollection.cs: implements GridTableStylesCollection
6409 * DataGridTableStyle.cs: implements DataGridTableStyle
6410 * DataGridBoolColumn.cs: implements DataGridBoolColumn
6411 * DataGridTextBox.cs: implements DataGridTextBox
6412 * DataGridColumnStyle.cs: implements DataGridColumnStyle
6414 2005-03-31 Alexander Olk <xenomorph2@onlinehome.de>
6416 * FileDialog.cs: Added simple PopupButton class for ButtonPanel
6418 2005-03-29 Peter Bartok <pbartok@novell.com>
6421 - Properly implemented CompanyName property
6422 - Fixed LocalUserAppDataPath and UserAppDataPath, now properly
6423 returns a path that includes CompanyName, ProductName and
6424 Version (fixes bug #70330)
6426 2005-03-29 Stefan Buehler <sbuehler@gmx.ch>
6428 * TabPage.cs: Don't use Owner.DisplayRectangle unless owner is valid,
6431 2005-03-28 Alexander Olk <xenomorph2@onlinehome.de>
6433 * FileDialog.cs, SaveFileDialog.cs OpenFileDialog.cs:
6435 - Added ReadOnly CheckBox
6436 - Further refactoring: moved some code from Open-/SaveFileDialog
6439 2005-03-28 Alexander Olk <xenomorph2@onlinehome.de>
6441 * OpenFileDialog.cs: Fixed CheckFileExists
6443 Moved FileView and DirComboBox outside FileDialog class.
6444 They can now be used outside FileDialog
6446 2005-03-27 Alexander Olk <xenomorph2@onlinehome.de>
6448 * FileDialog.cs: Added a contextmenu to change ShowHiddenFiles
6449 * SaveDialog.cs, OpenFileDialog.cs: Fixes for Reset() method
6451 2005-03-27 Alexander Olk <xenomorph2@onlinehome.de>
6453 * FileDialog.cs, OpenFileDialog.cs, SaveFileDialog.cs:
6454 - Added missing CreatePrompt property in SaveDialog
6455 - Overall SaveDialog handling should be better now
6456 - Added non standard ShowHiddenFiles property
6457 - Added extension, CreatePrompt and OverwritePrompt support in SaveDialog
6458 - Added InitialDirectory and RestoreDirectory support
6460 2005-03-26 Alexander Olk <xenomorph2@onlinehome.de>
6462 * FileDialog.cs: Made dirComboBox usable
6464 2005-03-24 Alexander Olk <xenomorph2@onlinehome.de>
6466 * FileDialog.cs: Added Filter support (case sensitiv)
6468 2005-03-24 Jackson Harper <jackson@ximian.com>
6470 * TabControl.cs: Need a couple more pixels for the lines.
6472 2005-03-23 Jackson Harper <jackson@ximian.com>
6474 * TabControl.cs: Give the tab page focus when it is selected.
6476 2005-03-23 Jackson Harper <jackson@ximian.com>
6478 * TabControl.cs: Account for the drawing of tabs borders when
6479 invalidating. If the slider was clicked dont do click detection on
6482 2005-03-23 Jackson Harper <jackson@ximian.com>
6484 * TabControl.cs: Fix typo, emilinates an unneeded expose event.
6486 2005-03-22 Jonathan Chambers <jonathan.chambers@ansys.com>
6488 * CategoryGridEntry.cs: Added
6489 * GridItem.cs: Added helper properties
6490 * PropertyGridTextBox.cs: Custom textbox control for PropertyGrid.
6491 * GridEntry.cs: Updated code for collection
6492 * PropertyGrid.cs: Cleaned up some formatting
6493 * PropertyGridView.cs: Added drop down functionality for enums.
6494 * GridItemCollection.cs: Added enumerator logic
6495 * PropertyGridEntry.cs: Added
6497 2005-03-19 Alexander Olk <xenomorph2@onlinehome.de>
6500 - Removed unnecessary commented code
6501 - Fixed handling for entering the filename manually in the combobox
6503 2005-03-19 Alexander Olk <xenomorph2@onlinehome.de>
6505 * FileDialog.cs, OpenFileDialog.cs: OpenFileDialog Multiselect now works
6507 2005-03-18 Peter Bartok <pbartok@novell.com>
6509 * ThemeWin32Classic.cs: Moved listview column headers a bit, to avoid
6510 them being touching the border
6512 2005-03-18 Peter Bartok <pbartok@novell.com>
6514 * TextControl.cs: Quick hack to center text better
6516 2005-03-18 Peter Bartok <pbartok@novell.com>
6519 - Don't throw NotImplemented exceptions, just print a notice once
6520 instead (requested by Miguel). This makes running existing SWF
6523 - Commented out Drag'N'Drop XplatUI call (no driver support yet)
6524 - Added context menu trigger on right click
6525 * Panel.cs: Trigger invalidate on resize
6527 - Removed old double-buffer drawing
6528 - Added ResizeRedraw style to force proper update of statusbar
6530 - Removed debug output
6531 * ThemeWin32Classic.cs:
6532 - Fixed drawing of status bar, now draws Text property if there
6533 are no defined panels
6535 2005-03-18 Jackson Harper <jackson@ximian.com>
6537 * ImageList.cs: When the image stream is set pull all the images
6539 * ImageListStreamer.cs: Implement reading image list streams.
6541 2005-03-18 Peter Bartok <pbartok@novell.com>
6543 * ThemeWin32Classic.cs (DrawPictureBox):
6544 - Fixed calculations for centered drawing
6545 - Fixed drawing for normal mode, not scaling the image on normal
6547 2005-03-18 Peter Bartok <pbartok@novell.com>
6549 * ComboBox.cs: Now also firing the OnKeyPress events for the embedded
6552 - Made Open/Save button the accept button for FileDialog
6553 - Tied the cancel button to the IButtonControl cancel button
6554 - Save/Open now properly builds the pathname
6555 - Now handles user-entered text
6556 - Preventing crash on right-click if no item is selected
6557 - Fixed Text property, now uses contents of textbox
6558 - Fixed SelectedText property, now just returns the text part that
6559 is selected in the text box
6561 2005-03-18 Jackson Harper <jackson@ximian.com>
6563 * ThemeWin32Classic.cs: Use the proper func for drawing the focus
6564 rect, make sure to de-adjust the interior rect after drawing the
6567 2005-03-18 Peter Bartok <pbartok@novell.com>
6569 * MenuAPI.cs: Remove menu *before* executing selected action to
6570 prevent the menu from 'hanging around'
6572 2005-03-17 Geoff Norton <gnorton@customerdna.com>
6574 * XplatUIOSX.cs: Implemented WorkingArea property
6576 2005-03-17 Peter Bartok <pbartok@novell.com>
6578 * XplatUIX11.cs: Fixed menu coord calculations
6579 * MenuAPI.cs: Now using new ScreenToMenu()/MenuToScreen() methods
6580 for calculating offsets
6582 2005-03-17 Peter Bartok <pbartok@novell.com>
6584 * Hwnd.cs: Do not consider menu presence for default client
6585 rectangle location/size
6586 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs, XplatUIOSX.cs,
6587 XplatUIWin32.cs: Added MenuToScreen() and ScreenToMenu() coord
6588 translation functions
6589 * FileDialog.cs: Fixed (what I presume is a) typo
6591 2005-03-17 Jonathan Gilbert <logic@deltaq.org>
6593 * XplatUIX11.cs: Added call to XInitThreads() to allow multi-threaded
6594 X access (avoids X-Async errors)
6596 2005-03-16 Jackson Harper <jackson@ximian.com>
6598 * TabControl.cs: Raise the SelectedIndexChanged event.
6600 2005-03-16 Alexander Olk <xenomorph2@onlinehome.de>
6602 * FileDialog.cs, OpenFileDialog.cs, SaveFileDialog.cs:
6603 - Removed vertical ToolBar and replaced it with a custom panel
6604 (desktop and home button already work)
6605 - Added Help button (some controls get resized or relocated then)
6606 - Draw correct text depending on Open or Save.
6607 - Fixed some typos...
6609 2005-03-16 Jordi Mas i Hernandez <jordi@ximian.com>
6612 - Only change Maximum and Minimum when need it (bug fix)
6614 2005-03-15 Peter Bartok <pbartok@novell.com>
6616 * Form.cs: Use Handle for icon, to trigger creation if
6617 the window does not yet exist
6619 - CanSelect: Slight performance improvement
6620 - Focus(): Preventing possible recursion
6621 - Invalidate(): Removed ControlStyle based clear flag setting
6622 - WM_PAINT: fixed logic for calling OnPaintBackground
6623 - WM_ERASEBKGND: Fixed logic, added call to new driver method
6624 EraseWindowBackground if the control doesn't paint background
6626 - Moved EraseWindowBackground() method to internal methods
6627 - Removed unused WM_ERASEBKGND handling in GetMessage; msg never comes;
6628 is sent via SendMessage on BeginPaint call on Win32
6630 - Added EraseWindowBackground() method
6631 - No longer sends WM_ERASEBKGND on .Expose, but on call to
6632 PaintEventStart, which more closely matches Win32 behaviour
6633 - Fixed Invalidate() call, now updates new ErasePending Hwnd property
6634 - Fixed SetFocus() to properly deal with client and whole windows
6635 * Hwnd.cs: Added ErasePending property
6636 * XplatUIOSX.cs: Stubbed EraseWindowBackground() method
6637 * XplatUI.cs, XplatUIDriver.cs: Added EraseWindowBackground() method
6639 2005-03-12 Geoff Norton <gnorton@customerdna.com>
6642 - Fix hard loop when timers exist.
6643 - Fix bugs with middle and right click for 3 button mice.
6645 2005-03-11 Peter Bartok <pbartok@novell.com>
6648 - get_WorkingArea: Need to call X directly, GetWindowPos only
6649 returns cached data now
6650 - Added sanity check to GetWindowPos hwnd usage
6652 2005-03-11 Jackson Harper <jackson@ximian.com>
6654 * BindingManagerBase.cs: This method isn't used anymore as
6655 PullData now updates the data in the control.
6657 2005-03-11 Jordi Mas i Hernandez <jordi@ximian.com>
6659 * Form.cs: fixes menu drawing on X11
6660 * MenuAPI.cs: fixes menu drawing on X11
6662 2005-03-11 Peter Bartok <pbartok@novell.com>
6664 * Control.cs: Changed OnCreateControl behaviour based on a suggestion
6665 from Jonathan Gilbert; should fix bug #73606
6666 * XplatUIX11.cs: Fixed NC Mouse message coordinates, they need to be
6667 in Screen coordinates. Thanks, Jordi.
6668 * Form.cs: Added missing attribute
6670 2005-03-11 Peter Bartok <pbartok@novell.com>
6673 - Rudimentary Mdi support
6674 - Removed outdated FormParent code
6675 - Implemented lots of missing properties and methods, still missing
6676 transparency support
6677 - Added missing attributes
6678 - Implemented support for MaximumBounds
6679 - Added firing of various events
6680 * XplatUI.cs: Added SetIcon() method
6681 * XplatUIDriver.cs: Added SetIcon() abstract
6682 * XplatUIOSX.cs: Stubbed out SetIcon() method
6684 - Implemented SetIcon() support
6685 - Moved SetMenu() and SetBorderStyle() to proper alphabetical pos
6686 - Switched to unix line endings
6688 - Made POINT internal so for can access it as part of MINMAX
6689 - Implemented SetIcon() support
6690 - Implemented support for CLIENTCREATESTRUCT (but might have to drop
6691 native Mdi support again, might have to go managed)
6692 * Control.cs: Now fires the StyleChanged event
6693 * MdiClient.cs: Added; still mostly empty
6695 2005-03-10 Peter Bartok <pbartok@novell.com>
6697 * SaveFileDialog.cs: Added emtpy file
6699 2005-03-08 Peter Bartok <pbartok@novell.com>
6701 * Control.cs: Fixed bug #73190; now invokes CreateControl (which
6702 in turn triggers OnCreateContro) when creating a handle for the
6704 * TextControl.cs: Fixed endless loop in certain cases when
6705 replacing the current selection
6707 2005-03-08 Jordi Mas i Hernandez <jordi@ximian.com>
6710 - Honors NewValue changes in Scroll events allowing apps to change it
6711 - Adds First and Last Scroll events
6712 - Fixes Thumb events
6714 2005-03-07 Peter Bartok <pbartok@novell.com>
6716 * Hwnd.cs: Added DefaultClientRectangle property
6717 * XplatUI.cs: Now using the X11 driver Where() method, which provides
6718 more detailed debug information
6720 - Fixed size-change feedback loop, where we would pull an old size
6721 off the queue and mistakenly change our window's size to an
6723 - Now compressing ConfigureNotify events, to reduce looping and
6725 * TextBoxBase.cs: Preventing crash when no text is set and ToString()
6728 2005-03-07 Jackson Harper <jackson@ximian.com>
6730 * Binding.cs: Push data pushes from data -> property. Check if the
6731 property is readonly when attempting to set it.
6733 2005-03-07 Jackson Harper <jackson@ximian.com>
6735 * Binding.cs: Format and parse data correctly. Use ASsignableFrom
6736 instead of IsSubclassOf. Pulling data now sets the value on the
6738 * PropertyManager.cs:
6739 * CurrencyManager.cs: Just need to pull data when updating now,
6740 because PullData will set the value on the control.
6742 2005-03-04 Jackson Harper <jackson@ximian.com>
6744 * Binding.cs: Implement data type parsing and converting on pulled
6745 data. TODO: Are there more ways the data can be converted?
6747 2005-03-04 Jackson Harper <jackson@ximian.com>
6749 * Binding.cs: Support <Property>IsNull checks. Also bind to the
6750 controls Validating method so we can repull the data when the
6751 control loses focus.
6753 2005-03-03 Jordi Mas i Hernandez <jordi@ximian.com>
6756 - Fixes null string format
6759 - Adds enum type checks
6760 - Fixes redrawing and recalc need after changing some properties
6761 - Fixes on focus_item set after the event
6762 - Fixes adding columns after the control has been created
6764 * ThemeWin32Classic.cs:
6765 - Fixes CheckBox focus rectangle
6766 - Fixes ColumnHeader drawing
6769 2005-03-03 Jackson Harper <jackson@ximian.com>
6771 * Binding.cs: Bind to <Property>Changed events so we can detect
6772 when properties are changed and update the data.
6774 2005-03-02 Jordi Mas i Hernandez <jordi@ximian.com>
6777 - Changes 32-bit pixel format to Format32bppArgb to allow transparency
6778 - Fixes ImageList constructor with ImageList container
6779 - Fixes image scaling (wrong parameters at DrawImage)
6781 2005-02-02 Jackson Harper <jackson@ximian.com>
6783 * Binding.cs: Make property searches case-insensitive. Eliminate
6784 some duplicated code.
6786 2005-03-01 Jordi Mas i Hernandez <jordi@ximian.com>
6789 - Handle focus event
6790 - Fix scrollbar events
6791 - Discard highlighted item if remove it
6792 - Fixes SelectedItem with strings
6794 2005-03-01 Peter Bartok <pbartok@novell.com>
6797 - Fixed Visible property, now follows (once again) parent chain
6798 to return false if any control in the chain is visible=false
6799 - Fixed OnParentVisibleChanged, now just calls OnVisibleChanged event
6800 - Fixed several places where is_visible instead of Visible was used
6801 - Implemented FIXME related to focus selection when setting focused
6802 control to be invisible
6804 * XplatUIWin32.cs: Now using proper method to find out if window is
6805 visible. Thanks to Jordi for pointing it out
6807 2005-02-28 Jordi Mas i Hernandez <jordi@ximian.com>
6809 * ComboBox.cs: show/hide scrollbar instead of creating it
6811 2005-02-27 Jackson Harper <jackson@ximian.com>
6813 * CurrencyManager.cs: Add PositionChanged stuff.
6815 2005-02-27 Peter Bartok <pbartok@novell.com>
6817 * XplatUI.cs, XplatUIDriver.cs: Added new GetMenuOrigin() method
6818 * XplatUIOSX.cs: Added GetMenuOrigin() stub
6819 * XplatUIWin32.cs: Implemented GetMenuOrigin()
6821 - Implemented GetMenuDC()
6822 - Implemented GetMenuOrigin()
6823 - Implemented ReleaseMenuDC()
6824 - Implemented generation of WM_NCPAINT message
6825 - Implemented generation and handling of WM_NCCALCSIZE message
6826 * Form.cs: Added debug helper message for Jordi's menu work
6828 - Modified ClientRect property; added setter, fixed getter to handle
6829 setting of ClientRect
6830 - Added MenuOrigin property
6832 2005-02-26 Peter Bartok <pbartok@novell.com>
6835 - Destroys the caret if a window that's being destroyed contains it
6836 - Ignores expose events coming from the X11 queue for windows that
6837 already are destroyed
6838 - Now uses the proper variable for handling DestroyNotify, before we
6839 marked the wrong window as destroyed
6840 - Improved/added some debug output
6842 2005-02-26 Peter Bartok <pbartok@novell.com>
6844 * X11Keyboard.cs: Fixes to work on 64bit systems
6846 2005-02-26 Peter Bartok <pbartok@novell.com>
6849 - Now calling OnHandleDestroyed from DestroyHandle()
6850 instead of Dispose()
6851 - Removed bogus call to controls.Remove() from DestroyHandle()
6853 2005-02-26 Peter Bartok <pbartok@novell.com>
6855 * Control.cs: Properly destroy child windows when our handle is
6858 2005-02-25 Peter Bartok <pbartok@novell.com>
6861 - Added 'DriverDebug' define to allow tracing XplatUI API calls
6862 - Alphabetized Static Methods and Subclasses
6865 - Added XException class to allow custom handling of X11 exceptions
6866 - Created custom X11 error handler, tied into XException class
6867 - Added support for MONO_XEXCEPTIONS env var to allow the user
6868 to either throw an exception on X errors or continue running
6869 after displaying the error
6870 - Added handling of DestroyNotify message
6871 - Added handler for CreateNotify message (still disabled)
6872 - Improved (tried to at least) Where method to provide file and lineno
6874 - Added XErrorHandler delegate
6875 - Added XRequest enumeration (to suppor translation of errors)
6877 2005-02-25 Jackson Harper <jackson@ximian.com>
6879 * PropertyManager.cs: Implement editing features
6880 * CurrencyManager.cs:
6881 * Binding.cs: First attempt at UpdateIsBinding
6882 * BindingManagerBase.cs: Call UpdateIsBinding before
6883 pushing/pulling data.
6885 2005-02-25 Jordi Mas i Hernandez <jordi@ximian.com>
6887 * MenuAPI.cs: Respect disabled items
6888 * ThemeWin32Classic.cs
6889 - Caches ImageAttributes creation for DrawImageDisabled
6890 - Fixes vertical menu line drawing
6891 - Draws disabled arrows in disable menu items
6893 2005-02-24 Peter Bartok <pbartok@novell.com>
6896 - Added UserData property to allow associating arbitrary objects
6898 - Fixed leak; now removing Hwnd references from static windows array
6900 - Fixed Graphics leak in PaintEventEnd
6901 - Removed usage of HandleData, switched over to Hwnd class
6902 * HandleData.cs: Removed, obsoleted by Hwnd.cs
6904 2005-02-24 Jordi Mas i Hernandez <jordi@ximian.com>
6906 * ThemeWin32Classic.cs: Adds Cliping to TrackBar drawing
6907 * ScrollBar.cs: Fixes bug
6908 * TrackBar.cs: removes death code, clipping, mimize refreshes,
6909 keyboard navigation enhancements
6911 2005-02-24 Jordi Mas i Hernandez <jordi@ximian.com>
6913 * Control.cs: Call DefWndProc at WM_PAINT only if UserPaint not defined
6914 * GroupBox.cs: Add control styles
6915 * Label.cs: Add control styles
6916 * UpDownBase.cs: Add control styles
6917 * ListBox.cs: Add control styles
6918 * XplatUIWin32.cs: Fixes wrong parameter order
6921 2005-02-23 Chris Bacon <chris.bacon@docobo.co.uk>
6923 * ListView.cs: Assign owner for ColumnHeader. Patch by Chris Bacon
6925 2005-02-23 Jackson Harper <jackson@ximian.com>
6927 * PropertyManager.cs: Implement property binding. This doesn't
6928 seem to work yet though as (I think) there are some bugs in
6929 System.ComponentModel.PropertyDescriptor.
6930 * BindingContext.cs: Use new PropertyManager constructor.
6932 2005-02-23 Jordi Mas i Hernandez <jordi@ximian.com>
6934 * ProgressBar.cs: use clip region in ProgressBar
6935 * ThemeWin32Classic.cs: use clip region in ProgressBar
6937 2004-02-22 Jackson Harper <jackson@ximian.com>
6939 * BindingsCollection.cs: Remove some debug code.
6941 2005-02-22 Jackson Harper <jackson@ximian.com>
6943 * BindingContext.cs:
6944 * ControlBindingsCollection.cs:
6945 * CurrencyManager.cs:
6947 * BindingManagerBase.cs: Initial implementation
6948 * BindingsCollection.cs: Add an internal contains method that the
6949 BindingManagerBase uses to ensure bindings aren't added twice to
6951 * PropertyManager.cs: Stubbed out.
6953 * ContainerControl.cs: Hook up databinding
6955 2005-02-22 Geoff Norton <gnorton@customerdna.com>
6958 OSXStructs.cs: Refactored to handle the new Hwnd NC logic area.
6959 Fixed Invalidate/Update chain.
6960 Fixed tons of other minor bugs (this is almost a complete rewrite).
6962 2005-02-22 Jordi Mas i Hernandez <jordi@ximian.com>
6964 * ComboBox.cs: do subcontrol creation when the control is created
6966 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
6968 * Label.cs: fixes image drawing (image and imagelist)
6969 * ThemeWin32Classic.cs: cache brushes
6971 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
6973 * Form.cs: Move menu drawing code to Theme class
6974 * ComboBox.cs: Move ComboBox drawing code to Theme class
6975 * MenuItem.cs: Move menu drawing code to Theme class
6976 * MenuAPI.cs: Move menu drawing code to Theme class
6977 * ThemeWin32Classic.cs: New methods
6978 * CheckedListBox.cs: Move CheckedListbox drawing code to Theme class
6979 * ListBox.cs: Move Listbox drawing code to Theme class
6980 * Theme.cs: New methods
6982 2005-02-20 Peter Bartok <pbartok@novell.com>
6985 - Fixed ProcessKeyEventArgs to also handle WM_SYSKEY messages (and
6986 only process mnemonics on those)
6987 - Fixed event sequence for key handling; first calling
6988 ProcessKeyEventArgs now
6990 - Removed WM_KEYDOWN hook, instead we now use ProcessDialogKey()
6991 for processing non-character keys
6992 - Fixed WM_CHAR to generate proper event sequence before processing
6993 * XplatUIWin32.cs: Added ALT key state to ModifierKeys property
6996 2005-02-19 Peter Bartok <pbartok@novell.com>
6998 * UserControl.cs: Added TextChanged event; added attributes
6999 * SizeGrip.cs: Implemented resizing and optional display of grip
7000 * Form.cs: Fixed attribute
7001 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs:
7002 Changed meaning of ScrollWindow bool argument; instead of the
7003 clear attribute (which will be true usually anyway), it gives the
7004 option of moving child controls as well.
7006 - Changed to match new ScrollWindow argument
7007 - Fixed GetWindowPos/SetWindowPos behaviour for toplevel controls,
7008 now handles the implicit parent window a WM puts around us
7009 * ScrollableControl.cs: Implemented (not the prettiest, but it seems
7011 * TextBoxBase.cs: Adjusted to new ScrollWindow arguments
7012 * TreeView.cs: Adjusted to new ScrollWindow arguments
7014 2005-02-19 Jordi Mas i Hernandez <jordi@ximian.com>
7016 * Form.cs: Menu integration with non-client area
7017 * MenuItem.cs: Menu integration with non-client area
7018 * MenuAPI.cs: Menu integration with non-client area
7020 2005-02-18 Peter Bartok <pbartok@novell.com>
7022 * MethodInvoker.cs: Added
7023 * MdiLayout.cs: Added
7024 * SendKeys.cs: Started implementation
7025 * ErrorIconAlignment.cs: Added
7027 2005-02-18 Peter Bartok <pbartok@novell.com>
7029 * XplatUIWin32.cs: Implemented SetMenu(); fixed GetMenuDC()
7030 * Form.cs: Added handling for Menu-related Non-client messages
7032 2005-02-17 Peter Bartok <pbartok@novell.com>
7034 * UpDownBase.cs: Fixed typo, compilation errors
7035 * DomainUpDown.cs: Fixed attribute value
7037 2005-02-16 Miguel de Icaza <miguel@novell.com>
7039 * UpDownBase.cs: Attach entry events.
7041 Add ForeColor property, Focused, InterceptArrowKeys (interception
7044 2005-02-17 Jordi Mas i Hernandez <jordi@ximian.com>
7047 - Redraw non client are on Setmenu
7048 - Calc proper menu starting point
7050 2005-02-17 Peter Bartok <pbartok@novell.com>
7052 * Application.cs: Fixed message_filter check
7054 2005-02-17 Peter Bartok <pbartok@novell.com>
7056 * Application.cs: Now calls registered message filters
7057 * DockStyle.cs: Fixed attribute
7058 * Form.cs: Fixed attribute
7059 * Menu.cs: Fixed attribute
7060 * ToolTip.cs: Fixed attribute
7061 * TreeNode.cs: Added missing attributes and arranged in regions
7062 * PropertyGrid.cs: Fixed signatures
7063 * TreeNodeCollection.cs: Added attributes
7064 * Splitter.cs: Added missing attributes; arranged into regions
7065 * TabPage.cs: Added missing attributes; arranged into regions
7066 * TextBoxBase.cs: Added missing attributes
7067 * TextBox.cs: Added missing attributes
7068 * ArrangeDirection.cs: Added missing attributes
7069 * TreeNodeConverter.cs: Added stub (needed for TreeNode)
7070 * ToolBarButton.cs: Fixed attributes
7071 * AnchorStyles.cs: Fixed attribute
7072 * TrackBar.cs: Fixed attributes
7073 * TabControl.cs: Added missing attributes and arranged into regions
7074 * ToolBar.cs: Fixed attribute
7075 * StatusBar.cs: Fixed signature, organized into regions and added
7077 * StatusBarPanel.cs: Fixed attributes
7078 * ContentsResizedEventArgs.cs: Implemented
7079 * ContentsResizedEventHandler.cs: Implemented
7080 * DateBoldEventArgs.cs: Implemented
7081 * DateBoldEventHandler.cs: Implemented
7082 * UpDownEventArgs.cs: Implemented
7083 * UpDownEventHandler.cs: Implemented
7085 2005-02-16 Jordi Mas i Hernandez <jordi@ximian.com>
7087 * Form.cs: first Menu NC refactoring
7088 * MenuAPI.cs: first Menu NC refactoring
7090 2005-02-16 Peter Bartok <pbartok@novell.com>
7092 * ImeMode.cs: Added missing attributes
7093 * Menu.cs: Fixed attribute
7094 * GroupBox.cs: Fixed attribute
7095 * Label.cs: Fixed attribute
7096 * ColorDialog.cs (RunDialog): Removed TODO attribute
7097 * ComboBox.cs: Fixed attributes
7098 * ListControl.cs: Added missing attributes
7099 * PropertyGrid.cs: Fixed attributes
7100 * Control.cs: Fixed attributes
7101 * ListViewItem.cs: Added TypeConverter attribute
7102 * NotifyIcon.cs: Fixed attributes
7103 * ListView.cs: Fixed attributes
7104 * ButtonBase.cs: Fixed attribute
7105 * ImageList.cs: Added missing attributes
7106 * ContainerControl.cs: Fixed signature
7107 * CheckedListBox.cs: Fixed attribute; added missing attributes
7108 * Panel.cs: Fixed attributes
7109 * PropertyTabChangedEventArgs.cs: Added missing attribute
7110 * PropertyValueChangedEventArgs.cs: Added missing attribute
7111 * Binding.cs: Fixed attribute
7112 * ListViewItemConverter: Implemented ListViewSubItemConverter class
7113 * ListBox.cs: Fixed attribute; added missing attributes;
7114 * ScrollableControl.cs: Added missing attributes
7115 * PictureBox.cs: Added missing attributes; implemented missing property
7116 * DateTimePicker.cs: Added missing attributes
7117 * Theme.cs (ToolWindowCaptionHeight): Fixed type
7118 * MonthCalendar.cs: Fixed attributes
7119 * StatusBarPanel.cs: Added missing attributes
7120 * SystemInformation.cs (ToolWindowCaptionHeight): Fixed type
7122 2005-02-16 Peter Bartok <pbartok@novell.com>
7124 * TextBoxBase.cs: The previous method to enforce height yet remember
7125 the requested high was less than ideal, this is an attempt to do
7127 * Control.cs: Added comment about possible problem
7128 * Copyright: Updated format
7129 * GridItemType.cs: Fixed swapped values
7131 2005-02-15 Jackson Harper <jackson@ximian.com>
7133 * BaseCollection.cs: Use property so we never access an
7134 uninitialized list. Also initialize the list in the property.
7136 2005-02-15 Peter Bartok <pbartok@novell.com>
7138 * GroupBox.cs (ProcessMnemonic): Implemented
7139 * Label.cs (ProcessMnemonic): Implemented
7140 * ThemeWin32Classic.cs (DrawGroupBox): Added stringformat to show
7143 2005-02-15 Peter Bartok <pbartok@novell.com>
7145 * RadioButton.cs (ProcessMnemonic): Implemented
7146 * CheckBox.cs (ProcessMnemonic): Implemented
7148 - Added handling of WM_SYSxxx keyboard messages to support mnemonic
7150 - Added internal method to allow calling ProcessMnemonic from other
7152 * ContainerControl.cs:
7153 - Started support for handling validation chain handling
7154 - Implemented ProcessMnemonic support
7155 - Added Select() call to Active, to make sure the active control
7157 * Form.cs: Setting toplevel flag for Forms (this was lost in the
7159 * ThemeWin32Classic.cs:
7160 - DrawCheckBox(): Fixed stringformat to show hotkeys
7161 - DrawRadioButton(): Fixed stringformat to show hotkeys
7162 * CommonDialog.cs: Removed WndProc override, not needed
7164 2005-02-14 Peter Bartok <pbartok@novell.com>
7166 * XplatUIX11.cs: Fixed NotImplemented exceptions for properties,
7167 missed those in the rewrite
7169 2005-02-14 Miguel de Icaza <miguel@novell.com>
7171 * NumericUpDown.cs (Increment, ToString): Add.
7172 (DecimalPlaces): implement.
7176 * UpDownBase.cs: Add the designer attributes.
7178 2005-02-13 Peter Bartok <pbartok@novell.com>
7180 * Panel.cs: Removed border_style, now in Control
7181 * XplatUIDriver.cs: Added SetBorderStyle, SetMenu, GetMenuDC and
7182 ReleaseMenuDC Methods; renmaed ReleaseWindow to UngrabWindow
7184 2005-02-13 Peter Bartok <pbartok@novell.com>
7186 * MouseButtons.cs: Added missing attributes
7187 * XplatUIStructs.cs: Added enumeration for title styles
7188 * LeftRightAlignment.cs: Added missing attributes
7189 * Hwnd.cs: Switched to use client_window as handle (slower, but makes
7190 it compatible with Graphics.FromHwnd()
7191 * SelectedGridItemChangedEventArgs.cs: Fixed property type
7192 * Keys.cs: Added missing attributes
7193 * SelectionRange.cs: Added missing attributes
7194 * SelectionRangeConverter.cs: Added
7196 - Introduced SetBorderStyle, SetMenu, GetMenuDC and
7197 ReleaseMenuDC methods
7198 - Renamed ReleaseWindow to UngrabWindow
7199 - Added proper startup notice to allow version identification
7201 - Added missing attributes
7202 - Removed FormParent concept
7203 * Label.cs: Removed border_style field, now in Control
7204 * RadioButton.cs: Now properly selects RadioButton when focus is
7206 * ThemeGtk.cs: Fixed SetDisplay call to match new X11 behaviour
7208 - Added missing attributes
7209 - Added borderstyle handling
7210 - Removed FormParent concept support
7211 - Fixed calls to XplatUI to match changed APIs
7212 - Fixed bug that would case us to use disposed Graphics objects
7213 - Removed unneeded internal methods
7214 - PerformLayout(): Fixed to handle DockStyle.Fill properly
7215 - SelectNextControl(): Fixed to properly check common parents
7216 * TextBoxBase.cs: Removed border_style field (now in Control)
7218 - Patch by Robert Thompson (rmt@corporatism.org): Added icon support,
7219 fixed calculations for form size
7220 - Added support for localized strings and icons
7221 - Improved form size calculations, added border
7222 * ListView.cs: Removed border_style field (now in Control)
7223 * X11Structs.cs: Moved several structs from X11 driver here
7224 * X11Keyboard.cs: Changed debug message
7225 * Application.cs: Removed FormParent concept support
7227 - Resetting end_modal flag
7228 - Removed FormParent concept support
7229 * NativeWindow.cs: Removed FormParent concept support
7230 * XplatUIX11.cs: Rewritten, now using the new Hwnd class, implementing
7231 Client area and Non-Client whole window to allow support for WM_NC
7233 * XplatUIOSX.cs: Updated to match latest driver spec; added exception
7234 prevent using it until it supports Hwnd as per Geoff Norton's request
7235 * ToolBar.cs: Fixed drawing, was not doing proper drawing
7236 * PictureBox.cs: Removed border_style field, now in Control
7237 * XplatUIWin32.cs: Added new driver methods
7239 2005-02-12 Peter Bartok <pbartok@novell.com>
7241 * OpacityConverter.cs: Implemented
7242 * Hwnd.cs: Internal class to support drivers that need to emulate
7243 client area/non-client area window behaviour
7245 2005-02-11 Peter Bartok <pbartok@novell.com>
7247 * KeysConverter.cs: Implemented
7249 2005-02-11 Jordi Mas i Hernandez <jordi@ximian.com>
7251 * Menu.cs: fixes methods GetContextMenu, GetMainMenu, ToString
7252 * LinkLabel: Added missing attributes
7253 * MainMenu.cs: fixes ToString
7254 * MenuItem.cs: fixes methods GetContextMenu, GetMainMenu
7255 * ListBox.cs: fixes event position
7256 * TrackBar.cs: adds missing attributes and events
7258 2005-02-10 Jordi Mas i Hernandez <jordi@ximian.com>
7260 * MenuItem.cs: Use SystemInformation and bug fixes
7261 * MenuAPI.cs: Use SystemInformation and bug fixes
7263 2005-02-09 Jackson Harper <jackson@ximian.com>
7265 * X11Keyboard.cs: We ignore some keys, but still need to set/reset
7266 their keystate otherwise things like VK_MENU get stuck "on".
7268 2005-02-09 Kazuki Oikawa <kazuki@panicode.com>
7270 * ListBox.cs: Fixes AddRange bug
7272 2005-02-09 Jordi Mas i Hernandez <jordi@ximian.com>
7275 - Add missing attributes
7276 - Add missing method
7278 * CheckedListBox.cs: Added missing attributes
7279 - Add missing attributes
7280 - Remove extra method
7282 * ComboBox.cs: Added missing attributes
7283 * VScrollBar.cs: Added missing attributes
7284 * ScrollBar.cs: Added missing attributes
7285 * ListBox.cs: Fixes signature, add missing consts
7286 * LinkArea.cs: Added missing attributes
7289 2005-02-08 Peter Bartok <pbartok@novell.com>
7291 * Menu.cs: Added missing attributes
7292 * MainMenu.cs: Added missing attributes
7293 * GroupBox.cs: Added missing attributes
7294 * Label.cs: Added missing attributes
7295 * CheckBox.cs: Implemented CheckBoxAccessibleObject class
7297 - Added Instance and Options properties
7298 - Added missing attributes
7299 * Cursor.cs: Made Serializable
7300 * NotifyIcon: Added missing attributes
7301 * MenuItem.cs: Added missing attributes
7302 * TextBoxBase.cs: Implemented AppendText() and Select() methods
7303 * Panel.cs: Added Missing attributes
7304 * MonthCalendar.cs: Fixed CreateParams
7306 2005-02-08 Jordi Mas i Hernandez <jordi@ximian.com>
7310 - Fixes issues with links
7311 - Adds the class attributes
7313 2005-02-08 Jordi Mas i Hernandez <jordi@ximian.com>
7316 - Fixes button when no items available in dropdown
7317 - Fixes repainting problems
7318 - Adds the class attributes
7320 2005-02-07 Geoff Norton <gnorton@customerdna.com>
7322 * XplatUIOSX.cs: Detect the menu bar and title bar height from
7323 the current theme. Cache these on startup.
7325 2005-02-07 Jackson Harper <jackson@ximian.com>
7327 * ScrollBar.cs: Give the correct clipping rect to the theme. Dirty
7328 the scrollbar buttons when they are depressed.
7330 2005-02-07 Geoff Norton <gnorton@customerdna.com>
7332 * XplatUIOSX.cs: Really fix working at resolutions not 1024x768.
7333 Get the display size from the main displayid. We currently dont
7334 support multiple display configurations.
7336 2005-02-07 Geoff Norton <gnorton@customerdna.com>
7338 * XplatUIOSX.cs: Ensure the window doesn't get stuck behind the statusbar.
7340 2005-02-07 Miguel de Icaza <miguel@novell.com>
7342 * UpDownBase.cs: Add ReadOnly and UpDownAlign properties.
7344 2005-02-05 Jonathan Chambers <jonathan.chambers@ansys.com>
7346 * PropertyGrid.cs: Updated. Patch by Jonathan Chambers
7348 2005-02-04 Jackson Harper <jackson@ximian.com>
7350 * ThemeWin32Classic.cs: Respect the clipping rect when
7351 drawing. Only fill the intersection of clips and rects so there
7352 isn't a lot of large fills.
7353 * ScrollBar.cs: Pass the correct clipping rect to the theme
7354 engine. Remove some debug code.
7356 2005-02-05 John BouAntoun <jba-mono@optusnet.com.au>
7358 * DateTimePicker.cs:
7359 - Fixed crash on DateTime.Parse, use Constructor instead
7361 2005-02-04 Jordi Mas i Hernandez <jordi@ximian.com>
7365 - Owner draw support (MeasureItem and DrawItem)
7367 2005-02-04 Jordi Mas i Hernandez <jordi@ximian.com>
7370 - Implements FindMergePosition and MergeMenu functions (very poor documented)
7371 - Fixes MenuItems.Add range
7373 - MergeMenu and Clone and CloneMenu functions
7375 2005-02-03 Jackson Harper <jackson@ximian.com>
7377 * ScrollBar.cs: Make abstract
7378 * ScrollableControl.cs: Create H/V scrollbars now that scrollbar
7381 2005-02-03 Jackson Harper <jackson@ximian.com>
7383 * ScrollBar.cs: First part of my scrollbar fixups. This removes
7384 all the unneeded refreshes and uses invalidates with properly
7387 2005-02-03 Peter Bartok <pbartok@novell.com>
7389 * ComponentModel.cs: Added
7390 * IDataGridEditingService.cs: Added
7391 * Timer.cs: Added missing attributes
7392 * ToolTip.cs: Added missing attributes
7394 2005-02-03 Jonathan Chambers <jonathan.chambers@ansys.com>
7396 * PropertyGridView.cs: Added. Patch by Jonathan Chambers
7398 2005-02-03 Peter Bartok <pbartok@novell.com>
7400 * ListBox.cs: Added missing attributes
7402 2005-02-03 Jordi Mas i Hernandez <jordi@ximian.com>
7405 - Fixes font height after font change
7406 - Avoid generating unnecesary OnSelectedIndexChanged on clearing
7408 2005-02-02 Peter Bartok <pbartok@novell.com>
7410 * HandleData.cs: Introduced static methods to allow class
7411 to be more self-contained and track it's own HandleData objects
7412 * XplatUIOSX.cs, XplatUIWin32.cs, XplatUIX11.cs: Fixed usage of
7413 HandleData to use new static methods
7415 2005-02-02 Jordi Mas i Hernandez <jordi@ximian.com>
7418 - Fixes default size and PreferredHeight
7420 - ObjectCollection.Insert implementation
7426 - ObjectCollection.Insert implementation
7427 - No selection after clean
7430 2005-01-31 John BouAntoun <jba-mono@optusnet.com.au>
7432 * ThemeWin32Classic.cs: quick fix to comboboxbutton pushed painting
7434 2005-02-01 Jordi Mas i Hernandez <jordi@ximian.com>
7437 - Caches ItemHeight calculation for OwnerDrawVariable
7438 - Handles dropdown properly
7439 - Fixes several minor bugs
7441 2005-01-31 Jordi Mas i Hernandez <jordi@ximian.com>
7444 - Fixes 71946 and 71950
7445 - Fixes changing Multicolumn on the fly
7446 - Fixes keyboard navigation on Multicolumn listboxes
7448 2005-01-31 Geoff Norton <gnorton@customerdna.com>
7450 * XplatUIOSX.cs: Call ExitToShell in our teardown to avoid a
7453 2005-01-31 Geoff Norton <gnorton@customerdna.com>
7455 * XplatUIOSX.cs: Allow applications to actually exit.
7457 2005-01-31 Geoff Norton <gnorton@customerdna.com>
7459 * XplatUIOSX.cs: SetWindowStyle implemented. Reposition views in
7460 their parent at creation time rather than lazily later. Fixes a major
7461 regression we were experiencing.
7463 2005-01-31 John BouAntoun <jba-mono@optusnet.com.au>
7465 * ThemeWin32Classic.cs: more date time picker painting fixes
7466 * DateTimePicker.cs: more monthcalendar drop down fixes
7467 * MonthCalendar.cs: more CreateParams fixes to ensure correct drop down
7469 2005-01-31 Jordi Mas i Hernandez <jordi@ximian.com>
7472 - When moving the thumb going outside the control should stop the moving
7473 - Adds the firing of missing events
7474 - Fixes no button show if Size is not specified
7475 - End / Home keys for keyboard navigation
7477 2005-01-30 Peter Bartok <pbartok@novell.com>
7479 * NotifyIcon.cs (CalculateIconRect): Removed debug output and added
7480 sanity check to prevent theoretical loop
7481 * XplatUIWin32.cs (SetVisible): Removed debug output
7482 * XplatUIX11.cs (SystrayChange): Added sanity check
7483 * ScrollableControl.cs (OnVisibleChanged): Now calls base method
7484 * Control.cs (OnVisibleChanged): Added workaround for ParentForm
7485 behaviour, valid until the X11 client window rewrite is done
7486 * TextBox.cs (ctor): Setting proper default foreground and background
7489 2005-01-30 John BouAntoun <jba-mono@optusnet.com.au>
7491 * Theme: Added DrawDateTimePicker to interface
7492 * ThemeWin32Classic.cs: Added DrawDateTimePicker (incomplete)
7493 * DateTimePicker.cs: Created (still needs keys and painting code)
7494 * DateTimePickerFormat.cs: added
7495 * MonthCalendar.cs: fixed CreateParams for popup window mode
7497 2005-01-29 Peter Bartok <pbartok@novell.com>
7499 * ControlPaint.cs: Fixed luminace value returned on achromatic colors,
7500 this should also the calculations for ligher/darker
7501 * Theme.cs: Fixed defaults for ScrollBar widths/heights
7503 2005-01-29 Peter Bartok <pbartok@novell.com>
7505 * ArrangeDirection.cs: Added
7506 * ArrangeStartingPositon.cs: Added
7507 * SystemInformation.cs: Implemented
7508 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
7509 XplatUIX11.cs, Theme.cs: Added/implemented new static properties
7510 used by SystemInformation class
7511 * X11Strucs.cs: Added XSizeHints structure
7513 - Fixed CreateParams to make sure the menu window is always visible
7514 - TrackPopupMenu: Added check to make sure we don't draw the
7517 2005-01-29 Peter Bartok <pbartok@novell.com>
7519 * HandleData.cs: Added method for altering invalid area
7520 * TextBoxBase.cs: Implemented TextLength
7522 2005-01-28 Peter Bartok <pbartok@novell.com>
7524 * XplatUIX11.cs: Improvement over last patch, not sending
7525 the WM_PAINT directly anymore, instead we scroll any pending
7526 exposed areas and let the system pick out the WM_PAINT later
7528 2005-01-28 Peter Bartok <pbartok@novell.com>
7530 * SWF.csproj: Deleted, no longer used. Instead,
7531 Managed.Windows.Forms/SWF.csproj should be used
7532 * XplatUIX11.cs: Instead of posting the WM_PAINT, we send it
7533 directly, to avoid a potential race condition with the next
7536 2005-01-28 Peter Bartok <pbartok@novell.com>
7538 * XplatUI.cs: Made class internal
7540 2005-01-28 Jordi Mas i Hernandez <jordi@ximian.com>
7542 * CheckedListBox.cs:
7545 - Missing methods and events
7547 2005-01-27 Peter Bartok <pbartok@novell.com>
7549 * Application.cs (Run): Don't use form if we don't have one
7551 2005-01-27 Peter Bartok <pbartok@novell.com>
7553 * TextBoxBase.cs (get_Lines): Fixed index off by one error
7555 2005-01-27 Peter Bartok <pbartok@novell.com>
7557 * GridEntry.cs: Added; Patch by Jonathan S. Chambers
7558 * GridItem.cs: Added; Patch by Jonathan S. Chambers
7559 * GridItemCollection.cs: Added; Patch by Jonathan S. Chambers
7560 * GridItemType.cs: Added; Patch by Jonathan S. Chambers
7561 * PropertyGrid.cs: Added; Patch by Jonathan S. Chambers
7562 * PropertySort.cs: Added; Patch by Jonathan S. Chambers
7563 * PropertyTabChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
7564 * PropertyTabChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
7565 * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
7566 * PropertyValueChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
7567 * SelectedGridItemChangedEventArgs.cs: Added; Patch by Jonathan S. Chambers
7568 * SelectedGridItemChangedEventHandler.cs: Added; Patch by Jonathan S. Chambers
7570 2005-01-27 Jordi Mas i Hernandez <jordi@ximian.com>
7573 - Draw focus on Simple Combobox
7574 - Fixes drawing issues
7577 2005-01-27 Peter Bartok <pbartok@novell.com>
7580 - Place window in default location, instead of hardcoded 0/0
7581 - Send initial LocationChanged event
7583 - UpdateBounds after creation to find out where the WM placed us
7584 - Make sure that if the ParentForm changes location the Form
7586 * XplatUIX11.cs: XGetGeometry will not return the coords relative
7587 to the root, but to whatever the WM placed around us.
7588 Translate to root coordinates before returning toplevel
7590 * XplatUIWin32.cs: Removed debug output
7591 * XplatUIOSX.cs, XplatUI.cs, XplatUIDriver.cs: Added toplevel
7592 flag to GetWindowPos, to allow translation of coordinates on X11
7594 2005-01-27 Jordi Mas i Hernandez <jordi@ximian.com>
7596 * ListBox.cs: connect LostFocus Event
7598 2005-01-27 Peter Bartok <pbartok@novell.com>
7600 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
7601 XplatUIX11.cs: Extended the Systray API
7602 * Form.cs: Removed debug output
7603 * Application.cs: Fixed focus assignment, always need to call
7604 XplatUI.Activate() since Form.Activate() has rules that may
7606 * NotifyIcon.cs: Should be complete now
7607 * ToolTip.cs: Worked around possible timer bug
7609 2005-01-27 Jackson Harper <jackson@ximian.com>
7612 - Only invalidate the effected tabs when the
7613 selected index changes. This reduces drawing and gets rid of some
7615 - Only refresh if the tabs need to be shifted, otherwise only
7616 invalidate the slider button.
7617 - On windows the tabs are not filled to right if the slider is
7620 2005-01-27 Jackson Harper <jackson@ximian.com>
7622 * TabControl.cs: Only refresh on mouseup if we are showing the
7623 slider. Also only invalidate the button whose state has changed.
7625 2005-01-26 Peter Bartok <pbartok@novell.com>
7627 * XplatUI.cs, XplatUIDriver.cs: Added Systray methods
7628 * XplatUIWin32.cs: Implemented SystrayAdd(), SystrayChange()
7629 and SystrayRemove() methods
7630 * XplatUIOSX.cs: Stubbed Systray methods
7632 - Implemented SystrayAdd(), SystrayChange() and SystrayRemove()
7634 - Fixed broken XChangeProperty calls (marshalling messed up things)
7635 * X11Structs.cs: Added enums and structs required for Size hinting
7636 * NotifyIcon.cs: Added & implemented
7638 2005-01-26 Jackson Harper <jackson@ximian.com>
7640 * TabControl.cs: Space vertically layed out tabs properly.
7642 2005-01-26 Peter Bartok <pbartok@novell.com>
7644 * Form.cs (CreateClientParams): Always set the location to 0,0
7645 since we're a child window.
7647 * Control.cs (SetVisibleCore): Always explicitly setting the location
7648 of a toplevel window, apparently X11 doesn't like to move windows
7649 while they're not mapped.
7651 2005-01-26 Jackson Harper <jackson@ximian.com>
7653 * TabControl.cs: Implement FillToRight size mode with vertically
7656 2005-01-26 Jordi Mas i Hernandez <jordi@ximian.com>
7658 * ControlPaint.cs, ThemeWin32Classic.cs
7659 - Fixes DrawFocusRectangle
7661 2005-01-26 Jordi Mas i Hernandez <jordi@ximian.com>
7664 - MenuBar tracking only starts when item is first clicked
7665 - Fixes menu hidding for multiple subitems
7666 - Unselect item in MenuBar when item Executed
7669 2005-01-25 Jordi Mas i Hernandez <jordi@ximian.com>
7672 - IsInputKey for ListBox
7675 - Shift and Control item selection
7676 - Implement SelectionMode.MultiExtended
7679 - IsInputKey implemented
7680 - Do not generate OnTextChangedEdit on internal txt changes
7682 2005-01-23 Peter Bartok <pbartok@novell.com>
7684 * AccessibleObject.cs: Partially implemented Select()
7685 * MonthCalendar.cs: Added missing attributes and events
7686 * Form.cs: Fixed CreateParams behaviour, now controls derived from
7687 form can properly override CreateParams.
7688 * XplatUI.cs, XplatUIDriver.cs, XplatUIOSX.cs, XplatUIWin32.cs,
7689 XplatUIX11.cs: Dropped RefreshWindow method, not needed if
7690 Control performs Invalidate & Update
7691 * NativeWindow (CreateHandle): Added special handling for Form
7692 and Form.FormParent classes to allow overriding of From.CreateParams
7694 - ControlNativeWindow: Renamed 'control' variable to more intuitive
7696 - ControlNativeWindow: Added Owner property
7697 - Removed usage of Refresh() on property changes, changed into
7698 Invalidate(), we need to wait until the queue is processed for
7699 updates, direct calls might cause problems if not all vars for
7700 Paint are initialized
7701 - Added call to UpdateStyles() when creating the window, to set any
7702 styles that CreateWindow might have ignored.
7703 - Added support for Form CreateParent overrides to UpdateStyles()
7704 * MessageBox.cs: Removed no longer needed FormParent override stuff,
7705 CreateParams are now properly overridable
7706 * CommonDialog.cs: Removed no longer needed FormParent override stuff,
7707 CreateParams are now properly overridable
7709 2005-01-23 Miguel de Icaza <miguel@ximian.com>
7711 * UpDownBase.cs (ctor): Connect TextChanged in the entry to the
7714 Capture LostFocus and OnTextBoxChanged. The later introduces a
7715 recursive invocation that I have not figured out yet.
7717 Reset the timer when not using (it was accumulating).
7720 (OnTextBoxChanged): Set UserEdit to true here to track whether the
7721 user has made changes that require validation.
7723 Reset changing to avoid loops.
7725 2005-01-22 Miguel de Icaza <miguel@ximian.com>
7727 * NumericUpDown.cs: Display value at startup.
7729 * UpDownBase.cs (Text): Do not call UpdateEditText here, only call
7732 * NumericUpDown.cs: Minimum, Maximum, Text, Value properties
7733 filled in. Added some basic parsing of text.
7735 Still missing the OnXXX method overrides, and figuring out the
7736 events that must be emitted.
7738 * UpDownBase.cs: Handle UserEdit on the Text property.
7740 2005-01-22 Jordi Mas i Hernandez <jordi@ximian.com>
7743 - Fixes IntegralHeight
7746 2005-01-21 Jackson Harper <jackson@ximian.com>
7748 * TabControl.cs: Set the SelectedIndex property when SelectedTab
7749 is set so that the page visibility is updated and the tabs are
7752 2005-01-21 Jackson Harper <jackson@ximian.com>
7754 * TabControl.cs: Use cliping rectangle for blitting. Give the
7755 theme the clipping rect so we can do clipping while
7756 drawing. Remove some debug code.
7758 2005-01-21 Jackson Harper <jackson@ximian.com>
7760 * TabPage.cs: Add a new method so tab pages can force the tab
7761 control to recalculate the tab page sizes.
7762 * TabControl.cs: UpdateOwner needs to make the tab control recalc
7765 2005-01-20 Jackson Harper <jackson@ximian.com>
7767 * ThemeWin32Classic.cs: Clip text to the staus bar panels rects.
7769 2005-01-20 Jackson Harper <jackson@ximian.com>
7771 * TreeView.cs: Set the bounds for nodes properly. They were
7772 getting screwed up when checkboxes were not enabled, but images
7775 2005-01-20 Jordi Mas i Hernandez <jordi@ximian.com>
7778 - Owner draw support
7781 2005-01-20 Jackson Harper <jackson@ximian.com>
7783 * XplatUIStructs.cs: More misc keys
7784 * X11Keyboard.cs: Ignore some control keys.
7786 2005-01-20 Jackson Harper <jackson@ximian.com>
7788 * X11Structs.cs: Add the modmaps to the keymask struct and tabify.
7789 * X11Keyboard.cs: Set the AltGr mask when we get a key event.
7791 2005-01-19 Peter Bartok <pbartok@novell.com>
7793 * Control.cs: Un-selecting the control when it is loosing focus
7795 2005-01-19 Jackson Harper <jackson@ximian.com>
7797 * TreeView.cs: Hook up to the text controls leave event so we can
7798 end editing when the users clicks outside the text box.
7800 2005-01-19 Jackson Harper <jackson@ximian.com>
7802 * X11Keyboard.cs: Fix typo that was causing the wrong keycodes to
7803 get set in the conversion array.
7805 2005-01-19 Peter Bartok <pbartok@novell.com>
7807 * Application.cs (ModalRun): Added a call to CreateControl to ensure
7808 focus is properly set
7810 - Added missing attributes
7811 - removed styles, those are already set in the base class
7813 - Added missing attributes
7814 - Added clip window styles
7815 * CheckBox.cs: Added missing attributes
7817 - FormParentWindow.CreateParams: Added required clip styles
7818 * Form.cs (ProcessDialogKey): Fixed handling of Escape key, now
7819 also filters modifier keys
7821 - Added assignment of Accept and Cancel button to enable Enter
7822 and Esc keys in MessageBox dialogs
7823 - FormParentWindow.CreateParams: Added required clip styles
7824 * RadioButton.cs: Added missing attributes
7825 * TextControl.cs: No longer draws selection if control does not
7828 - Now draws simple rectangle around test area to make it obvious
7829 there's a control. This is a hack until we properly support borders
7830 - A few simple fixes to support selections better, now erases selected
7831 text when typing, and resets selection when using movement keys
7833 2005-01-19 Miguel de Icaza <miguel@ximian.com>
7835 * UpDownBase.cs: Added some new properties.
7837 * DomainUpDown.cs: Implement a lot to get my test working.
7839 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7841 * XplatUIOSX.cs: Fix a minor bug to bring the close box back
7843 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7845 * OSXStructs (WindowAttributes): Fixed csc complaints
7847 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7850 OSXStructs.cs: Initial refactor to move enums and consts into
7851 OSXStructs and use them in the driver for greater readability.
7853 2005-01-19 Geoff Norton <gnorton@customerdna.com>
7855 * XplatUIOSX.cs: Initial support for Standard Cursors.
7856 * OSXStructs.cs: Move our structs here; added ThemeCursor enum
7858 2005-01-19 Jordi Mas i Hernandez <jordi@ximian.com>
7860 * ComboBox.cs: ability to change style when the ctrl is already
7861 created, missing methods and events, bug fixes, signature fixes
7863 2005-01-19 Peter Bartok <pbartok@novell.com>
7865 * Cursors.cs (ctor): Added ctor to fix signature
7867 2005-01-18 Peter Bartok <pbartok@novell.com>
7869 * Button.cs: Implemented DoubleClick event
7871 - Fixed keyboard handling to behave like MS, where the press of
7872 Spacebar is equivalent to a mousedown, and the key release is
7873 equivalent to mouseup. Now a spacebar push will give the same
7874 visual feedback like a mouse click.
7875 - Added missing attributes
7876 - Added ImeModeChanged event
7877 - Added support for generating DoubleClick event for derived classes
7879 - Implemented DoubleClick event
7880 - Added missing attributes
7881 * CommonDialog.cs: Added missing attribute
7882 * ContextMenu.cs: Added missing attributes
7884 - AutoChecked buttons do not allow to be unselected when clicked
7885 (otherwise we might end up with no selected buttons in a group)
7886 - Added missing attributes
7887 - Implemented DoubleClickEvent
7888 * ThreadExceptionDialog.cs: Enabled TextBox code
7890 2005-01-18 Peter Bartok <pbartok@novell.com>
7892 * Form.cs: Removed debug output
7893 * Button.cs: Added support for DoubleClick method
7895 2005-01-18 Peter Bartok <pbartok@novell.com>
7898 - Added method to parent window that allows triggering size
7899 calculations when a menu is added/removed
7900 - set_Menu: Cleaned up mess from early days of Form and Control,
7901 now properly triggers a recalc when a menu is added/removed
7902 - Added case to select form itself as focused form if no child
7904 - Added PerformLayout call when showing dialog, to ensure properly
7907 - Select(): Made internal so Form can access it
7908 - Focus(): Only call Xplat layer if required (avoids loop), and sets
7910 * Application.cs (Run): Removed hack and calls PerformLayout instead
7911 to trigger calculation when Form becomes visible
7913 2005-01-18 Jordi Mas i Hernandez <jordi@ximian.com>
7915 * ComboBox.cs: fixes for ownerdraw
7917 2005-01-18 Peter Bartok <pbartok@novell.com>
7920 - Sentinel is no longer static, each Document gets it's own, this
7921 avoids locking or alternatively overwrite problems when more
7922 than one text control is used simultaneously.
7923 - Switched to use Hilight and HilightText brushes for text selection
7925 * TextBoxBase.cs (PaintControl): Disabled AntiAliasing to improve looks
7927 2005-01-18 Peter Bartok <pbartok@novell.com>
7930 - Hooked up the following events:
7938 o SystemColorsChanged
7941 - Removed debug output
7942 - Added a call to the current theme's ResetDefaults when a color change
7944 * Form.cs: Now setting the proper ImeMode
7945 * Theme.cs: Defined a method to force recreation of cached resources
7946 and rereading of system defaults (ResetDefaults())
7947 * ThemeWin32Classic.cs: Added ResetDefaults() stub
7949 2005-01-17 Peter Bartok <pbartok@novell.com>
7951 * Control.cs: Added missing attributes
7953 2005-01-17 Jackson Harper <jackson@ximian.com>
7955 * TreeNode.cs: Implement editing. Add missing properties selected
7957 * TreeView.cs: Implement node editing. Also some fixes to use
7958 Invalidate (invalid area) instead of Refresh when selecting.
7960 2005-01-17 Peter Bartok <pbartok@novell.com>
7963 - Implemented InvokeGotFocus() method
7964 - Implemented InvokeLostFocus() method
7965 - Implemented InvokePaint() method
7966 - Implemented InvokePaintBackground() method
7967 - Implemented InvokeClick() method
7968 - Implemented FindForm() method
7969 - Implemented RectangleToClient() method
7970 - Implemented ClientToRectangle() method
7971 - Implemented ResetBackColor() method
7972 - Implemented ResetCursor() method
7973 - Implemented ResetFont() method
7974 - Implemented ResteForeColor() method
7975 - Implemented ResetImeMode() method
7976 - Implemented ResetLeftToRight() method
7977 - Implemented ResetText() method
7978 - Implemented Scale() methods
7979 - Implemented ScaleCore() method
7980 - Implemented Update() method
7981 - Removed unused variables
7982 - Stubbed AccessibilityNotifyClients and
7983 ControlAccessibleObject.NotifyClients() methods (dunno what to do
7985 - Now setting proper default for RightToLeft property
7986 - Fixed bug in SetClientSizeCore that would cause windows to get
7988 - Now sending Click/DoubleClick events
7989 - Now selecting controls when left mouse button is clicked on
7991 * AccessibleEvents.cs: Added
7992 * XplatUI.cs, XplatUIDriver.cs: Added UpdateWindow() method
7993 * XplatUIOSX.cs: Stubbed UpdateWindow() method
7994 * XplatUIWin32.cs: Implemented UpdateWindow() method
7995 * XplatUIX11.cs: Implemented UpdateWindow() method
7996 * Form.cs: Removed stray semicolon causing CS0162 warning
7997 * ThemeWin32Classic.cs: Fixed unused variable warnings
7998 * ScrollableControl.cs: Now calls base method for ScaleCore
7999 * ButtonBase.cs: Now disabling StandardClick and StandardDoubleClick
8000 style to avoid interference with internal click handler (which is
8001 different than standard Control click handling)
8003 - Now unchecks all sibling radio buttons when control is
8004 selected (Fixes #68756)
8005 - Removed internal tabstop variable, using the one inherited from
8008 2005-01-17 Jackson Harper <jackson@ximian.com>
8010 * NavigateEventArgs.cs: Fix base type.
8011 * LinkLabel.cs: Sig fix
8013 2005-01-17 Jackson Harper <jackson@ximian.com>
8015 * TreeView.cs: Only invalidate the effected nodes bounds when
8018 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
8020 * XplatUIWin32.cs: fixes Win32 marshaling
8021 * XplatUIX11.cs: fixes method signature
8023 2005-01-17 Peter Bartok <pbartok@novell.com>
8025 * XplatUIX11.cs: Clean up resources when we no longer need them
8027 2005-01-17 Peter Bartok <pbartok@novell.com>
8029 * XplatUI.cs, XplatUIDriver.cs: Added SetCursor(), ShowCursor(),
8030 OverrideCursor(), DefineCursor(), DefineStdCursor(), GetCursorInfo()
8031 and DestroyCursor() methods.
8032 * Cursor.cs: Partially implemented, now supports standard cursors;
8033 still contains some debug code
8034 * Cursors.cs: Implemented class
8036 - WndProc(): Added handling of WM_SETCURSOR message, setting the
8038 - Implemented Cursor property
8039 - Replaced break; with return; more straightforwar and possibly
8041 - Now properly setting the result for WM_HELP
8042 * X11Structs.cs: Added CursorFontShape enum
8043 * XplatUIStructs.cs:
8044 - Added StdCursor enum (to support DefineStdCursor() method)
8045 - Added HitTest enum (to support sending WM_SETCURSOR message)
8047 - Now sends the WM_SETCURSOR message
8048 - Implemented new cursor methods
8049 * XplatUIOSX.cs: Stubbed new cursor methods
8051 - Implemented new cursor methods
8052 - Added GetSystemMetrics function and associated enumeration
8054 2005-01-15 Peter Bartok <pbartok@novell.com>
8057 - WndProc(): Now handles EnableNotifyMessage
8058 - SelectNextControl(): Fixed bug where if no child or sibling
8059 controls exist we looped endlessly
8061 2005-01-14 Jackson Harper <jackson@ximian.com>
8063 * TreeView.cs: Recalculate the tab pages when a new one is added
8064 so that the proper bounding rects are created.
8066 2005-01-14 Jackson Harper <jackson@ximian.com>
8068 * TreeView.cs: Draw a gray box instead of a grip in the lower
8069 right hand corner when there are both horizontal and vertical
8072 2005-01-14 Jackson Harper <jackson@ximian.com>
8074 * Control.cs: When erasing backgrounds use FromHwnd instead of
8075 FromHdc when there is a NULL wparam. This occurs on the X driver.
8076 * XplatUIX11.cs: Set the wparam to NULL.
8078 2005-01-13 Jackson Harper <jackson@ximian.com>
8080 * PictureBox.cs: Implement missing methods (except ToString, need
8081 to test that on windows) and events. When visibility is changed we
8082 need to redraw the image because the buffers are killed. When size
8083 is changed refresh if the sizemode needs it.
8085 2005-01-13 Peter Bartok <pbartok@novell.com>
8087 * Control.cs (SelectNextControl): Was using wrong method to select
8090 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
8092 * ComboBox.cs: fixes dropstyle
8094 2005-01-13 Peter Bartok <pbartok@novell.com>
8097 - Implemented Select() override
8098 - Now handles WM_SETFOCUS/WM_KILLFOCUS messages
8099 - Now sets keyboard focus on startup
8100 * Control.cs (SelectNextControl): Now properly handles directed=true
8102 - WndProc: Now passes tab key on to base if AcceptTabChar=false
8103 - Added (really bad) focus rectangle (mostly for testing)
8104 * TextBox.cs: Added code to handle getting/loosing focus and invalidating
8105 to enforce redraw on focus changes
8106 * ContainerControl.cs:
8107 - Fixed detection of Shift-Tab key presses
8108 - Fixed traversal with arrow keys
8109 * XplatUIX11.cs: Implemented simulated keyboard focus; not sure if we're
8110 gonna keep this or if it's complete yet
8112 2005-01-13 Jordi Mas i Hernandez <jordi@ximian.com>
8114 * ComboBox.cs: missing properties, fixes
8116 2005-01-13 Peter Bartok <pbartok@novell.com>
8118 * Panel.cs (ctor): Setting Selectable window style to off
8119 * Splitter.cs (ctor): Setting Selectable window style to off
8120 * GroupBox.cs (ctor): Setting Selectable window style to off
8121 * Label.cs (ctor): Setting Selectable window style to off
8123 2005-01-12 Miguel de Icaza <miguel@ximian.com>
8125 * UpDownBase.cs (InitTimer): If the timer has been already
8128 Use a TextBox instead of a Label.
8130 2005-01-12 Jackson Harper <jackson@ximian.com>
8132 * TreeView.cs: Refresh the tree after sorting the nodes. Always
8133 draw the connecting node lines (when ShowLines is true).
8134 * TreeNode.cs: The nodes index can now be updated. This is used
8135 when a node collection is sorted.
8136 * TreeNodeCollection.cs: Implement sorting. Nodes can be sorted on
8137 insert or an existing unsorted node collection can be sorted.
8139 2005-01-12 Peter Bartok <pbartok@novell.com>
8141 * ContainerControl.cs: Implemented ProcessDialogKeys()
8143 2005-01-12 Peter Bartok <pbartok@novell.com>
8146 - Implemented SelectNextControl() method
8147 - Several focus related bug fixes
8148 - Fixed Docking calculations to match MS documentation and
8151 2005-01-12 Jordi Mas i Hernandez <jordi@ximian.com>
8153 * ContainerControl.cs, ListControl.cs, ListBox.cs: keyboard navigation and
8156 2005-01-12 Peter Bartok <pbartok@novell.com>
8159 - Fixed broken Contains() method
8160 - Implemented GetNextControl() method. Finally. This is the pre-
8161 requisite for focus handling.
8163 2005-01-12 Peter Bartok <pbartok@novell.com>
8165 * OSXStrucs.cs: Added
8167 2005-01-12 Peter Bartok <pbartok@novell.com>
8170 - Removed PeekMessageFlags
8171 - Implemented SetWindowStyle() method
8172 * XplatUIStructs.cs: Added PeekMessageFlags
8173 * X11Structs: Added missing border_width field to XWindowChanges struct
8175 - PeekMessage: Now throws exception if flags which are not yet
8176 supported are passed
8177 - Implemented SetWindowStyle() method
8178 - Fixed SetZOrder to handle AfterHwnd properly
8179 * XplatUI.cs: Added SetWindowStyle() method
8180 * XplatUIDriver.cs: Added SetWindowStyle() abstract
8182 - Implemented UpdateStyles() method
8183 - Implemented UpdateZOrder() method
8184 * XplatUIOSX.cs: Added SetWindowStyle() stub
8186 2005-01-12 Geoff Norton <gnorton@customerdna.com>
8188 * XplatUIOSX.cs: Fix SetZOrder (this needs more testing with a 3
8192 2005-01-11 Jackson Harper <jackson@ximian.com>
8194 * TreeView.cs: Still need to draw lines to siblings even if out of
8195 the current node is out of the clip.
8197 2005-01-11 Jackson Harper <jackson@ximian.com>
8199 * TreeView.cs: When setting the hbar/vbar/grip position use
8200 SetBounds so that perform layout is only called once. Also suspend
8201 and resume layout so layout is only done once for all controls.
8202 - Removed some debug fluff
8203 * SizeGrip.cs: Call base implmentation in overriding methods.
8204 - When visibility is changed the drawing buffers are killed so we
8207 2005-01-11 Jackson Harper <jackson@ximian.com>
8209 * TreeView.cs: Calculate the open node count while drawing. This
8210 saves us an entire tree traversal for every paint operation. Use
8211 a member var for the open node count so less vars are passed around.
8213 2005-01-11 John BouAntoun <jba-mono@optusnet.com.au>
8216 - fixed selection to use mousemove, not mouse polling on timer
8217 * ThemeWin32Classic.cs
8218 - removed redundant unused variable "no_more_content"
8220 2005-01-11 Peter Bartok <pbartok@novell.com>
8222 * XplatUIX11.cs (DoEvents): Needs to return when no more events
8223 are pending, so it now calls PeekMessage instead of GetMessage;
8224 implemented a incomplete version of PeekMessage
8226 2005-01-11 Peter Bartok <pbartok@novell.com>
8228 * XplatUIWin32.cs: Switched P/Invokes to unicode charset to avoid
8230 * TextBoxBase.cs: Added sending of TextChanged event
8232 2005-01-10 Jackson Harper <jackson@ximian.com>
8234 * TreeView.cs: Try not to draw outside the clipping rectangle on
8237 2005-01-10 Jordi Mas i Hernandez <jordi@ximian.com>
8239 * ComboBox.cs: keyboard navigation, item navigation, bug fixes
8241 2005-01-10 Jackson Harper <jackson@ximian.com>
8244 - Implement fast scrolling. Now only the newly
8245 exposed nodes are drawn and the old image is moved using the
8246 XplatUI::ScrollWindow method.
8247 - Factor in height of nodes when calculating whether or not the
8248 node is in the clipping rect.
8250 2005-01-10 Jackson Harper <jackson@ximian.com>
8252 * TreeNodeCollection.cs: Refresh the tree when a new node is added.
8254 2005-01-10 Peter Bartok <pbartok@novell.com>
8256 * Application.cs: Added temporary hack to resolve all our resize
8257 required issues on startup. This will get fixed properly at
8258 some point in the future
8260 2005-01-10 Jackson Harper <jackson@ximian.com>
8262 * SizeGrip.cs: New internal class that is used as a sizing
8263 grip control...hence the name.
8265 2005-01-10 Peter Bartok <pbartok@novell.com>
8267 * Control.cs: Implemented proper TabIndex handling, now assigning
8268 a tabindex when a control is added to a container
8269 * GroupBox.cs (ctor): Now sets the Container style bit, required
8270 for Control.GetNextControl()
8272 2005-01-09 Jackson Harper <jackson@ximian.com>
8274 * TextBoxBase.cs: Clear window when scrolling (fixes build).
8276 2005-01-09 Peter Bartok <pbartok@novell.com>
8278 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIOSX.cs,
8279 XplatUIX11.cs: Added ability to control ScrollWindow expose and
8280 an overload for ScrollWindow to allow only scrolling a rectangle
8282 2005-01-09 Peter Bartok <pbartok@novell.com>
8285 - Implemented SetDesktopBounds method
8286 - Implemented SetDesktopLocation method
8288 2005-01-08 Jackson Harper <jackson@ximian.com>
8290 * TreeView.cs: Only set the vbar's Maximum and LargeChange when
8291 the node count has changed, this removes to VScroll::Refresh calls
8294 2005-01-08 Geoff Norton <gnorton@customerdna.com>
8296 * XplatUIOSX.cs: Fix GetWindowState & SetWindowState
8298 2005-01-07 Jackson Harper <jackson@ximian.com>
8300 * TreeNode.cs: Just update the single node when it is
8301 checked. Don't refresh after toggling, the Expand/Collapse already
8303 * TreeView.cs: Respect clipping a little more when drawing. Try
8304 not to redraw things that don't need to be redrawn. Just hide the
8305 scrollbars when they are no longer needed instead of removing
8306 them, so they don't have to be created again and again.
8308 2005-01-07 Geoff Norton <gnorton@customerdna.com>
8310 * XplatUIOSX.cs (SetCaretPos): We need to translate the view
8311 coordinates to window space to place the caret properly, FIXED.
8312 Implement GetWindowState & SetWindowState
8314 2005-01-06 Peter Bartok <pbartok@novell.com>
8317 - Implemented ClientSize property
8318 - Implemented DesktopBounds property
8319 - Implemented DesktopLocation property
8320 - Implemented IsRestrictedWindow property
8321 - Implemented Size property
8322 - Implemented TopLevel property
8323 - Implemented FormWindowState property
8325 - Implemented GetTopLevel() method
8326 - Implemented SetTopLevel() method
8327 * X11Structs.cs (Atom):
8328 - Added AnyPropertyType definition
8329 - Added MapState definiton and updated XWindowAttribute struct
8330 * XplatUI.cs: Added GetWindowState() and SetWindowState() methods
8331 * XplatUIDriver.cs: Added GetWindowState() and SetWindowState() methods
8332 * XplatUIOSX.cs: Stubbed GetWindowState() and SetWindowState() methods
8334 - Implemented GetWindowState() and SetWindowState() methods
8335 - Fixed Win32GetWindowLong return type
8337 - Introduced central function for sending NET_WM messages
8338 - Implemented GetWindowState() and SetWindowState() methods
8339 * TextBoxBase.cs (set_Lines):
8340 - Now uses Foreground color for text added via Text property (Duh!)
8341 - Added code to remember programmatically requested size (fixes
8342 behaviour when Multiline is set after Size)
8343 - Added AutoSize logic
8345 2005-01-06 Jackson Harper <jackson@ximian.com>
8347 * TreeView.cs: Draw the image after the checkbox if checkboxes are enabled.
8349 2005-01-06 Jackson Harper <jackson@ximian.com>
8351 * ListBox.cs: Don't allow the horizontal scrollbars maximum to be
8354 2005-01-06 Jackson Harper <jackson@ximian.com>
8356 * ScrollableControl.cs: Lazy init the scrollbars.
8358 2005-01-06 Jackson Harper <jackson@ximian.com>
8360 * Theme.cs: Speed up getting pens and solid brushes, by using
8361 their ARGB as a hash instead of tostring and not calling Contains.
8363 2005-01-06 Peter Bartok <pbartok@novell.com>
8366 - Implemented OnActivated and OnDeactivate event trigger
8367 - Implemented Activate() method
8368 - Fixed ShowDialog() to activate the form that was active before
8369 the dialog was shown
8371 - Added global active_window var that tracks the currently active
8373 - Now always grabs Property changes from the root window to always
8374 catch changes on the active window property
8375 - Added code to PropertyNotify handler to send Active/Inactive
8376 messages when state changes. This puts X11 and Win32 en par on
8377 WM_ACTIVATE notifications (except for double notifications when
8378 the user clicks away from our modal window to another one of our
8381 2005-01-05 Jackson Harper <jackson@ximian.com>
8383 * ImageList.cs: Implment ctor
8385 2005-01-05 Geoff Norton <gnorton@customerdna.com>
8387 * XplatUIOSX.cs: Implement Activate/SetTopmost
8389 2005-01-05 Geoff Norton <gnorton@customerdna.com>
8391 * XplatUIOSX.cs: Implement SetZOrder, minor cleanup
8393 2005-01-05 Geoff Norton <gnorton@customerdna.com>
8395 * XplatUIOSX.cs: Implement GetActive/SetFocus.
8397 2005-01-05 Peter Bartok <pbartok@novell.com>
8399 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs,
8400 XplatUIOSX.cs: Added GetActive method to return the currently
8401 active window for the application (or null, if none is active)
8403 - Implemented ActiveForm
8404 - Commented out owner assignment for modal dialogs (causes problems
8405 on Win32, since the owner will be disabled)
8406 - Reworked some Active/Focus handling (still incomplete)
8407 * CommonDialog.cs: Commented out owner assignment for modal dialogs
8408 (causes problems on Win32, since the owner will be disabled)
8409 * IWin32Window: Added ComVisible attribute
8411 2005-01-05 Peter Bartok <pbartok@novell.com>
8413 * ToolTip.cs (WndProc): Enable setting focus now that we have the
8414 required XplatUI functions.
8416 2005-01-05 Peter Bartok <pbartok@novell.com>
8418 * XplatUI.cs, XplatUIOSX.cs, XplatUIWin32.cs, XplatUIDriver.cs,
8419 XplatUIX11.cs, X11Structs.cs, Form.cs: Framework code required
8420 to implement focus and activation handling; still incomplete and
8423 2005-01-04 Peter Bartok <pbartok@novell.com>
8425 * TextBoxBase.cs: Changed access level for Document property to
8426 match switch to internal for TextControl
8428 2005-01-04 Peter Bartok <pbartok@novell.com>
8430 * AccessibleObject: Added ComVisible attribute
8432 2005-01-04 Jackson Harper <jackson@ximian.com>
8434 * X11Keyboard.cs: Remove unneeded var.
8436 2005-01-04 Jackson Harper <jackson@ximian.com>
8438 * XplatUIX11.cs (DoEvents): Implement, Just cast aside all events
8440 * XplatUIX11.cs (GetMessage): Call Exit when we get an unknown
8441 ClientMessage. This makes apps exit cleanly (more often).
8443 2005-01-04 Jackson Harper <jackson@ximian.com>
8445 * TreeNode.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) for
8446 handling focus, return correct colors and fonts,
8447 * TreeView.cs: Patches by Kazuki Oikawa (kazuki@panicode.com) to
8448 handle selection, horizontal scrolling, and mouse interaction.
8450 2005-01-04 Peter Bartok <pbartok@novell.com>
8452 * ICommandExecutor.cs: Added
8453 * IDataGridColumnStyleEditingNotificationService.cs: Added
8454 * IFeatureSupport.cs: Added
8455 * IFileReaderService.cs: Added
8456 * IDataObject.cs: Added ComVisible attribute
8457 * AmbientProperties.cs: Added
8458 * BaseCollection.cs: Added missing attributes
8459 * ListBindingConverter.cs: Added (stubbed, required for certain attributes)
8460 * BaseCollection.cs: Added missing attributes
8461 * Binding.cs: Added TypeConverter attribute
8462 * BindingContext.cs: Added DefaultEvent attribute
8463 * BindingsCollection.cs: Added DefaultEvent attribute
8464 * Button.cs: Added DefaultValue attribute
8465 * DragEventArgs.cs: Added ComVisible attribute
8466 * GiveFeedbackEventArgs.cs: Added ComVisible attribute
8467 * KeyEventArgs.cs: Added ComVisible attribute
8468 * KeyPressEventArgs.cs: Added ComVisible attribute
8469 * MouseEventArgs.cs: Added ComVisible attribute
8470 * NavigateEventArgs.cs: Added
8471 * NavigateEventHandler.cs: Added
8472 * FeatureSupport.cs: Added
8473 * OSFeature.cs: Added
8474 * Theme.cs: Added abstract Version property to support OSFeature
8475 * ThemeWin32Classic.cs: Added Version property to
8476 support OSFeature.Themes
8477 * ProgressBar.cs: Removed OnPaintBackground override, not required since
8478 the proper styles to avoid background drawing are set, also doesn't
8480 * QueryAccessibilityHelpEventArgs.cs: Added ComVisible attribute
8481 * QueryContinueDragEventArgs.cs: Added ComVisible attribute
8482 * ScrollEventArgs.cs: Added ComVisible attribute
8483 * SplitterEventArgs.cs: Added ComVisible attribute
8484 * AccessibleSelection.cs: Added Flags attribute
8485 * Appearance.cs: Added ComVisible attribute
8486 * Border3DSide.cs: Added ComVisible attribute
8487 * Border3DStyle.cs: Added ComVisible attribute
8488 * BorderStyle.cs: Added ComVisible attribute
8489 * DragAction.cs: Added ComVisible attribute
8490 * ErrorBlinkStyle.cs: Added
8491 * ScrollEventType.cs: Added ComVisible attribute
8492 * AnchorStyles.cs: Added Editor attribute
8493 * DockStyle.cs: Added Editor attribute
8494 * HorizontalAlignment.cs: Added ComVisible attribute
8495 * HelpEventArgs.cs: Added ComVisible attribute
8496 * PaintEventArgs.cs: Added IDisposable
8498 2005-01-04 Peter Bartok <pbartok@novell.com>
8500 * TextControl.cs: Switched Line, LineTag and Document classes to
8503 2005-01-04 Jordi Mas i Hernandez <jordi@ximian.com>
8505 * ComboBox.cs, ThemeWin32Classic.cs, ListBox.cs, Theme.cs:
8506 Simple mode, fixes, IntegralHeight, etc.
8508 2005-01-04 Peter Bartok <pbartok@novell.com>
8510 * TextBoxBase.cs: Using proper font variable now
8512 2005-01-04 Peter Bartok <pbartok@novell.com>
8514 * Form.cs (ShowDialog): Set parent to owner, if provided
8515 * GroupBox.cs: Removed unused vars
8517 - Added GetHashCode() for Document and LineTag classes
8518 - Removed unused variables
8519 - Added CharIndexToLineTag() and LineTagToCharIndex() methods
8520 to allow translation between continuous char position and line/pos
8521 * CheckBox.cs: Removed vars that are provided by base class
8522 * RadioButton.cs: Removed vars that are provided by base class, added
8523 new keyword where required
8524 * LinkLabel.cs: Added new keyword where required
8525 * Control.cs (WndProc): Removed unused variable
8527 - Finished SelectionLength property
8528 - Implemented SelectionStart property
8529 - Implemented Text property
8530 - Removed unused vars
8531 * MessageBox.cs: Added new keyword where required
8532 * TextBox.cs: Removed Text property code (now in TextBoxBase), fixed
8534 * MenuAPI.cs: Added new keyword where required
8535 * ButtonBase.cs: Removed vars that are provided by base class, added
8536 new keyword where required
8537 * ThemeWin32Classic.cs (DrawMonthCalendarDate): Now cast Math.Floor
8538 argument to double, to allow compiling with csc 2.0 (Atsushi ran
8540 * Application.cs (Run): Now triggers the ThreadExit event
8541 * CommonDialog.cs: Added new keyword where required; now properly sets
8542 parent (owner) for dialog
8543 * XplatUIX11.cs: Commented out unused vars
8544 * StatusBar.cs: Fixed signature for Text property
8545 * TabPage.cs: Undid Jordi's removal of unused var, now using the var
8547 2005-01-04 Jordi Mas i Hernandez <jordi@ximian.com>
8549 * ComboBox.cs, TabPage.cs, MenuAPI.cs, ThemeWin32Classic.cs,
8550 TrackBar.cs, MonthCalendar.cs: remove unused vars
8552 2005-01-03 Jackson Harper <jackson@ximian.com>
8554 * ThemeWin32Classic.cs:
8555 * X11Keyboard.cs: Remove unused vars.
8557 2005-01-03 Peter Bartok <pbartok@novell.com>
8560 - set_Text: Tied into TextControl
8561 - set_TextAlignment: Tied into TextControl
8563 - Added alignment properties and implemented alignment handling
8564 and drawing (still has a bug, not generating proper expose events)
8565 - Added new Line() constructor to allow passing the line alignment
8566 - Fixed selection setting, properly handling end<start now
8567 - Added aligment considerations to RecalculateDocument()
8569 - Now properly enforces control height for single line controls
8570 - Added support for CharacterCasing
8571 - Added IsInputKey override
8572 - Fixed Keys.Enter logic
8573 - Added SetBoundsCore override
8574 - Fixed mouse selection handling
8576 2005-01-03 Jackson Harper <jackson@ximian.com>
8579 - Collapse and uncheck all nodes when CheckBoxes is disabled.
8580 - Checkboxes are always aligned to the bottom of the node,
8581 regardless of item height.
8582 - Use the node bounds to draw the text so we can center it when
8583 the item height is greater then the font height.
8584 - Node::Bounds are only the text part of the node.
8585 * TreeNode.cs: New method to combine collapsing and unchecking all
8588 2005-01-02 Jackson Harper <jackson@ximian.com>
8590 * TreeView.cs: Draw checkmarks, handle detecting check mark clicks
8591 * TreeNode.cs: Add a bounding box for the checkbox, refresh the
8592 tree when a check is changed. TODO: Only refresh the checked node.
8594 2004-12-30 Jackson Harper <jackson@ximian.com>
8596 * TreeView.cs: Draw checkbox boxes when checkboxes are enabled.
8597 * TreeNode.cs: When collapsing make sure to never collapse the
8600 2004-12-29 Jackson Harper <jackson@ximian.com>
8602 * TreeView.cs: Align lines to the bottom of plus minus boxes properly.
8604 2004-12-28 Zoltan Varga <vargaz@freemail.hu>
8606 * X11Structs.cs X11Keyboard.cs XplatUIX11.cs: Fix 64 bit issues.
8608 2004-12-28 Peter Bartok <pbartok@novell.com>
8610 * MessageBox.cs (get_CreateParams): Don't use owner var if it's
8613 2004-12-28 Peter Bartok <pbartok@novell.com>
8615 * Control.cs (WndProc): Added WM_HELP handler, now generates
8617 * Form.cs: Added HelpButton property and required support code
8618 * XplatUIStructs.cs: Added HELPINFO structure for WM_HELP handling
8620 2004-12-28 Peter Bartok <pbartok@novell.com>
8623 - Made DialogForm.owner variable internal
8624 - Added check to ensure owner form is set before setting
8625 owner properties in CreateParams
8627 2004-12-28 Geoff Norton <gnorton@customerdna.com>
8629 * XplatUIOSX.cs: Implement mouse hovering. Fix QDPoint struct to avoid
8630 swizzling. Implement ClientToScreen and ScreenToClient. Implement
8631 GetCursorPos. Fix major visibility issues. Rework the windowing
8632 system to support borderless/titleless windows (implements menus).
8633 Fix GetWindowPos. Implement initial background color support for
8636 2004-12-28 Peter Bartok <pbartok@novell.com>
8638 * Form.cs (get_CreateParams): Make sure we have an owner before using
8639 the owner variable. Implement proper default if no owner exists
8641 2004-12-28 Peter Bartok <pbartok@novell.com>
8643 * In preparation for making Managed.Windows.Forms the default build target
8644 for System.Windows.Forms, the following stubbed files were added.
8645 Dialogs are currently being implemented by contributors and are only
8646 short-term place holders.
8647 * ColorDialog.cs: Initial check-in (minmal stub)
8648 * DataGrid.cs: Initial check-in (minimal stub)
8649 * DataGridLineStyle.cs: Initial check-in (minimal stub)
8650 * DataGridParentRowsLabelStyle.cs: Initial check-in (minimal stub)
8651 * DataGridTableStyle.cs: Initial check-in (minimal stub)
8652 * FontDialog.cs: Initial check-in (minimal stub)
8653 * FileDialog.cs: Initial check-in (minimal stub)
8654 * GridColumnStylesCollection.cs: Initial check-in (minimal stub)
8655 * GridTableStylesCollection.cs: Initial check-in (minimal stub)
8656 * OpenFileDialog: Initial check-in (minimal stub)
8657 * IComponentEditorPageSite.cs: Initial check-in
8658 * Splitter.cs: Initial check-in (for Jackson)
8659 * SplitterEventArgs.cs: Initial check-in (for Jackson)
8660 * SplitterEventHandler.cs: Initial check-in (for Jackson)
8661 * TextBox.cs: Initial check-in; still needs some wiring to
8663 * Form.cs: Implemented ControlBox property
8664 * MessageBox.cs: Added proper coding for Minimize/Maximize/ControlBox
8665 * CommonDialog.cs: Added proper coding for Minimize/Maximize/ControlBox
8666 * TextControl.cs: Added selection functionality; added todo header
8668 - Implemented Lines property
8669 - Implemented TextHeight property
8670 - Implemented SelectedText property
8671 - Implemented SelectionLength property
8672 - Implemented SelectAll method
8673 - Implemented ToString method
8674 - Removed and cleaned up some debug code
8675 - Implemented (still buggy) mouse text selection
8677 2004-12-27 Jordi Mas i Hernandez <jordi@ximian.com>
8679 * ComboBox.cs: Complete DropDownList implementation, fixes.
8681 2004-12-26 Jordi Mas i Hernandez <jordi@ximian.com>
8683 * ThemeWin32Classic, Theme.cs: ComboBox drawing methods
8684 * ComboBoxStyle.cs: ComboBoxStyle enum
8685 * ComboBox.cs: Initial work on ComboBox control
8687 2004-12-21 Peter Bartok <pbartok@novell.com>
8689 * Control.cs (ctor, CreateParams): Moved setting of is_visible
8690 forward so that anything that creates a window gets the default,
8691 also no longer uses Visible property in CreateParams to avoid
8692 walking up the parent chain and possibly get the wrong visible
8693 status. Fixed IsVisible to no longer walk up to the parent.
8695 2004-12-21 Peter Bartok <pbartok@novell.com>
8697 * Form.cs (ShowDialog): Unset modality for the proper window
8699 2004-12-20 Peter Bartok <pbartok@novell.com>
8701 * CommonDialog.cs: Initial check-in
8703 2004-12-20 Peter Bartok <pbartok@novell.com>
8705 * Control.cs (Visible): Now uses the parent window instead of the
8706 client area window for the property
8709 - ShowDialog(): Now uses the proper window for modality
8710 - The default visibility state for the form parent is now false. This
8711 will prevent the user from seeing all the changes to the form and
8712 its controls before the application hits Application.Run()
8713 - Removed some stale commented out code
8716 - Added FindWindow() method to have a method to check for existence
8718 - Added ability to override default exception handling (for example
8719 when debugging with VS.Net; to do this the ExternalExceptionHandler
8721 - Removed some useless debug output
8724 - Removed r37929 (SetModal patch from Ashwin Bharambe), was
8725 not working as expected
8726 - Implemented modal_window stack and checking for _WM_ACTIVE_WINDOW
8727 property to allow switching back to the modal window if focus is
8728 given to another one of our windows (Application Modal)
8729 - Now only sets override_redirect if we create a window
8731 - Moved EventMask selection before mapping of newly created window
8732 so we can catch the map event as well
8733 - Implemented Activate() method via the _WM_ACTIVE_WINDOW property
8734 - Added various Atom related DllImports
8735 - Implemented Exit() method
8736 - .ctor() : No longer shows window if WS_VISIBLE is not defined
8739 * MessageBox.cs: Now properly deals with the FormParent window by
8740 providing an override the FormParent CreateParams property to
8741 set as POPUP instead of OVERLAPPED window.
8743 2004-12-19 Geoff Norton <gnorton@customerdna.com>
8745 * XplatUIOSX.cs: Implement DestroyWindow. Implement ScrollWindow
8748 2004-12-19 Geoff Norton <gnorton@customerdna.com>
8750 * XplatUIOSX.cs (SetModal): Implement this method on OSX.
8752 2004-12-18 Peter Bartok <pbartok@novell.com>
8754 * XplatUIX11.cs (SetModal): Applied patch from Ashwin Bharambe,
8755 implementing SetModal() method
8757 2004-12-18 Peter Bartok <pbartok@novell.com>
8759 * X11Structs.cs (XGCValues): Fixed type of function element
8760 * XplatUI.cs: Added ScrollWindow() method
8761 * XplatUIDriver.cs: Added ScrollWindow() abstract
8762 * XplatUIWin32.cs: Implemented ScrollWindow() method
8763 * XplatUIX11.cs: Implemented ScrollWindow() method
8764 * XplatUIOSX.cs: Stubbed out ScrollWindow() method
8766 2004-12-17 Geoff Norton <gnorton@customerdna.com>
8768 * XplatUIOSX.cs: Fix cursor to use an Invert instead of drawing it
8769 Some more keyboard support (INCOMPLETE)
8771 2004-12-17 Peter Bartok <pbartok@novell.com>
8774 - Added color attribute to line tags.
8775 - Added color argument to all functions dealing with tags
8776 - Added color argument support to various functions
8777 - Fixed miss-calculation of baseline/shift in certain circumstances
8779 * TextBoxBase.cs: Added new color option to test code
8781 2004-12-17 Jackson Harper <jackson@ximian.com>
8784 * MonthCalendar.cs: Signature fixes
8786 2004-12-17 Geoff Norton <gnorton@customerdna.com>
8788 * XplatUIOSX.cs: Find the missing caret; caret was dissappearing after a
8789 keyboard event moved it. Create a new graphics context for each paint resolves this
8791 2004-12-17 Geoff Norton <gnorton@customerdna.com>
8793 * XplatUIOSX.cs: Fix hard cpu eat on loop with existing timers,
8794 Make caret exist and go blink blink. Initial keyboard support.
8795 Fix exception handler, Add Invalidate support. Change way RefreshWindow
8798 2004-12-17 Jackson Harper <jackson@ximian.com>
8800 * XplatUIStructs.cs: Updated set of virtual keycodes.
8801 * KeyboardLayouts.cs: SCROLL_LOCK is now SCROLL
8803 2004-12-17 Jackson Harper <jackson@ximian.com>
8805 * XplatUIX11.cs: Prune old keyboard code.
8807 2004-12-17 Jackson Harper <jackson@ximian.com>
8809 * XplatUIX11.cs: When generating mouse wparams get the modifier
8810 keys from the ModifierKeys property.
8812 2004-12-17 Jackson Harper <jackson@ximian.com>
8814 * X11Keyboard.cs: Send up/down input when generating
8815 messages. Remove some unused vars.
8817 2004-12-17 Jackson Harper <jackson@ximian.com>
8820 * TreeView.cs: get rid of warnings.
8822 2004-12-17 Jackson Harper <jackson@ximian.com>
8824 * XplatUIStructs.cs: Fix a couple wrong virtual keycodes.
8826 2004-12-17 Jordi Mas i Hernandez <jordi@ximian.com>
8828 * ListBox.cs: bug fixes, changes for CheckedListBox.cs
8829 CheckedListBox.cs: Implementation
8831 2004-12-17 Peter Bartok <pbartok@novell.com>
8833 * TextControl.cs (RecalculateLine): Fixed baseline aligning calcs
8835 2004-12-16 Peter Bartok <pbartok@novell.com>
8838 - InsertCharAtCaret(): Fixed start pos fixup
8839 - CaretLine_get: No longer derives the line from the tag, the tag
8840 could be stale if lines in the document have been added or deleted
8841 - RebalanceAfterDelete(): Fixed bug in balancing code
8842 - RebalanceAfterAdd(): Fixed really stupid bug in balancing code
8843 - Line.Streamline(): Now can also elminate leading empty tags
8844 - DumpTree(): Added a few more tests and prevented exception on
8846 - Added Debug section for Combining lines
8847 - Delete(): Now copies all remaining properties of a line
8850 - Left mousebutton now sets the caret (and middle button still acts
8851 as formatting tester, which must go away soon)
8852 - Added Debug section for Deleting/Combining lines
8853 - Fixed calculations for UpdateView after Combining lines
8855 2004-12-16 Peter Bartok <pbartok@novell.com>
8857 * TextControl.cs: Now properly aligns text on a baseline, using the
8858 new XplatUI.GetFontMetrics() method. Simplified several calculations
8859 * TextBoxBase.cs: Moved #endif to allow compiling if Debug is not
8862 2004-12-16 Peter Bartok <pbartok@novell.com>
8864 * XplatUI.cs: Added GetFontMetrics() method
8865 * XplatUIDriver.cs: Added GetFontMetrics() abstract
8866 * XplatUIX11.cs: Implemented GetFontMetrics() method, now calls
8867 into libgdiplus, our private GetFontMetrics function
8868 * XplatUIOSX.cs: Implemented GetFontMetrics() method, same as X11
8869 * XplatUIWin32.cs: Implemented GetFontMetrics() method
8871 2004-12-16 Jackson Harper <jackson@ximain.com>
8873 * XplatUIStruct.cs: Add enum for dead keys
8874 * X11Keyboard.cs: Map and unmap dead keys.
8876 2004-12-16 Jackson Harper <jackson@ximian.com>
8878 * X11Keyboard.cs: Detect and use the num lock mask.
8880 2004-12-16 Peter Bartok <pbartok@novell.com>
8882 * Control.cs (CreateGraphics): Added check to make sure the
8883 handle of the window exists before calling Graphics.FromHwnd()
8885 2004-12-16 Peter Bartok <pbartok@novell.com>
8887 * TextBoxBase.cs: Initial check-in. DO NOT TRY TO USE THIS YET. It
8888 contains a lot of code that's not supposed to be there for the
8889 real thing, but required for developing/testing the textbox
8892 2004-12-16 Peter Bartok <pbartok@novell.com>
8895 - Fixed Streamline method
8896 - Added FindTag method to Line
8897 - Added DumpTree method for debugging
8898 - Added DecrementLines() method for deleting lines
8899 - Fixed UpdateView to update the cursor to end-of-line on single-line
8901 - Added PositionCaret() method
8902 - Fixed MoveCaret(LineDown) to move into the last line, too
8903 - Added InsertChar overload
8904 - Fixed InsertChar tag offset calculations
8905 - Added DeleteChar() method
8906 - Added Combine() method for folding lines
8907 - Fixed Delete() method, no longer allocates wasted Line object and
8908 now copies all properties when swapping nodes
8909 - Delete() method now updates document line counter
8911 2004-12-15 Jackson Harper <jackson@ximian.com>
8913 * XplatUIX11.cs: Get the modifier keys from the keyboard driver
8914 * X11Keyboard.cs: Expose the currently selected modifier keys
8917 2004-12-15 Peter Bartok <pbartok@novell.com>
8919 * TextControl.cs: Initial check-in. Still incomplete
8921 2004-12-15 Jackson Harper <jackson@ximian.com>
8924 * TreeView.cs: Fix build on csc (second time today ;-))
8926 2004-12-15 Jackson Harper <jackson@ximian.com>
8928 * TreeView.cs: Store the treenodes plus/minus box bounds when it
8929 is calculated and use this for click testing.
8930 * TreeNode.cs: Add functionality to store the nodes plus minus box bounds.
8932 2004-12-15 Jackson Harper <jackson@ximian.com>
8934 * TreeView.cs: Pass the nodes image index to the image list when
8937 2004-12-15 Jackson Harper <jackson@ximian.com>
8939 * X11Keyboard.cs: Set messages hwnd.
8940 * XplatUIX11.cs: Pass proper hwnd wot keyboard driver. Set hwnd on
8943 2004-12-15 Jackson Harper <jackson@ximian.com>
8945 * X11Keyboard.cs: Fix to compile with csc.
8947 2004-12-15 Jackson Harper <jackson@ximian.com>
8949 * X11Structs.cs: Add key mask values
8950 * XplatUIStruct.cs: Add keyboard event flags, and keyboard definitions
8951 * X11Keyboard.cs: New file - Extrapolates and interpolates key
8952 down/up foo into WM_CHAR foo
8953 * KeyboardLayouts.cs: Common keyboard layouts
8954 * XplatUIX11.cs: Add the keyboard driver. Add functionality to
8955 post messages into the main queue.
8957 2004-12-13 Jordi Mas i Hernandez <jordi@ximian.com>
8959 * Button.cs: implement ProcessMnemonic
8960 * ThemeWin32Classic.cs: use ResPool (caching) instead of creating
8962 * Control.cs: fixes IsMnemonic (support for &&, case insensitive, etc)
8963 * ButtonBase.cs: Show HotkeyPrefix (not the &)
8965 2004-12-12 John BouAntoun <jba-mon@optusnet.com.au>
8967 * MonthCalendar.cs: Implemented click-hold for next/previous month
8970 2004-12-11 Peter Bartok <pbartok@novell.com>
8973 - Added XKeyboardState (moved from XplatUIX11.cs)
8974 - Added XCreateGC related enums and structures
8975 - Added GXFunction for XSetFunction
8977 * XplatUIStructs.cs: Added missing WS_EX_xxx definitions
8979 * XplatUI.cs: Added CreateCaret(), DestroyCaret(), SetCaretPos() and
8980 CaretVisible() calls
8982 * ToolTip.cs: Added code to prevent stealing focus from app windows
8984 * XplatUIDriver.cs: Added abstracts for caret functions (CreateCaret,
8985 DestroyCaret, SetCaretPos and CaretVisible)
8988 - Added implementation for caret functions
8989 - Moved hover variables into a struct, to make it a bit easier
8990 on the eyes and to debug
8991 - Removed XKeyboardState (moved to XplatUIX11.cs)
8992 - Moved Keyboard properties into the properties region
8994 * Control.cs (get_Region): Control.CreateGraphics is the appropriate
8995 call to get a graphics context for our control
8997 * XplatUIOSX.cs: Added empty overrides for the new caret functions
8999 * TreeView.cs: Fixed bug. No matter what color was set it would always
9000 return SystemColors.Window
9002 * XplatUIWin32.cs: Implemented caret overrides
9004 2004-12-10 Jordi Mas i Hernandez <jordi@ximian.com>
9006 * ListBox.cs: fire events, implement missing methods and properties,
9009 2004-12-10 John BouAntoun <jba-mono@optusnet.com.au>
9011 * MonthCalendar.cs: invalidation bug fixing
9012 * ThemeWin32Classic.cs: paint fixing
9014 2004-12-09 Geoff Norton <gnorton@customerdna.com>
9016 * XplatUIOSX.cs: Refactor to pass the real hwnd into Graphics.FromHwnd, we
9017 prepare the CGContextRef there now.
9019 2004-12-09 John BouAntoun <jba-mono@optusnet.com.au>
9022 - optimisationL only invalidate areas that have changed
9023 * ThemeWin32Classic.cs:
9024 - only paint parts that intersect with clip_area
9026 2004-12-09 Peter Bartok <pbartok@novell.com>
9028 * Application.cs: Undid changes from r37004 which cause problems
9031 2004-12-09 Ravindra <rkumar@novell.com>
9033 * ToolBar.cs: Added support for displaying ContextMenu
9034 attached to a button on ToolBar.
9035 * ToolBarButton.cs: Uncomment/fixed the DropDownMenu
9038 2004-12-09 Jordi Mas i Hernandez <jordi@ximian.com>
9040 * Label.cs: autosize works in text change and removes unnecessary
9043 2004-12-09 Jordi Mas i Hernandez <jordi@ximian.com>
9045 * ThemeWin32Classic.cs, XplatUIOSX.cs, XplatUIWin32.cs:
9048 2004-12-08 Geoff Norton <gnorton@customerdna.com>
9050 * XplatUIOSX.cs: Added mouse move/click/grab support
9051 Remove some debugging WriteLines not needed anymore.
9052 Add window resizing/positioning.
9053 Fix visibility on reparenting.
9055 2004-12-08 Peter Bartok <pbartok@novell.com>
9057 * XplatUIOSX.cs: Added Idle event, now compiles on VS.Net
9059 2004-12-07 Geoff Norton <gnorton@customerdna.com>
9061 * XplatUIOSX.cs: Initial checkin
9062 * XplatUI.cs: Use the Quartz driver if the environment is set to use it
9064 2004-12-03 Ravindra <rkumar@novell.com>
9066 * ListView.cs: Added some keybindings and fixed scrolling.
9067 ScrollBars listen to ValueChanged event instead of Scroll
9068 Event. This would let us take care of all changes being
9069 done in the scrollbars' values programmatically or manually.
9070 * ListView.cs (CanMultiselect): Added a check for shift key.
9071 * ListView.cs (EnsureVisible): Fixed. Do proper scrolling.
9072 * ListViewItem.cs (Clone): Fixed. We need to make a copy
9073 of ListViewSubItemCollection as well.
9075 2004-12-06 Peter Bartok <pbartok@novell.com>
9077 * Control.cs (Parent): Added check and exception to prevent
9080 2004-12-03 Jordi Mas i Hernandez <jordi@ximian.com>
9082 * ListBox.cs: implemented clipping, selection single and multiple,
9085 2004-12-03 Ravindra <rkumar@novell.com>
9087 * ListView.cs (ListView_KeyDown):
9088 * ListView.cs (ListView_KeyUp): Fixed multiple selection handling
9089 when CTRL key is pressed.
9090 * ListViewItem.cs (Selected): Fixed setting the property.
9092 2004-12-03 Marek Safar <marek.safar@seznam.cz>
9094 * Application.cs (OnThreadException): Use ThreadExceptionDialog.
9096 * Form.cs: Add ActiveForm, FormBorderStyle, MaximizeBox,
9097 MinimizeBox, ShowInTaskbar, TopMost properties.
9099 * ThreadExceptionDialog.cs: Implemented (disabled TextBox until
9100 will be implemented).
9102 2004-12-03 Marek Safar <marek.safar@seznam.cz>
9104 * OwnerDrawPropertyBag.cs: New internal parameterless ctor.
9106 * TreeNode.cs: Implemented ICloneable, Fixed to pass my simple
9109 * TreeNodeCollection.cs: Add exception throwing for Add,AddRange.
9111 * TreeView.cs: BackColor is Colors.Window.
9113 2004-12-01 Jackson Harper <jackson@ximian.com>
9115 * TreeView.cs: When resizing the tree if the user is making it
9116 smaller we don't get expose events, so we need to handle adding
9117 the horizontal scrollbar in the size changed handler as well as
9120 2004-12-02 Jordi Mas i Hernandez <jordi@ximian.com>
9122 * DrawItemState.cs: fixes wrong enum values
9124 2004-12-01 Jackson Harper <jackson@ximian.com>
9126 * TreeView.cs: Resize the hbar as well as the vbar on resize.
9128 2004-12-01 Jackson Harper <jackson@ximian.com>
9130 * NodeLabelEditEventArgs.cs:
9131 * NodeLabelEditEventHandler.cs:
9132 * OpenTreeNodeEnumerator.cs:
9134 * TreeNodeCollection.cs:
9136 * TreeViewAction.cs:
9137 * TreeViewCancelEventArgs.cs:
9138 * TreeViewCancelEventHandler.cs:
9139 * TreeViewEventArgs.cs:
9140 * TreeViewEventHandler.cs: Initial implementation.
9142 2004-12-01 Ravindra <rkumar@novell.com>
9144 * ListView.cs (CalculateListView): Fixed scrolling related
9145 calculations. Also, removed some debug statements from other
9147 * ListViewItem.cs: Changed access to 'selected' instance variable
9148 from private to internal.
9149 * ThemeWin32Classic.cs (DrawListViewItem): Fixed SubItem drawing.
9151 2004-12-01 Jordi Mas i Hernandez <jordi@ximian.com>
9153 * ThemeWin32Classic.cs: remove cache of brush and pens for
9154 specific controls and use the global system, fixes scrollbutton
9155 bugs (for small sizes, disabled, etc)
9157 * ScrollBar.cs: does not show the thumb for very small controls
9158 (as MS) and allow smaller buttons that the regular size
9160 2004-12-01 Miguel de Icaza <miguel@ximian.com>
9162 * UpDownBase.cs: Add abstract methods for the interface.
9163 Add new virtual methods (need to be hooked up to TextEntry when it
9165 Add override methods for most features.
9166 Computes the size, forces the height of the text entry.
9168 * NumericUpDown.cs: Put here the current testing code.
9170 * Set eol-style property on all files that do not have mixed line
9171 endings, to minimize the future problems. There are still a few
9172 files with mixed endings, and someone should choose whether they
9173 want to move it or not.
9175 2004-11-30 Jordi Mas i Hernandez <jordi@ximian.com>
9177 * MonthCalendar.cs, ListView.cs: use Theme colours instead of
9180 2004-11-30 Ravindra <rkumar@novell.com>
9182 * ThemeWin32Classic.cs (DrawListViewItem): Fixed selected item
9183 drawing and replaced use of SystemColors by theme colors.
9184 * ListView.cs (ListView_Paint): Fixed painting done during scrolling.
9185 * ListView.cs (ListViewItemCollection.Add): Throw exception when
9186 same ListViewItem is being added more than once.
9188 2004-11-30 John BouAntoun <jba-mono@optusnet.com.au>
9191 - ControlStyles love to make the control not flicker
9193 2004-11-30 Peter Bartok <pbartok@novell.com>
9195 * CharacterCasing.cs: Added
9197 2004-11-29 Peter Bartok <pbartok@novell.com>
9199 * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
9200 TreeViewAction.cs, TreeViewEventArgs.cs: Removed new files.
9201 I am removing these files as they conflict with already completed
9202 work. While it is fantastic to get contributions to MWF, I
9203 respectfully ask that everyone please coordinate their contributions
9204 through mono-winforms-list or #mono-winforms at this time. We're
9205 explicitly avoiding stubbing and don't want controls that don't have
9206 their basic functionality implemented in svn. Please also see
9207 http://www.mono-project.com/contributing/winforms.html
9210 2004-11-29 Marek Safar <marek.safar@seznam.cz>
9212 * Application.cs (ModalRun): Don't hang after exit.
9214 * Theme.cs: New TreeViewDefaultSize property.
9216 * ThemeWin32Classic.cs: Replaced hardcoded defaultWindowBackColor
9217 with less hardcoded SystemColors constant.
9218 Implemented TreeViewDefaultSize.
9220 * TreeNode.cs, TreeNodeCollection.cs, TreeView.cs,
9221 TreeViewAction.cs, TreeViewEventArgs.cs: New files.
9224 2004-11-29 John BouAntoun <jba-mono@optusnet.com.au>
9227 - Fix NextMonthDate and PrevMonthDate click moving calendar
9229 2004-11-26 John BouAntoun <jba-mono@optusnet.com.au>
9232 - Fix usage of ScrollChange Property when scrolling months
9234 2004-11-26 Jordi Mas i Hernandez <jordi@ximian.com>
9236 * Menu.cs, MainMenu.cs, MenuItem.cs, MenuAPI.cs
9237 - Fixes menu destroying
9238 - Support adding and removing items on already created menus
9240 2004-11-26 John BouAntoun <jba-mono@optusnet.com.au>
9243 - Re-worked all bolded dates handling to match win32
9244 * ThemeWin32Classic.cs:
9245 - Fixed rendering with bolded dates
9247 2004-11-25 Jordi Mas i Hernandez <jordi@ximian.com>
9249 * ListBox.cs, Theme.cs, ThemeWin32Classic.cs:
9250 - Horizontal scroolbar
9255 2004-11-25 John BouAntoun <jba-mono@optusnet.com.au>
9258 - Fix Usage of MaxSelectionCount from SelectionRange
9259 - Fixed Shift + Cursor Selection
9260 - Fixed Shift + (Pg up/Pg dn, Home/End) selection
9261 - Fixed normal cursor selection to be compat with win32
9262 - Fixed Shift + Mouse Click selection
9264 2004-11-24 Peter Bartok <pbartok@novell.com>
9266 * XplatUI.cs (DispatchMessage): Switched to return IntPtr
9267 * XplatUIDriver.cs (DispatchMessage): Switched to return IntPtr
9269 - CreatedKeyBoardMsg now updates keystate with Alt key
9270 - Added workaround for timer crash to CheckTimers, Jackson will
9271 develop a proper fix and check in later
9272 - Implemented DispatchMessage
9273 - Removed calling the native window proc from GetMessage (call
9274 now moved to DispatchMessage)
9276 * KeyEventArgs.cs (Constructor): Now combines modifierkeys into
9277 the keydata (Fixes bug #69831)
9280 - (DispatchMessage): Switched to return IntPtr
9281 - Added DllImport for SetFocus
9283 2004-11-24 Ravindra <rkumar@novell.com>
9285 * ThemeWin32Classic.cs: Fixed ListView border and checkbox
9287 * ListViewItem.cs: Fixed various properties, calculations
9288 and Clone() method. Fixed ListViewSubItemCollection.Clear() method.
9289 * ListView.cs: Fixed calculations, BackColor, ForeColor properties
9290 and some internal properties. Fixed MouseDown handler and Paint
9293 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
9295 * MonthCalendar.cs: Add TitleMonth ContextMenu handling
9297 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
9299 * ContainerControl.cs: correct accidental check in of local changes
9301 2004-11-24 John BouAntoun <jba-mono@optusnet.com.au>
9303 * ThemeWin32Classic.cs:
9304 - Fixed Drawing Last month in grid (sometimes not showing)
9306 - Fixed title width calculation bug (makeing title small)
9308 2004-11-23 Peter Bartok <pbartok@novell.com>
9311 - Added generation of WM_MOUSEHOVER event
9312 - Added missing assignment of async_method atom
9313 - Fixed WM_ERASEBKGND; now only redraws the exposed area
9315 2004-11-23 John BouAntoun <jba-mono@optusnet.com.au>
9317 * ThemeWin32Classic.cs:
9318 - Fixed Drawing of today circle when showtodaycircle not set
9319 - fixed drawing of first and last month in the grid (gay dates)
9321 - Fixed Drawing of today circle
9322 - Fixed drawing of grady dates
9323 - Fixed HitTest for today link when ShowToday set to false
9324 - Fixed DefaultSize to obey ShowToday
9326 2004-11-23 John BouAntoun <jba-mono@optusnet.com.au>
9328 * ThemeWin32Classic.cs: Fixed DrawMonthCalendar and private support methods
9329 * System.Windows.Forms/Theme.cs
9330 * MonthCalendar.cs: added for MonthCalendar
9331 * SelectionRange.cs: added for MonthCalendar
9332 * Day.cs: added for MonthCalendar: added for MonthCalendar
9333 * DateRangeEventArgs.cs: added for MonthCalendar
9334 * DateRangeEventHandler.cs: added for MonthCalendar
9336 2004-11-22 Ravindra <rkumar@novell.com>
9338 * ThemeWin32Classic.cs: Fixed ListViewDrawing with 'UseItemStyleForSubItems'
9341 2004-11-22 Miguel de Icaza <miguel@ximian.com>
9343 * UpDownBase.cs (InitTimer): Use prehistoric C# 1.0 notation for
9346 * NumericUpDown.cs: Added new implementation.
9347 * UpDownBase.cs: Added new implementation.
9349 * XplatUIWin32.cs (KeyboardSpeed, KeyboardDelay): added default
9352 * XplatUIX11.cs (KeyboardSpeed, KeyboardDelay): added default
9355 * XplatUIDriver.cs ((KeyboardSpeed, KeyboardDelay): added new
9358 2004-11-21 Miguel de Icaza <miguel@ximian.com>
9360 * Timer.cs (Dispose): Should call the base dispose when
9363 2004-11-19 Jordi Mas i Hernandez <jordi@ximian.com>
9365 * ScrollBar.cs: updates thumb position when max, min or increment
9368 2004-11-21 Ravindra <rkumar@novell.com>
9370 * ListView.cs: Implemented item selection, activation and
9371 column header style. Fixed properties to do a redraw, if
9372 required. Added support for MouseHover, DoubleClick, KeyDown
9373 and KeyUp event handling and some minor fixes.
9374 * ListViewItem.cs: Fixed constructor.
9375 * ThemeWin32Classic.cs: Improved drawing for ListView.
9377 2004-11-19 Jordi Mas i Hernandez <jordi@ximian.com>
9379 * ThemeWin32Classic.cs: initial listbox drawing code
9380 * DrawMode.cs: new enumerator
9381 * ListControl.cs: stubbed class
9382 * ListBox.cs: initial implementation
9383 * Theme.cs: new methods definitions
9384 * SelectionMode.cs: new enumerator
9386 2004-11-17 Peter Bartok <pbartok@novell.com>
9388 * XplatUIWin32.cs: Added double-click events to the class style
9389 * Control.cs (WndProc):
9390 - Added handling of click-count to MouseDown/ MouseUp events.
9391 - Added handling of middle and right mouse buttons
9392 - Removed old debug code
9394 2004-11-17 Jackson Harper <jackson@ximian.com>
9396 * XplatUIX11.cs: Use the new Mono.Unix namespace.
9398 2004-11-17 Ravindra <rkumar@novell.com>
9400 * ListView.cs: Added event handling for MouseMove/Up/Down.
9401 * ColumnHeader.cs: Added a read-only internal property 'Pressed'.
9402 * ThemeWin32Classic.cs: We need to clear the graphics context and
9403 draw column header in a proper state.
9406 2004-11-17 Jordi Mas i Hernandez <jordi@ximian.com>
9408 * Menu.cs: fixes signature
9410 2004-11-16 Peter Bartok <pbartok@novell.com>
9412 * XplatUIX11.cs (GetMessage): Implemented generation of
9413 double click mouse messages
9415 2004-11-12 Jordi Mas i Hernandez <jordi@ximian.com>
9417 * Form.cs, MainMenu.cs, MenuAPI.cs: tracker should be for tracking session
9420 2004-11-11 Peter Bartok <pbartok@novell.com>
9422 * HandleData.cs: Added Visible property
9423 * XplatUIX11.cs (IsVisible): Now uses Visible property from
9425 * XplatUIX11.cs: Removed old debug leftovers
9426 * XplatUIX11.cs (DefWndProc): Added WM_ERASEBKGND handler
9427 * Control.cs (WndProc): Removed old debug leftovers,
9428 streamlined handling of WM_WINDOWPOSCHANGED, removed un-
9429 needed WM_SIZE handling
9431 2004-11-11 Jackson Harper <jackson@ximian.com>
9433 * OwnerDrawPropertyBag.cs:
9434 * TreeViewImageIndexConverter.cs: Initial implementation
9436 2004-11-10 Jackson Harper <jackson@ximian.com>
9438 * ThemeWin32Classic.cs:
9439 * TabControl.cs: instead of moving tabs by the slider pos just
9440 start drawing at the tab that is offset by the slider. This way
9441 scrolling always moves by exactly one tab.
9443 2004-11-10 Jackson Harper <jackson@ximian.com>
9445 * TabControl.cs: You can only scroll left when the slider has
9446 already ben moved right.
9448 2004-11-10 Jackson Harper <jackson@ximian.com>
9450 * ThemeWin32Classic.cs: Do not draw the selected tab if its not in
9453 2004-11-10 Jackson Harper <jackson@ximian.com>
9455 * ThemeWin32Classic.cs: Don't bother drawing tabs outside of the
9458 2004-11-09 Jackson Harper <jackson@ximian.com>
9460 * TabControl.cs (CalcXPos): New helper method so we can determine
9461 the proper place to start drawing vertical tabs.
9462 * ThemeWin32Classic.cs (DrawTab): Draw right aligned tabs.
9464 2004-11-09 Jackson Harper <jackson@ximian.com>
9466 * TabControl.cs: Calculate sizing and rects for left aligned tabs.
9467 * ThemeWin32Classic.cs (GetTabControl*ScrollRect): Only handle Top
9468 and Bottom, left and right are illegal values for this and
9469 multiline is enabled when the alignment is set to left or right.
9470 (DrawTab): Each alignment block should draw the text itself now
9471 because Left requires special love. Also add rendering for Left
9474 2004-11-09 Jordi Mas i Hernandez <jordi@ximian.com>
9476 * Form.cs, MainMenu.cs, MenuAPI.cs: fixes menu navigation, fixes popups,
9477 does not destroy the windows, removes debugging messages
9479 2004-11-09 jba <jba-mono@optusnet.com.au>
9481 * ThemeWin32Classic.cs
9482 (DrawButtonBase): Fix verticle text rect clipping in windows
9483 (DrawCheckBox): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
9484 rendering and incorrect text rect clipping
9485 (DrawRadioButton): Fix CheckAlign.TopCenter and CheckAlign.BottomCenter
9486 rendering and incorrect text rect clipping
9488 2004-11-08 Jackson Harper <jackson@ximian.com>
9490 * ThemeWin32Classic.cs (DrawTabControl): Render tabs from top to
9491 bottom when they are bottom aligned so the bottoms of the tabs get
9493 * TabControl.cs (DropRow): Move rows up instead of down when the
9494 tab control is bottom aligned.
9496 2004-11-08 13:59 pbartok
9499 - Added handling for various window styles
9500 - Added handling for popup windows
9501 - Added SetTopmost handling
9503 2004-11-08 13:55 pbartok
9506 - Added argument to SetTopmost method
9507 - Fixed broken ClientToScreen function
9509 2004-11-08 13:53 pbartok
9511 * XplatUIStructs.cs:
9512 - Added missing WS_EX styles
9514 2004-11-08 13:53 pbartok
9516 * XplatUI.cs, XplatUIDriver.cs:
9517 - Added argument to SetTopmost
9519 2004-11-08 13:52 pbartok
9522 - Added XSetWindowAttributes structure
9523 - Improved XWindowAttributes structure
9524 - Added SetWindowValuemask enum
9525 - Added window creation arguments enum
9526 - Added gravity enum
9527 - Added Motif hints structure
9528 - Added various Motif flags and enums
9529 - Added PropertyMode enum for property functions
9531 2004-11-08 13:50 pbartok
9534 - Fixed arguments for updated SetTopmost method
9536 2004-11-08 13:49 pbartok
9539 - Fixed arguments for updated SetTopmost function
9540 - Fixed usage of PointToClient
9542 2004-11-08 13:44 pbartok
9545 - Added Clipping of children and siblings
9547 2004-11-08 13:41 pbartok
9550 - Removed SetMenuBarWindow call. We do this in Form.cs
9552 2004-11-08 13:40 jackson
9554 * TabControl.cs, Theme.cs, ThemeWin32Classic.cs: Render the little
9555 scrolling jimmi in the correct location with bottom aligned tabs
9557 2004-11-08 13:36 pbartok
9559 * ContainerControl.cs:
9560 - Implemented BindingContext
9561 - Implemented ParentForm
9563 2004-11-08 12:46 jackson
9565 * TabControl.cs: Put bottom rendered tabs in the right location
9567 2004-11-08 07:15 jordi
9569 * ScrollBar.cs, ThemeWin32Classic.cs: fixes vertical scrollbar and
9572 2004-11-05 17:30 jackson
9574 * TabControl.cs: When selected tabs are expanded make sure they
9575 don't go beyond the edges of the tab control
9577 2004-11-05 14:57 jackson
9579 * TabControl.cs: Reset show_slider so if the control is resized to
9580 a size where it is no longer needed it's not displayed anymore
9582 2004-11-05 13:16 jackson
9584 * TabControl.cs: Make tab pages non visible when added to the
9587 2004-11-05 12:42 jackson
9589 * TabControl.cs: Implement SizeMode.FillToRight
9591 2004-11-05 12:16 jackson
9593 * Control.cs: Do not call CreateHandle if the handle is already
9596 2004-11-05 11:46 jackson
9598 * TabControl.cs: Remove superflous call to CalcTabRows
9600 2004-11-05 09:07 jackson
9602 * XplatUIX11.cs: Update for Mono.Posix changes
9604 2004-11-05 07:00 ravindra
9606 * ListView.cs, ListViewItem.cs: Implemented some methods and fixed
9609 2004-11-04 22:47 jba
9611 * ThemeWin32Classic.cs:
9612 - Fix Button rendering for FlatStyle = Flat or Popup
9613 - Fix RadioButton and CheckBox rendering when Appearance = Button
9614 (normal and flatstyle).
9615 - Correct outer rectangle color when drawing focus rectangle
9616 - Adjust button bounds to be 1 px smaller when focused
9617 - Make button not draw sunken 3d border when pushed (windows compat)
9618 - Fix CPDrawBorder3D to not make bottom right hand corner rounded
9619 - Offset the text in RadioButton and Checkbox when being rendered as
9621 - Hover and Click behaviour for Colored FlatStyle.Flat and Popup
9623 - Fixed disabled rendering for colored flatstyle radiobuttons (both)
9624 - Fixed disabled text rendering for normally rendered radiobuttons
9626 2004-11-04 10:26 jackson
9628 * TabControl.cs: Recalculate tab rows when resizing
9630 2004-11-04 07:47 jordi
9632 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs:
9633 collection completion, drawing issues, missing features
9635 2004-11-04 05:03 ravindra
9638 - We need to recalculate the Thumb area when
9639 LargeChange/maximum/minimum values are changed.
9640 - We set the 'pos' in UpdatePos() method to minimum, if it's less
9641 than minimum. This is required to handle the case if large_change is
9642 more than max, and use LargeChange property instead of large_change
9644 - We return max+1 when large_change is more than max, like MS does.
9646 2004-11-04 04:29 ravindra
9648 * ColumnHeader.cs, ListView.cs, ListViewItem.cs:
9649 - Changed default value signatures (prefixed all with ListView).
9650 - Fixed/implemented layout LargeIcon, SmallIcon and List views for
9652 - Fixed calculations for ListViewItem and implemented Clone()
9655 2004-11-04 04:26 ravindra
9657 * Theme.cs, ThemeWin32Classic.cs:
9658 - Changed default ListView values signatures (prefixed all with
9660 - Fixed default size values for VScrollBar and HScrollBar.
9661 - Fixed DrawListViewItem method.
9663 2004-11-04 04:05 ravindra
9665 * ColumnHeaderStyle.cs: Typo. It should be Nonclickable.
9667 2004-11-04 04:04 ravindra
9669 * ImageList.cs: Implemented the missing overload for Draw method.
9671 2004-11-03 19:29 jackson
9673 * TabControl.cs: Handle dropping rows on selection properly
9675 2004-11-03 11:59 jackson
9677 * TabControl.cs: remove debug code
9679 2004-11-03 11:52 jackson
9681 * TabControl.cs, ThemeWin32Classic.cs: Initial implementation of
9682 the scrolly widgerywoo
9684 2004-11-02 13:52 jackson
9686 * TabControl.cs: Resize the tab pages and tabs when the tab control
9689 2004-11-02 13:40 jackson
9691 * TabControl.cs, ThemeWin32Classic.cs: Move the row with the
9692 selected tab to the bottom
9694 2004-11-02 13:39 jackson
9696 * TabPage.cs: Store the tab pages row
9698 2004-11-02 12:33 jordi
9700 * MenuItem.cs: fixes handle creation
9702 2004-11-02 11:42 jackson
9704 * TabControl.cs: signature fix
9706 2004-11-02 08:56 jackson
9708 * TabControl.cs: Calculate whether the tab is on an edge properly.
9709 Remove top secret debugging code
9711 2004-11-01 19:57 jackson
9713 * TabControl.cs: Add click handling, and proper sizing
9715 2004-11-01 19:47 jackson
9717 * Theme.cs, ThemeWin32Classic.cs: New rendering and sizing code for
9720 2004-11-01 19:39 jackson
9722 * TabPage.cs: add internal property to store the bounds of a tab
9725 2004-10-30 04:23 ravindra
9727 * Theme.cs, ThemeWin32Classic.cs: Drawing ListView and some default
9730 2004-10-30 04:21 ravindra
9732 * ListView.cs, ListViewItem.cs: Added support for scrolling and
9735 2004-10-30 03:06 pbartok
9738 - Removed extension of DllImported libs
9740 2004-10-29 09:55 jordi
9742 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: Menu key
9743 navigation, itemcollection completion, menu fixes
9745 2004-10-27 22:58 pbartok
9748 - Now throws a nice error message when no X display could be opened
9750 2004-10-26 13:51 jordi
9752 * ListView.cs: removes warning
9754 2004-10-26 03:55 ravindra
9756 * ColumnHeader.cs, ListView.cs, ListViewItem.cs,
9757 ThemeWin32Classic.cs: Some formatting for my last checkins.
9759 2004-10-26 03:36 ravindra
9761 * ThemeWin32Classic.cs: Implemented DetailView drawing for ListView
9762 control and default values.
9764 2004-10-26 03:35 ravindra
9766 * Theme.cs: Added some default values for ListView control.
9768 2004-10-26 03:33 ravindra
9770 * ToolBar.cs: ToolBar should use the user specified button size, if
9771 there is any. Added a size_specified flag for the same.
9773 2004-10-26 03:33 ravindra
9775 * ColumnHeader.cs: Added some internal members and calculations for
9778 2004-10-26 03:32 ravindra
9780 * ListViewItem.cs: Calculations for ListViewItem.
9782 2004-10-26 03:31 ravindra
9784 * ListView.cs: Added some internal members and calculations for
9787 2004-10-22 13:31 jordi
9789 * MenuAPI.cs: speedup menus drawing
9791 2004-10-22 13:16 jackson
9793 * XplatUIX11.cs: Make sure to update exposed regions when adding an
9796 2004-10-22 11:49 jackson
9800 2004-10-22 11:41 jackson
9802 * Control.cs: Check to see if the window should have its background
9803 repainted by X when drawing.
9805 2004-10-22 11:31 jackson
9807 * XplatUIX11.cs: When invalidating areas only use XClearArea if
9808 clear is true, this way we do not get flicker from X repainting the
9811 2004-10-22 11:28 jackson
9813 * XEventQueue.cs: Queue properly
9815 2004-10-21 09:38 jackson
9817 * XEventQueue.cs: Fix access modifier
9819 2004-10-21 09:36 jackson
9821 * XEventQueue.cs: Don't loose messages
9823 2004-10-21 09:22 jackson
9825 * XEventQueue.cs: Don't loose messages
9827 2004-10-20 04:15 jordi
9829 * BootMode.cs: enum need it by SystemInfo
9831 2004-10-19 21:58 pbartok
9834 - Small sanity check
9836 2004-10-19 21:56 pbartok
9839 - Added private FormParentWindow class which acts as the container
9840 for our form and as the non-client area where menus are drawn
9841 - Added/Moved required tie-ins to Jordi's menus
9842 - Fixed/Implemented the FormStartPosition functionality
9844 2004-10-19 21:52 pbartok
9847 - Removed unneeded locals
9848 - Added code to all size and location properties to understand and
9849 deal with the parent container of Form
9851 2004-10-19 21:33 pbartok
9854 - Fixed to deal with new Form subclasses for menus
9856 2004-10-19 17:48 jackson
9858 * XEventQueue.cs: commit correct version of file
9860 2004-10-19 16:50 jackson
9862 * XEventQueue.cs, XplatUIX11.cs: New optimized event queue
9864 2004-10-19 16:15 jordi
9866 * MenuAPI.cs: MenuBarCalcSize returns the height
9868 2004-10-19 08:31 pbartok
9871 - Added missing call to PreProcessMessage before calling OnXXXKey
9874 2004-10-19 00:04 ravindra
9876 * ToolTip.cs: Fixed constructor.
9878 2004-10-18 09:31 jordi
9880 * MenuAPI.cs: menuitems in menubars do not have shortcuts
9882 2004-10-18 09:26 jordi
9884 * MenuItem.cs: fixes MenuItem class signature
9886 2004-10-18 08:56 jordi
9888 * MenuAPI.cs: prevents windows from showing in the taskbar
9890 2004-10-18 00:28 ravindra
9892 * ToolTip.cs: Suppressed a warning message.
9894 2004-10-18 00:27 ravindra
9896 * Control.cs: Default value of visible property must be true.
9898 2004-10-17 23:19 pbartok
9901 - Complete implementation
9903 2004-10-17 23:19 pbartok
9906 - Added EnableWindow method
9907 - Added SetModal stub
9908 - Added generation of WM_ACTIVATE message (still needs testing)
9909 - Added SetTopMost stub
9910 - Changes to deal with VirtualKeys being moved to XplatUIStructs.cs
9912 2004-10-17 23:17 pbartok
9915 - Removed VirtualKeys to XplatUIStructs
9916 - Implemented SetTopMost method
9917 - Implemented EnableWindow method
9918 - Bugfix in ScreenToClient()
9919 - Bugfixes in ClientToScreen()
9921 2004-10-17 22:51 pbartok
9923 * XplatUIStructs.cs:
9924 - Added WS_EX styles to WindowStyles enumeration
9926 2004-10-17 22:50 pbartok
9928 * XplatUI.cs, XplatUIDriver.cs:
9929 - Added method for enabling/disabling windows
9930 - Added method for setting window modality
9931 - Added method for setting topmost window
9933 2004-10-17 22:49 pbartok
9935 * ThemeWin32Classic.cs:
9936 - Added ToolTip drawing code
9938 2004-10-17 22:49 pbartok
9941 - Added ToolTip abstracts
9943 2004-10-17 22:47 pbartok
9946 - Fixed Form.ControlCollection to handle owner relations
9947 - Added Owner/OwnedForms handling
9948 - Implemented Z-Ordering for owned forms
9949 - Removed unneeded private overload of ShowDialog
9950 - Fixed ShowDialog, added the X11 incarnation of modal handling (or
9952 - Fixed Close(), had wrong default
9953 - Added firing of OnLoad event
9954 - Added some commented out debug code for Ownership handling
9956 2004-10-17 22:16 pbartok
9959 - Fixed/implemented flat list of controls
9961 2004-10-17 22:14 pbartok
9964 - Added code to simulate modal dialogs on Win32
9966 2004-10-17 16:11 jordi
9968 * ScrollBar.cs: disabled scrollbar should not honor any keyboard or
9971 2004-10-17 13:39 jordi
9973 * MenuAPI.cs: menu drawing fixes
9975 2004-10-15 09:10 ravindra
9977 * StructFormat.cs: General Enum.
9979 2004-10-15 09:09 ravindra
9981 * SizeGripStyle.cs: Enum for Form.
9983 2004-10-15 09:08 ravindra
9985 * Theme.cs, ThemeWin32Classic.cs: Added ColumnHeaderHeight property
9986 in Theme for ListView.
9988 2004-10-15 09:06 ravindra
9990 * ColumnHeader.cs: Flushing some formatting changes.
9992 2004-10-15 09:05 ravindra
9994 * ListViewItem.cs: Implemented GetBounds method and fixed coding
9997 2004-10-15 09:03 ravindra
9999 * ListView.cs: Implemented Paint method and fixed coding style.
10001 2004-10-15 07:34 jordi
10003 * MenuAPI.cs: fix for X11
10005 2004-10-15 07:32 ravindra
10007 * ButtonBase.cs, CheckBox.cs, RadioButton.cs:
10008 - Renamed Paint() method to Draw() for clarity. Also, moved
10009 DrawImage() to OnPaint().
10011 2004-10-15 07:25 ravindra
10013 * CheckBox.cs, RadioButton.cs:
10014 - Removed Redraw (), we get it from ButtonBase.
10015 - Implemented Paint (), to do class specific painting.
10017 2004-10-15 07:16 ravindra
10020 - Redraw () is not virtual now.
10021 - Added an internal virtual method Paint (), so that
10022 derived classes can do their painting on their own.
10023 - Modified OnPaint () to call Paint ().
10025 2004-10-15 06:43 jordi
10027 * ContextMenu.cs, DrawItemEventHandler.cs, Form.cs, MainMenu.cs,
10028 MenuAPI.cs, MenuItem.cs: menu work, mainmenu, subitems, etc
10030 2004-10-15 00:30 ravindra
10033 - MessageBox on windows does not have min/max buttons.
10034 This change in CreateParams fixes this on Windows. We
10035 still need to implement this windowstyle behavior in
10038 2004-10-14 05:14 ravindra
10041 - Changed Redraw () to do a Refresh () always.
10042 - Fixed the MouseMove event handling when mouse is pressed,
10043 ie drag event handling.
10044 - Replaced the usage of ToolBarButton.Pressed property to
10045 ToolBarButton.pressed internal variable.
10047 2004-10-14 05:10 ravindra
10049 * ToolBarButton.cs:
10050 - Added an internal member 'inside' to handle mouse move
10051 with mouse pressed ie mouse drag event.
10052 - Changed 'Pressed' property to return true only when
10053 'inside' and 'pressed' are both true.
10054 - Some coding style love.
10056 2004-10-14 00:17 ravindra
10058 * Form.cs: Fixed class signature. ShowDialog (Control) is not a
10061 2004-10-14 00:15 ravindra
10063 * ButtonBase.cs: Redraw () related improvements.
10065 2004-10-14 00:14 ravindra
10067 * MessageBox.cs: Moved InitFormSize () out of Paint method and
10068 removed unnecessary calls to Button.Show () method.
10070 2004-10-13 17:50 pbartok
10074 - Removed destroying of window until we solve the problem of X
10075 destroying the window before us on shutdown
10077 2004-10-13 16:32 pbartok
10080 - Now Redraws on MouseUp for FlatStyle Flat and Popup
10082 2004-10-13 14:18 pbartok
10085 - Added code to destroy the X window
10087 2004-10-13 14:18 pbartok
10090 - Added code to destroy a window
10092 2004-10-13 14:12 pbartok
10095 - Added the Redraw on Resize that got dropped in the last rev
10097 2004-10-13 09:06 pbartok
10099 * ThemeWin32Classic.cs:
10100 - Path from John BouAntoun:
10101 * Fix check rendering (centre correctly for normal style, offset
10102 correctly for FlatStyle).
10103 * Fix border color usage (use backcolor) for FlatStyle.Popup
10104 * Use checkbox.Capture instead of checkbox.is_pressed when
10105 rendering flatstyle states.
10107 2004-10-12 21:48 pbartok
10109 * ThemeWin32Classic.cs:
10110 - Removed all occurences of SystemColors and replaced them with the
10111 matching theme color
10113 2004-10-12 21:41 pbartok
10115 * ThemeWin32Classic.cs:
10116 - From John BouAntoun: Added an overload to CPDrawBorder3D to allow
10117 him using the function for flatstyle drawing
10118 - Changed functions to use the new version of CPDrawBorder3D
10120 2004-10-12 21:15 pbartok
10123 - Fixed Dark(), DarkDark(), Light() and LightLight() methods to
10124 match MS documentation. They need to return defined colors if the
10125 passed color matches the configured control color. Thanks to John
10126 BouAntoun for pointing this out.
10128 2004-10-12 20:57 pbartok
10131 - Fix from John BouAntoun: Raise ForeColorChanged event when text
10134 2004-10-12 20:46 pbartok
10137 - Fix from John BouAntoun: Now properly sets the Appearance property
10139 2004-10-12 20:45 pbartok
10141 * ThemeWin32Classic.cs:
10142 - Fixes from John BouAntoun: now handles forecolors and backcolors
10143 for flatstyle rendered controls much better; It also fixes normal
10144 checkbox rendering when pushed or disabled.
10146 2004-10-08 02:50 jordi
10148 * Form.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs: more menu
10151 2004-10-07 08:56 jordi
10153 * ThemeWin32Classic.cs: Removes deletion of cached brushes
10155 2004-10-06 03:59 jordi
10157 * Control.cs, StatusBar.cs, ThemeWin32Classic.cs, ToolBar.cs,
10158 XplatUIWin32.cs: removes warnings from compilation
10160 2004-10-05 12:23 jackson
10162 * RadioButton.cs: Fix ctor
10164 2004-10-05 11:10 pbartok
10167 - Partial implementation by Benjamin Dasnois
10169 2004-10-05 10:15 jackson
10171 * ThemeWin32Classic.cs: Improve rendering of the radio button patch
10174 2004-10-05 03:07 ravindra
10177 - Removed a private method, Draw ().
10178 - Fixed the ButtonDropDown event handling.
10179 - Fixed MouseMove event handling.
10181 2004-10-05 03:04 ravindra
10183 * ThemeWin32Classic.cs:
10184 - Added DrawListView method and ListViewDefaultSize property.
10185 - Changed ControlPaint method calls to CPDrawXXX wherever possible.
10186 - Changed DOS style CRLF to Unix format (dos2unix).
10188 2004-10-05 03:03 ravindra
10191 - Added DrawListView method and ListViewDefaultSize property.
10193 2004-10-05 02:42 ravindra
10195 * ToolBarButton.cs: Added an internal member dd_pressed to handle
10196 clicks on DropDown arrow.
10198 2004-10-04 22:56 jackson
10200 * ButtonBase.cs, Label.cs, MenuAPI.cs, ProgressBar.cs,
10201 ScrollBar.cs, StatusBar.cs, ToolBar.cs, TrackBar.cs: Let the base
10202 Control handle the buffers, derived classes should not have to
10203 CreateBuffers themselves.
10205 2004-10-04 21:20 jackson
10207 * StatusBar.cs: The control handles resizing the buffers now.
10209 2004-10-04 21:18 jackson
10211 * Control.cs: When resizing the buffers should be invalidated. This
10212 should be handled in Control not in derived classes.
10214 2004-10-04 14:45 jackson
10218 2004-10-04 02:14 pbartok
10220 * LeftRightAlignment.cs:
10223 2004-10-04 01:09 jordi
10225 * ThemeWin32Classic.cs: fixes right button position causing right
10226 button not showing on horizontal scrollbars
10228 2004-10-02 13:12 pbartok
10231 - Simplified the Invalidate method by using an X call instead of
10232 generating the expose ourselves
10233 - Added an expose when the window background is changed
10234 - Implemented ClientToScreen method
10236 2004-10-02 13:08 pbartok
10239 - Added Win32EnableWindow method (test for implementing modal
10241 - Added ClientToScreen method and imports
10243 2004-10-02 13:07 pbartok
10245 * XplatUI.cs, XplatUIDriver.cs:
10246 - Added ClientToScreen coordinate translation method
10248 2004-10-02 13:06 pbartok
10250 * KeyPressEventArgs.cs:
10251 - Fixed access level for constructor
10253 2004-10-02 13:06 pbartok
10256 - Changed access level for the window_collection hash table
10258 2004-10-02 13:05 pbartok
10261 - Added KeyPreview property
10262 - Added Menu property (still incomplete, pending Jordi's menu work)
10263 - Implemented ProcessCmdKey
10264 - Implemented ProcessDialogKey
10265 - Implemented ProcessKeyPreview
10267 2004-10-02 13:02 pbartok
10270 - Added private method to get the Control object from the window
10272 - Implemented ContextMenu property
10273 - Implemented PointToScreen
10274 - Implemented PreProcessMessage
10275 - Implemented IsInputChar
10276 - Implemented IsInputKey
10277 - Implemented ProcessCmdKey
10278 - Completed ProcessKeyEventArgs
10279 - Fixed message loop to call the proper chain of functions on key
10281 - Implemented ProcessDialogChar
10282 - Implemented ProcessDialogKey
10283 - Implemented ProcessKeyMessage
10284 - Implemented ProcessKeyPreview
10285 - Added RaiseDragEvent stub (MS internal method)
10286 - Added RaiseKeyEvent stub (MS internal method)
10287 - Added RaiseMouseEvent stub (MS Internal method)
10288 - Added RaisePaintEvent stub (MS Internal method)
10289 - Added ResetMouseEventArgs stub (MS Internal method)
10290 - Implemented RtlTranslateAlignment
10291 - Implemented RtlTranslateContent
10292 - Implemented RtlTranslateHorizontal
10293 - Implemented RtlTranslateLeftRight
10294 - Added generation of KeyPress event
10296 2004-10-02 05:57 ravindra
10298 * ListViewItem.cs: Added attributes.
10300 2004-10-02 05:32 ravindra
10302 * ListView.cs: Added attributes.
10304 2004-10-01 11:53 jackson
10306 * Form.cs: Implement the Close method so work on MessageBox can
10309 2004-09-30 14:06 pbartok
10314 2004-09-30 11:34 jackson
10316 * RadioButton.cs: Fix typo. Patch by John BouAntoun.
10318 2004-09-30 07:26 ravindra
10320 * ListViewItemConverter.cs: Converter for ListViewItem.
10322 2004-09-30 07:26 ravindra
10324 * SortOrder.cs: Enum for ListView control.
10326 2004-09-30 07:25 ravindra
10328 * ColumnHeader.cs: Supporting class for ListView control.
10330 2004-09-30 07:24 ravindra
10332 * ListView.cs, ListViewItem.cs: Initial implementation.
10334 2004-09-30 07:20 ravindra
10336 * ItemActivation.cs: Enum for ListView Control.
10338 2004-09-29 20:29 pbartok
10341 - Added lookup of pixel value for background color; tries to get a
10342 color 'close' to the requested color, it avoids having to create a
10343 colormap. Depending on the display this could mean the used color
10344 is slightly off the desired color. Might have to change it to a more
10345 resource intensive colormap approach, but it will work as a
10346 workaround to avoid red screens.
10348 2004-09-29 14:27 jackson
10350 * XplatUIX11.cs: Set the X DisplayHandle in System.Drawing
10352 2004-09-28 12:44 pbartok
10354 * ButtonBase.cs, CheckBox.cs, ControlPaint.cs, GroupBox.cs,
10355 HScrollBar.cs, Label.cs, LinkLabel.cs, Panel.cs, PictureBox.cs,
10356 ProgressBar.cs, RadioButton.cs, ScrollBar.cs, StatusBar.cs,
10357 Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs, ToolBar.cs,
10358 TrackBar.cs, VScrollBar.cs:
10359 - Streamlined Theme interfaces:
10360 * Each DrawXXX method for a control now is passed the object for
10361 the control to be drawn in order to allow accessing any state the
10362 theme might require
10364 * ControlPaint methods for the theme now have a CP prefix to avoid
10365 name clashes with the Draw methods for controls
10367 * Every control now retrieves it's DefaultSize from the current
10370 2004-09-28 12:17 jackson
10372 * Button.cs: Do not redraw OnClick MouseUp/Down will handle the
10375 2004-09-24 14:57 jackson
10377 * XplatUIX11.cs: Don't lock/enqueue/dequeue for unhandled messages.
10378 Gives us a nice little performance boost.
10380 2004-09-24 12:02 jackson
10382 * TabAlignment.cs, TabAppearance.cs, TabControl.cs, TabDrawMode.cs,
10383 TabPage.cs, TabSizeMode.cs: Partial implementation of the Tab
10384 Control and supporting classes. Initial checkin
10386 2004-09-23 13:08 jackson
10388 * Form.cs: Temp build fixage
10390 2004-09-23 01:39 ravindra
10392 * ItemChangedEventArgs.cs, ItemChangedEventHandler.cs,
10393 ItemCheckEventArgs.cs, ItemCheckEventHandler.cs,
10394 ItemDragEventArgs.cs, ItemDragEventHandler.cs,
10395 LabelEditEventArgs.cs, LabelEditEventHandler.cs: EventArgs and
10396 EventHandlers needed by ListView Control.
10398 2004-09-22 14:12 pbartok
10400 * ScrollableControl.cs:
10401 - Implemented DockPadding property
10402 - Implemented AutoScroll property
10403 - Implemented AutoScrollMargin property
10404 - Implemented AutoScrollMinSize property
10405 - Implemented AutoScrollPosition property
10406 - Implemented DisplayRectangle property (still incomplete)
10407 - Implemented CreateParams property
10408 - Implemented HScroll property
10409 - Implemented VScroll property
10410 - Implemented OnVisibleChanged property
10412 2004-09-22 14:09 pbartok
10415 - Added Form.ControllCollection class
10416 - Added handling for Form owners: Owner, OwnedForms, AddOwnedForm,
10417 RemoveOwnedForm (still incomplete, missing on-top and common
10418 minimize/maximize behaviour)
10419 - Added StartPosition property (still incomplete, does not use when
10421 - Added ShowDialog() methods (still incomplete, missing forcing the
10424 2004-09-22 14:05 pbartok
10427 - Added message loop for modal dialogs
10429 2004-09-22 14:02 pbartok
10432 - Fixed wrong types for events
10434 2004-09-22 14:00 pbartok
10436 * Shortcut.cs, FormWindowState.cs:
10437 - Fixed wrong values
10439 2004-09-22 12:01 jackson
10441 * Control.cs: Text is never null
10443 2004-09-20 22:14 pbartok
10446 - Fixed accessibility level for Idle handler
10448 2004-09-20 18:54 jackson
10450 * Application.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10451 XplatUIX11.cs: New message loop that uses poll so we don't get a
10454 2004-09-17 10:43 pbartok
10457 - Fixed behaviour of arrow buttons. Now properly behaves like
10458 Buttons (and like Microsoft's scrollbar arrow buttons)
10460 2004-09-17 10:14 pbartok
10463 - Added missing release of keyboard/mouse capture
10465 2004-09-17 06:18 jordi
10467 * ContextMenu.cs, MainMenu.cs, Menu.cs, MenuAPI.cs, MenuItem.cs,
10468 Theme.cs: Very early menu support
10470 2004-09-16 17:45 pbartok
10473 - Fixed sending a window to the front
10474 - Added overload for SetWindowPos to avoid casting
10476 2004-09-16 17:44 pbartok
10479 - Added SendToBack and BringToFront methods
10481 2004-09-16 07:00 ravindra
10483 * Copyright: Added Novell URL.
10485 2004-09-16 07:00 ravindra
10487 * ToolBar.cs: Invalidate should be done before redrawing.
10489 2004-09-15 21:19 ravindra
10491 * ColumnHeaderStyle.cs: Enum for ListView Control.
10493 2004-09-15 21:18 ravindra
10495 * ColumnClickEventArgs.cs, ColumnClickEventHandler.cs: Event for
10498 2004-09-13 18:26 jackson
10500 * Timer.cs, XplatUIX11.cs: Remove test code so timers are updated
10503 2004-09-13 18:13 jackson
10505 * Timer.cs, X11Structs.cs, XplatUIX11.cs: Timers are now handled in
10506 a second thread and post messages into the main threads message
10507 queue. This makes timing much more consistent. Both win2K and XP
10508 have a minimum timer value of 15 milliseconds, so we now do this
10511 2004-09-13 15:18 pbartok
10513 * X11Structs.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10515 - Added Z-Ordering methods
10517 2004-09-13 10:56 pbartok
10520 - Fixed #region names
10521 - Moved properties and methods into their proper #regions
10523 2004-09-13 10:51 pbartok
10526 - Added Accept and CancelButton properties
10527 - Added ProcessDialogKey() method
10529 2004-09-13 08:18 pbartok
10531 * IWindowTarget.cs:
10534 2004-09-10 21:50 pbartok
10537 - Added DoDragDrop() [incomplete]
10538 - Properly implemented 'Visible' handling
10539 - Added SetVisibleCore()
10540 - Implemented FindChildAtPoint()
10541 - Implemented GetContainerControl()
10542 - Implemented Hide()
10544 2004-09-10 19:28 pbartok
10547 - Moved methods into their appropriate #regions
10548 - Reordered methods within regions alphabetically
10550 2004-09-10 18:57 pbartok
10552 * XplatUIX11.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
10553 - Added method to retrieve text from window
10555 2004-09-10 18:56 pbartok
10558 - Moved some internal functions into the internal region
10559 - Implemented FontHeight
10560 - Implemented RenderRightToLeft
10561 - Implemented ResizeRedraw
10562 - Implemented ShowFocusCues
10563 - Implemented ShowKeyboardCues
10564 - Implemented FromChildHandle
10565 - Implemented FromHandle
10566 - Implemented IsMnemonic
10567 - Implemented ReflectMessage
10568 - All public and protected Static Methods are now complete
10570 2004-09-10 16:54 pbartok
10573 - Implemented remaining missing public instance properties
10574 - Alphabetized some out of order properties
10576 2004-09-10 05:51 ravindra
10578 * PictureBox.cs: Added a check for null image.
10580 2004-09-10 00:59 jordi
10582 * GroupBox.cs: remove cvs tag
10584 2004-09-09 05:25 ravindra
10586 * ToolBar.cs: Make redraw accessible from ToolBarButton.
10588 2004-09-09 05:23 ravindra
10590 * ToolBarButton.cs: Changes in ToolBarButton need to make it's
10593 2004-09-09 02:28 pbartok
10595 * ThemeWin32Classic.cs:
10596 - Improve disabled string look
10598 2004-09-09 01:15 jordi
10600 * MeasureItemEventArgs.cs, MeasureItemEventHandler.cs: measureitem
10603 2004-09-08 23:56 ravindra
10605 * ItemBoundsPortion.cs: It's enum, not a class!
10607 2004-09-08 23:47 ravindra
10609 * FormBorderStyle.cs, FormStartPosition.cs, FormWindowState.cs:
10612 2004-09-08 21:13 ravindra
10614 * ItemBoundsPortion.cs, ListViewAlignment.cs, View.cs: Enums for
10617 2004-09-08 21:03 ravindra
10619 * ThemeWin32Classic.cs: PictureBox would not draw a null image to
10622 2004-09-08 21:01 ravindra
10624 * ScrollableControl.cs: Removed unreachable code.
10626 2004-09-08 06:45 jordi
10628 * MenuMerge.cs, Shortcut.cs: enumerations need it by menus
10630 2004-09-08 01:00 jackson
10632 * XplatUIX11.cs: Only run the timers when updating the message
10633 queue. This effectively gives X messages a higher priority then
10634 timer messages. Timers still need love though
10636 2004-09-07 14:01 jackson
10638 * XplatUIX11.cs: Do not call XDestroyWindow, X has already done
10639 this for us and the handle is no longer valid.
10641 2004-09-07 13:59 jackson
10643 * HandleData.cs, XplatUIX11.cs: First steps towards a new X event
10644 loop that manages to not crash. TODO: Add poll and cleanup timers
10646 2004-09-07 11:12 jordi
10648 * GroupBox.cs, Theme.cs, ThemeWin32Classic.cs: GroupBox control
10650 2004-09-07 03:40 jordi
10652 * Label.cs, LinkLabel.cs, Theme.cs, ThemeWin32Classic.cs: LinkLabel
10653 fixes, methods, multiple links
10655 2004-09-06 06:55 jordi
10657 * Control.cs: Caches ClientRectangle rectangle value
10659 2004-09-05 02:03 jordi
10661 * ScrollBar.cs, ThemeWin32Classic.cs: fixes bugs, adds flashing on
10664 2004-09-04 11:10 jordi
10666 * Label.cs: Refresh when font changed
10668 2004-09-02 16:24 pbartok
10671 - Added sanity check to creation of double buffer bitmap
10673 2004-09-02 16:24 pbartok
10676 - Fixed selection of text color
10677 - Fixed handling of resize event; now properly recreates double
10679 - Added missing assignment of TextAlignment
10680 - Added proper default for TextAlignment
10682 2004-09-02 14:26 pbartok
10685 - Added missing RadioButton.RadioButtonAccessibleObject class
10687 2004-09-02 14:26 pbartok
10690 - Added missing Control.ControlAccessibleObject class
10691 - Started to implement Select()ion mechanisms, still very incomplete
10693 2004-09-02 14:25 pbartok
10695 * AccessibleObject.cs:
10696 - Added missing methods
10698 2004-09-02 14:23 pbartok
10700 * AccessibleNavigation.cs, AccessibleSelection.cs:
10703 2004-09-02 10:32 jordi
10705 * Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: implements resource
10706 pool for pens, brushes, and hatchbruses
10708 2004-09-01 15:30 jackson
10710 * StatusBar.cs: Fix typo
10712 2004-09-01 14:44 pbartok
10717 2004-09-01 14:39 pbartok
10719 * Button.cs, RadioButton.cs:
10720 - Functional initial check-in
10722 2004-09-01 14:01 pbartok
10725 - Added missing default
10726 - Added missing region mark
10728 2004-09-01 09:10 jordi
10730 * Label.cs: fixes method signatures, new methods, events, fixes
10733 2004-09-01 07:19 jordi
10735 * Control.cs: Init string variables with an empty object
10737 2004-09-01 04:20 jordi
10739 * Control.cs: fires OnFontChanged event
10741 2004-08-31 20:07 pbartok
10744 - Enabled display of strings
10746 2004-08-31 20:05 pbartok
10749 - Added (partial) implementation of DialogResult; rest needs to be
10750 implemented when the modal loop code is done
10752 2004-08-31 19:55 pbartok
10755 - Fixed to match the removal of the needs_redraw concept
10757 2004-08-31 19:55 pbartok
10760 - Removed the rather odd split between 'needs redraw' and redrawing
10761 - Now handles the events that require regeneration (ambient
10762 properties and size)
10764 2004-08-31 19:41 pbartok
10767 - Added firing of BackColorChanged event
10768 - Added TopLevelControl property
10769 - Fixed handling of WM_ERASEBKGRND message
10771 2004-08-31 12:49 pbartok
10777 2004-08-31 12:48 pbartok
10780 - Finished (famous last words)
10782 2004-08-31 04:35 jordi
10784 * ScrollBar.cs: adds autorepeat timer, uses a single timer, fixes
10785 scrolling bugs, adds new methods
10787 2004-08-30 14:42 pbartok
10790 - Implemented CheckBox drawing code
10792 2004-08-30 14:42 pbartok
10795 - Made Redraw() and CheckRedraw() virtual
10796 - Improved mouse up/down/move logic to properly track buttons
10798 2004-08-30 09:44 pbartok
10801 - Updated to fix broken build. Not complete yet.
10803 2004-08-30 09:28 pbartok
10808 2004-08-30 09:17 pbartok
10813 2004-08-27 16:12 ravindra
10815 * ToolBarButton.cs: Added TypeConverter attribute.
10817 2004-08-27 16:07 ravindra
10819 * ImageIndexConverter.cs: Implemented.
10821 2004-08-27 14:17 pbartok
10824 - Removed unneeded stack vars
10825 - First attempt to fix sizing issues when layout is suspended
10827 2004-08-25 15:35 jordi
10829 * ScrollBar.cs: more fixes to scrollbar
10831 2004-08-25 14:04 ravindra
10833 * Theme.cs, ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs:
10834 Added the missing divider code and grip for ToolBar Control.
10836 2004-08-25 13:20 pbartok
10839 - Control now properly passes the ambient background color to child
10842 2004-08-25 13:20 jordi
10844 * ScrollBar.cs: small bug fix regarding bar position
10846 2004-08-25 12:33 pbartok
10849 - Now only calls SetTimer or KillTimer if the enabled state has
10852 2004-08-25 12:33 pbartok
10855 - Fixed timer handling, now seems to work
10856 - Improved error message for window creation
10858 2004-08-25 12:32 pbartok
10861 - Fixed generation of MouseUp message
10863 2004-08-25 12:29 jordi
10865 * ProgressBar.cs, ThemeWin32Classic.cs: new methods, properties,
10866 and fixes for progressbar
10868 2004-08-24 18:43 ravindra
10870 * ThemeWin32Classic.cs, ToolBar.cs: Fixed wrapping related issues
10871 in ToolBar control.
10873 2004-08-24 17:15 pbartok
10877 - Added missing events
10880 2004-08-24 17:14 pbartok
10882 * StatusBar.cs, PictureBox.cs:
10883 - Now uses Control's CreateParams
10885 2004-08-24 16:36 pbartok
10888 - Fixed background color handling
10889 - Fixed sending of enter/leave events on a grab
10891 2004-08-24 16:35 pbartok
10894 - Refined definitions for CrossingEvent
10896 2004-08-24 12:37 jordi
10898 * ScrollBar.cs, Theme.cs, ThemeGtk.cs, ThemeWin32Classic.cs: fixes
10899 formmating, methods signature, and adds missing events
10901 2004-08-24 12:24 jordi
10903 * Control.cs: fire OnEnabledChanged event
10905 2004-08-24 11:17 pbartok
10908 - Implemented SetTimer() and KillTimer()
10910 2004-08-24 11:16 pbartok
10913 - Now uses Remove instead of Add to kill the timer
10915 2004-08-24 10:16 jackson
10917 * PictureBox.cs, Theme.cs, ThemeWin32Classic.cs: Handle drawing
10918 picture boxes in the theme now. Draw picture box borders and obey
10921 2004-08-24 05:49 jackson
10923 * Timer.cs: Remove top secret debugging code
10925 2004-08-24 05:34 jackson
10927 * PictureBox.cs: Temp hack to make picture boxes draw their full
10930 2004-08-24 05:29 jackson
10932 * Timer.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
10933 XplatUIX11.cs: Move timers to the driver level. On X they are
10934 queued by the driver and checked on idle.
10936 2004-08-24 01:07 jackson
10938 * XplatUIX11.cs: Use a queue for async messages instead of passing
10939 them as ClientMessages since that was totally broken. Also simply
10940 check for events and return an idle message if none are found. This
10941 gives us an idle handler, and prevents deadlocking when no messages
10944 2004-08-23 18:19 ravindra
10946 * XplatUIWin32.cs: Removed the unwanted destructor.
10948 2004-08-23 17:27 pbartok
10951 - Finishing touches. Works now, just needs some optimizations.
10953 2004-08-23 16:53 jordi
10955 * ScrollBar.cs: small fix
10957 2004-08-23 16:45 pbartok
10960 - Removed debug output
10963 2004-08-23 16:43 jordi
10965 * ScrollBar.cs: [no log message]
10967 2004-08-23 16:10 pbartok
10970 - Fixed handling of WM_CLOSE message
10971 - Removed debug output
10973 2004-08-23 16:09 pbartok
10976 - Added handling of Idle event
10977 - Added handling of form closing
10978 - Fixed reporting of MessageLoop property
10979 - Removed some unneeded code, should provide a bit of a speedup
10981 2004-08-23 15:22 pbartok
10984 - Added InitLayout() method
10985 - Added code to properly perform layout when Anchor or Dock property
10987 - Changed 'interpretation' of ResumeLayout. MS seems to have a
10988 LAMESPEC, tried to do it in a way that makes sense
10990 2004-08-23 14:10 jordi
10992 * HScrollBar.cs, ScrollBar.cs, TrackBar.cs, VScrollBar.cs: fixes
10993 properties and methods
10995 2004-08-23 13:55 pbartok
10998 - Properly fixed Jordi's last fix
10999 - Now uses Cursor's Position property instead of calling XplatUI
11002 2004-08-23 13:44 jordi
11004 * PaintEventHandler.cs: Adding missing attribute
11006 2004-08-23 13:39 pbartok
11009 - Implemented Position property
11011 2004-08-23 13:39 pbartok
11013 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
11014 - Added method to move mouse cursor
11016 2004-08-23 13:39 pbartok
11019 - Fixed setting of background color
11020 - Added method to move mouse cursor
11022 2004-08-23 13:16 jordi
11024 * Control.cs: avoids null exception
11026 2004-08-22 17:46 jackson
11028 * PictureBox.cs, PictureBoxSizeMode.cs: Initial implementation of
11031 2004-08-22 17:40 jackson
11033 * XplatUIX11.cs: Add some missing locks
11035 2004-08-22 15:10 pbartok
11037 * Control.cs, Form.cs:
11038 - Removed OverlappedWindow style from Control, instead it's default
11040 - Made form windows OverlappedWindow by default
11042 2004-08-22 13:34 jackson
11044 * ScrollBar.cs: Update the position through the Value property so
11045 the OnValueChanged event is raised.
11047 2004-08-22 12:04 pbartok
11050 - Added Cursor.cs and UserControl.cs
11052 2004-08-22 12:03 pbartok
11055 - Started implementation, not usable yet
11057 2004-08-22 12:00 pbartok
11060 - Implemented UserControl (complete)
11062 2004-08-21 19:20 ravindra
11064 * ToolBar.cs: Correcting the formatting mess of VS.NET.
11066 2004-08-21 18:49 ravindra
11068 * ToolBar.cs: Probably this completes the missing attributes in
11071 2004-08-21 18:03 ravindra
11073 * ToolBar.cs, ToolBarButton.cs, ToolBarButtonClickEventArgs.cs:
11074 Fixed toolbar control signatures.
11076 2004-08-21 16:32 pbartok
11081 2004-08-21 16:30 pbartok
11086 2004-08-21 16:19 pbartok
11088 * Control.cs, Label.cs:
11091 2004-08-21 15:57 pbartok
11094 - Added loads of debug output for development
11095 - Fixed typo in method name
11097 2004-08-21 15:52 pbartok
11099 * ToolBarButtonClickEventArgs.cs:
11100 - Added missing base class
11102 2004-08-21 14:53 pbartok
11105 - Updated to match new GrabWindow signature
11107 2004-08-21 14:51 pbartok
11109 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11110 - Added method to get default display size
11112 2004-08-21 14:23 pbartok
11114 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11115 - Added method to query current grab state
11116 - Added argument to allow confining a grab to a window
11118 2004-08-21 14:22 pbartok
11121 - Added [Flags] attribute so that modifiers can be used in bitwise
11124 2004-08-21 14:21 pbartok
11126 * TrackBar.cs, ScrollBar.cs:
11127 - Replaced direct XplatUI calls with their Control counterpart
11129 2004-08-21 13:32 pbartok
11132 - Implemented Created property
11134 2004-08-21 13:28 pbartok
11137 - Implemented ContainsFocus
11139 2004-08-21 13:26 pbartok
11142 - Implemented CausesValidation
11144 2004-08-21 13:21 pbartok
11147 - Implemented CanFocus
11148 - Implemented CanSelect
11149 - Implemented Capture
11151 2004-08-21 12:35 pbartok
11154 - Fixed bug with Async message handling
11155 - Implemented getting the ModifierKeys
11157 2004-08-21 12:32 jackson
11159 * AsyncMethodResult.cs: Make sure we have the mutex before we
11160 release it. Fixes BeginInvoke on windows
11162 2004-08-21 11:31 pbartok
11164 * XplatUIWin32.cs, XplatUIX11.cs:
11165 - Drivers now return proper mouse state
11167 2004-08-21 10:54 jackson
11169 * Control.cs: Implement EndInvoke
11171 2004-08-21 10:48 jackson
11173 * Timer.cs: Remove unneeded finalizer
11175 2004-08-20 19:52 ravindra
11177 * ThemeWin32Classic.cs, ToolBar.cs, ToolBarButton.cs: Improvments
11178 in mouse event handling in the ToolBar control.
11180 2004-08-20 19:50 ravindra
11182 * ImageList.cs: Changed draw method to use the arguments passed in
11185 2004-08-20 18:58 pbartok
11187 * XplatUIStructs.cs:
11188 - Added private message for async communication
11190 2004-08-20 17:38 ravindra
11192 * Control.cs: Made RightToLeft property virtual and removed a
11195 2004-08-20 14:39 jordi
11197 * ThemeGtk.cs: use style_attach
11199 2004-08-20 14:39 pbartok
11202 - Added jackson's Async code from X11 to Win32
11204 2004-08-20 14:09 pbartok
11207 - Added all new files
11209 2004-08-20 14:09 pbartok
11212 - Added call to set window background color
11214 2004-08-20 14:03 pbartok
11216 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
11217 - Added method for setting the window background
11219 2004-08-20 14:02 pbartok
11222 - Added method for setting the background color
11223 - Added handling for erasing the window background
11225 2004-08-20 13:45 jordi
11227 * TrackBar.cs: fixes timer, new properties and methods
11229 2004-08-20 13:34 jackson
11231 * ScrollBar.cs: Use the SWF timer so callbacks are run in the
11234 2004-08-20 13:22 jackson
11236 * Timer.cs: Timer Tick events are now handed through Controls Async
11237 mechanism so the callbacks are executed in the same thread as X
11239 2004-08-20 13:19 jackson
11241 * XplatUIDriver.cs: Expose functionality to send async messages
11244 2004-08-20 13:18 jackson
11246 * Control.cs: Implement Begininvoke
11248 2004-08-20 13:14 jackson
11250 * XplatUI.cs, XplatUIWin32.cs: Expose functionality to send async
11251 messages through the driver
11253 2004-08-20 13:12 jackson
11255 * XplatUIX11.cs: Lock before all X operations. Also added Async
11256 method functionality through XSendEvent
11258 2004-08-20 13:11 jackson
11260 * X11Structs.cs: Use IntPtrs for ClientMessage extra data (TODO:
11261 This will screw up on 64 bit systems)
11263 2004-08-20 13:10 jackson
11265 * AsyncMethodData.cs, AsyncMethodResult.cs: Classes for sending
11266 Async messages through X/Win32
11268 2004-08-19 19:39 pbartok
11271 - Updated code to match new HandleData.DeviceContext type
11273 2004-08-19 19:38 pbartok
11276 - Made DeviceContext a generic object to allow usage from various
11278 - Added support for queueing Windows messages
11280 2004-08-19 19:37 pbartok
11283 - Added generation of MouseEnter, MouseLeave and MouseHover events
11284 - Added cleanup on EndPaint
11286 2004-08-19 19:17 pbartok
11289 - Added handling of WM_MOUSEHOVER
11290 - Worked around 'bug' in Win32 WM_MOUSE_ENTER/WM_MOUSE_LEAVE driver
11293 2004-08-19 18:55 jordi
11295 * ThemeGtk.cs: fixes button order
11297 2004-08-19 18:12 jordi
11299 * Theme.cs, ThemeWin32Classic.cs: fixes methods signature
11301 2004-08-19 17:09 pbartok
11304 - Added Right property
11305 - Added RightToLeft property
11307 2004-08-19 16:27 jordi
11309 * ThemeGtk.cs: experimental GTK theme support
11311 2004-08-19 16:26 jordi
11313 * ITheme.cs, Theme.cs: move themes from an interface to a class
11315 2004-08-19 16:25 jordi
11317 * Control.cs, ScrollBar.cs, ThemeEngine.cs, ThemeWin32Classic.cs:
11320 2004-08-19 16:04 pbartok
11323 - Added colormap basics
11324 - Added a way to re-initialize with a different display handle
11325 - Fixed setting of the window background color
11326 - Added various X11 imports related to colors and colormaps
11328 2004-08-19 15:51 pbartok
11331 - Removed packing hints (Paolo suggested this a while back)
11332 - fixed colormap type
11333 - Added default Atom types
11334 - Added Screen and color structs and enums
11336 2004-08-19 15:39 pbartok
11339 - Added missing Draw() method
11340 - Added missing RecreateHandle event
11342 2004-08-19 15:30 pbartok
11345 - Added handling of WM_CLOSE
11347 2004-08-18 13:16 jordi
11349 * ITheme.cs, ThemeWin32Classic.cs, XplatUIWin32.cs: Move colors to
11352 2004-08-18 09:56 jordi
11354 * ScrollBar.cs: fixes to scrollbar: steps and multiple timers
11356 2004-08-17 15:31 ravindra
11358 * SWF.csproj: Updated project.
11360 2004-08-17 15:25 pbartok
11363 - Drawing improvement; don't call UpdateBounds if we are not visible
11364 (or have been minimized)
11366 2004-08-17 15:24 pbartok
11369 - Finished IsVisible
11370 - Added Win32GetWindowPlacement
11372 2004-08-17 15:08 jackson
11374 * Panel.cs: Initial checkin of the Panel
11376 2004-08-17 14:25 pbartok
11379 - Fixed broken handling of default window sizes
11381 2004-08-17 13:29 jackson
11383 * ThemeWin32Classic.cs: Don't use KnownColor to create colours. It
11384 has a large startup time.
11386 2004-08-17 10:25 jackson
11388 * HandleData.cs: union areas properly
11390 2004-08-17 10:12 jackson
11392 * HandleData.cs: union areas properly
11394 2004-08-16 20:00 ravindra
11396 * ToolBar.cs, ToolBarButton.cs: Added attributes.
11398 2004-08-16 18:48 ravindra
11400 * ToolBar.cs: Added attributes.
11402 2004-08-16 17:17 ravindra
11404 * SWF.csproj: Updated project.
11406 2004-08-16 17:16 jackson
11408 * XplatUIX11.cs: Check for more expose events before sending a
11409 WM_PAINT so they can all be grouped together. This makes dragging a
11410 window across another window redraw in a sane way.
11412 2004-08-16 15:47 pbartok
11415 - Added handling of WM_MOUSE_ENTER & WM_MOUSE_LEAVE to
11416 support OnMouseEnter/Leave()
11417 - Added WS_CLIPSIBLINGS and WS_CLIPCHILDREN window styles to improve
11420 2004-08-16 15:46 pbartok
11422 * XplatUIStructs.cs, XplatUIX11.cs:
11423 - Added WM_MOUSE_ENTER & WM_MOUSE_LEAVE to support
11424 OnMouseEnter/Leave()
11426 2004-08-16 15:34 jackson
11428 * XplatUIX11.cs: Group multiple expose events in HandleData, make
11429 sure messages get the message field set to WM_NULL if they are not
11432 2004-08-16 15:24 jackson
11434 * HandleData.cs: HandleData is used for storing message information
11437 2004-08-15 17:23 ravindra
11439 * ColorDepth.cs: Added attribute.
11441 2004-08-15 17:23 ravindra
11443 * SWF.csproj: Updated project for ToolBar Control.
11445 2004-08-15 17:20 ravindra
11447 * ITheme.cs, ThemeWin32Classic.cs: Changes to Theme for ToolBar
11448 control and also dos2unix format.
11450 2004-08-15 17:13 ravindra
11452 * ToolBar.cs, ToolBarAppearance.cs, ToolBarButton.cs,
11453 ToolBarButtonClickEventArgs.cs,
11454 ToolBarButtonClickEventHandler.cs, ToolBarButtonStyle.cs,
11455 ToolBarTextAlign.cs: First Implementation of ToolBar control.
11457 2004-08-15 15:31 pbartok
11460 - First (mostly) working version
11462 2004-08-13 16:15 pbartok
11465 - Fixed Anchor default
11467 2004-08-13 15:43 pbartok
11470 - Changed GetCursorPos signature
11472 2004-08-13 15:42 pbartok
11474 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs:
11475 - Changed signature for GetCursorPos
11477 2004-08-13 15:25 pbartok
11481 - Fixed resizing/exposure handling
11483 2004-08-13 15:22 jordi
11485 * ThemeWin32Classic.cs: removes redundant code and fixes issues
11488 2004-08-13 14:55 jordi
11490 * TrackBar.cs: change from wndproc to events
11492 2004-08-13 13:00 jordi
11494 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
11495 XplatUIX11.cs: implements PointToClient (ScreenToClient)
11497 2004-08-13 12:53 pbartok
11500 - Changed GetWindowPos to also provide client area size
11501 - Fixed broken prototypes for several win32 functions
11503 2004-08-13 12:53 pbartok
11505 * XplatUI.cs, XplatUIDriver.cs:
11506 - Changed GetWindowPos to also provide client area size
11508 2004-08-13 12:52 pbartok
11511 - Added generation of WM_POSCHANGED
11512 - Changed GetWindowPos to also provide client area size
11514 2004-08-13 12:52 pbartok
11517 - Added Dispose() and destructor
11518 - Fixed resizing and bounds calculation
11520 - Added memory savings for invisible windows
11522 2004-08-13 12:46 jordi
11524 * TrackBar.cs: adds timer and grap window
11526 2004-08-13 10:25 jackson
11528 * Timer.cs: SWF Timer
11530 2004-08-12 16:59 pbartok
11532 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11533 - Implemented method to get current mouse position
11535 2004-08-12 14:29 jordi
11537 * ITheme.cs, ThemeWin32Classic.cs, TrackBar.cs: Trackbar
11538 enhancement, fix mouse problems, highli thumb, etc
11540 2004-08-12 13:31 pbartok
11543 - Fixed Anchoring bugs
11545 2004-08-12 13:01 jackson
11547 * StatusBar.cs: Don't forget things
11549 2004-08-12 12:54 jackson
11551 * ThemeWin32Classic.cs: Handle owner draw status bars
11553 2004-08-12 12:54 jackson
11555 * StatusBar.cs: Implement missing properties, events, and methods.
11556 Handle mouse clicking
11558 2004-08-12 10:19 jackson
11560 * StatusBarPanelClickEventArgs.cs,
11561 StatusBarPanelClickEventHandler.cs: Classes for handling status
11562 bar panel click events
11564 2004-08-12 10:10 jackson
11566 * Control.cs: Add missing properties
11568 2004-08-12 09:46 pbartok
11570 * BindingsManagerBase.cs:
11571 - Name changed to BindingManagerBase.cs
11573 2004-08-12 09:25 jordi
11575 * ScrollableControl.cs: calls ctrlbase instead of exeception
11577 2004-08-11 16:28 pbartok
11579 * InputLanguageChangingEventArgs.cs:
11580 - Never check in before compiling. Fixes the last check-in
11582 2004-08-11 16:26 pbartok
11584 * InputLanguageChangingEventArgs.cs:
11585 - More signature fixes
11587 2004-08-11 16:20 pbartok
11589 * BindingManagerBase.cs, BindingMemberInfo.cs, ContainerControl.cs,
11590 Control.cs, ControlEventArgs.cs, ControlPaint.cs, Form.cs,
11591 ImageListStreamer.cs, InputLanguage.cs,
11592 InputLanguageChangedEventArgs.cs,
11593 InputLanguageChangingEventArgs.cs, Keys.cs, LayoutEventArgs.cs,
11594 LinkArea.cs, Message.cs, MouseEventArgs.cs, NativeWindow.cs,
11595 ScrollEventArgs.cs, ScrollableControl.cs, XplatUI.cs,
11596 XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11599 2004-08-11 16:16 pbartok
11603 - Added .Net 1.1 method
11605 2004-08-11 15:25 pbartok
11608 - Fixed BindingManagerBase.cs filename
11610 2004-08-11 15:22 pbartok
11612 * BindingManagerBase.cs:
11613 - Was checked in with wrong filename
11615 2004-08-11 14:50 pbartok
11620 2004-08-11 13:41 jordi
11622 * XplatUIWin32.cs: Fixes ClientRect
11624 2004-08-11 13:19 pbartok
11626 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
11628 - We had SetWindowPos and MoveWindow to set window positions and
11629 size, removed MoveWindow. We have GetWindowPos, so it made sense to
11630 keep SetWindowPos as matching counterpart
11631 - Added some X11 sanity checking
11633 2004-08-11 12:59 pbartok
11636 - Major cleanup of my SetBounds/SetBoundsCore/UpdateBounds mess
11637 (It seems that SetBounds is just a front for SetBoundsCore and
11638 SetBoundsCore updates the underlying window system and
11639 UpdateBounds is responsible for updating the variables associated
11640 with the Control and sending the events)
11641 - Major cleanup of Size handling; we now have two sizes, client_size
11642 and bounds. Bounds defines the window with decorations, client_size
11645 2004-08-11 12:55 pbartok
11647 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11648 - Added method to calculate difference between decorated window and
11651 2004-08-11 12:54 pbartok
11654 - Forcing redraw on resize
11656 2004-08-11 11:43 pbartok
11659 - Removed disposing of the actual images when the list is disposed
11661 2004-08-11 09:13 pbartok
11664 - Now properly reparents windows
11666 2004-08-11 08:37 pbartok
11671 2004-08-11 07:47 pbartok
11674 - Rewrote the collection stuff. Might not be as fast now, not
11675 keeping the number of children around and accessible directly, but
11676 it's more straightforward
11678 2004-08-11 07:44 pbartok
11680 * AccessibleObject.cs:
11681 - Fixed to match ControlCollection rewrite
11683 2004-08-11 07:43 pbartok
11686 - Added missing creation of the collection list
11688 2004-08-10 20:08 jackson
11690 * StatusBar.cs: Get the paint message from WndProc
11692 2004-08-10 19:31 jackson
11694 * ThemeWin32Classic.cs: Create Brushes as little as possible
11696 2004-08-10 19:20 jackson
11698 * UICues.cs: Add Flags attribute
11700 2004-08-10 19:19 jackson
11702 * StatusBarPanel.cs: Signature cleanup
11704 2004-08-10 19:10 jackson
11706 * StatusBarDrawItemEventArgs.cs, StatusBarDrawItemEventHandler.cs:
11707 Initial implementation of status bar item drawing
11709 2004-08-10 17:27 jordi
11711 * TrackBar.cs: add missing methods, properties, and restructure to
11714 2004-08-10 16:24 jackson
11716 * AccessibleStates.cs, Border3DSide.cs, Border3DStyle.cs,
11717 ButtonState.cs, ControlStyles.cs, DragDropEffects.cs: Add flags
11720 2004-08-10 13:21 jordi
11722 * ITheme.cs, ScrollBar.cs, ThemeWin32Classic.cs: scrollbar
11723 enhancements and standarize on win colors defaults
11725 2004-08-10 12:52 jackson
11727 * DrawItemEventArgs.cs, DrawItemState.cs, ITheme.cs,
11728 ThemeWin32Classic.cs: Implement DrawItem functionality
11730 2004-08-10 12:47 jordi
11732 * XplatUIWin32.cs: Calls InvalidateRect before UpdateWindow
11734 2004-08-10 12:32 jordi
11736 * Control.cs: throw ontextchange event
11738 2004-08-10 11:43 pbartok
11741 - Added more to the still unfinished Dock/Anchor layout code
11743 2004-08-10 11:39 pbartok
11745 * XplatUI.cs, XplatUIDriver.cs, XplatUIX11.cs:
11746 - Added GetWindowPos method
11748 2004-08-10 11:36 pbartok
11751 - Implemented several methods
11753 2004-08-10 09:47 jackson
11755 * TrackBar.cs: Allow control to handle buffering
11757 2004-08-10 09:41 jackson
11759 * ProgressBar.cs, ScrollBar.cs: Allow control to handle buffering
11761 2004-08-10 09:24 jackson
11763 * Label.cs, LinkLabel.cs: Let Control handle buffering.
11765 2004-08-10 09:09 jackson
11767 * StatusBar.cs: Let Control handle all the buffering.
11769 2004-08-10 09:08 jackson
11771 * Control.cs: Control will now handle the buffering code, so each
11772 control does not have to implement this.
11774 2004-08-10 08:34 jackson
11776 * XplatUIDriver.cs: Use default colors from the theme
11778 2004-08-09 17:12 pbartok
11781 - Fixed several bugs Ravindra pointed out
11783 2004-08-09 16:11 pbartok
11786 - Added incomplete dock layout code
11787 - Added support for mouse wheel
11789 2004-08-09 16:09 pbartok
11792 - Added handling for middle and right mousebutton
11793 - Added handling for mouse wheel
11794 - Added handling for key state and mouse state and position
11795 - Now properly generates WM_xBUTTONx messages and WM_MOUSEWHEEL
11798 2004-08-09 15:40 jackson
11800 * StatusBarPanel.cs, StatusBarPanelAutoSize.cs,
11801 StatusBarPanelBorderStyle.cs, StatusBarPanelStyle.cs: Initial
11804 2004-08-09 15:37 jackson
11806 * StatusBar.cs: Initial implementation of StatusBar
11808 2004-08-09 15:36 jackson
11810 * ITheme.cs: Add support for drawing status bar and getting status
11813 2004-08-09 15:35 pbartok
11818 2004-08-09 15:34 jackson
11820 * ThemeWin32Classic.cs: Add support for drawing status bar and get
11821 status bar item sizes
11823 2004-08-09 15:21 jackson
11825 * ThemeWin32Classic.cs: Use known colors for default control
11828 2004-08-09 15:12 jackson
11830 * ThemeWin32Classic.cs: Make the default font static, it is static
11831 in control so this doesn't change functionality and creating fonts
11834 2004-08-09 14:56 pbartok
11837 - Added GrabMode enum
11839 2004-08-09 14:55 pbartok
11841 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11842 - Removed Run method, was only required for initial development
11844 2004-08-09 14:51 pbartok
11846 * XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs, XplatUIX11.cs:
11847 - Implemented GrabWindow/ReleaseWindow methods to allow pointer
11850 2004-08-09 13:48 pbartok
11853 - Fixed default sizing for child windows
11855 2004-08-09 12:56 pbartok
11858 - Added generation of WM_DESTROY message
11859 - Added handling of window manager induced shutdown
11861 2004-08-09 11:31 jackson
11863 * ThemeWin32Classic.cs: New names for control properties
11865 2004-08-09 11:25 jackson
11867 * Control.cs: Use new color names
11869 2004-08-09 11:02 jackson
11871 * XplatUI.cs: Get default window properties from the theme
11873 2004-08-09 11:01 jackson
11875 * ITheme.cs: The theme engine now controls default window
11878 2004-08-09 11:00 jackson
11880 * ThemeWin32Classic.cs: Add default window color properties
11882 2004-08-09 10:17 jackson
11884 * ThemeWin32Classic.cs: Use correct default back color
11886 2004-08-09 10:05 jackson
11888 * XplatUIWin32.cs, XplatUIX11.cs: These properties are handled by
11891 2004-08-09 09:56 jackson
11893 * XplatUI.cs: Remove defaults, these are handled by the theme now.
11895 2004-08-09 09:54 jackson
11897 * Control.cs: Get default properties from the theme.
11899 2004-08-09 09:53 jackson
11901 * ITheme.cs: Themes now handle default control properties
11903 2004-08-09 09:53 jackson
11905 * ThemeWin32Classic.cs: Themes now handle default control
11906 properties so coloring will be consistent
11908 2004-08-08 16:54 jordi
11910 * ITheme.cs, ThemeWin32Classic.cs: Label BorderStyles
11912 2004-08-08 15:08 jordi
11914 * XplatUIX11.cs: fixes keyboard crash
11916 2004-08-08 13:47 jordi
11918 * Label.cs: add cvs header info
11920 2004-08-08 12:09 jackson
11922 * ThemeWin32Classic.cs: Add pen_buttonface
11924 2004-08-08 11:52 jordi
11926 * Label.cs, LinkLabel.cs: [no log message]
11928 2004-08-08 11:34 jordi
11930 * ThemeWin32Classic.cs: Use Windows Standard Colours
11932 2004-08-07 17:32 jordi
11934 * TrackBar.cs: throw exceptions of invalid enums values
11936 2004-08-07 17:31 jordi
11938 * Label.cs, LinkLabel.cs, ThemeWin32Classic.cs: fixes label bug and
11941 2004-08-07 16:56 jackson
11943 * HorizontalAlignment.cs: Initial checkin
11945 2004-08-07 13:16 jordi
11947 * Label.cs, LinkLabel.cs: throw exceptions, fixes events, missing
11950 2004-08-07 13:05 jordi
11952 * ITheme.cs, ThemeWin32Classic.cs: Theme colour support and
11953 GetSysColor defines
11955 2004-08-06 18:01 pbartok
11957 * ThemeWin32Classic.cs:
11958 - Fixed some rounding issues with float/int
11960 2004-08-06 18:00 jackson
11962 * DockStyle.cs, AnchorStyles.cs:
11964 Add flags and serializable attributes.
11966 2004-08-06 17:46 pbartok
11969 - Implemented GetParent
11971 2004-08-06 17:18 pbartok
11974 - Fixed some rounding issues with float/int
11976 2004-08-06 17:17 pbartok
11978 * X11Structs.cs, XplatUIX11.cs:
11979 - Fixed Refresh and Invalidate
11981 2004-08-06 15:30 pbartok
11983 * Control.cs, X11Structs.cs, XplatUIX11.cs:
11984 - Fixed recursive loop when resizing
11985 - Improved/fixed redrawing on expose messages
11987 2004-08-06 09:53 jordi
11989 * Control.cs, X11Structs.cs, XplatUIWin32.cs, XplatUIX11.cs: X11
11990 keyboard navigation
11992 2004-08-06 08:02 pbartok
11994 * X11Structs.cs, XplatUIX11.cs:
11995 - Fixed reparenting
11996 - Fixed window border creation
11998 2004-08-05 15:38 pbartok
12001 - Attempted fix for reparenting problems
12003 2004-08-04 15:14 pbartok
12006 - Fixed Invalidation bug (calculated wrong client area)
12007 - Added ClientSize setter
12009 2004-08-04 15:13 pbartok
12012 - Added AutoScale properties
12014 2004-08-04 15:13 pbartok
12017 - Added latest files
12019 2004-08-04 14:11 pbartok
12021 * Control.cs, XplatUI.cs, XplatUIDriver.cs, XplatUIWin32.cs,
12023 - Added Invalidate handling
12025 2004-08-03 17:09 jordi
12027 * XplatUIDriver.cs: fixes spelling mistake
12029 2004-07-27 09:53 jordi
12031 * TrackBar.cs: fixes trackbar events, def classname, methods
12034 2004-07-27 09:29 jordi
12036 * ScrollBar.cs: fixes scrollbar events
12038 2004-07-27 04:38 jordi
12040 * Control.cs: changes to be able to run winforms samples
12042 2004-07-26 11:42 jordi
12044 * ControlPaint.cs, ITheme.cs, ProgressBar.cs, ScrollBar.cs,
12045 ThemeEngine.cs, ThemeWin32Classic.cs, TrackBar.cs: Theme support
12047 2004-07-26 05:41 jordi
12049 * MessageBox.cs, MessageBoxButtons.cs, MessageBoxDefaultButton.cs,
12050 MessageBoxIcon.cs, MessageBoxOptions.cs: initial messagebox
12053 2004-07-22 09:22 jordi
12055 * LinkLabel.cs, LinkLabelLinkClickedEventHandler.cs: link label:
12056 check link overlapping, implement events, and fixes
12058 2004-07-21 10:28 jordi
12060 * DialogResult.cs, IButtonControl.cs: fixes comments filenames
12062 2004-07-21 10:19 jordi
12064 * DialogResult.cs, IButtonControl.cs, Label.cs, LinkArea.cs,
12065 LinkBehavior.cs, LinkClickedEventArgs.cs, LinkLabel.cs,
12066 LinkLabelLinkClickedEventArgs.cs,
12067 LinkLabelLinkClickedEventHandler.cs, LinkState.cs,
12068 XplatUIWin32.cs, LinkClickedEventHandler.cs: LinkLabel control
12071 2004-07-19 13:09 jordi
12073 * Control.cs, Label.cs: label control re-written: added missing
12074 functionlity, events, and properties
12076 2004-07-19 10:49 jordi
12078 * Control.cs: fixes SetBounds logic
12080 2004-07-19 01:29 jordi
12082 * Control.cs: Call RefreshWindow only if the window has created
12084 2004-07-15 14:05 pbartok
12086 * ColorDepth.cs, ImageList.cs, ImageListStreamer.cs, SWF.csproj:
12087 - Implemented ImageList and ImageList.ImageCollection classes
12088 - Added ColorDepth enumeration
12089 - Updated SWF VS.Net project
12091 2004-07-15 11:06 jordi
12093 * XplatUIStructs.cs: added MsgButons enum
12095 2004-07-15 11:03 jordi
12097 * Control.cs: added basic mouse handeling events
12099 2004-07-15 03:38 jordi
12101 * Orientation.cs, TickStyle.cs, TrackBar.cs: Horizontal and
12102 Vertical TrackBar control implementation
12104 2004-07-13 09:33 jordi
12106 * HScrollBar.cs, VScrollBar.cs: vertical and hort. classes commit
12108 2004-07-13 09:31 jordi
12110 * Control.cs, Form.cs: commit: new properties and fixes form size
12113 2004-07-09 14:13 miguel
12115 * ProgressBar.cs: Spelling
12117 2004-07-09 11:25 pbartok
12120 - Removed usage of Rectangle for drawing. Miguel pointed out it's
12123 2004-07-09 11:17 miguel
12125 * ProgressBar.cs: 2004-07-09 Miguel de Icaza <miguel@ximian.com>
12127 * ProgressBar.cs: Fixed spelling for `block'
12129 drawProgressBar: renamed to `DrawProgressBar' to follow the coding
12132 Avoid using the += on rect.X, that exposed a bug in the compiler.
12134 2004-07-08 23:21 pbartok
12136 * AccessibleObject.cs, AccessibleRole.cs, AccessibleStates.cs,
12137 AnchorStyles.cs, Application.cs, ApplicationContext.cs,
12138 BaseCollection.cs, Binding.cs, BindingContext.cs,
12139 BindingMemberInfo.cs, BindingsCollection.cs,
12140 BindingsManagerBase.cs, Border3DSide.cs, Border3DStyle.cs,
12141 BorderStyle.cs, BoundsSpecified.cs, ButtonBorderStyle.cs,
12142 ButtonState.cs, CaptionButton.cs, CheckBox.cs,
12143 ContainerControl.cs, Control.cs, ControlEventArgs.cs,
12144 ControlEventHandler.cs, ControlPaint.cs, ControlStyles.cs,
12145 ConvertEventArgs.cs, ConvertEventHandler.cs, Copyright,
12146 CreateParams.cs, DockStyle.cs, DragAction.cs, DragDropEffects.cs,
12147 DragEventArgs.cs, DragEventHandler.cs, FlatStyle.cs, Form.cs,
12148 FrameStyle.cs, GiveFeedbackEventArgs.cs,
12149 GiveFeedbackEventHandler.cs, HelpEventArgs.cs,
12150 HelpEventHandler.cs, IContainerControl.cs, IDataObject.cs,
12151 IMessageFilter.cs, IWin32Window.cs, ImeMode.cs, InputLanguage.cs,
12152 InputLanguageChangedEventArgs.cs,
12153 InputLanguageChangedEventHandler.cs,
12154 InputLanguageChangingEventArgs.cs,
12155 InputLanguageChangingEventHandler.cs, InputLanguageCollection.cs,
12156 InvalidateEventArgs.cs, InvalidateEventHandler.cs,
12157 KeyEventArgs.cs, KeyEventHandler.cs, KeyPressEventArgs.cs,
12158 KeyPressEventHandler.cs, Keys.cs, Label.cs, LayoutEventArgs.cs,
12159 LayoutEventHandler.cs, MenuGlyph.cs, Message.cs, MouseButtons.cs,
12160 MouseEventArgs.cs, MouseEventHandler.cs, NativeWindow.cs,
12161 PaintEventArgs.cs, PaintEventHandler.cs, ProgressBar.cs,
12162 QueryAccessibilityHelpEventArgs.cs,
12163 QueryAccessibilityHelpEventHandler.cs,
12164 QueryContinueDragEventArgs.cs, QueryContinueDragEventHandler.cs,
12165 RightToLeft.cs, SWF.csproj, SWF.csproj.user, ScrollBar.cs,
12166 ScrollBars.cs, ScrollButton.cs, ScrollEventArgs.cs,
12167 ScrollEventHandler.cs, ScrollEventType.cs, ScrollableControl.cs,
12168 TODO, TODOAttribute.cs, UICues.cs, UICuesEventArgs.cs,
12169 UICuesEventHandler.cs, X11Structs.cs, XplatUI.cs,
12170 XplatUIDriver.cs, XplatUIStructs.cs, XplatUIWin32.cs,
12171 XplatUIX11.cs, lang.cs: