* MessageBox.cs: added mostly complete implementation of the
[mono.git] / mcs / class / System.Windows.Forms / System.Windows.Forms / Form.cs
1 //\r
2 // System.Windows.Forms.Form\r
3 //\r
4 // Author:\r
5 //   Miguel de Icaza (miguel@ximian.com)\r
6 //   stubbed out by Daniel Carrera (dcarrera@math.toronto.edu)\r
7 //      Dennis Hayes (dennish@raytek.com)\r
8 //   WINELib implementation started by John Sohn (jsohn@columbus.rr.com)\r
9 //\r
10 // (C) 2002 Ximian, Inc\r
11 //\r
12 \r
13 using System;\r
14 using System.Drawing;\r
15 using System.ComponentModel;\r
16 using System.Collections;\r
17 \r
18 namespace System.Windows.Forms {\r
19 \r
20         public class Form : ContainerControl  {\r
21 \r
22                 string caption;\r
23 \r
24                 public Form () : base ()\r
25                 {\r
26 \r
27                 }\r
28                 \r
29                 static Form ()\r
30                 {\r
31 \r
32                 }\r
33                 \r
34                 //  --- Public Properties\r
35                 //\r
36                 [MonoTODO]\r
37                 public IButtonControl AcceptButton {\r
38                         get {\r
39                                 throw new NotImplementedException ();\r
40                         }\r
41                         set {\r
42                                 throw new NotImplementedException ();\r
43                         }\r
44                 }\r
45 \r
46                 [MonoTODO]\r
47                 public static Form ActiveForm {\r
48                         get {\r
49                                 throw new NotImplementedException ();\r
50                         }\r
51                 }\r
52 \r
53                 [MonoTODO]\r
54                 public Form ActiveMdiChild {\r
55                         get {\r
56                                 throw new NotImplementedException ();\r
57                         }\r
58                 }\r
59 \r
60                 [MonoTODO]\r
61                 public bool AutoScale {\r
62                         get {\r
63                                 throw new NotImplementedException ();\r
64                         }\r
65                         set {\r
66                                 throw new NotImplementedException ();\r
67                         }\r
68                 }\r
69 \r
70                 [MonoTODO]\r
71                 public virtual Size AutoScaleBaseSize {\r
72                         get {\r
73                                 throw new NotImplementedException ();\r
74                         }\r
75                         set {\r
76                                 throw new NotImplementedException ();\r
77                         }\r
78                 }\r
79 \r
80                 [MonoTODO]\r
81                 public override bool AutoScroll {\r
82                         get {\r
83                                 throw new NotImplementedException ();\r
84                         }\r
85                         set {\r
86                                 throw new NotImplementedException ();\r
87                         }\r
88                 }\r
89 \r
90                 [MonoTODO]\r
91                 public override Color BackColor {\r
92                         get {\r
93                                 throw new NotImplementedException ();\r
94                         }\r
95                         set {\r
96                                 throw new NotImplementedException ();\r
97                         }\r
98                 }\r
99 \r
100                 [MonoTODO]\r
101                 public IButtonControl CancelButton {\r
102                         get {\r
103                                 throw new NotImplementedException ();\r
104                         }\r
105                         set {\r
106                                 throw new NotImplementedException ();\r
107                         }\r
108                 }\r
109 \r
110                 [MonoTODO]\r
111                 public new Size ClientSize {\r
112                         get {\r
113                                 throw new NotImplementedException ();\r
114                         }\r
115                         set {\r
116                                 throw new NotImplementedException ();\r
117                         }\r
118                 }\r
119 \r
120                 [MonoTODO]\r
121                 public bool ControlBox {\r
122                         get {\r
123                                 throw new NotImplementedException ();\r
124                         }\r
125                         set {\r
126                                 throw new NotImplementedException ();\r
127                         }\r
128                 }\r
129 \r
130                 [MonoTODO]\r
131                 public Rectangle DesktopBounds {\r
132                         get {\r
133                                 throw new NotImplementedException ();\r
134                         }\r
135                         set {\r
136                                 throw new NotImplementedException ();\r
137                         }\r
138                 }\r
139 \r
140                 [MonoTODO]\r
141                 public Point DesktopLocation {\r
142                         get {\r
143                                 throw new NotImplementedException ();\r
144                         }\r
145                         set {\r
146                                 throw new NotImplementedException ();\r
147                         }\r
148                 }\r
149 \r
150                 [MonoTODO]\r
151                 public DialogResult DialogResult {\r
152                         get {\r
153                                 throw new NotImplementedException ();\r
154                         }\r
155                         set {\r
156                                 throw new NotImplementedException ();\r
157                         }\r
158                 }\r
159 \r
160                 [MonoTODO]\r
161                 public FormBorderStyle FormBorderStyle {\r
162                         get {\r
163                                 throw new NotImplementedException ();\r
164                         }\r
165                         set {\r
166                                 throw new NotImplementedException ();\r
167                         }\r
168                 }\r
169 \r
170                 [MonoTODO]\r
171                 public bool HelpButton {\r
172                         get {\r
173                                 throw new NotImplementedException ();\r
174                         }\r
175                         set {\r
176                                 throw new NotImplementedException ();\r
177                         }\r
178                 }\r
179 \r
180                 [MonoTODO]\r
181                 // Icon class not yet stubbed/implemented\r
182                 //public Icon Icon {\r
183                 //       get {\r
184                 //               throw new NotImplementedException ();\r
185                 //       }\r
186                 //       set {\r
187                 //               throw new NotImplementedException ();\r
188                 //       }\r
189                 //}\r
190 \r
191                 [MonoTODO]\r
192                 public bool IsMidiChild {\r
193                         get {\r
194                                 throw new NotImplementedException ();\r
195                         }\r
196                         set {\r
197                                 throw new NotImplementedException ();\r
198                         }\r
199                 }\r
200 \r
201                 [MonoTODO]\r
202                 public bool IsMidiContainer {\r
203                         get {\r
204                                 throw new NotImplementedException ();\r
205                         }\r
206                         set {\r
207                                 throw new NotImplementedException ();\r
208                         }\r
209                 }\r
210 \r
211                 [MonoTODO]\r
212                 public bool KeyPreview {\r
213                         get {\r
214                                 throw new NotImplementedException ();\r
215                         }\r
216                         set {\r
217                                 throw new NotImplementedException ();\r
218                         }\r
219                 }\r
220 \r
221                 [MonoTODO]\r
222                 public bool MaximizeBox {\r
223                         get {\r
224                                 throw new NotImplementedException ();\r
225                         }\r
226                         set {\r
227                                 throw new NotImplementedException ();\r
228                         }\r
229                 }\r
230 \r
231                 [MonoTODO]\r
232                 public Size MaximumSize {\r
233                         get {\r
234                                 throw new NotImplementedException ();\r
235                         }\r
236                         set {\r
237                                 throw new NotImplementedException ();\r
238                         }\r
239                 }\r
240 \r
241                 [MonoTODO]\r
242                 public Form[] MdiChildren {\r
243                         get {\r
244                                 throw new NotImplementedException ();\r
245                         }\r
246                         set {\r
247                                 throw new NotImplementedException ();\r
248                         }\r
249                 }\r
250 \r
251                 [MonoTODO]\r
252                 public Form MdiParent {\r
253                         get {\r
254                                 throw new NotImplementedException ();\r
255                         }\r
256                         set {\r
257                                 throw new NotImplementedException ();\r
258                         }\r
259                 }\r
260 \r
261                 [MonoTODO]\r
262                 //public MainMenu Menu {\r
263                 //      get {\r
264                 //              throw new NotImplementedException ();\r
265                 //      }\r
266                 //      set {\r
267                 //              throw new NotImplementedException ();\r
268                 //      }\r
269                 //}\r
270 \r
271                 [MonoTODO]\r
272                 //public MainMenu MergedMenu {\r
273                 //      get {\r
274                 //              throw new NotImplementedException ();\r
275                 //      }\r
276                 //}\r
277 \r
278                 [MonoTODO]\r
279                 public bool MinimizeBox {\r
280                         get {\r
281                                 throw new NotImplementedException ();\r
282                         }\r
283                         set {\r
284                                 throw new NotImplementedException ();\r
285                         }\r
286                 }\r
287 \r
288                 [MonoTODO]\r
289                 public Size MinimumSize {\r
290                         get {\r
291                                 throw new NotImplementedException ();\r
292                         }\r
293                         set {\r
294                                 throw new NotImplementedException ();\r
295                         }\r
296                 }\r
297 \r
298                 [MonoTODO]\r
299                 public bool Modal {\r
300                         get {\r
301                                 throw new NotImplementedException ();\r
302                         }\r
303                 }\r
304 \r
305                 [MonoTODO]\r
306                 public double Opacity {\r
307                         get {\r
308                                 throw new NotImplementedException ();\r
309                         }\r
310                         set {\r
311                                 throw new NotImplementedException ();\r
312                         }\r
313                 }\r
314 \r
315                 [MonoTODO]\r
316                 public Form[] OwnedForms {\r
317                         get {\r
318                                 throw new NotImplementedException ();\r
319                         }\r
320                 }\r
321 \r
322                 [MonoTODO]\r
323                 public Form Owner {\r
324                         get {\r
325                                 throw new NotImplementedException ();\r
326                         }\r
327                         set {\r
328                                 throw new NotImplementedException ();\r
329                         }\r
330                 }\r
331 \r
332                 [MonoTODO]\r
333                 public bool ShowInTaskbar {\r
334                         get {\r
335                                 throw new NotImplementedException ();\r
336                         }\r
337                         set {\r
338                                 throw new NotImplementedException ();\r
339                         }\r
340                 }\r
341 \r
342                 [MonoTODO]\r
343                 public override ISite Site {\r
344                         get {\r
345                                 throw new NotImplementedException ();\r
346                         }\r
347                         set {\r
348                                 throw new NotImplementedException ();\r
349                         }\r
350                 }\r
351 \r
352                 [MonoTODO]\r
353                 public SizeGripStyle SizeGripStyle {\r
354                         get {\r
355                                 throw new NotImplementedException ();\r
356                         }\r
357                         set {\r
358                                 throw new NotImplementedException ();\r
359                         }\r
360                 }\r
361 \r
362                 [MonoTODO]\r
363                 public FormStartPosition StartPosition {\r
364                         get {\r
365                                 throw new NotImplementedException ();\r
366                         }\r
367                         set {\r
368                                 throw new NotImplementedException ();\r
369                         }\r
370                 }\r
371 \r
372                 [MonoTODO]\r
373                 public bool TopLevel {\r
374                         get {\r
375                                 throw new NotImplementedException ();\r
376                         }\r
377                         set {\r
378                                 throw new NotImplementedException ();\r
379                         }\r
380                 }\r
381 \r
382                 [MonoTODO]\r
383                 public bool TopMost {\r
384                         get {\r
385                                 throw new NotImplementedException ();\r
386                         }\r
387                         set {\r
388                                 throw new NotImplementedException ();\r
389                         }\r
390                 }\r
391 \r
392                 [MonoTODO]\r
393                 public Color TransparencyKey {\r
394                         get {\r
395                                 throw new NotImplementedException ();\r
396                         }\r
397                         set {\r
398                                 throw new NotImplementedException ();\r
399                         }\r
400                 }\r
401 \r
402                 [MonoTODO]\r
403                 public FormWindowState WindowState {\r
404                         get {\r
405                                 throw new NotImplementedException ();\r
406                         }\r
407                         set {\r
408                                 throw new NotImplementedException ();\r
409                         }\r
410                 }\r
411 \r
412                 \r
413                 //  --- Public Methods\r
414                 public void Activate ()\r
415                 {\r
416                         Win32.SetActiveWindow (window.Handle);\r
417                 }\r
418 \r
419                 [MonoTODO]\r
420                 public void AddOwnedForm (Form ownedForm)\r
421                 {\r
422                         throw new NotImplementedException ();\r
423                 }\r
424 \r
425                 public void Close ()\r
426                 {\r
427                         Win32.CloseWindow (window.Handle);\r
428                 }\r
429 \r
430                 //inherited\r
431                 //public void Dispose ()\r
432                 //{\r
433                 //              throw new NotImplementedException ();\r
434                 //}\r
435                 //public static bool Equals (object o1, object o2)\r
436                 //{\r
437                 //              throw new NotImplementedException ();\r
438                 //}              [MonoTODO]\r
439 \r
440                 public override bool Equals (object o)\r
441                 {\r
442                         throw new NotImplementedException ();\r
443                 }\r
444 \r
445 \r
446                 [MonoTODO]\r
447                 public override int GetHashCode () {\r
448                         //FIXME add our proprities\r
449                         return base.GetHashCode ();\r
450                 }\r
451 \r
452                 [MonoTODO]\r
453                 // Font class not implemented or stubbed\r
454                 //public static SizeF GetAutoScaleSize(Font font)\r
455                 //{\r
456                 //      throw new NotImplementedException ();\r
457                 //}\r
458 \r
459                 //public void Invalidate()\r
460                 //{\r
461                 //              throw new NotImplementedException ();\r
462                 //}\r
463 \r
464                 //public object Invoke()\r
465                 //{\r
466                 //              throw new NotImplementedException ();\r
467                 //}\r
468 \r
469                 [MonoTODO]\r
470                 public void LayoutMdi (MdiLayout value)\r
471                 {\r
472                         throw new NotImplementedException ();\r
473                 }\r
474 \r
475                 //public void PerformLayout()\r
476                 //{\r
477                 //              throw new NotImplementedException ();\r
478                 //}\r
479 \r
480                 [MonoTODO]\r
481                 public void RemoveOwnedForm (Form ownedForm)\r
482                 {\r
483                         throw new NotImplementedException ();\r
484                 }\r
485 \r
486                 //      public void ResumeLayout()\r
487                 //      {\r
488                 //              throw new NotImplementedException ();\r
489                 //      }\r
490                 //\r
491                 //      public void Scale(float f)\r
492                 //      {\r
493                 //              throw new NotImplementedException ();\r
494                 //      }\r
495                 //\r
496                 //      public void Select()\r
497                 //      {\r
498                 //              throw new NotImplementedException ();\r
499                 //      }\r
500                 //\r
501                 //      public void SetBounds(int x, int y, int width, int height)\r
502                 //      {\r
503                 //              throw new NotImplementedException ();\r
504                 //      }\r
505 \r
506                 public void SetDesktopLocation (int x, int y)\r
507                 {\r
508                         Win32.SetWindowPos ((IntPtr) window.Handle, (IntPtr) 0, \r
509                                             x, y, 0, 0, \r
510                                             (int) (Win32.SWP_NOSIZE | \r
511                                             Win32.SWP_NOZORDER));\r
512                 }\r
513 \r
514                 public new void Show ()\r
515                 {\r
516                         Win32.ShowWindow (window.Handle, (int) Win32.SW_SHOW);\r
517                 }\r
518 \r
519                 [MonoTODO]\r
520                 public DialogResult ShowDialog ()\r
521                 {\r
522                         throw new NotImplementedException ();\r
523                 }\r
524 \r
525                 [MonoTODO]\r
526                 public override string ToString ()\r
527                 {\r
528                         throw new NotImplementedException ();\r
529                 }\r
530 \r
531                 //  --- Public Events\r
532                 \r
533                 [MonoTODO]\r
534                 public event EventHandler Activated {\r
535                         add {\r
536                                 throw new NotImplementedException ();\r
537                         }\r
538                         remove {\r
539                                 throw new NotImplementedException ();\r
540                         }\r
541                 }\r
542                 \r
543                 public event EventHandler Closed;\r
544                  \r
545                 // CancelEventHandler not yet implemented/stubbed\r
546                 //public event CancelEventHandler Closing;\r
547                 \r
548                 [MonoTODO]\r
549                 public event EventHandler Deactivate {\r
550                         add {\r
551                                 throw new NotImplementedException ();\r
552                         }\r
553                         remove {\r
554                                 throw new NotImplementedException ();\r
555                         }\r
556                 }\r
557 \r
558                 [MonoTODO]\r
559                 public event InputLanguageChangedEventHandler InputLanguageChanged {\r
560                         add {\r
561                                 throw new NotImplementedException ();\r
562                         }\r
563                         remove {\r
564                                 throw new NotImplementedException ();\r
565                         }\r
566                 }\r
567 \r
568                 [MonoTODO]\r
569                 public event InputLanguageChangingEventHandler InputLanguageChanging {\r
570                         add {\r
571                                 throw new NotImplementedException ();\r
572                         }\r
573                         remove {\r
574                                 throw new NotImplementedException ();\r
575                         }\r
576                 }\r
577 \r
578                 [MonoTODO]\r
579                 public event EventHandler  Load {\r
580                         add {\r
581                                 throw new NotImplementedException ();\r
582                         }\r
583                         remove {\r
584                                 throw new NotImplementedException ();\r
585                         }\r
586                 }\r
587 \r
588                 [MonoTODO]\r
589                 public event EventHandler  MaximizedBoundsChanged {\r
590                         add {\r
591                                 throw new NotImplementedException ();\r
592                         }\r
593                         remove {\r
594                                 throw new NotImplementedException ();\r
595                         }\r
596                 }\r
597 \r
598                 [MonoTODO]\r
599                 public event EventHandler  MaximumSizeChanged {\r
600                         add {\r
601                                 throw new NotImplementedException ();\r
602                         }\r
603                         remove {\r
604                                 throw new NotImplementedException ();\r
605                         }\r
606                 }\r
607 \r
608                 [MonoTODO]\r
609                 public event EventHandler  MdiChildActivate {\r
610                         add {\r
611                                 throw new NotImplementedException ();\r
612                         }\r
613                         remove {\r
614                                 throw new NotImplementedException ();\r
615                         }\r
616                 }\r
617 \r
618                 [MonoTODO]\r
619                 public event EventHandler  MenuComplete {\r
620                         add {\r
621                                 throw new NotImplementedException ();\r
622                         }\r
623                         remove {\r
624                                 throw new NotImplementedException ();\r
625                         }\r
626                 }\r
627 \r
628                 [MonoTODO]\r
629                 public event EventHandler  MenuStart {\r
630                         add {\r
631                                 throw new NotImplementedException ();\r
632                         }\r
633                         remove {\r
634                                 throw new NotImplementedException ();\r
635                         }\r
636                 }\r
637 \r
638                 [MonoTODO]\r
639                 public event EventHandler  MinimumSizedChanged {\r
640                         add {\r
641                                 throw new NotImplementedException ();\r
642                         }\r
643                         remove {\r
644                                 throw new NotImplementedException ();\r
645                         }\r
646                 }\r
647 \r
648                 \r
649                 //  --- Protected Properties\r
650                 \r
651                 [MonoTODO]\r
652                 protected override CreateParams CreateParams {\r
653                         get {\r
654                                 throw new NotImplementedException ();\r
655                         }\r
656                 }\r
657 \r
658                 [MonoTODO]\r
659                 protected override ImeMode DefaultImeMode {\r
660                         get {\r
661                                 throw new NotImplementedException ();\r
662                         }\r
663                 }\r
664 \r
665                 //[MonoTODO]\r
666                 ////FIXME\r
667                 //protected override Size DefaultSize {\r
668                 //}\r
669 \r
670                 [MonoTODO]\r
671                 protected Rectangle MaximizedBounds {\r
672                         get {\r
673                                 throw new NotImplementedException ();\r
674                         }\r
675                         set {\r
676                                 throw new NotImplementedException ();\r
677                         }\r
678                 }\r
679 \r
680                 \r
681                 //  --- Protected Methods\r
682                 \r
683                 [MonoTODO]\r
684                 protected override void AdjustFormScrollbars (bool displayScrollbars)\r
685                 {\r
686                         throw new NotImplementedException ();\r
687                 }\r
688 \r
689                 //[MonoTODO]\r
690                 //protected override ControlCollection CreateControlsInstance()\r
691                 //{\r
692                 //              throw new NotImplementedException ();\r
693                 //}\r
694 \r
695                 [MonoTODO]\r
696                 protected override void CreateHandle ()\r
697                 {\r
698                         throw new NotImplementedException ();\r
699                 }\r
700 \r
701                 [MonoTODO]\r
702                 protected override void DefWndProc (ref Message m)\r
703                 {\r
704                         window.DefWndProc (ref m);\r
705                 }\r
706 \r
707                 //protected override void Dispose(bool disposing)\r
708                 //{\r
709                 //              throw new NotImplementedException ();\r
710                 //}\r
711 \r
712                 protected virtual void OnClosed (EventArgs e)\r
713                 {\r
714                         if (Closed != null)\r
715                                 Closed (this, e);\r
716                 }\r
717 \r
718                 [MonoTODO]\r
719                 // CancelEventArgs not yet stubbed/implemented\r
720                 //protected virtual void  OnClosing(CancelEventArgs e)\r
721                 //{\r
722                 //              throw new NotImplementedException ();\r
723                 //}\r
724 \r
725                 [MonoTODO]\r
726                 protected override void OnCreateControl ()\r
727                 {\r
728                         throw new NotImplementedException ();\r
729                 }\r
730 \r
731                 [MonoTODO]\r
732                 protected override void OnFontChanged (EventArgs e)\r
733                 {\r
734                         throw new NotImplementedException ();\r
735                 }\r
736 \r
737                 [MonoTODO]\r
738                 protected override void OnHandleCreated (EventArgs e)\r
739                 {\r
740                         throw new NotImplementedException ();\r
741                 }\r
742 \r
743                 [MonoTODO]\r
744                 protected override void OnHandleDestroyed (EventArgs e)\r
745                 {\r
746                 }\r
747 \r
748                 [MonoTODO]\r
749                 protected virtual void OnInputLanguageChanged (InputLanguageChangedEventArgs e)\r
750                 {\r
751                         throw new NotImplementedException ();\r
752                 }\r
753 \r
754                 [MonoTODO]\r
755                 protected virtual void OnInputLanguagedChanging (InputLanguageChangingEventArgs e)\r
756                 {\r
757                         throw new NotImplementedException ();\r
758                 }\r
759 \r
760                 [MonoTODO]\r
761                 protected virtual void OnLoad (EventArgs e)\r
762                 {\r
763                         throw new NotImplementedException ();\r
764                 }\r
765 \r
766                 [MonoTODO]\r
767                 protected virtual void OnMaximizedBoundsChanged (EventArgs e)\r
768                 {\r
769                         throw new NotImplementedException ();\r
770                 }\r
771 \r
772                 [MonoTODO]\r
773                 protected virtual void OnMaximumSizedChanged (EventArgs e)\r
774                 {\r
775                         throw new NotImplementedException ();\r
776                 }\r
777 \r
778                 [MonoTODO]\r
779                 protected virtual void OnMdiChildActive (EventArgs e)\r
780                 {\r
781                         throw new NotImplementedException ();\r
782                 }\r
783 \r
784                 [MonoTODO]\r
785                 protected virtual void OnMenuComplete (EventArgs e)\r
786                 {\r
787                         throw new NotImplementedException ();\r
788                 }\r
789 \r
790                 [MonoTODO]\r
791                 protected virtual void OnMenuStart (EventArgs e)\r
792                 {\r
793                         throw new NotImplementedException ();\r
794                 }\r
795 \r
796                 [MonoTODO]\r
797                 protected virtual void OnMinimumSizeChanged (EventArgs e)\r
798                 {\r
799                         throw new NotImplementedException ();\r
800                 }\r
801 \r
802                 [MonoTODO]\r
803                 protected override void  OnPaint (PaintEventArgs e)\r
804                 {\r
805 \r
806                 }\r
807                 [MonoTODO]\r
808                 protected override void  OnResize (EventArgs e)\r
809                 {\r
810 \r
811                 }\r
812 \r
813                 [MonoTODO]\r
814                 protected override void  OnStyleChanged (EventArgs e)\r
815                 {\r
816                         throw new NotImplementedException ();\r
817                 }\r
818                 protected override void  OnTextChanged (EventArgs e)\r
819                 {\r
820 \r
821                 }\r
822 \r
823                 [MonoTODO]\r
824                 protected override void  OnVisibleChanged (EventArgs e)\r
825                 {\r
826 \r
827                 }\r
828 \r
829                 [MonoTODO]\r
830                 protected override bool ProcessCmdKey (ref Message msg, Keys keyData)\r
831                 {\r
832                         throw new NotImplementedException ();\r
833                 }\r
834 \r
835                 [MonoTODO]\r
836                 protected override bool ProcessDialogKey (Keys keyData)\r
837                 {\r
838                         throw new NotImplementedException ();\r
839                 }\r
840 \r
841                 [MonoTODO]\r
842                 protected override bool ProcessKeyPreview (ref Message m)\r
843                 {\r
844                         throw new NotImplementedException ();\r
845                 }\r
846 \r
847                 [MonoTODO]\r
848                 protected override bool ProcessTabKey (bool forward)\r
849                 {\r
850                         throw new NotImplementedException ();\r
851                 }\r
852 \r
853                 [MonoTODO]\r
854                 protected override void ScaleCore (float x, float y)\r
855                 {\r
856                         throw new NotImplementedException ();\r
857                 }\r
858 \r
859                 //public void Select(bool b1, bool b2)\r
860                 //{\r
861                 //              throw new NotImplementedException ();\r
862                 //}\r
863 \r
864                 [MonoTODO]\r
865                 protected override void SetBoundsCore (\r
866                         int x, int y,  int width, int height,  \r
867                         BoundsSpecified specified)\r
868                 {\r
869                         throw new NotImplementedException ();\r
870                 }\r
871 \r
872                 [MonoTODO]\r
873                 protected override void SetClientSizeCore (int x, int y)\r
874                 {\r
875                         throw new NotImplementedException ();\r
876                 }\r
877 \r
878                 [MonoTODO]\r
879                 protected override void SetVisibleCore (bool value)\r
880                 {\r
881                         throw new NotImplementedException ();\r
882                 }\r
883 \r
884                 //protected void UpdateBounds()\r
885                 //{\r
886                 //              throw new NotImplementedException ();\r
887                 //}\r
888 \r
889                 [MonoTODO]\r
890                 protected override void WndProc (ref Message m)\r
891                 {\r
892                         base.WndProc (ref m);\r
893 \r
894                         switch (m.Msg) {\r
895                         case Win32.WM_CLOSE:\r
896                                 EventArgs closeArgs = new EventArgs();\r
897                                 OnClosed (closeArgs);\r
898                                 break;\r
899                                 //case ?:\r
900                                 //OnCreateControl()\r
901                                 //break;\r
902                         case Win32.WM_FONTCHANGE:\r
903                                 EventArgs fontChangedArgs = new EventArgs();\r
904                                 OnFontChanged (fontChangedArgs);\r
905                                 break;\r
906                         case Win32.WM_CREATE:\r
907                                 EventArgs handleCreatedArgs = new EventArgs(); \r
908                                 OnHandleCreated (handleCreatedArgs);\r
909                                 break;\r
910                         case Win32.WM_DESTROY:\r
911                                 EventArgs destroyArgs = new EventArgs();\r
912                                 OnHandleDestroyed (destroyArgs);\r
913                                 break;\r
914                         case Win32.WM_INPUTLANGCHANGE:\r
915                                 //InputLanguageChangedEventArgs ilChangedArgs =\r
916                                 //      new InputLanguageChangedEventArgs();\r
917                                 //OnInputLanguageChanged (ilChangedArgs);\r
918                                 break;\r
919                         case Win32.WM_INPUTLANGCHANGEREQUEST:\r
920                                 //InputLanguageChangingEventArgs ilChangingArgs =\r
921                                 //      new InputLanguageChangingEventArgs();\r
922                                 //OnInputLanguagedChanging (ilChangingArgs);\r
923                                 break;\r
924                                 /*\r
925                                   case Win32.WM_SHOWWINDOW:\r
926                                   EventArgs e;\r
927                                   OnLoad (e);\r
928                                   break;\r
929                                 */\r
930                                 // case ?:\r
931                                 // OnMaximizedBoundsChanged(EventArgs e)\r
932                                 // break;\r
933                                 // case ?:\r
934                                 // OnMaximumSizedChanged(EventArgs e)\r
935                                 //break;\r
936                         case Win32.WM_MDIACTIVATE:\r
937                                 EventArgs mdiActivateArgs = new EventArgs();\r
938                                 OnMdiChildActive (mdiActivateArgs);\r
939                                 break;\r
940                         case Win32.WM_EXITMENULOOP:\r
941                                 EventArgs menuCompleteArgs = new EventArgs();\r
942                                 OnMenuComplete (menuCompleteArgs);\r
943                                 break;\r
944                         case Win32.WM_ENTERMENULOOP:\r
945                                 EventArgs enterMenuLoopArgs = new EventArgs();\r
946                                 OnMenuStart (enterMenuLoopArgs);\r
947                                 break;\r
948                                 // case ?:\r
949                                 // OnMinimumSizeChanged(EventArgs e)\r
950                                 // break;\r
951                         case Win32.WM_PAINT:\r
952                                 //PaintEventArgs paintArgs = new PaintEventArgs();\r
953                                 //OnPaint (paintArgs);\r
954                                 break;\r
955                         case Win32.WM_SIZE:\r
956                                 EventArgs resizeArgs = new EventArgs();\r
957                                 OnResize (resizeArgs);\r
958                                 break;\r
959                                 //case ?:\r
960                                 //OnStyleChanged(EventArgs e)\r
961                                 //break;\r
962                         case Win32.WM_SETTEXT:\r
963                                 EventArgs textChangedArgs = new EventArgs();\r
964                                 OnTextChanged (textChangedArgs);\r
965                                 break;\r
966                         case Win32.WM_SHOWWINDOW:\r
967                                 EventArgs visibleChangedArgs = new EventArgs();\r
968                                 OnVisibleChanged (visibleChangedArgs);\r
969                                 break;\r
970                         }\r
971                 }\r
972 \r
973                 //sub class\r
974                 //System.Windows.Forms.Form.ControlCollection.cs\r
975                 //\r
976                 //Author:\r
977                 //  stubbed out by Daniel Carrera (dcarrera@math.toronto.edu)\r
978                 //\r
979                 // (C) 2002 Ximian, Inc\r
980                 //\r
981                 //\r
982                 // <summary>\r
983                 //      This is only a template.  Nothing is implemented yet.\r
984                 //\r
985                 // </summary>\r
986                 // TODO: implement support classes and derive from \r
987                 // proper classes\r
988                 public /*new(remove error)*/ class  ControlCollection /*: System.Windows.Forms.Control.ControlCollection, ICollection*/ {\r
989 \r
990                         //  --- Constructor\r
991                         [MonoTODO]\r
992                         // base class not defined (yet!)\r
993                         public ControlCollection (Form owner) /*: base(owner)*/ {\r
994                                 throw new NotImplementedException ();\r
995                         }\r
996                 \r
997                         //  --- Public Methods\r
998 \r
999                         [MonoTODO]\r
1000                         // TODO: see what causes this compile error\r
1001                         //public override void Add(Control value) {\r
1002                         //      throw new NotImplementedException ();\r
1003                         //}\r
1004 \r
1005                         [MonoTODO]\r
1006                         public override bool Equals (object o) {\r
1007                                 throw new NotImplementedException ();\r
1008                         }\r
1009 \r
1010                         //public static bool Equals(object o1, object o2) {\r
1011                         //      throw new NotImplementedException ();\r
1012                         //}\r
1013 \r
1014                         [MonoTODO]\r
1015                         public override int GetHashCode () {\r
1016                                 //FIXME add our proprities\r
1017                                 return base.GetHashCode ();\r
1018                         }\r
1019 \r
1020                         // Inherited\r
1021                         //public override int GetChildIndex(Control c) {\r
1022                         //      throw new NotImplementedException ();\r
1023                         //}\r
1024 \r
1025                         //[MonoTODO]\r
1026                         // Control not yet usuable due to dependencies\r
1027                         //public override void Remove(Control value) {\r
1028                         //      throw new NotImplementedException ();\r
1029                         //}\r
1030                 } // end of Subclass\r
1031         }\r
1032 }\r