+2005-02-03 Peter Bartok <pbartok@novell.com>
+
+ * Menu.cs: Added missing attributes
+ * GroupBox.cs: Added missing attributes
+ * Label.cs: Added missing attributes
+ * CheckBox.cs: Implemented CheckBoxAccessibleObject class
+ * ColorDialog.cs:
+ - Added Instance and Options properties
+ - Added missing attributes
+ * Cursor.cs: Made Serializable
+ * NotifyIcon: Added missing attributes
+ * MenuItem.cs: Added missing attributes
+ * TextBoxBase.cs: Implemented AppendText() and Select() methods
+ * Panel.cs: Added Missing attributes
+ * MonthCalendar.cs: Fixed CreateParams
+
2005-02-08 Jordi Mas i Hernandez <jordi@ximian.com>
* LinkLabel.cs:
using System;
using System.ComponentModel;
using System.Drawing;
+using System.Runtime.InteropServices;
namespace System.Windows.Forms {
[DefaultProperty("Checked")]
internal bool three_state;
#endregion // Local Variables
+ #region CheckBoxAccessibleObject Subclass
+ [ComVisible(true)]
+ public class CheckBoxAccessibleObject : ControlAccessibleObject {
+ #region CheckBoxAccessibleObject Local Variables
+ private CheckBox owner;
+ #endregion // CheckBoxAccessibleObject Local Variables
+
+ #region CheckBoxAccessibleObject Constructors
+ public CheckBoxAccessibleObject(Control owner) : base(owner) {
+ this.owner = (CheckBox)owner;
+ }
+ #endregion // CheckBoxAccessibleObject Constructors
+
+ #region CheckBoxAccessibleObject Properties
+ public override string DefaultAction {
+ get {
+ return "Select";
+ }
+ }
+
+ public override AccessibleRole Role {
+ get {
+ return AccessibleRole.CheckButton;
+ }
+ }
+
+ public override AccessibleStates State {
+ get {
+ AccessibleStates retval;
+
+ retval = AccessibleStates.Default;
+
+ if (owner.check_state == CheckState.Checked) {
+ retval |= AccessibleStates.Checked;
+ }
+
+ if (owner.Focused) {
+ retval |= AccessibleStates.Focused;
+ }
+
+ if (owner.CanFocus) {
+ retval |= AccessibleStates.Focusable;
+ }
+
+ return retval;
+ }
+ }
+ #endregion // CheckBoxAccessibleObject Properties
+ }
+ #endregion // CheckBoxAccessibleObject Sub-class
#region Public Constructors
public CheckBox() {
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-// Copyright (c) 2004 Novell, Inc. (http://www.novell.com)
+// Copyright (c) 2004-2005 Novell, Inc. (http://www.novell.com)
//
// Authors:
// Alexander Olk xenomorph2@onlinehome.de
// NOT COMPLETE
+using System.ComponentModel;
+using System.ComponentModel.Design;
using System.Drawing;
using System.Drawing.Drawing2D;
namespace System.Windows.Forms
{
+ [DefaultProperty("Color")]
public class ColorDialog : CommonDialog
{
#region Local Variables
}
}
+ [DefaultValue(true)]
public virtual bool AllowFullOpen
{
get
}
}
- //FIXME: Currently AnyColor internally is always true
+ // Currently AnyColor internally is always true
// Does really anybody use 256 or less colors ???
+ // Naw, cairo only supports 24bit anyway - pdb
+ [DefaultValue(false)]
public virtual bool AnyColor
{
get
}
}
+ [DefaultValue(false)]
public virtual bool FullOpen
{
get
fullOpen = value;
}
}
-
+
+ [Browsable(false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
public int[] CustomColors
{
get
}
}
+ [DefaultValue(false)]
public virtual bool ShowHelp
{
get
}
}
+ [DefaultValue(false)]
public virtual bool SolidColorOnly
{
get
return base.ToString( ) + ", Color: " + Color.ToString( );
}
#endregion // Public Instance Methods
+
+ #region Protected Instance Properties
+ protected virtual IntPtr Instance {
+ get {
+ // MS Internal
+ return (IntPtr)GetHashCode();
+ }
+ }
+
+ protected virtual int Options {
+ get {
+ // MS Internal
+ return 0;
+ }
+ }
+ #endregion // Protected Instance Properties
#region Protected Instance Methods
[MonoTODO]
using System.Runtime.Serialization;
namespace System.Windows.Forms {
+ [Serializable]
public sealed class Cursor : IDisposable, ISerializable {
#region Local Variables
internal IntPtr handle;
//
// TODO:
//
-// Copyright (C) Novell Inc., 2004
+// Copyright (C) Novell Inc., 2004-2005
//
//
using System.Drawing;
using System.ComponentModel;
+using System.ComponentModel.Design;
namespace System.Windows.Forms
{
+ [DefaultProperty("Text")]
+ [DefaultEvent("Enter")]
+ [Designer ("System.Windows.Forms.Design.GroupBoxDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
public class GroupBox : Control
{
private FlatStyle flat_style;
private Rectangle display_rectangle = new Rectangle ();
#region Events
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event EventHandler Click;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event EventHandler DoubleClick;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event KeyEventHandler KeyDown;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event KeyPressEventHandler KeyPress;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event KeyEventHandler KeyUp;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event MouseEventHandler MouseDown;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event EventHandler MouseEnter;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event EventHandler MouseLeave;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event MouseEventHandler MouseMove;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event MouseEventHandler MouseUp;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new event EventHandler TabStopChanged;
#endregion Events
}
#region Public Properties
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public override bool AllowDrop {
get { return base.AllowDrop; }
set { base.AllowDrop = value; }
}
}
+ [DefaultValue(FlatStyle.Standard)]
public FlatStyle FlatStyle {
get { return flat_style; }
set {
}
}
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
public new bool TabStop {
get { return base.TabStop; }
set { base.TabStop = value; }
}
+ [Localizable(true)]
public override string Text {
get { return base.Text; }
set {
// INCOMPLETE
+using System.ComponentModel;
+using System.ComponentModel.Design;
using System.Drawing;
using System.Drawing.Text;
using System.Drawing.Imaging;
-using System.ComponentModel;
+using System.Runtime.InteropServices;
namespace System.Windows.Forms
{
- public class Label : Control
+ [DefaultProperty("Text")]
+ [Designer ("System.Windows.Forms.Design.LabelDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
+ public class Label : Control
{
private BorderStyle border_style;
private bool autosize;
#region Events
public event EventHandler AutoSizeChanged;
- public new event EventHandler BackgroundImageChanged;
- public new event EventHandler ImeModeChanged; \r
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public new event EventHandler BackgroundImageChanged;
+\r
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public new event EventHandler ImeModeChanged; \r
+\r
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new event KeyEventHandler KeyDown; \r
+\r
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new event KeyPressEventHandler KeyPress; \r
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new event KeyEventHandler KeyUp;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new event EventHandler TabStopChanged;
- public event EventHandler TextAlignChanged;
+
+ public event EventHandler TextAlignChanged;
#endregion
public Label ()
}
#region Public Properties
-
+ [DefaultValue(false)]
+ [Localizable(true)]
+ [RefreshProperties(RefreshProperties.All)]
public virtual bool AutoSize {
get { return autosize; }
set {
}
}
- public override Image BackgroundImage {
+ [Browsable(false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public override Image BackgroundImage {
get {
return base.BackgroundImage;
}
}
}
+ [DefaultValue(BorderStyle.None)]
+ [DispId(-504)]
public virtual BorderStyle BorderStyle {
get {
return border_style;
get {return ThemeEngine.Current.LabelDefaultSize;}
}
- public FlatStyle FlatStyle {
+ [DefaultValue(FlatStyle.Standard)]
+ public FlatStyle FlatStyle {
get {
return flat_style;
}
}
}
+ [Localizable(true)]
public Image Image {
get {
return image;
}
}
+ [DefaultValue(ContentAlignment.MiddleCenter)]
+ [Localizable(true)]
public ContentAlignment ImageAlign {
get {
return image_align;
}
}
- public int ImageIndex {
+ [DefaultValue (-1)]
+ [Editor ("System.Windows.Forms.Design.ImageIndexEditor, " + Consts.AssemblySystem_Design, typeof (System.Drawing.Design.UITypeEditor))]
+ [Localizable (true)]
+ [TypeConverter (typeof (ImageIndexConverter))]
+ public int ImageIndex {
get { return image_index;}
set {
}
}
+ [DefaultValue(null)]
public ImageList ImageList {
get { return image_list;}
set {
}
}
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new ImeMode ImeMode {
get { return base.ImeMode; }
set {
}
}
- public virtual int PreferredHeight {
+ [Browsable(false)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
+ public virtual int PreferredHeight {
get { return preferred_height; }
}
- public virtual int PreferredWidth {
+ [Browsable(false)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]
+ [EditorBrowsable(EditorBrowsableState.Advanced)]
+ public virtual int PreferredWidth {
get {return preferred_width; }
}
set { render_transparent = value;}
}
\r
+ [Browsable(false)]
+ [DefaultValue(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public new bool TabStop {
get { return base.TabStop; }
set {
}
}
- public virtual ContentAlignment TextAlign {
+ [DefaultValue(ContentAlignment.TopLeft)]
+ [Localizable(true)]
+ public virtual ContentAlignment TextAlign {
get { return text_align; }
set {
}
}
- public bool UseMnemonic {
+ [DefaultValue(true)]
+ public bool UseMnemonic {
get { return use_mnemonic; }
set {
if (use_mnemonic != value) {
using System.Collections;
using System.ComponentModel;
+using System.ComponentModel.Design;
+using System.Reflection;
+using System.Runtime.InteropServices;
namespace System.Windows.Forms
{
+ [Designer ("System.Windows.Forms.Design.MenuDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
+ [ToolboxItemFilter("System.Windows.Forms", ToolboxItemFilterType.Allow)]
+ [ListBindable(false)]
public abstract class Menu : Component
{
internal MenuItemCollection menu_items;
#region Public Properties
+ [BrowsableAttribute(false)]
+ [EditorBrowsableAttribute(EditorBrowsableState.Advanced)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]
public IntPtr Handle {
get {
if (IsDirty && creating == false) {
}
}
+ [BrowsableAttribute(false)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]
public virtual bool IsParent {
get {
if (menu_items != null && menu_items.Count > 0)
}
}
+ [BrowsableAttribute(false)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]
public MenuItem MdiListItem {
get {
throw new NotImplementedException ();
}
}
+ [BrowsableAttribute(false)]
+ [DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]
+ [MergableProperty(false)]
public MenuItemCollection MenuItems {
get { return menu_items; }
}
#endregion Private Methods
+ [ListBindable(false)]
public class MenuItemCollection : IList, ICollection, IEnumerable
{
private Menu owner;
// NOT COMPLETE
-using System.ComponentModel;
using System.Collections;
+using System.ComponentModel;
+using System.ComponentModel.Design;
using System.Drawing;
using System.Drawing.Text;
namespace System.Windows.Forms
{
+ [DefaultProperty("Text")]
+ [DefaultEvent("Click")]
+ [DesignTimeVisible(false)]
+ [ToolboxItem(false)]
public class MenuItem : Menu
{
internal Menu parent_menu = null;
#region Public Properties
+ [Browsable(false)]
+ [DefaultValue(false)]
public bool BarBreak {
get { return break_; }
set { break_ = value; }
}
+ [Browsable(false)]
+ [DefaultValue(false)]
public bool Break {
get { return bar_break; }
set { bar_break = value; }
}
+ [DefaultValue(false)]
public bool Checked {
get { return checked_; }
set { checked_ = value; }
}
+ [DefaultValue(false)]
public bool DefaultItem {
get { return defaut_item; }
set { defaut_item = value; }
}
+ [DefaultValue(true)]
+ [Localizable(true)]
public bool Enabled {
get { return enabled; }
set { enabled = value; }
}
+ [Browsable(false)]
public int Index {
get { return index; }
set { index = value; }
}
+ [Browsable(false)]
public override bool IsParent {
get { return IsPopup; }
}
+ [DefaultValue(false)]
public bool MdiList {
get { return mdilist; }
set { mdilist = value; }
get { return menuid; }
}
+ [DefaultValue(0)]
public int MergeOrder {
get { return mergeorder; }
set { mergeorder = value; }
}
+ [DefaultValue(MenuMerge.Add)]
public MenuMerge MergeType {
get { return mergetype; }
set {
}
}
+ [Browsable(false)]
public char Mnemonic {
get { return mnemonic; }
}
+ [DefaultValue(false)]
public bool OwnerDraw {
get { return ownerdraw; }
set { ownerdraw = value; }
}
+ [Browsable(false)]
public Menu Parent {
get { return parent_menu;}
}
+ [DefaultValue(false)]
public bool RadioCheck {
get { return radiocheck; }
set { radiocheck = value; }
}
+ [DefaultValue(Shortcut.None)]
+ [Localizable(true)]
public Shortcut Shortcut {
get { return shortcut;}
set {
}
}
+ [DefaultValue(true)]
+ [Localizable(true)]
public bool ShowShortcut {
get { return showshortcut;}
set { showshortcut = value; }
}
+ [Localizable(true)]
public string Text {
get { return text; }
set {
}
}
+ [DefaultValue(true)]
+ [Localizable(true)]
public bool Visible {
get { return visible;}
set { visible = value; }
} else {
CreateParams cp = base.CreateParams;
cp.Style = unchecked ((int)(WindowStyles.WS_POPUP | WindowStyles.WS_VISIBLE | WindowStyles.WS_CLIPSIBLINGS | WindowStyles.WS_CLIPCHILDREN));
- cp.ExStyle |= (int)WindowStyles.WS_EX_TOOLWINDOW;
+ cp.ExStyle |= (int)(WindowStyles.WS_EX_TOOLWINDOW | WindowStyles.WS_EX_TOPMOST);
return cp;
}
}
// NOT COMPLETE
using System;
+using System.ComponentModel;
+using System.ComponentModel.Design;
using System.Drawing;
namespace System.Windows.Forms {
+ [DefaultProperty("Text")]
+ [DefaultEvent("MouseDown")]
+ [Designer ("System.Windows.Forms.Design.NotifyIconDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
+ [ToolboxItemFilter("System.Windows.Forms", ToolboxItemFilterType.Allow)]
public sealed class NotifyIcon : System.ComponentModel.Component {
#region Local Variables
private ContextMenu context_menu;
#endregion // Private Methods
#region Public Instance Properties
+ [DefaultValue(null)]
public ContextMenu ContextMenu {
get {
return context_menu;
}
}
+ [Localizable(true)]
+ [DefaultValue(null)]
public Icon Icon {
get {
return icon;
}
}
+ [Localizable(true)]
public string Text {
get {
return text;
}
}
+ [Localizable(true)]
+ [DefaultValue(false)]
public bool Visible {
get {
return visible;
#endregion // Protected Instance Methods
#region Events
+ [Category]
public event EventHandler Click;
+
+ [Category]
public event EventHandler DoubleClick;
+
public event MouseEventHandler MouseDown;
public event MouseEventHandler MouseMove;
public event MouseEventHandler MouseUp;
// NOT COMPLETE
using System;
+using System.ComponentModel;
+using System.ComponentModel.Design;
using System.Drawing;
+using System.Runtime.InteropServices;
namespace System.Windows.Forms {
-
+ [DefaultProperty("BorderStyle")]
+ [DefaultEvent("Paint")]
+ [Designer ("System.Windows.Forms.Design.PanelDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
public class Panel : ScrollableControl {
private BorderStyle border_style;
#endregion // Constructors & Destructors
#region Public Instance Properties
+ [DefaultValue(null)]
+ [DispId(-504)]
public BorderStyle BorderStyle {
get { return border_style; }
set {
}
}
+ [DefaultValue(false)]
public new bool TabStop {
get { return base.TabStop; }
set {
}
}
+ [Bindable(false)]
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public override string Text {
get { return base.Text; }
set {
#endregion // Protected Instance Methods
#region Events
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public event KeyEventHandler KeyDown;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public event KeyPressEventHandler KeyPress;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
public event KeyEventHandler KeyUp;
+
+ [Browsable(false)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public event EventHandler TextChanged;
#endregion
}
}
#region Public Instance Methods
public void AppendText(string text) {
- // FIXME
- throw new NotImplementedException();
+
+ if (multiline) {
+ string[] lines;
+ int linecount;
+
+ // Break the string into separate lines
+ lines = text.Split(new char[] {'\n'});
+ linecount = lines.Length;
+ for (int i = 0; i < linecount; i++) {
+ if (lines[i].EndsWith("\r")) {
+ lines[i] = lines[i].Substring(0, lines[i].Length - 1);
+ }
+ }
+
+ // Grab the formatting for the last element
+ document.MoveCaret(CaretDirection.CtrlEnd);
+
+ // Insert the first line
+ document.InsertString(document.CaretLine, document.CaretPosition, lines[0]);
+
+ for (int i = 1; i < linecount; i++) {
+ document.Add(document.CaretLine.LineNo+i, CaseAdjust(lines[i]), alignment, document.CaretTag.font, document.CaretTag.color);
+ }
+
+ document.RecalculateDocument(CreateGraphics());
+ document.MoveCaret(CaretDirection.CtrlEnd);
+ Invalidate();
+ } else {
+ document.MoveCaret(CaretDirection.CtrlEnd);
+ document.InsertStringAtCaret(text, true);
+ Invalidate();
+ }
+ OnTextChanged(EventArgs.Empty);
}
public void Clear() {
}
public void Select(int start, int length) {
- // FIXME
- throw new NotImplementedException();
+ SelectionStart = start;
+ SelectionLength = length;
}