- Added ActiveMdiChild method
[mono.git] / mcs / class / System.Windows.Forms / Gtk / ContainerControl.cs
1 //
2 // System.Windows.Forms.ContainerControl.cs
3 //
4 // Author:
5 //   Miguel de Icaza (miguel@ximian.com)
6 //   stubbed out by Jaak Simm (jaaksimm@firm.ee)
7 //   Dennis Hayes (dennish@Raytek.com)
8 //   WINELib implementation started by John Sohn (jsohn@columbus.rr.com)
9 //
10 // (C) Ximian, Inc., 2002/3
11 //
12
13 using System.ComponentModel;
14 using System.Drawing;
15
16 namespace System.Windows.Forms {
17
18         /// <summary>
19         /// Provides focus management functionality for controls that can function as a container for other controls.
20         /// </summary>
21
22         public class ContainerControl : ScrollableControl, IContainerControl {
23
24                 public ContainerControl () : base () 
25                 {
26                         //controlStyles_ |= ControlStyles.ContainerControl;
27                 }
28                 
29                 
30                 public Control ActiveControl {
31                         get {
32                                 throw new NotImplementedException ();
33                         }
34                         set { 
35                                 //FIXME:
36                         }
37                 }
38                 
39                 //Compact Framework
40                 [MonoTODO]
41                 // not ready for BindingContext
42                 public override BindingContext BindingContext {
43                         get {
44                                 throw new NotImplementedException ();
45                         }
46                         set {
47                                 //fixme:
48                         }
49                 }
50                 
51                 protected override CreateParams CreateParams {
52                         get { return base.CreateParams; }
53                 }
54                 
55                 [MonoTODO]
56                 public Form ParentForm {
57                         get { throw new NotImplementedException (); }
58                 }
59                 
60                 /// --- Methods ---
61                 /// internal .NET framework supporting methods, not stubbed out:
62                 /// - protected virtual void UpdateDefaultButton()
63
64                 protected override void AdjustFormScrollbars (
65                         bool displayScrollbars) 
66                 {
67                         //FIXME:
68                         base.AdjustFormScrollbars (displayScrollbars);
69                 }
70                 
71                 protected override void Dispose (bool disposing) 
72                 {
73                         //FIXME
74                         base.Dispose(disposing);
75                 }
76                 
77                 [MonoTODO]
78                 // not memeber?
79                 bool IContainerControl.ActivateControl(Control control) 
80                 {
81                         throw new NotImplementedException ();
82                 }
83                 
84                 // [event methods]
85                 protected override void OnControlRemoved (ControlEventArgs e) 
86                 {
87                         //FIXME:
88                         base.OnControlRemoved (e);
89                 }
90                 
91                 protected override void OnCreateControl ()
92                 {
93                         //FIXME:
94                         base.OnCreateControl ();
95                 }
96                 // end of [event methods]
97                 
98                 [MonoTODO]
99                 protected override bool ProcessDialogChar (char charCode) 
100                 {
101                         //FIXME:
102                         return base.ProcessDialogChar(charCode);
103                 }
104                 
105                 [MonoTODO]
106                 protected override bool ProcessDialogKey (Keys keyData) 
107                 {
108                         if ( keyData == Keys.Tab ) {
109                                 return ProcessTabKey ( Control.ModifierKeys != Keys.Shift );
110                         }
111                         return base.ProcessDialogKey(keyData);
112                 }
113                 
114                 [MonoTODO]
115                 protected override bool ProcessMnemonic (char charCode) 
116                 {
117                         //FIXME:
118                         return base.ProcessMnemonic(charCode);
119                 }
120                 
121                 [MonoTODO]
122                 protected virtual bool ProcessTabKey ( bool forward ) 
123                 {
124                         /*Control newFocus = getNextFocusedControl ( this, forward );
125                         if ( newFocus != null )
126                                 return newFocus.Focus ( );*/
127                         return false;
128                 }
129                 
130                 // Not an overridden function?
131                 protected override void Select(bool directed,bool forward) 
132                 {
133                         base.Select(directed, forward);
134                 }
135
136                 protected virtual void UpdateDefaultButton() {
137                         
138                 }
139         
140                 [MonoTODO]
141                 public bool Validate () 
142                 {
143                         throw new NotImplementedException ();
144                 }
145                 
146                 protected override void WndProc(ref Message m) 
147                 {
148                         //FIXME:
149                         base.WndProc(ref m);
150                 }
151         }
152 }