Example #1
0
        private void ExportFilename(string extension, ExporterHandler handler)
        {
            Gtk.FileChooserDialog dlg = new Gtk.FileChooserDialog("Export graph as " + extension.ToUpper(),
                                                                  (Gtk.Window)Toplevel,
                                                                  Gtk.FileChooserAction.Save,
                                                                  Gtk.Stock.Cancel, Gtk.ResponseType.Cancel,
                                                                  Gtk.Stock.Save, Gtk.ResponseType.Ok);

            Gtk.FileFilter filter = new Gtk.FileFilter();

            filter.Name = extension.ToUpper();
            filter.AddPattern("*." + extension);

            dlg.AddFilter(filter);
            dlg.CurrentName             = "export." + extension;
            dlg.DoOverwriteConfirmation = true;

            dlg.Response += delegate(object o, Gtk.ResponseArgs args) {
                if (args.ResponseId == Gtk.ResponseType.Ok)
                {
                    handler(dlg.Filename);
                }

                dlg.Destroy();
            };

            dlg.Present();
        }
Example #2
0
        private void Init(FileFilterType filterType)
        {
            Gtk.FileFilter libs = new Gtk.FileFilter ();
            Gtk.FileFilter all = new Gtk.FileFilter ();

            switch (filterType) {
            case FileFilterType.DFiles:
                libs.AddPattern ("*.d");
                libs.AddPattern ("*.di");
                libs.Name = "D Files";
                break;
            case FileFilterType.LibraryFiles:
                libs.AddPattern ("*.a");
                libs.AddPattern ("*.lib");
                libs.AddPattern ("*.so");
                libs.AddPattern ("*.dylib");
                libs.Name = "Libraries";
                break;
            }

            all.AddPattern ("*.*");
            all.Name = "All Files";

            file_chooser_widget.AddFilter (libs);
            file_chooser_widget.AddFilter (all);

            if (Environment.OSVersion.Platform == PlatformID.Unix)
                file_chooser_widget.SetCurrentFolder ("/usr/share/d/di");
        }
Example #3
0
        public void Initialize(IEnumerable <FileDialogFilter> filters, bool multiselect, string initialFileName)
        {
            Initialize(multiselect);

            if (!string.IsNullOrEmpty(initialFileName))
            {
                dialog.CurrentName = initialFileName;
            }

            this.filters = filters.ToList();
            gtkFilters   = new List <Gtk.FileFilter> ();

            foreach (var filter in filters)
            {
                var gf = new Gtk.FileFilter();
                gtkFilters.Add(gf);
                if (!string.IsNullOrEmpty(filter.Name))
                {
                    gf.Name = filter.Name;
                }
                if (filter.Patterns != null)
                {
                    foreach (var pattern in filter.Patterns)
                    {
                        gf.AddPattern(pattern);
                    }
                }
            }

            foreach (var filter in gtkFilters)
            {
                dialog.AddFilter(filter);
            }
        }
Example #4
0
        private void Init(FileFilterType filterType)
        {
            Gtk.FileFilter libs = new Gtk.FileFilter();
            Gtk.FileFilter all  = new Gtk.FileFilter();

            switch (filterType)
            {
            case FileFilterType.DFiles:
                libs.AddPattern("*.d");
                libs.AddPattern("*.di");
                libs.Name = "D Files";
                break;

            case FileFilterType.LibraryFiles:
                libs.AddPattern("*.a");
                libs.AddPattern("*.lib");
                libs.AddPattern("*.so");
                libs.AddPattern("*.dylib");
                libs.Name = "Libraries";
                break;
            }

            all.AddPattern("*.*");
            all.Name = "All Files";

            file_chooser_widget.AddFilter(libs);
            file_chooser_widget.AddFilter(all);

            if (Environment.OSVersion.Platform == PlatformID.Unix)
            {
                file_chooser_widget.SetCurrentFolder("/usr/share/d/di");
            }
        }
Example #5
0
        public void InsertFilter(int index, FileDialogFilter filter)
        {
            var gtkFilter = new Gtk.FileFilter();

            gtkFilter.Name = filter.Name;
            foreach (var extension in filter.Extensions)
            {
                gtkFilter.AddPattern(extension);
            }

            var filters = new List <Gtk.FileFilter>(Control.Filters);

            if (index < filters.Count)
            {
                for (int i = 0; i < filters.Count; i++)
                {
                    Control.RemoveFilter(filters[i]);
                }
                filters.Insert(index, gtkFilter);
                for (int i = 0; i < filters.Count; i++)
                {
                    Control.AddFilter(filters[i]);
                }
            }
            else
            {
                Control.AddFilter(gtkFilter);
            }
        }
Example #6
0
        static private bool DlgSelectFile(string back, string title, Gtk.Window main, Gtk.FileChooserAction action, ref string fileName, string filter)
        {
            var dlg = new Gtk.FileChooserDialog(
                back, title, main, action,
                "Cancel", Gtk.ResponseType.Cancel,
                "Ok", Gtk.ResponseType.Ok
                );

            var fileFilter = new  Gtk.FileFilter();

            try {
                fileFilter.Name = filter.Substring(filter.IndexOf(".") + 1) + " files";
            } catch (Exception) {
                fileFilter.Name = filter;
            }

            fileFilter.AddPattern(filter);
            dlg.AddFilter(fileFilter);
            dlg.SetFilename(fileName);
            Gtk.ResponseType result = (Gtk.ResponseType)dlg.Run();

            fileName = dlg.Filename;
            dlg.Destroy();
            return(result == Gtk.ResponseType.Ok);
        }
Example #7
0
        public Settings()
        {
            try
            {
                this.Build();
                if (Environment.OSVersion.Platform == PlatformID.Win32NT)
                {
                    Gtk.FileFilter filter = new Gtk.FileFilter();
                    filter.Name = "Executable";
                    filter.AddMimeType("Executable/exe");
                    filter.AddPattern("*.exe");
                    ProgramPathChoose.AddFilter(filter);
                }

                KeepPPChkBox.Active = MySettings.KeepPP;
                AutothreadsChkBox.Active = MySettings.AutoThreads;
                if (MySettings.AutoThreads == true) { ThreadcountSpin.Sensitive = false; }
                else { ThreadcountSpin.Sensitive = true; }
                ThreadcountSpin.Value = MySettings.Threads;
                ProgramPathChoose.SetFilename(MySettings.ProgramPath);
                QualitySpin.Value = MySettings.JPGQuality;
                CompressChkBox.Active = MySettings.TiffCompress;
                ProgramSelBox.Active = MySettings.Program;
                RTpath = MySettings.RT;
                LRpath = MySettings.LR;
                switch (MySettings.Program)
                {
                    case 0:
                        ProgramPathLabel.LabelProp = "Path to Rawtherapee:";
                        ProgramPathChoose.SetFilename(RTpath);
                        break;

                    case 1:
                        ProgramPathLabel.LabelProp = "Path to Lightroom:";
                        ProgramPathChoose.SetFilename(LRpath);
                        break;
                }
                switch (MySettings.SavingFormat)
                {
                    case (0):
                        SavingFormatBox.Active = 0;
                        CompressChkBox.Sensitive = false;
                        return;

                    case (1):
                        SavingFormatBox.Active = 1;
                        CompressChkBox.Sensitive = false;
                        BitDepthBox.Active = MySettings.BitDepthPNG;
                        return;

                    case (2):
                        SavingFormatBox.Active = 2;
                        CompressChkBox.Sensitive = true;
                        BitDepthBox.Active = MySettings.BitDepthTiff;
                        return;
                }
            } 
            catch (Exception ex) { ErrorReport.ReportError("Init (Settings)", ex); }
        }
 public ImageSelector ()
 {
     this.Build ();
     Gtk.FileFilter jpgFilter = new Gtk.FileFilter ();
     jpgFilter.Name = "JPEG images";
     jpgFilter.AddMimeType("image/jpeg");
     jpgFilter.AddPattern("*.jpg");
     jpgFilter.AddPattern("*.jpeg");
     filechooserbutton2.AddFilter (jpgFilter);
     deleteButton.Visible = false;
 }
