/////////////////////////////////////////////////////////////////////////////// //File: MyDialog_MessageBox.cs // //Description: A derived dialog class to give the user a notification, // similar to a win32 MessageBox. // //This file is Copyright (c) 2010 VirindiPlugins // //Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // //The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // //THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. /////////////////////////////////////////////////////////////////////////////// using System; using System.Collections.Generic; using System.Text; #if METAVIEW_PUBLIC_NS using MetaViewWrappers; #else using MyClasses.MetaViewWrappers; #endif namespace MyClasses { class MyDialog_MessageBox : MyDialog { string[] iButtons; string iTitle; string iLabel; int iIcon; IButton[] ResultButtons; IStaticText Label; public MyDialog_MessageBox(Decal.Adapter.Wrappers.PluginHost H, string[] pbuttons, string ptitle, string plabel, int picon, string dialogkey, IView pOrigin) : base(dialogkey, pOrigin) { iButtons = pbuttons; iTitle = ptitle; iLabel = plabel; iIcon = picon; if (!base.ShowView(H)) return; ResultButtons = new IButton[iButtons.Length]; for (int i = 0; i < iButtons.Length; ++i) { ResultButtons[i] = (IButton)View["btn" + i.ToString()]; ResultButtons[i].Hit += new EventHandler(MyDialog_MB_Hit); } Label = (IStaticText)View["Label1"]; Label.Text = iLabel; } void MyDialog_MB_Hit(object sender, EventArgs e) { IButton me = (IButton)sender; int ind = int.Parse(me.Name.Substring(3)); base.ReturnDialog(me.Text, true); } protected override string GetDialogXML() { StringBuilder b = new StringBuilder(); b.Append(""); b.Append(""); b.Append(""); b.Append(""); for (int i = 0; i < iButtons.Length; ++i) { b.Append(""); } b.Append(""); b.Append(""); return b.ToString(); } } }