Merge pull request #3085 from lateralusX/jlorenss/win-x64-pinvoke-empty-struct
[mono.git] / mcs / class / System.Windows.Forms / System.Windows.Forms.WebBrowserDialogs / ConfirmCheck.cs
1 // Permission is hereby granted, free of charge, to any person obtaining\r
2 // a copy of this software and associated documentation files (the\r
3 // "Software"), to deal in the Software without restriction, including\r
4 // without limitation the rights to use, copy, modify, merge, publish,\r
5 // distribute, sublicense, and/or sell copies of the Software, and to\r
6 // permit persons to whom the Software is furnished to do so, subject to\r
7 // the following conditions:\r
8 // \r
9 // The above copyright notice and this permission notice shall be\r
10 // included in all copies or substantial portions of the Software.\r
11 // \r
12 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
13 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
14 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
15 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
16 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
17 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
18 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
19 //\r
20 // Copyright (c) 2007 Novell, Inc.\r
21 //\r
22 // Authors:\r
23 //      Andreia Gaita   <avidigal@novell.com>\r
24 \r
25 \r
26 using System;\r
27 using System.Collections.Generic;\r
28 using System.Text;\r
29 \r
30 namespace System.Windows.Forms.WebBrowserDialogs\r
31 {\r
32         internal class ConfirmCheck : Generic\r
33         {\r
34                 private bool check;\r
35                 public bool Checked\r
36                 {\r
37                         get { return check; }\r
38                 }\r
39 \r
40                 public ConfirmCheck (string title, string text, string checkMessage, bool checkState)\r
41                         : base (title)\r
42                 {\r
43                         InitTable (3, 2);\r
44 \r
45                         AddLabel (0, 0, 2, text, -1, -1);\r
46                         AddCheck (1, 0, 2, checkMessage, checkState, -1, -1, new EventHandler (CheckedChanged));\r
47                         AddButton (2, 0, 0, Locale.GetText ("OK"), -1, -1, true, false, new EventHandler (OkClick));\r
48                         AddButton (2, 1, 0, Locale.GetText ("Cancel"), -1, -1, false, true, new EventHandler (CancelClick));\r
49                 }\r
50 \r
51                 private void OkClick (object sender, EventArgs e)\r
52                 {\r
53                         this.DialogResult = DialogResult.OK;\r
54                         this.Close ();\r
55                 }\r
56 \r
57                 private void CancelClick (object sender, EventArgs e)\r
58                 {\r
59                         this.DialogResult = DialogResult.Cancel;\r
60                         this.Close ();\r
61                 }\r
62 \r
63                 private void CheckedChanged (object sender, EventArgs e)\r
64                 {\r
65                         CheckBox c = sender as CheckBox;\r
66                         check = c.Checked;\r
67                 }\r
68         }\r
69 }\r