Example #9
0
        public AddPathDialog(string currentDir)
        {
            this.Build();

            Gtk.FileFilter filter = new Gtk.FileFilter();

            filter.AddMimeType("x-directory/normal");
            filter.Name = "Folders";

            file_chooser_widget.SetCurrentFolder(currentDir);
            file_chooser_widget.AddFilter(filter);
        }
Example #10
0
        public AddPathDialog(string currentDir)
        {
            this.Build ();

            Gtk.FileFilter filter = new Gtk.FileFilter ();

            filter.AddMimeType ("x-directory/normal");
            filter.Name = "Folders";

            file_chooser_widget.SetCurrentFolder (currentDir);
            file_chooser_widget.AddFilter (filter);
        }
 public DocumentChooser ()
 {
     this.Build ();
     this.IsEditable = false;
     chooser.FileSet += new EventHandler (this.OnSet);
     Gtk.FileFilter docFilter = new Gtk.FileFilter ();
     docFilter.Name = "doc/pdf";
     docFilter.AddMimeType("application/pdf");
     docFilter.AddMimeType("application/msword");
     docFilter.AddPattern("*.pdf");
     docFilter.AddPattern("*.doc");
     chooser.AddFilter(docFilter);
 }
        public ImageSelectorWidget()
        {
            this.Build();
            this.clearButton.TooltipMarkup = Catalog.GetString("Clears the image");

            Gtk.FileFilter filter = new Gtk.FileFilter();
            filter.AddPixbufFormats();
            filter.Name = Catalog.GetString("Picture files");
            chooser.AddFilter(filter);
            filter = new Gtk.FileFilter();
            filter.Name = Catalog.GetString("All files");
            chooser.AddFilter(filter);

            image.Pixbuf = ResourceManager.GetPixbuf("Resources", "DefaultPlayerImage.png");
        }
Example #13
0
        public void Import()
        {
            var chooser = Banshee.Gui.Dialogs.FileChooserDialog.CreateForImport(Catalog.GetString("Import eMusic Downloads to Library"), true);

            Gtk.FileFilter ff = new Gtk.FileFilter();
            ff.Name = Catalog.GetString("eMusic Files");
            ff.AddPattern("*.emx");
            chooser.AddFilter(ff);

            if (chooser.Run() == (int)Gtk.ResponseType.Ok)
            {
                ServiceManager.Get <EmusicService> ().ImportEmx(chooser.Uris);
            }

            chooser.Destroy();
        }
Example #14
0
        protected void onOpen(object sender, EventArgs e)
        {
            Gtk.FileChooserDialog chooser = new Gtk.FileChooserDialog(
                Catalog.GetString("Open archive"),
                this,
                Gtk.FileChooserAction.Open,
                Catalog.GetString("Cancel"), Gtk.ResponseType.Cancel,
                Catalog.GetString("Open"), Gtk.ResponseType.Accept
                );
            Gtk.FileFilter filterSupported = new Gtk.FileFilter();
            filterSupported.AddPattern("*.szs");
            filterSupported.AddPattern("*.sarc");
            filterSupported.AddPattern("*.carc");
            filterSupported.AddPattern("*.pack");
            filterSupported.AddPattern("*.bars");
            filterSupported.AddPattern("*.bgenv");
            filterSupported.Name = Catalog.GetString("All supported files");

            Gtk.FileFilter filterAll = new Gtk.FileFilter();
            filterAll.Name = Catalog.GetString("All files");
            filterAll.AddPattern("*");

            Gtk.FileFilter filterSarc = new Gtk.FileFilter();
            filterSarc.AddPattern("*.sarc");
            filterSarc.AddPattern("*.pack");
            filterSarc.AddPattern("*.arc");
            filterSarc.AddPattern("*.bars");
            filterSarc.AddPattern("*.bgenv");
            filterSarc.Name = "SARC archive";

            Gtk.FileFilter filterSzs = new Gtk.FileFilter();
            filterSzs.AddPattern("*.szs");
            filterSzs.AddPattern("*.carc");
            filterSzs.Name = "SZS/CARC file";

            chooser.AddFilter(filterSupported);
            chooser.AddFilter(filterAll);
            chooser.AddFilter(filterSarc);
            chooser.AddFilter(filterSzs);
            if (chooser.Run() == (int)Gtk.ResponseType.Accept)
            {
                // Good!
                this.WorkingDirectory = chooser.Filename;
                openFile(chooser.Filename);
            }
            chooser.Destroy();
        }
Example #15
0
        void SetGtkFileFilters(FileSelector fdiag)
        {
            var list = new List <Gtk.FileFilter> ();

            Gtk.FileFilter defaultGtkFilter = null;

            foreach (var filter in data.Filters)
            {
                var gf = new Gtk.FileFilter();
                if (!string.IsNullOrEmpty(filter.Name))
                {
                    gf.Name = filter.Name;
                }
                if (filter.Patterns != null)
                {
                    foreach (var pattern in filter.Patterns)
                    {
                        gf.AddPattern(pattern);
                    }
                }
                if (filter.MimeTypes != null)
                {
                    foreach (var mimetype in filter.MimeTypes)
                    {
                        gf.AddMimeType(mimetype);
                    }
                }
                list.Add(gf);
                if (filter == DefaultFilter)
                {
                    defaultGtkFilter = gf;
                }
            }

            foreach (var filter in list)
            {
                fdiag.AddFilter(filter);
            }

            if (defaultGtkFilter != null)
            {
                fdiag.Filter = defaultGtkFilter;
            }

            fdiag.Destroyed += CaptureDefaultFilter;
        }
Example #16
0
		public AddLibraryDialog()
		{
			this.Build();
			
			Gtk.FileFilter libs = new Gtk.FileFilter ();
			Gtk.FileFilter all = new Gtk.FileFilter ();
			
			libs.AddPattern ("*.vapi");
			libs.Name = "Libraries";
			
			all.AddPattern ("*.*");
			all.Name = "All Files";
			
			file_chooser_widget.AddFilter (libs);
			file_chooser_widget.AddFilter (all);
			file_chooser_widget.SetCurrentFolder ("/usr/share/vala/vapi");
		}
        public AddLibraryDialog()
        {
            this.Build();

            Gtk.FileFilter libs = new Gtk.FileFilter();
            Gtk.FileFilter all  = new Gtk.FileFilter();

            libs.AddPattern("*.vapi");
            libs.Name = "Libraries";

            all.AddPattern("*.*");
            all.Name = "All Files";

            file_chooser_widget.AddFilter(libs);
            file_chooser_widget.AddFilter(all);
            file_chooser_widget.SetCurrentFolder("/usr/share/vala/vapi");
        }
Example #18
0
        public void SetFilters()
        {
            var list = Control.Filters.ToArray();

            foreach (Gtk.FileFilter filter in list)
            {
                Control.RemoveFilter(filter);
            }

            foreach (var val in Widget.Filters)
            {
                var filter = new Gtk.FileFilter();
                filter.Name = val.Name;
                foreach (string pattern in val.Extensions)
                {
                    filter.AddPattern("*" + pattern);
                }
                Control.AddFilter(filter);
            }
        }
