Panel.cs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. // Permission is hereby granted, free of charge, to any person obtaining
  2. // a copy of this software and associated documentation files (the
  3. // "Software"), to deal in the Software without restriction, including
  4. // without limitation the rights to use, copy, modify, merge, publish,
  5. // distribute, sublicense, and/or sell copies of the Software, and to
  6. // permit persons to whom the Software is furnished to do so, subject to
  7. // the following conditions:
  8. //
  9. // The above copyright notice and this permission notice shall be
  10. // included in all copies or substantial portions of the Software.
  11. //
  12. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  13. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  14. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  15. // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  16. // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  17. // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  18. // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  19. //
  20. // Copyright (c) 2004 Novell, Inc.
  21. //
  22. // Authors:
  23. // Jackson Harper ([email protected])
  24. //
  25. // NOT COMPLETE
  26. using System;
  27. using System.ComponentModel;
  28. using System.ComponentModel.Design;
  29. using System.Drawing;
  30. using System.Runtime.InteropServices;
  31. namespace System.Windows.Forms {
  32. [DefaultProperty("BorderStyle")]
  33. [DefaultEvent("Paint")]
  34. [Designer ("System.Windows.Forms.Design.PanelDesigner, " + Consts.AssemblySystem_Design, typeof (IDesigner))]
  35. public class Panel : ScrollableControl {
  36. private BorderStyle border_style;
  37. #region Constructors & Destructors
  38. public Panel () {
  39. base.TabStop = false;
  40. SetStyle(ControlStyles.Selectable, false);
  41. }
  42. #endregion // Constructors & Destructors
  43. #region Public Instance Properties
  44. [DefaultValue(null)]
  45. [DispId(-504)]
  46. public BorderStyle BorderStyle {
  47. get { return border_style; }
  48. set {
  49. if (value == border_style)
  50. return;
  51. border_style = value;
  52. Refresh ();
  53. }
  54. }
  55. [DefaultValue(false)]
  56. public new bool TabStop {
  57. get { return base.TabStop; }
  58. set {
  59. if (value == TabStop)
  60. return;
  61. base.TabStop = value;
  62. }
  63. }
  64. [Bindable(false)]
  65. [Browsable(false)]
  66. [EditorBrowsable(EditorBrowsableState.Never)]
  67. public override string Text {
  68. get { return base.Text; }
  69. set {
  70. if (value == Text)
  71. return;
  72. base.Text = value;
  73. Refresh ();
  74. }
  75. }
  76. #endregion // Public Instance Properties
  77. #region Protected Instance Properties
  78. protected override CreateParams CreateParams {
  79. get {
  80. return base.CreateParams;
  81. }
  82. }
  83. protected override Size DefaultSize {
  84. get { return ThemeEngine.Current.PanelDefaultSize; }
  85. }
  86. #endregion // Proteced Instance Properties
  87. #region Public Instance Methods
  88. public override string ToString ()
  89. {
  90. return base.ToString () + ", BorderStyle: " + BorderStyle;
  91. }
  92. #endregion // Public Instance Methods
  93. #region Protected Instance Methods
  94. protected override void OnResize(EventArgs e) {
  95. base.OnResize (e);
  96. }
  97. #endregion // Protected Instance Methods
  98. #region Events
  99. [Browsable(false)]
  100. [EditorBrowsable(EditorBrowsableState.Never)]
  101. public event KeyEventHandler KeyDown;
  102. [Browsable(false)]
  103. [EditorBrowsable(EditorBrowsableState.Never)]
  104. public event KeyPressEventHandler KeyPress;
  105. [Browsable(false)]
  106. [EditorBrowsable(EditorBrowsableState.Never)]
  107. public event KeyEventHandler KeyUp;
  108. [Browsable(false)]
  109. [EditorBrowsable(EditorBrowsableState.Never)]
  110. public event EventHandler TextChanged;
  111. #endregion
  112. }
  113. }