DesignerSerializationVisibilityAttribute.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // System.ComponentModel.DesignerSerializationVisibilityAttribute.cs
  3. //
  4. // Author:
  5. // Miguel de Icaza ([email protected])
  6. // Andreas Nahr ([email protected])
  7. //
  8. // (C) Ximian, Inc. http://www.ximian.com
  9. // (C) 2003 Andreas Nahr
  10. //
  11. //
  12. namespace System.ComponentModel {
  13. [AttributeUsage (AttributeTargets.Property)]
  14. public sealed class DesignerSerializationVisibilityAttribute : Attribute
  15. {
  16. private DesignerSerializationVisibility visibility;
  17. public static readonly DesignerSerializationVisibilityAttribute Default=
  18. new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Visible);
  19. public static readonly DesignerSerializationVisibilityAttribute Content =
  20. new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Content);
  21. public static readonly DesignerSerializationVisibilityAttribute Hidden =
  22. new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Hidden);
  23. public static readonly DesignerSerializationVisibilityAttribute Visible=
  24. new DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Visible);
  25. public DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility vis)
  26. {
  27. visibility = vis;
  28. }
  29. public DesignerSerializationVisibility Visibility {
  30. get { return visibility; }
  31. }
  32. public override bool Equals (object obj)
  33. {
  34. if (!(obj is DesignerSerializationVisibilityAttribute))
  35. return false;
  36. if (obj == this)
  37. return true;
  38. return ((DesignerSerializationVisibilityAttribute) obj).Visibility == visibility;
  39. }
  40. public override int GetHashCode ()
  41. {
  42. return visibility.GetHashCode ();
  43. }
  44. public override bool IsDefaultAttribute ()
  45. {
  46. return visibility == DesignerSerializationVisibilityAttribute.Default.Visibility;
  47. }
  48. }
  49. }