Example #19
0
        public void ExportToPdf()
        {
            Gtk.FileChooserDialog fc = new Gtk.FileChooserDialog("Choose the pdf file to save", null, Gtk.FileChooserAction.Save, "Cancel", Gtk.ResponseType.Cancel, "Export", Gtk.ResponseType.Accept);
            var fileFilter           = new Gtk.FileFilter {
                Name = "pdf file"
            };

            fileFilter.AddPattern("*.pdf");

            fc.AddFilter(fileFilter);
            fc.CurrentName = string.IsNullOrEmpty(Report.Title) ? "untitled_report.pdf" : Report.Title;


            if (fc.Run() == (int)Gtk.ResponseType.Accept)
            {
                Report.ExportToPdf(fc.Filename);
            }

            fc.Destroy();
        }
Example #20
0
        public void Import()
        {
            var chooser = Banshee.Gui.Dialogs.FileChooserDialog.CreateForImport (
                Catalog.GetString ("Download Amazon MP3 Purchase"), true);
            var filter = new Gtk.FileFilter () {
                Name = Catalog.GetString ("Amazon MP3 Files")
            };
            filter.AddPattern ("*.amz");
            chooser.AddFilter (filter);

            try {
                if (chooser.Run () == (int)Gtk.ResponseType.Ok) {
                    foreach (var path in chooser.Filenames) {
                        ServiceManager.Get<AmazonMp3DownloaderService> ().DownloadAmz (path);
                    }
                }
            } finally {
                chooser.Destroy ();
            }
        }
Example #21
0
        public static void Serialize(Statistic stats, bool save = false)
        {
            string path = "";

            if (save)
            {
                path = stats.Path;
                if (path == "" || path == null)
                {
                    Gtk.FileChooserDialog slg = new Gtk.FileChooserDialog("Statistik speichern", null, Gtk.FileChooserAction.Save, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                          "Speichern", Gtk.ResponseType.Ok);
                    Gtk.FileFilter filter = new Gtk.FileFilter();
                    filter.Name = "TXM Statistik Datei";
                    filter.AddPattern("*.txmstats");
                    slg.AddFilter(filter);
                    int response = slg.Run();

                    if (response == -5)
                    {
                        path = slg.Filename;
                    }
                    else
                    {
                        return;
                    }
                }
            }
            else
            {
                path = Path.Combine(tempPath, Settings.BINFILE);
            }

            IFormatter formatter = new BinaryFormatter();

            using (Stream stream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None))
            {
                formatter.Serialize(stream, stats);
            }
        }
Example #22
0
        public static Statistic Deserialize(bool load = false)
        {
            string path = "";

            if (load)
            {
                Gtk.FileChooserDialog dlg = new Gtk.FileChooserDialog("Statistik laden", null, Gtk.FileChooserAction.Open, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                      "Öffnen", Gtk.ResponseType.Ok);
                Gtk.FileFilter filter = new Gtk.FileFilter();
                filter.Name = "TXM Statistik Datei";
                filter.AddPattern("*.txmstats");
                int response = dlg.Run();

                if (response == -5)
                {
                    path = dlg.Filename;
                    dlg.Destroy();
                }
                else
                {
                    dlg.Destroy();
                    return(null);
                }
            }
            else
            {
                SetTempPath();
                path = Path.Combine(tempPath, Settings.BINFILE);
            }
            Statistic  stats     = null;
            IFormatter formatter = new BinaryFormatter();

            using (Stream stream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read))
            {
                stats = (Statistic)formatter.Deserialize(stream);
            }
            return(stats);
        }
Example #23
0
        /// <inheritdoc/>
        public override FileBrowserDialogResult ShowDialog()
        {
            var fileChooserAction = IsFolderBrowser ? Gtk.FileChooserAction.SelectFolder : Gtk.FileChooserAction.Open;
            var buttons           = new object[] { Gtk.Stock.Cancel, Gtk.ResponseType.Cancel, Gtk.Stock.Open, Gtk.ResponseType.Accept };

            using (var dialog = new Gtk.FileChooserDialog(Title, SingleInstanceApplication.Instance.MainWindow, fileChooserAction, buttons))
            {
                dialog.SelectMultiple = Multiselect;
                foreach (var filter in _filters)
                {
                    var fileFilter = new Gtk.FileFilter()
                    {
                        Name = filter.Key
                    };
                    fileFilter.AddCustom(Gtk.FileFilterFlags.Filename, info => FileFilter(dialog, info));
                    dialog.AddFilter(fileFilter);
                }

                var response = (Gtk.ResponseType)dialog.Run();
                _files = dialog.Filenames;
                VisualHelpers.Close(dialog);
                var dialogResult = FileBrowserDialogResult.None;
                switch (response)
                {
                case Gtk.ResponseType.Accept:
                    dialogResult = FileBrowserDialogResult.Ok;
                    break;

                case Gtk.ResponseType.Cancel:
                    dialogResult = FileBrowserDialogResult.Cancel;
                    break;

                default:
                    break;
                }
                return(dialogResult);
            }
        }
Example #24
0
        private void HandleSaveAction(object sender, EventArgs e)
        {
            Gui.CustomFileChooserDialog dlg =
                new Gui.CustomFileChooserDialog(this, "Save", Gtk.FileChooserAction.Save);

            dlg.FileChooser.SelectMultiple = false;

            using (Gtk.FileFilter filter = new Gtk.FileFilter())
            {
                filter.Name = "DGLE Bitmap Fonts";
                filter.AddMimeType("font/dft");
                filter.AddPattern("*.dft");
                dlg.FileChooser.AddFilter(filter);
            }

            using (Gtk.FileFilter filter = new Gtk.FileFilter())
            {
                filter.Name = "All";
                filter.AddPattern("*.*");
                dlg.FileChooser.AddFilter(filter);
            }

            dlg.FileChooser.CurrentName =
                String.Format(@"{0}_{1}", fontService.Family.Name, fontService.Size);

            dlg.Ok += (sender1, e1) =>
            {
                string fileName = System.IO.Path.GetFullPath(dlg.FileChooser.Filename);
                fontPreviewImage.DftUtil.Save(fileName, fontService);
                dlg.Destroy();
            };

            dlg.Cancel += (sender2, e2) =>
                          dlg.Destroy();

            dlg.Show();
        }
Example #25
0
        public void Import()
        {
            var chooser = Banshee.Gui.Dialogs.FileChooserDialog.CreateForImport(
                Catalog.GetString("Download Amazon MP3 Purchase"), true);
            var filter = new Gtk.FileFilter()
            {
                Name = Catalog.GetString("Amazon MP3 Files")
            };

            filter.AddPattern("*.amz");
            chooser.AddFilter(filter);

            try {
                if (chooser.Run() == (int)Gtk.ResponseType.Ok)
                {
                    foreach (var path in chooser.Filenames)
                    {
                        ServiceManager.Get <AmazonMp3DownloaderService> ().DownloadAmz(path);
                    }
                }
            } finally {
                chooser.Destroy();
            }
        }
Example #26
0
        private string OpenFileDialog(string title, string filterName, string filterPattern, string defaultFolder)
        {
            string filename = null;

            Gtk.FileChooserDialog fc = new Gtk.FileChooserDialog(title, this, Gtk.FileChooserAction.Open,
                                                                 textCancel, Gtk.ResponseType.Cancel,
                                                                 textOpen, Gtk.ResponseType.Accept);
            Gtk.FileFilter fltr = new Gtk.FileFilter ();
            fltr.Name = filterName;
            fltr.AddPattern (filterPattern);
            fc.AddFilter(fltr);
            fc.SetCurrentFolder(defaultFolder);
            int state = fc.Run();
            // wait for a file to be chosen
            if ( state == (int)Gtk.ResponseType.Accept) {
                filename = fc.Filename;
            }

            fc.Destroy();
            return filename;
        }
