Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by [EMAIL PROTECTED]

http://bugzilla.ximian.com/show_bug.cgi?id=79757

--- shadow/79757        2006-10-27 13:01:30.000000000 -0400
+++ shadow/79757.tmp.10552      2006-10-27 13:01:30.000000000 -0400
@@ -0,0 +1,370 @@
+Bug#: 79757
+Product: Mono: Class Libraries
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Normal
+Component: Windows.Forms
+AssignedTo: [EMAIL PROTECTED]                            
+ReportedBy: [EMAIL PROTECTED]               
+QAContact: [EMAIL PROTECTED]
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Incorrect behavour of MDI applications in 1.1.18
+
+Same MDI application runned under .NET 1.1 and Mono 1.1.18 works diffirent.
+
+1) Menu bar not redraws well, for example if i make MDI container wider
+2) MDI child's content not drawn
+3) MDI contaner border is absent at all
+4) Childs menu not always added to container's main menu
+5) Minimizing and maximizing of child windows work very strange
+6) MDI-container scrollbars not driven at all in most cases
+...
+
+I didn't tried to run this application under Linux. 
+
+To see this problems please write simple MDI form as in example below and
+run it on windows using .NET and Mono and you will see all problems.
+
+Code of application generated using VS 2003:
+
+MDI.cs
+
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+using System.Data;
+
+namespace MDI
+{
+       /// <summary>
+       /// Summary description for Form1.
+       /// </summary>
+       public class MDI : System.Windows.Forms.Form
+       {
+               private System.Windows.Forms.MainMenu mainMenu1;
+               private System.Windows.Forms.MenuItem menuItem1;
+               private System.Windows.Forms.MenuItem menuItem2;
+               private System.Windows.Forms.MenuItem menuItem3;
+               private System.Windows.Forms.MenuItem menuItem4;
+               private System.Windows.Forms.Panel panel1;
+               private System.Windows.Forms.RichTextBox richTextBox1;
+               private System.Windows.Forms.Splitter splitter1;
+               /// <summary>
+               /// Required designer variable.
+               /// </summary>
+               private System.ComponentModel.Container components = null;
+
+               public MDI()
+               {
+                       //
+                       // Required for Windows Form Designer support
+                       //
+                       InitializeComponent();
+
+                       //
+                       // TODO: Add any constructor code after 
InitializeComponent call
+                       //
+               }
+
+               /// <summary>
+               /// Clean up any resources being used.
+               /// </summary>
+               protected override void Dispose( bool disposing )
+               {
+                       if( disposing )
+                       {
+                               if (components != null) 
+                               {
+                                       components.Dispose();
+                               }
+                       }
+                       base.Dispose( disposing );
+               }
+
+               #region Windows Form Designer generated code
+               /// <summary>
+               /// Required method for Designer support - do not modify
+               /// the contents of this method with the code editor.
+               /// </summary>
+               private void InitializeComponent()
+               {
+                       this.mainMenu1 = new System.Windows.Forms.MainMenu();
+                       this.menuItem1 = new System.Windows.Forms.MenuItem();
+                       this.menuItem2 = new System.Windows.Forms.MenuItem();
+                       this.menuItem3 = new System.Windows.Forms.MenuItem();
+                       this.menuItem4 = new System.Windows.Forms.MenuItem();
+                       this.panel1 = new System.Windows.Forms.Panel();
+                       this.richTextBox1 = new 
System.Windows.Forms.RichTextBox();
+                       this.splitter1 = new System.Windows.Forms.Splitter();
+                       this.panel1.SuspendLayout();
+                       this.SuspendLayout();
+                       // 
+                       // mainMenu1
+                       // 
+                       this.mainMenu1.MenuItems.AddRange(new 
System.Windows.Forms.MenuItem[] {
+                                                                               
                                                                                
          this.menuItem1});
+                       // 
+                       // menuItem1
+                       // 
+                       this.menuItem1.Index = 0;
+                       this.menuItem1.MenuItems.AddRange(new 
System.Windows.Forms.MenuItem[] {
+                                                                               
                                                                                
          this.menuItem2,
+                                                                               
                                                                                
          this.menuItem3,
+                                                                               
                                                                                
          this.menuItem4});
+                       this.menuItem1.Text = "Actions";
+                       // 
+                       // menuItem2
+                       // 
+                       this.menuItem2.Index = 0;
+                       this.menuItem2.Text = "Create child";
+                       this.menuItem2.Click += new 
System.EventHandler(this.menuItem2_Click);
+                       // 
+                       // menuItem3
+                       // 
+                       this.menuItem3.Index = 1;
+                       this.menuItem3.Text = "-";
+                       // 
+                       // menuItem4
+                       // 
+                       this.menuItem4.Index = 2;
+                       this.menuItem4.Text = "Exit";
+                       // 
+                       // panel1
+                       // 
+                       this.panel1.Controls.Add(this.richTextBox1);
+                       this.panel1.Dock = System.Windows.Forms.DockStyle.Left;
+                       this.panel1.Location = new System.Drawing.Point(0, 0);
+                       this.panel1.Name = "panel1";
+                       this.panel1.Size = new System.Drawing.Size(128, 381);
+                       this.panel1.TabIndex = 1;
+                       // 
+                       // richTextBox1
+                       // 
+                       this.richTextBox1.Dock = 
System.Windows.Forms.DockStyle.Fill;
+                       this.richTextBox1.Location = new 
System.Drawing.Point(0, 0);
+                       this.richTextBox1.Name = "richTextBox1";
+                       this.richTextBox1.Size = new System.Drawing.Size(128, 
381);
+                       this.richTextBox1.TabIndex = 0;
+                       this.richTextBox1.Text = "richTextBox1";
+                       // 
+                       // splitter1
+                       // 
+                       this.splitter1.Location = new System.Drawing.Point(128, 
0);
+                       this.splitter1.Name = "splitter1";
+                       this.splitter1.Size = new System.Drawing.Size(3, 381);
+                       this.splitter1.TabIndex = 2;
+                       this.splitter1.TabStop = false;
+                       // 
+                       // MDI
+                       // 
+                       this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+                       this.ClientSize = new System.Drawing.Size(616, 381);
+                       this.Controls.Add(this.splitter1);
+                       this.Controls.Add(this.panel1);
+                       this.IsMdiContainer = true;
+                       this.Menu = this.mainMenu1;
+                       this.Name = "MDI";
+                       this.Text = "MDI";
+                       this.panel1.ResumeLayout(false);
+                       this.ResumeLayout(false);
+
+               }
+               #endregion
+
+               /// <summary>
+               /// The main entry point for the application.
+               /// </summary>
+               [STAThread]
+               static void Main() 
+               {
+                       Application.Run(new MDI());
+               }
+
+               private void menuItem2_Click(object sender, System.EventArgs e)
+               {
+                       Child child = new Child();
+                       child.MdiParent = this;
+                       child.Show();
+               }
+       }
+}
+
+
+
+2) Child.cs
+
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+namespace MDI
+{
+       /// <summary>
+       /// Summary description for Child.
+       /// </summary>
+       public class Child : System.Windows.Forms.Form
+       {
+               private System.Windows.Forms.Button button1;
+               private System.Windows.Forms.TabControl tabControl1;
+               private System.Windows.Forms.TabPage tabPage1;
+               private System.Windows.Forms.TabPage tabPage2;
+               private System.Windows.Forms.MainMenu mainMenu1;
+               private System.Windows.Forms.MenuItem menuItem1;
+               private System.Windows.Forms.TreeView treeView1;
+               /// <summary>
+               /// Required designer variable.
+               /// </summary>
+               private System.ComponentModel.Container components = null;
+
+               public Child()
+               {
+                       //
+                       // Required for Windows Form Designer support
+                       //
+                       InitializeComponent();
+
+                       //
+                       // TODO: Add any constructor code after 
InitializeComponent call
+                       //
+               }
+
+               /// <summary>
+               /// Clean up any resources being used.
+               /// </summary>
+               protected override void Dispose( bool disposing )
+               {
+                       if( disposing )
+                       {
+                               if(components != null)
+                               {
+                                       components.Dispose();
+                               }
+                       }
+                       base.Dispose( disposing );
+               }
+
+               #region Windows Form Designer generated code
+               /// <summary>
+               /// Required method for Designer support - do not modify
+               /// the contents of this method with the code editor.
+               /// </summary>
+               private void InitializeComponent()
+               {
+                       this.button1 = new System.Windows.Forms.Button();
+                       this.tabControl1 = new 
System.Windows.Forms.TabControl();
+                       this.tabPage1 = new System.Windows.Forms.TabPage();
+                       this.tabPage2 = new System.Windows.Forms.TabPage();
+                       this.mainMenu1 = new System.Windows.Forms.MainMenu();
+                       this.menuItem1 = new System.Windows.Forms.MenuItem();
+                       this.treeView1 = new System.Windows.Forms.TreeView();
+                       this.tabControl1.SuspendLayout();
+                       this.tabPage1.SuspendLayout();
+                       this.tabPage2.SuspendLayout();
+                       this.SuspendLayout();
+                       // 
+                       // button1
+                       // 
+                       this.button1.Location = new System.Drawing.Point(152, 
176);
+                       this.button1.Name = "button1";
+                       this.button1.TabIndex = 0;
+                       this.button1.Text = "Close";
+                       this.button1.Click += new 
System.EventHandler(this.menuItem1_Click);
+                       // 
+                       // tabControl1
+                       // 
+                       this.tabControl1.Controls.Add(this.tabPage1);
+                       this.tabControl1.Controls.Add(this.tabPage2);
+                       this.tabControl1.Dock = 
System.Windows.Forms.DockStyle.Fill;
+                       this.tabControl1.Location = new System.Drawing.Point(0, 
0);
+                       this.tabControl1.Name = "tabControl1";
+                       this.tabControl1.SelectedIndex = 0;
+                       this.tabControl1.Size = new System.Drawing.Size(392, 
325);
+                       this.tabControl1.TabIndex = 1;
+                       // 
+                       // tabPage1
+                       // 
+                       this.tabPage1.Controls.Add(this.button1);
+                       this.tabPage1.Location = new System.Drawing.Point(4, 
22);
+                       this.tabPage1.Name = "tabPage1";
+                       this.tabPage1.Size = new System.Drawing.Size(384, 299);
+                       this.tabPage1.TabIndex = 0;
+                       this.tabPage1.Text = "tabPage1";
+                       // 
+                       // tabPage2
+                       // 
+                       this.tabPage2.Controls.Add(this.treeView1);
+                       this.tabPage2.Location = new System.Drawing.Point(4, 
22);
+                       this.tabPage2.Name = "tabPage2";
+                       this.tabPage2.Size = new System.Drawing.Size(384, 299);
+                       this.tabPage2.TabIndex = 1;
+                       this.tabPage2.Text = "tabPage2";
+                       // 
+                       // mainMenu1
+                       // 
+                       this.mainMenu1.MenuItems.AddRange(new 
System.Windows.Forms.MenuItem[] {
+                                                                               
                                                                                
          this.menuItem1});
+                       // 
+                       // menuItem1
+                       // 
+                       this.menuItem1.Index = 0;
+                       this.menuItem1.Text = "Close";
+                       this.menuItem1.Click += new 
System.EventHandler(this.menuItem1_Click);
+                       // 
+                       // treeView1
+                       // 
+                       this.treeView1.Dock = 
System.Windows.Forms.DockStyle.Fill;
+                       this.treeView1.ImageIndex = -1;
+                       this.treeView1.Location = new System.Drawing.Point(0, 
0);
+                       this.treeView1.Name = "treeView1";
+                       this.treeView1.Nodes.AddRange(new 
System.Windows.Forms.TreeNode[] {
+                                                                               
                                                                                
  new System.Windows.Forms.TreeNode("Node0"),
+                                                                               
                                                                                
  new System.Windows.Forms.TreeNode("Node1", new
+System.Windows.Forms.TreeNode[] {
+                                                                               
                                                                                
                                                                                
                                                                                
         new
+System.Windows.Forms.TreeNode("Node2", new System.Windows.Forms.TreeNode[] {
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                new
+System.Windows.Forms.TreeNode("Node3")}),
+                                                                               
                                                                                
                                                                                
                                                                                
         new
+System.Windows.Forms.TreeNode("Node4", new System.Windows.Forms.TreeNode[] {
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                new
+System.Windows.Forms.TreeNode("Node5")})}),
+                                                                               
                                                                                
  new System.Windows.Forms.TreeNode("Node6", new
+System.Windows.Forms.TreeNode[] {
+                                                                               
                                                                                
                                                                                
                                                                                
         new
+System.Windows.Forms.TreeNode("Node7")})});
+                       this.treeView1.SelectedImageIndex = -1;
+                       this.treeView1.Size = new System.Drawing.Size(384, 299);
+                       this.treeView1.TabIndex = 0;
+                       // 
+                       // Child
+                       // 
+                       this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+                       this.ClientSize = new System.Drawing.Size(392, 325);
+                       this.Controls.Add(this.tabControl1);
+                       this.Menu = this.mainMenu1;
+                       this.Name = "Child";
+                       this.Text = "Child";
+                       this.tabControl1.ResumeLayout(false);
+                       this.tabPage1.ResumeLayout(false);
+                       this.tabPage2.ResumeLayout(false);
+                       this.ResumeLayout(false);
+
+               }
+               #endregion
+
+               private void menuItem1_Click(object sender, System.EventArgs e)
+               {
+                       this.Close();
+               }
+       }
+}
_______________________________________________
mono-bugs maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to