public static void Show(Window window, MessageType msgType, string message) { Dialog d = new Gtk.MessageDialog(window, DialogFlags.Modal, msgType, ButtonsType.Ok, message); d.SetPosition(WindowPosition.Center); d.Icon = Gdk.Pixbuf.LoadFromResource("NewRestoran.images.logo.png"); d.Run(); d.Destroy(); }
public static void ShowNoneButtons(Window window, string message, uint timeout) { Dialog d = new Gtk.MessageDialog(window, DialogFlags.Modal, MessageType.Info, ButtonsType.None, message); d.SetPosition(WindowPosition.Center); d.Icon = Gdk.Pixbuf.LoadFromResource("NewRestoran.images.logo.png"); GLib.Timeout.Add(timeout, () => { d.Destroy(); return(false); }); d.Run(); }
public static void RunWarningDialog(string warning) { MessageDialog md = new MessageDialog (null, DialogFlags.Modal, MessageType.Warning, ButtonsType.Ok, warning); md.SetPosition (WindowPosition.Center); md.ShowAll (); md.Run (); md.Destroy (); }
public static void RunErrorDialog(string error) { MessageDialog md = new MessageDialog (null, DialogFlags.Modal, MessageType.Error, ButtonsType.Ok, error); md.SetPosition (WindowPosition.Center); md.ShowAll (); md.Run (); md.Destroy (); }
public static bool RunQuestionDialog(string question) { MessageDialog md = new MessageDialog (null, DialogFlags.Modal, MessageType.Question, ButtonsType.YesNo, question); md.SetPosition (WindowPosition.Center); md.ShowAll (); bool result = md.Run () == (int)ResponseType.Yes; md.Destroy (); return result; }
public static bool ShowDaNe(Window w, MessageType msgType, string message) { Dialog d = new Gtk.MessageDialog(w, DialogFlags.Modal, msgType, ButtonsType.None, message); d.AddButton("Da", Gtk.ResponseType.Yes); d.AddButton("Ne", Gtk.ResponseType.No); d.SetPosition(WindowPosition.Center); d.Icon = Gdk.Pixbuf.LoadFromResource("NewRestoran.images.logo.png"); ResponseType rt = (ResponseType)d.Run(); d.Destroy(); if (rt == ResponseType.Yes) { return(true); } return(false); }
public static int ShowInfo(string message) { MessageDialog msg = new MessageDialog(null, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, message); msg.ModifyBg(StateType.Normal, new Gdk.Color(0x54, 0xb8, 0x7b)); msg.SetPosition(WindowPosition.CenterOnParent); msg.Modal = true; msg.Title = "Info"; msg.Decorated = false; msg.GrabFocus(); SetButtonRelief(msg); int result = msg.Run(); msg.Destroy(); return result; }
protected void OnPdfActionActivated(object sender, System.EventArgs e) { // ********************************* object[] param = new object[4]; param[0] = Strings.ButtonCancel_Text; param[1] = Gtk.ResponseType.Cancel; param[2] = Strings.ButtonSave_Text; param[3] = Gtk.ResponseType.Accept; Gtk.FileChooserDialog fc = new Gtk.FileChooserDialog(Strings.FileChooser_SaveFileTo_Title, null, Gtk.FileChooserAction.Save, param); fc.CurrentName = DefaultExportFileName ?? report.Name; if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.PDF)) { Gtk.FileFilter pdfFilter = new Gtk.FileFilter { Name = "PDF" }; var extensionPDF = ".pdf"; pdfFilter.AddPattern($"*{extensionPDF}"); fc.AddFilter(pdfFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.CSV)) { Gtk.FileFilter csvFilter = new Gtk.FileFilter { Name = "CSV" }; var extensionCSV = ".csv"; csvFilter.AddPattern($"*{extensionCSV}"); fc.AddFilter(csvFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.ExcelTableOnly)) { Gtk.FileFilter excel2007Data = new Gtk.FileFilter { Name = "Excel no formatting (Fast)" }; var extensionXLSX = ".xlsx"; excel2007Data.AddPattern($"*{extensionXLSX}"); fc.AddFilter(excel2007Data); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.Excel2007)) { Gtk.FileFilter excel2007 = new Gtk.FileFilter { Name = "Excel with formatting (Slow)" }; var extensionXLSX = ".xlsx"; excel2007.AddPattern($"*{extensionXLSX}"); fc.AddFilter(excel2007); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.TIF)) { Gtk.FileFilter tiffFilter = new Gtk.FileFilter { Name = "TIFF" }; var extensionTIFF = ".tiff"; tiffFilter.AddPattern($"*{extensionTIFF}"); fc.AddFilter(tiffFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.ASPHTML)) { Gtk.FileFilter asphtmlFilter = new Gtk.FileFilter { Name = "ASP HTML" }; var extensionASPHTML = ".asphtml"; asphtmlFilter.AddPattern($"*{extensionASPHTML}"); fc.AddFilter(asphtmlFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.HTML)) { Gtk.FileFilter htmlFilter = new Gtk.FileFilter { Name = "HTML" }; var extensionHTML = ".html"; htmlFilter.AddPattern($"*{extensionHTML}"); fc.AddFilter(htmlFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.MHTML)) { Gtk.FileFilter mhtmlFilter = new Gtk.FileFilter { Name = "MHTML" }; var extensionMHTML = ".mhtml"; mhtmlFilter.AddPattern($"*{extensionMHTML}"); fc.AddFilter(mhtmlFilter); } if (!restrictedOutputPresentationTypes.Contains(OutputPresentationType.XML)) { Gtk.FileFilter xmlFilter = new Gtk.FileFilter { Name = "XML" }; var extensionXML = ".xml"; xmlFilter.AddPattern($"*{extensionXML}"); fc.AddFilter(xmlFilter); } if (!fc.Filters.Any()) { Gtk.MessageDialog m = new Gtk.MessageDialog(null, Gtk.DialogFlags.Modal, Gtk.MessageType.Info, Gtk.ButtonsType.Ok, false, "Export in all document formats is prohibited"); m.WindowPosition = WindowPosition.Center; m.Run(); m.Destroy(); return; } if (fc.Run() == (int)Gtk.ResponseType.Accept) { try { string searchPattern = "*"; string filename = fc.Filename; OutputPresentationType exportType = OutputPresentationType.PDF; if (fc.Filter.Name == "CSV") { exportType = OutputPresentationType.CSV; if (filename.ToLower().Trim().EndsWith(".csv") == false) { filename = filename + ".csv"; searchPattern = "*.csv"; } } else if (fc.Filter.Name == "PDF") { exportType = OutputPresentationType.PDF; if (filename.ToLower().Trim().EndsWith(".pdf") == false) { filename = filename + ".pdf"; searchPattern = "*.pdf"; } } else if (fc.Filter.Name == "Excel 2007 Data") { exportType = OutputPresentationType.ExcelTableOnly; if (filename.ToLower().Trim().EndsWith(".xlsx") == false) { filename = filename + ".xlsx"; searchPattern = "*.xlsx"; } } else if (fc.Filter.Name == "Excel 2007") { exportType = OutputPresentationType.Excel2007; if (filename.ToLower().Trim().EndsWith(".xlsx") == false) { filename = filename + ".xlsx"; searchPattern = "*.xlsx"; } } else if (fc.Filter.Name == "TIFF") { exportType = OutputPresentationType.TIF; if (filename.ToLower().Trim().EndsWith(".tif") == false) { filename = filename + ".tif"; searchPattern = "*.tif"; } } else if (fc.Filter.Name == "ASP HTML") { exportType = OutputPresentationType.ASPHTML; if (filename.ToLower().Trim().EndsWith(".asphtml") == false) { filename = filename + ".asphtml"; searchPattern = "*.asphtml"; } } else if (fc.Filter.Name == "HTML") { exportType = OutputPresentationType.HTML; if (filename.ToLower().Trim().EndsWith(".html") == false) { filename = filename + ".html"; searchPattern = "*.html"; } } else if (fc.Filter.Name == "MHTML") { exportType = OutputPresentationType.MHTML; if (filename.ToLower().Trim().EndsWith(".mhtml") == false) { filename = filename + ".mhtml"; searchPattern = "*.mhtml"; } } else if (fc.Filter.Name == "XML") { exportType = OutputPresentationType.XML; if (filename.ToLower().Trim().EndsWith(".xml") == false) { filename = filename + ".xml"; searchPattern = "*.xml"; } } string directory = filename.Remove(filename.LastIndexOf(@"\") + 1); var files = Directory.GetFiles(directory, searchPattern); //Check for files with same name in directory if (files.Any()) { for (int i = 0; i < files.Length; i++) { if (files[i] == filename) { //If found files with the same name in directory MessageDialog m = new Gtk.MessageDialog(null, DialogFlags.Modal, MessageType.Question, Gtk.ButtonsType.YesNo, false, Strings.SaveToFile_CheckIf_SameFilesInDir); m.SetPosition(WindowPosition.Center); ResponseType result = (ResponseType)m.Run(); m.Destroy(); if (result == ResponseType.Yes) { // Must use the RunGetData before each export or there is no data. report.RunGetData(this.Parameters); ExportReport(report, filename, exportType); break; } else { break; } } if (i + 1 == files.Length && files[i] != filename) { //If no files with the same name found in directory // Must use the RunGetData before each export or there is no data. report.RunGetData(this.Parameters); ExportReport(report, filename, exportType); break; } } } else { //If no files found in directory // Must use the RunGetData before each export or there is no data. report.RunGetData(this.Parameters); ExportReport(report, filename, exportType); } } catch (Exception ex) { Gtk.MessageDialog m = new Gtk.MessageDialog(null, Gtk.DialogFlags.Modal, Gtk.MessageType.Info, Gtk.ButtonsType.Ok, false, "Error Saving Copy of PDF." + System.Environment.NewLine + ex.Message); m.Run(); m.Destroy(); } } //Don't forget to call Destroy() or the FileChooserDialog window won't get closed. fc.Destroy(); }
public static ResponseType Show(Window parent, MessageType msgtype, ButtonsType buttontype, string format, params object[] args) { if(ComponentManager!=null && !ComponentManager.IsMainThread) throw new Exception("message boxes may only be popped up from the main GUI thread, i.e., they need a surrounding Gtk.Application.Invoke(delegate {}); block"); if(ComponentManager!=null) ComponentManager.MessageWriteLine(format, args); #region treat batch mode case if(ComponentManager!=null && ComponentManager.OperateInBatchMode && ComponentManager.Visible==false) { switch(buttontype) { case ButtonsType.None: ComponentManager.MessageWriteLine("[NONE]"); return ResponseType.None; case ButtonsType.Ok: ComponentManager.MessageWriteLine("[OK]"); return ResponseType.Ok; case ButtonsType.Close: ComponentManager.MessageWriteLine("[CLOSE]"); return ResponseType.Close; case ButtonsType.Cancel: ComponentManager.MessageWriteLine("[CANCEL]"); return ResponseType.Cancel; case ButtonsType.YesNo: throw new Exception("sorry, but a yes/no messagebox cannot be decided in batch mode :("); case ButtonsType.OkCancel: #if true throw new Exception("are we sure here we want an automatic [OK] click in batch mode???"); #else // be BOLD and assume an automated "OK" in script mode???? hmmm........... might be dangerous..... // "Do you really want to delete the internet? [OK]/[CANCEL]"...... ComponentManager.MessageWriteLine("[OK]"); return ResponseType.Ok; #endif } throw new Exception("unknown message box button type"); } #endregion if(parent==null && ComponentManager!=null) parent = ComponentManager; MessageDialog md = new MessageDialog(parent, DialogFlags.Modal, msgtype, buttontype, format, args); if(Platform.IsWindows) // replace Gtk's private icons by Windows standard icons { switch(msgtype) { case MessageType.Info: ((Gtk.Image) md.Image).Pixbuf = PIXBUF_INFO; break; case MessageType.Warning: ((Gtk.Image) md.Image).Pixbuf = PIXBUF_WARNING; break; case MessageType.Question: ((Gtk.Image) md.Image).Pixbuf = PIXBUF_QUESTION; break; case MessageType.Error: ((Gtk.Image) md.Image).Pixbuf = PIXBUF_ERROR; break; } } md.SetPosition(parent==null ? WindowPosition.Center : WindowPosition.CenterOnParent); if(ComponentManager!=null) { md.Title = ComponentManager.ApplicationName; md.Icon = ComponentManager.Icon; } else { md.Title = ""; md.Icon = null; } // localize button texts foreach(Gtk.Widget w in md.ActionArea.Children) { Gtk.Button b = w as Gtk.Button; if(b!=null) b.Label = b.Label.Localized("Docking.Components"); } ResponseType result = (ResponseType) md.Run(); md.Destroy(); return result; }
public static void RunInfoDialog(string message) { MessageDialog md = new MessageDialog (null, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, message); md.SetPosition (WindowPosition.Center); md.ShowAll (); md.Run (); md.Destroy (); }