Example #27
0
        public static void Export(Statistic stats, bool csv, bool info = true, string path = "")
        {
            List <string> lines = new List <string>();

            stats.Sort();
            int length = stats.IPilots.Count > stats.IShips.Count ? stats.IPilots.Count : stats.IShips.Count;

            length = length > stats.IUpgrades.Count ? length : stats.IUpgrades.Count;
            if (csv)
            {
                if (path == "")
                {
                    Gtk.FileChooserDialog slg = new Gtk.FileChooserDialog("Listen speichern", null, Gtk.FileChooserAction.Save, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                          "Speichern", Gtk.ResponseType.Ok);
                    Gtk.FileFilter filter = new Gtk.FileFilter();
                    filter.Name = "Comma Separated Values";
                    filter.AddPattern("*.csv");
                    slg.AddFilter(filter);
                    int response = slg.Run();

                    if (response == -5)
                    {
                        path = slg.Filename;
                    }
                }
                if (path != "")
                {
                    string line = "=SUMME(A2:A" + length + ");Schiffe;MERCode;;=SUMME(E2:E" + length + ");Piloten;Welle;;=SUMME(I2:I" + length + ");Aufwertungskarten;;=SUMME(L2:L" + length + ");Punktzahlen;;;=SUMME(P2:P" + length + ");Fraktionen;Prozent;Schiffe pro Fraktion;Schiffepro Liste;;Schiffe pro Squad;=E1/P1;;";
                    lines.Add(line);
                    List <string> PointFormulas           = new List <string>();;
                    List <string> FactionFormulas         = new List <string>();
                    List <string> ShipsPerFactionFormulas = new List <string>();
                    List <string> WaveFormulas            = new List <string>();
                    for (int i = 0; i <= stats.Points.Count; i++)
                    {
                        line = "=L" + (i + 2) + "/L1";
                        PointFormulas.Add(line);
                    }
                    for (int i = 0; i <= stats.FPoints.Count; i++)
                    {
                        line = "=P" + (i + 2) + "/P1";
                        FactionFormulas.Add(line);
                    }
                    for (int i = 0; i <= stats.FPoints.Count; i++)
                    {
                        line = "=S" + (i + 2) + "/P" + (i + 2);
                        ShipsPerFactionFormulas.Add(line);
                    }
                    for (int i = 0; i <= stats.Waves.Count; i++)
                    {
                        line = "=W" + (i + 2) + "/E1";
                        WaveFormulas.Add(line);
                    }
                    for (int i = 0; i < length; i++)
                    {
                        line = "";
                        if (i < stats.IShips.Count)
                        {
                            line += stats.IShips[i].Count + ";" + stats.IShips[i].Gername + ";" + stats.IShips[i].MERCode + ";;";
                        }
                        else
                        {
                            line += ";;;;";
                        }
                        if (i < stats.IPilots.Count)
                        {
                            line += stats.IPilots[i].Count + ";" + stats.IPilots[i].Gername + ";" + stats.IPilots[i].Wave + ";;";
                        }
                        else
                        {
                            line += ";;;;";
                        }
                        if (i < stats.IUpgrades.Count)
                        {
                            line += stats.IUpgrades[i].Count + ";" + stats.IUpgrades[i].Gername + ";;";
                        }
                        else
                        {
                            line += ";;;";
                        }
                        if (i < stats.Points.Count)
                        {
                            line += stats.Points[i][1] + ";" + stats.Points[i][0] + ";" + PointFormulas[i] + ";;";
                        }
                        else
                        {
                            line += ";;;;";
                        }
                        if (i < stats.FPoints.Count)
                        {
                            line += stats.FPoints[i].Count + ";" + Player.FactionToString(stats.FPoints[i].PointsFaction) + ";" + FactionFormulas[i] + ";" + stats.ShipsPerFaction[i] + ";" + ShipsPerFactionFormulas[i] + ";;";
                        }
                        else
                        {
                            line += ";;;;;;";
                        }
                        if (i < stats.Waves.Count)
                        {
                            line += "Welle " + stats.Waves[i].Name + ";" + stats.Waves[i].Count + ";" + WaveFormulas[i] + ";;";
                        }
                        else
                        {
                            line += ";;;;";
                        }
                        lines.Add(line);
                    }

                    using (System.IO.StreamWriter f = new System.IO.StreamWriter(path))
                    {
                        foreach (string s in lines)
                        {
                            f.WriteLine(s);
                        }
                    }

                    if (info)
                    {
                        MessageBox.Show("Datei erfolgreich exportiert.");
                    }
                }
            }
        }
Example #28
0
 public void AddFilter(Gtk.FileFilter filter)
 {
     fileChooser.AddFilter(filter);
 }
Example #29
0
        private void InitCredentialsPage()
        {
            f_CredentialsWidget = new EngineAssistantCredentialsWidget();

            AppendPage(f_CredentialsWidget);
            SetPageTitle(f_CredentialsWidget, _("Credentials"));
            SetPageType(f_CredentialsWidget, Gtk.AssistantPageType.Content);
            Prepare += delegate(object sender, Gtk.PrepareArgs e) {
                if (e.Page != f_CredentialsWidget)
                {
                    return;
                }
                CheckCredentialsPage();
            };

            f_CredentialsWidget.SshUsernameEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.UsernameEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.PasswordEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.VerifyPasswordEntry.Changed += delegate {
                CheckCredentialsPage();
            };

            // HACK: only show the SSH password field if plink is present as
            // OpenSSH doesn't support passing passwords via command line
            f_CredentialsWidget.SshPasswordVBox.Visible = IsPutty;

            if (IsPutty)
            {
                // Plink always requires a SSH username, thus
                // remove the (optional) portion from the label
                f_CredentialsWidget.SshUsernameLabel.Text = Regex.Replace(
                    f_CredentialsWidget.SshUsernameLabel.Text, @"\(.*?\)", ""
                    );

                // PuTTY/Plink does not support OpenSSH key files but .ppk
                var filter = new Gtk.FileFilter();
                filter.Name = "PuTTY/Plink key files (*.ppk)";
                filter.AddPattern("*.ppk");
                f_CredentialsWidget.SshKeyfileChooserButton.AddFilter(filter);
            }

            if (f_EngineName != null)
            {
                f_CredentialsWidget.SshUsernameEntry.Text = (string)
                                                            f_Config["Engines/" + f_EngineName + "/SshUsername"];
                f_CredentialsWidget.SshPasswordEntry.Text = (string)
                                                            f_Config["Engines/" + f_EngineName + "/SshPassword"];
                var sshKeyfile = (string)
                                 f_Config["Engines/" + f_EngineName + "/SshKeyfile"];
                if (!String.IsNullOrEmpty(sshKeyfile))
                {
                    f_CredentialsWidget.SshKeyfileChooserButton.SetFilename(
                        sshKeyfile
                        );
                }
                var sshPath = IOPath.Combine(
                    Environment.GetFolderPath(
                        Environment.SpecialFolder.Personal
                        ),
                    ".ssh"
                    );
                if (Directory.Exists(sshPath))
                {
                    f_CredentialsWidget.SshKeyfileChooserButton.SetCurrentFolder(
                        sshPath
                        );
                }
                f_CredentialsWidget.UsernameEntry.Text = (string)
                                                         f_Config["Engines/" + f_EngineName + "/Username"];
                f_CredentialsWidget.PasswordEntry.Text = (string)
                                                         f_Config["Engines/" + f_EngineName + "/Password"];
                f_CredentialsWidget.VerifyPasswordEntry.Text = (string)
                                                               f_Config["Engines/" + f_EngineName + "/Password"];
            }
        }
Example #30
0
        public static void LoadCSV(Statistic stats, bool overview = false, Tournament2 tournament = null)
        {
            string path, file, overviewList, line;

            string[]         url, lines;
            int              countOfLists;
            bool             win = true;
            List <Statistic> statistics;
            List <string>    lists, players, output;

            lists      = new List <string>();
            players    = new List <string>();
            statistics = new List <Statistic>();
            Gtk.FileChooserDialog dlg = new Gtk.FileChooserDialog("Statistik laden", null, Gtk.FileChooserAction.Open, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                  "Öffnen", Gtk.ResponseType.Ok);
            Gtk.FileFilter filter = new Gtk.FileFilter();
            filter.Name = "TXT-Datei";
            filter.AddPattern("*.txt");
            int response = dlg.Run();

            if (response == -5)
            {
                path = dlg.Filename;
            }
            else
            {
                return;
            }
            using (StreamReader sr = new StreamReader(path))
            {
                file = sr.ReadToEnd();
            }
            if (file.Contains('\n'))
            {
                lines = file.Split('\n');
                for (int i = 0; i < lines.Length; i++)
                {
                    if (lines[i] != "")
                    {
                        lines[i] = lines[i].Remove(lines[i].LastIndexOf('\r'));
                    }
                }
            }
            else
            {
                lines = file.Split('\r');
            }

            countOfLists = lines[1].Split('\t').Length - 1;

            statistics.Add(stats);
            for (int i = 1; i < countOfLists; i++)
            {
                statistics.Add(Update.LoadContents());
            }

            for (int j = 1; j < lines.Length; j++)
            {
                if (lines[j] != "")
                {
                    url = lines[j].Split('\t');
                    players.Add(url[0]);
                    for (int i = 1; i <= countOfLists; i++)
                    {
                        if (url[i] != "")
                        {
                            if (url[i].StartsWith("\"") && url[i].EndsWith("\""))
                            {
                                url[i] = url[i].Substring(url[i].IndexOf("\"") + 1, url[i].LastIndexOf("\"") - 1);
                            }
                            else if (url[i].StartsWith("\""))
                            {
                                url[i] = url[i].Substring(url[i].IndexOf("\"") + 1);
                            }
                            else if (url[i].EndsWith("\""))
                            {
                                url[i] = url[i].Substring(0, url[i].LastIndexOf("\"") - 2);
                            }
                        }
                        if (url[i] == "")
                        {
                            overviewList = "";
                        }
                        else
                        {
                            overviewList = statistics[i - 1].Parse(url[i], true, overview);
                        }
                        lists.Add(overviewList);
                        //Aktuell nur für die erste Liste, da die Turnierverwaltung noch nicht
                        //mit Escalation klar kommt.
                        if (tournament != null && overviewList != "" && i == 1)
                        {
                            int trenner  = overviewList.IndexOf(';');
                            int trenner2 = overviewList.IndexOf(';', trenner + 1);
                            tournament.AddInfos(url[0], Int32.Parse(overviewList.Substring(trenner + 1, trenner2 - trenner - 1)), url[i]);
                        }
                    }
                }
            }

            if (countOfLists > 1)
            {
                MessageBox.Show("Es wurden mehrere Listen pro Spieler ermittelt.\nWähle einen Speicherort aus.\nAnschließend wird die erste Liste angezeigt.");

                Gtk.FileChooserDialog slg = new Gtk.FileChooserDialog("Listen speichern", null, Gtk.FileChooserAction.Save, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                      "Speichern", Gtk.ResponseType.Ok);
                filter      = new Gtk.FileFilter();
                filter.Name = "TXM Statistik Datei";
                filter.AddPattern("*.txmstats");
                slg.AddFilter(filter);
                response = slg.Run();

                if (response == -5)
                {
                    path = slg.Filename;
                }
                else
                {
                    return;
                }
                for (int i = 0; i < countOfLists; i++)
                {
                    statistics[i].Path = path.Substring(0, path.LastIndexOf('.')) + " " + (i + 1) + path.Substring(path.LastIndexOf('.'), path.Length - path.LastIndexOf('.'));
                    Serialize(statistics[i], true);
                }
            }

            if (overview)
            {
                MessageBox.Show("Gib bitte den Speicherort für die\nÜbersichtsliste(n) an.");
                Gtk.FileChooserDialog slg = new Gtk.FileChooserDialog("Listen speichern", null, Gtk.FileChooserAction.Save, "Abbrechen", Gtk.ResponseType.Cancel,
                                                                      "Speichern", Gtk.ResponseType.Ok);
                filter      = new Gtk.FileFilter();
                filter.Name = "CSV-Datei";
                filter.AddPattern("*.csv");
                slg.AddFilter(filter);
                response = slg.Run();

                if (response == -5)
                {
                    path = slg.Filename;
                }
                else
                {
                    return;
                }
                output = new List <string>();
                line   = "Spieler;Fraktion;Punkte;Liste";
                output.Add(line);
                for (int i = 0; i < players.Count; i++)
                {
                    url  = lines[i + 1].Split('\t');
                    line = players[i] + ";";
                    for (int j = 0; j < countOfLists; j++)
                    {
                        line += lists[i * countOfLists + j] + ";";
                    }
                    output.Add(line);
                }
                using (System.IO.StreamWriter f = new System.IO.StreamWriter(path))
                {
                    foreach (string s in output)
                    {
                        f.WriteLine(s);
                    }
                }
                if (countOfLists == 1)
                {
                    path = path.Substring(0, path.LastIndexOf('.')) + "_statistik.csv";
                    Export(statistics[0], true, false, path);
                }
                else
                {
                    for (int i = 0; i < countOfLists; i++)
                    {
                        string p = statistics[i].Path.Substring(0, path.LastIndexOf('.') + 2) + ".csv";
                        Export(statistics[i], true, false, p);
                    }
                }
            }
        }
Example #31
0
        public void ExportToPdf()
        {
            Gtk.FileChooserDialog fc = new Gtk.FileChooserDialog ("Choose the pdf file to save", null, Gtk.FileChooserAction.Save, "Cancel", Gtk.ResponseType.Cancel, "Export", Gtk.ResponseType.Accept);
            var fileFilter = new Gtk.FileFilter { Name = "pdf file" };
            fileFilter.AddPattern ("*.pdf");

            fc.AddFilter (fileFilter);
            fc.CurrentName = string.IsNullOrEmpty( Report.Title) ? "untitled_report.pdf" : Report.Title ;

            if (fc.Run () == (int)Gtk.ResponseType.Accept) {

                Report.ExportToPdf(fc.Filename);
            }

            fc.Destroy ();
        }
Example #32
0
 public void AddFilter(Gtk.FileFilter filter)
 {
     gtk_file_chooser_add_filter(Handle, filter == null ? IntPtr.Zero : filter.Handle);
 }
        protected void OnNewDocument (object sender, System.EventArgs e)
        {
            Gtk.FileChooserDialog dialog = new Gtk.FileChooserDialog(Catalog.GetString("Add New Document"),
                (Gtk.Window) this.Toplevel,
                Gtk.FileChooserAction.Open);

            dialog.AddButton(Gtk.Stock.Cancel, Gtk.ResponseType.Cancel);
            dialog.AddButton(Gtk.Stock.Open, Gtk.ResponseType.Accept);

            dialog.DefaultResponse = Gtk.ResponseType.Cancel;
            dialog.LocalOnly = true;

            Gtk.FileFilter filter = new Gtk.FileFilter ();
            filter.Name = "doc/pdf";
            filter.AddMimeType("application/pdf");
            filter.AddMimeType("application/msword");
            filter.AddPattern("*.pdf");
            filter.AddPattern("*.doc");
            dialog.Filter = filter;

            int response = dialog.Run ();
            Document doc = new Document ();
            if (response == (int) Gtk.ResponseType.Accept) {
                string filename = System.IO.Path.GetFileName (dialog.Filename);
                string extension = filename.Split('.')[1];
                doc.Filename = filename;
                if (extension == "pdf") {
                    doc.ContentType = "application/pdf";
                } else if (extension == "doc") {
                    doc.ContentType = "application/msword";
                }
                doc.Content = File.ReadAllBytes(dialog.Filename);
                documents.Add(doc);
                documentsList.PackStart(new DocumentRow (doc, OnDocumentRemoved));
                documentsList.ShowAll ();
            }
            dialog.Destroy ();
        }
Example #34
0
        protected void OnSaveButtonClicked(object sender, System.EventArgs e)
        {
            object []param= new object[4];
            param[0] = "Cancel";
            param[1] = Gtk.ResponseType.Cancel;
            param[2] = "Save";
            param[3] = Gtk.ResponseType.Accept;

            Gtk.FileChooserDialog fc=
            new Gtk.FileChooserDialog("Save File As",
                                        null,
                                        Gtk.FileChooserAction.Save,
                                        param);

            Gtk.FileFilter pdfFilter = new Gtk.FileFilter();
            pdfFilter.Name = "PDF";

            Gtk.FileFilter csvFilter = new Gtk.FileFilter();
            csvFilter.Name = "CSV";

            Gtk.FileFilter asphtmlFilter = new Gtk.FileFilter();
            asphtmlFilter.Name = "ASP HTML";

            Gtk.FileFilter excel2003 = new Gtk.FileFilter();
            excel2003.Name = "Excel 2003";

            Gtk.FileFilter htmlFilter = new Gtk.FileFilter();
            htmlFilter.Name = "HTML";

            Gtk.FileFilter mhtmlFilter = new Gtk.FileFilter();
            mhtmlFilter.Name = "MHTML";

            Gtk.FileFilter rtfFilter = new Gtk.FileFilter();
            rtfFilter.Name = "RTF";

            Gtk.FileFilter xmlFilter = new Gtk.FileFilter();
            xmlFilter.Name = "XML";

            fc.AddFilter(pdfFilter);
            fc.AddFilter(csvFilter);
            fc.AddFilter(asphtmlFilter);
            fc.AddFilter(excel2003);
            fc.AddFilter(htmlFilter);
            fc.AddFilter(mhtmlFilter);
            fc.AddFilter(xmlFilter);

            if (fc.Run() == (int)Gtk.ResponseType.Accept)
            {
                try
                {
                    // Must use the RunGetData before each export or there is no data.
                    System.Collections.Specialized.ListDictionary ld = this.GetParmeters(this.parameters);		// split parms into dictionary
                    report.RunGetData(ld);

                    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";
                        }
                    }
                    else if(fc.Filter.Name == "PDF")
                    {
                        exportType = OutputPresentationType.PDF;
                        if (filename.ToLower().Trim().EndsWith(".pdf") == false)
                        {
                            filename = filename + ".pdf";
                        }
                    }
                    else if(fc.Filter.Name == "ASP HTML")
                    {
                        exportType = OutputPresentationType.ASPHTML;
                        if (filename.ToLower().Trim().EndsWith(".asphtml") == false)
                        {
                            filename = filename + ".asphtml";
                        }
                    }
                    else if(fc.Filter.Name == "Excel 2003")
                    {
                        exportType = OutputPresentationType.Excel;
                        if (filename.ToLower().Trim().EndsWith(".xlsx") == false)
                        {
                            filename = filename + ".xlsx";
                        }
                    }
                    else if(fc.Filter.Name == "HTML")
                    {
                        exportType = OutputPresentationType.HTML;
                        if (filename.ToLower().Trim().EndsWith(".html") == false)
                        {
                            filename = filename + ".html";
                        }
                    }
                    else if(fc.Filter.Name == "MHTML")
                    {
                        exportType = OutputPresentationType.MHTML;
                        if (filename.ToLower().Trim().EndsWith(".mhtml") == false)
                        {
                            filename = filename + ".mhtml";
                        }
                    }
                    else if(fc.Filter.Name == "XML")
                    {
                        exportType = OutputPresentationType.XML;
                        if (filename.ToLower().Trim().EndsWith(".xml") == false)
                        {
                            filename = filename + ".xml";
                        }
                    }

                    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();
        }
		void AddClicked (object sender, EventArgs args)
		{
			Gtk.FileChooserDialog dialog = new Gtk.FileChooserDialog (
			        Catalog.GetString ("Select an icon..."),
			        null, Gtk.FileChooserAction.Open, new object[] {});
			dialog.AddButton (Gtk.Stock.Cancel, Gtk.ResponseType.Cancel);
			dialog.AddButton (Gtk.Stock.Open, Gtk.ResponseType.Ok);

			dialog.DefaultResponse = Gtk.ResponseType.Ok;
			dialog.LocalOnly = true;
			dialog.SetCurrentFolder (last_opened_dir);

			Gtk.FileFilter filter = new Gtk.FileFilter ();
			filter.AddPixbufFormats ();

			dialog.Filter = filter;

			// Extra Widget
			Gtk.Label l = new Gtk.Label (Catalog.GetString ("_Host name:"));
			Gtk.Entry host_entry = new Gtk.Entry ();
			l.MnemonicWidget = host_entry;
			Gtk.HBox hbox = new Gtk.HBox (false, 6);
			hbox.PackStart (l, false, false, 0);
			hbox.PackStart (host_entry, true, true, 0);
			hbox.ShowAll ();

			dialog.ExtraWidget = hbox;

			int response;
			string icon_file;
			string host;

run_add_dialog:
			response = dialog.Run ();
			icon_file = dialog.Filename;
			host = host_entry.Text.Trim ();

			if (response == (int) Gtk.ResponseType.Ok
			                && host == String.Empty) {
				// Let the user know that they
				// have to specify a host name.
				HIGMessageDialog warn =
				        new HIGMessageDialog (
				        null,
				        Gtk.DialogFlags.DestroyWithParent,
				        Gtk.MessageType.Warning,
				        Gtk.ButtonsType.Ok,
				        Catalog.GetString ("No host name specified"),
				        Catalog.GetString ("You must specify the Bugzilla " +
				                           "host name to use with this icon."));
				warn.Run ();
				warn.Destroy ();

				host_entry.GrabFocus ();
				goto run_add_dialog;
			} else if (response != (int) Gtk.ResponseType.Ok) {
				dialog.Destroy ();
				return;
			}

			// Keep track of the last directory the user had open
			last_opened_dir = dialog.CurrentFolder;

			dialog.Destroy ();

			// Copy the file to the BugzillaIcons directory
			string err_msg;
			if (!CopyToBugizllaIconsDir (icon_file, host, out err_msg)) {
				HIGMessageDialog err =
				        new HIGMessageDialog (
				        null,
				        Gtk.DialogFlags.DestroyWithParent,
				        Gtk.MessageType.Error,
				        Gtk.ButtonsType.Ok,
				        Catalog.GetString ("Error saving icon"),
				        Catalog.GetString ("Could not save the icon file.") +
					                   "  " +
					                   err_msg);
				err.Run ();
				err.Destroy ();
			}

			UpdateIconStore ();
		}
Example #36
0
        public void Initialize(IEnumerable<FileDialogFilter> filters, bool multiselect, string initialFileName)
        {
            Initialize (multiselect);

            if (!string.IsNullOrEmpty (initialFileName))
                dialog.CurrentName = initialFileName;

            this.filters = filters.ToList ();
            gtkFilters = new List<Gtk.FileFilter> ();

            foreach (var filter in filters) {
                var gf = new Gtk.FileFilter ();
                gtkFilters.Add (gf);
                if (!string.IsNullOrEmpty (filter.Name))
                    gf.Name = filter.Name;
                if (filter.Patterns != null)
                    foreach (var pattern in filter.Patterns)
                        gf.AddPattern (pattern);
            }

            foreach (var filter in gtkFilters)
                dialog.AddFilter (filter);
        }
Example #37
0
		public void AddFilter(string mimeType, string name)
		{
			Gtk.FileFilter mimeFilter = new Gtk.FileFilter();
			mimeFilter.Name = name;
			mimeFilter.AddMimeType(mimeType);
			AddFilter(mimeFilter);
		}
Example #38
0
        private void HandleSaveAction(object sender, EventArgs e)
        {
            Gui.CustomFileChooserDialog dlg =
                new Gui.CustomFileChooserDialog(this, "Save", Gtk.FileChooserAction.Save);

            dlg.FileChooser.SelectMultiple = false;

            using (Gtk.FileFilter filter = new Gtk.FileFilter())
            {
                filter.Name = "DGLE Bitmap Fonts";
                filter.AddMimeType("font/dft");
                filter.AddPattern("*.dft");
                dlg.FileChooser.AddFilter(filter);
            }

            using (Gtk.FileFilter filter = new Gtk.FileFilter())
            {
                filter.Name = "All";
                filter.AddPattern("*.*");
                dlg.FileChooser.AddFilter(filter);
            }

            dlg.FileChooser.CurrentName =
                String.Format(@"{0}_{1}", fontService.Family.Name, fontService.Size);

            dlg.Ok += (sender1, e1) =>
            {
                string fileName = System.IO.Path.GetFullPath(dlg.FileChooser.Filename);
                fontPreviewImage.DftUtil.Save(fileName, fontService);
                dlg.Destroy();
            };

            dlg.Cancel += (sender2, e2) =>
                dlg.Destroy();

            dlg.Show();
        }
Example #39
0
		private void AddDefaultFilter()
		{
			Gtk.FileFilter noneFilter = new Gtk.FileFilter();
			noneFilter.Name = "All Files";
			noneFilter.AddPattern("*");
			AddFilter(noneFilter);
		}
Example #40
0
        public void Import()
        {
            var chooser = Banshee.Gui.Dialogs.FileChooserDialog.CreateForImport (Catalog.GetString ("Import eMusic Downloads to Library"), true);
            Gtk.FileFilter ff = new Gtk.FileFilter ();
            ff.Name = Catalog.GetString ("eMusic Files");
            ff.AddPattern ("*.emx");
            chooser.AddFilter (ff);

            if (chooser.Run () == (int)Gtk.ResponseType.Ok) {
                ServiceManager.Get<EmusicService> ().ImportEmx (chooser.Uris);
            }

            chooser.Destroy ();
        }
Example #41
0
        void AddClicked(object sender, EventArgs args)
        {
            Gtk.FileChooserDialog dialog = new Gtk.FileChooserDialog(
                Catalog.GetString("Select an icon..."),
                null, Gtk.FileChooserAction.Open, new object[] {});
            dialog.AddButton(Gtk.Stock.Cancel, Gtk.ResponseType.Cancel);
            dialog.AddButton(Gtk.Stock.Open, Gtk.ResponseType.Ok);

            dialog.DefaultResponse = Gtk.ResponseType.Ok;
            dialog.LocalOnly       = true;
            dialog.SetCurrentFolder(last_opened_dir);

            Gtk.FileFilter filter = new Gtk.FileFilter();
            filter.AddPixbufFormats();

            dialog.Filter = filter;

            // Extra Widget
            Gtk.Label l          = new Gtk.Label(Catalog.GetString("_Host name:"));
            Gtk.Entry host_entry = new Gtk.Entry();
            l.MnemonicWidget = host_entry;
            Gtk.HBox hbox = new Gtk.HBox(false, 6);
            hbox.PackStart(l, false, false, 0);
            hbox.PackStart(host_entry, true, true, 0);
            hbox.ShowAll();

            dialog.ExtraWidget = hbox;

            int    response;
            string icon_file;
            string host;

run_add_dialog:
            response  = dialog.Run();
            icon_file = dialog.Filename;
            host      = host_entry.Text.Trim();

            if (response == (int)Gtk.ResponseType.Ok &&
                host == String.Empty)
            {
                // Let the user know that they
                // have to specify a host name.
                HIGMessageDialog warn =
                    new HIGMessageDialog(
                        null,
                        Gtk.DialogFlags.DestroyWithParent,
                        Gtk.MessageType.Warning,
                        Gtk.ButtonsType.Ok,
                        Catalog.GetString("No host name specified"),
                        Catalog.GetString("You must specify the Bugzilla " +
                                          "host name to use with this icon."));
                warn.Run();
                warn.Destroy();

                host_entry.GrabFocus();
                goto run_add_dialog;
            }
            else if (response != (int)Gtk.ResponseType.Ok)
            {
                dialog.Destroy();
                return;
            }

            // Keep track of the last directory the user had open
            last_opened_dir = dialog.CurrentFolder;

            dialog.Destroy();

            // Copy the file to the BugzillaIcons directory
            string err_msg;

            if (!CopyToBugizllaIconsDir(icon_file, host, out err_msg))
            {
                HIGMessageDialog err =
                    new HIGMessageDialog(
                        null,
                        Gtk.DialogFlags.DestroyWithParent,
                        Gtk.MessageType.Error,
                        Gtk.ButtonsType.Ok,
                        Catalog.GetString("Error saving icon"),
                        Catalog.GetString("Could not save the icon file.") +
                        "  " +
                        err_msg);
                err.Run();
                err.Destroy();
            }

            UpdateIconStore();
        }
Example #42
0
        private static bool DlgSelectFile(string back, string title, Gtk.Window main, Gtk.FileChooserAction action, ref string fileName, string filter)
        {
            var dlg = new Gtk.FileChooserDialog(
                      			back, title, main, action,
                                            "Cancel", Gtk.ResponseType.Cancel,
                                      		"Ok", Gtk.ResponseType.Ok
            );

            var fileFilter = new  Gtk.FileFilter();

            try {
                fileFilter.Name = filter.Substring ( filter.IndexOf( "." ) + 1 ) + " files";
            } catch(Exception) {
                fileFilter.Name = filter;
            }

            fileFilter.AddPattern( filter );
            dlg.AddFilter( fileFilter );
            dlg.SetFilename( fileName );
            Gtk.ResponseType result = (Gtk.ResponseType) dlg.Run();

            fileName = dlg.Filename;
            dlg.Destroy();
            return ( result == Gtk.ResponseType.Ok );
        }
Example #43
0
        public Settings()
        {
            try
            {
                this.Build();
                if (Environment.OSVersion.Platform == PlatformID.Win32NT)
                {
                    Gtk.FileFilter filter = new Gtk.FileFilter();
                    filter.Name = "Executable";
                    filter.AddMimeType("Executable/exe");
                    filter.AddPattern("*.exe");
                    ProgramPathChoose.AddFilter(filter);
                }

                KeepPPChkBox.Active      = MySettings.KeepPP;
                AutothreadsChkBox.Active = MySettings.AutoThreads;
                if (MySettings.AutoThreads == true)
                {
                    ThreadcountSpin.Sensitive = false;
                }
                else
                {
                    ThreadcountSpin.Sensitive = true;
                }
                ThreadcountSpin.Value = MySettings.Threads;
                ProgramPathChoose.SetFilename(MySettings.ProgramPath);
                QualitySpin.Value     = MySettings.JPGQuality;
                CompressChkBox.Active = MySettings.TiffCompress;
                ProgramSelBox.Active  = MySettings.Program;
                RTpath = MySettings.RT;
                LRpath = MySettings.LR;
                switch (MySettings.Program)
                {
                case 0:
                    ProgramPathLabel.LabelProp = "Path to Rawtherapee:";
                    ProgramPathChoose.SetFilename(RTpath);
                    break;

                case 1:
                    ProgramPathLabel.LabelProp = "Path to Lightroom:";
                    ProgramPathChoose.SetFilename(LRpath);
                    break;
                }
                switch (MySettings.SavingFormat)
                {
                case (0):
                    SavingFormatBox.Active   = 0;
                    CompressChkBox.Sensitive = false;
                    return;

                case (1):
                    SavingFormatBox.Active   = 1;
                    CompressChkBox.Sensitive = false;
                    BitDepthBox.Active       = MySettings.BitDepthPNG;
                    return;

                case (2):
                    SavingFormatBox.Active   = 2;
                    CompressChkBox.Sensitive = true;
                    BitDepthBox.Active       = MySettings.BitDepthTiff;
                    return;
                }
            }
            catch (Exception ex) { ErrorReport.ReportError("Init (Settings)", ex); }
        }
Example #44
0
        protected void OnSaveButtonClicked(object sender, System.EventArgs e)
        {
            object [] param = new object[4];
            param[0] = "Cancel";
            param[1] = Gtk.ResponseType.Cancel;
            param[2] = "Save";
            param[3] = Gtk.ResponseType.Accept;

            Gtk.FileChooserDialog fc =
                new Gtk.FileChooserDialog("Save File As",
                                          null,
                                          Gtk.FileChooserAction.Save,
                                          param);

            Gtk.FileFilter pdfFilter = new Gtk.FileFilter();
            pdfFilter.Name = "PDF";

            Gtk.FileFilter csvFilter = new Gtk.FileFilter();
            csvFilter.Name = "CSV";

            Gtk.FileFilter asphtmlFilter = new Gtk.FileFilter();
            asphtmlFilter.Name = "ASP HTML";

            Gtk.FileFilter excel2003 = new Gtk.FileFilter();
            excel2003.Name = "Excel 2003";

            Gtk.FileFilter htmlFilter = new Gtk.FileFilter();
            htmlFilter.Name = "HTML";

            Gtk.FileFilter mhtmlFilter = new Gtk.FileFilter();
            mhtmlFilter.Name = "MHTML";

            Gtk.FileFilter rtfFilter = new Gtk.FileFilter();
            rtfFilter.Name = "RTF";

            Gtk.FileFilter xmlFilter = new Gtk.FileFilter();
            xmlFilter.Name = "XML";

            fc.AddFilter(pdfFilter);
            fc.AddFilter(csvFilter);
            fc.AddFilter(asphtmlFilter);
            fc.AddFilter(excel2003);
            fc.AddFilter(htmlFilter);
            fc.AddFilter(mhtmlFilter);
            fc.AddFilter(xmlFilter);

            if (fc.Run() == (int)Gtk.ResponseType.Accept)
            {
                try
                {
                    // Must use the RunGetData before each export or there is no data.
                    System.Collections.Specialized.ListDictionary ld = this.GetParmeters(this.parameters);                              // split parms into dictionary
                    report.RunGetData(ld);

                    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";
                        }
                    }
                    else if (fc.Filter.Name == "PDF")
                    {
                        exportType = OutputPresentationType.PDF;
                        if (filename.ToLower().Trim().EndsWith(".pdf") == false)
                        {
                            filename = filename + ".pdf";
                        }
                    }
                    else if (fc.Filter.Name == "ASP HTML")
                    {
                        exportType = OutputPresentationType.ASPHTML;
                        if (filename.ToLower().Trim().EndsWith(".asphtml") == false)
                        {
                            filename = filename + ".asphtml";
                        }
                    }
                    else if (fc.Filter.Name == "Excel 2003")
                    {
                        exportType = OutputPresentationType.Excel;
                        if (filename.ToLower().Trim().EndsWith(".xlsx") == false)
                        {
                            filename = filename + ".xlsx";
                        }
                    }
                    else if (fc.Filter.Name == "HTML")
                    {
                        exportType = OutputPresentationType.HTML;
                        if (filename.ToLower().Trim().EndsWith(".html") == false)
                        {
                            filename = filename + ".html";
                        }
                    }
                    else if (fc.Filter.Name == "MHTML")
                    {
                        exportType = OutputPresentationType.MHTML;
                        if (filename.ToLower().Trim().EndsWith(".mhtml") == false)
                        {
                            filename = filename + ".mhtml";
                        }
                    }
                    else if (fc.Filter.Name == "XML")
                    {
                        exportType = OutputPresentationType.XML;
                        if (filename.ToLower().Trim().EndsWith(".xml") == false)
                        {
                            filename = filename + ".xml";
                        }
                    }

                    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();
        }
Example #45
0
 public void RemoveFilter(Gtk.FileFilter filter)
 {
     gtk_file_chooser_remove_filter(Handle, filter == null ? IntPtr.Zero : filter.Handle);
 }
Example #46
0
        private void InitCredentialsPage()
        {
            f_CredentialsWidget = new EngineAssistantCredentialsWidget();

            AppendPage(f_CredentialsWidget);
            SetPageTitle(f_CredentialsWidget, _("Credentials"));
            SetPageType(f_CredentialsWidget, Gtk.AssistantPageType.Content);
            Prepare += delegate(object sender, Gtk.PrepareArgs e) {
                if (e.Page != f_CredentialsWidget) {
                    return;
                }
                CheckCredentialsPage();
            };

            f_CredentialsWidget.SshUsernameEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.UsernameEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.PasswordEntry.Changed += delegate {
                CheckCredentialsPage();
            };
            f_CredentialsWidget.VerifyPasswordEntry.Changed += delegate {
                CheckCredentialsPage();
            };

            // HACK: only show the SSH password field if plink is present as
            // OpenSSH doesn't support passing passwords via command line
            f_CredentialsWidget.SshPasswordVBox.Visible = IsPutty;

            if (IsPutty) {
                // Plink always requires a SSH username, thus
                // remove the (optional) portion from the label
                f_CredentialsWidget.SshUsernameLabel.Text = Regex.Replace(
                    f_CredentialsWidget.SshUsernameLabel.Text, @"\(.*?\)", ""
                );

                // PuTTY/Plink does not support OpenSSH key files but .ppk
                var filter = new Gtk.FileFilter();
                filter.Name = "PuTTY/Plink key files (*.ppk)";
                filter.AddPattern("*.ppk");
                f_CredentialsWidget.SshKeyfileChooserButton.AddFilter(filter);
            }

            if (f_EngineName != null) {
                f_CredentialsWidget.SshUsernameEntry.Text = (string)
                    f_Config["Engines/" + f_EngineName + "/SshUsername"];
                f_CredentialsWidget.SshPasswordEntry.Text = (string)
                    f_Config["Engines/" + f_EngineName + "/SshPassword"];
                var sshKeyfile = (string)
                    f_Config["Engines/" + f_EngineName + "/SshKeyfile"];
                if (!String.IsNullOrEmpty(sshKeyfile)) {
                    f_CredentialsWidget.SshKeyfileChooserButton.SetFilename(
                        sshKeyfile
                    );
                }
                var sshPath = IOPath.Combine(
                    Environment.GetFolderPath(
                        Environment.SpecialFolder.Personal
                    ),
                    ".ssh"
                );
                if (Directory.Exists(sshPath)) {
                    f_CredentialsWidget.SshKeyfileChooserButton.SetCurrentFolder(
                        sshPath
                    );
                }
                f_CredentialsWidget.UsernameEntry.Text = (string)
                    f_Config["Engines/" + f_EngineName + "/Username"];
                f_CredentialsWidget.PasswordEntry.Text = (string)
                    f_Config["Engines/" + f_EngineName + "/Password"];
                f_CredentialsWidget.VerifyPasswordEntry.Text = (string)
                    f_Config["Engines/" + f_EngineName + "/Password"];
            }
        }