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);
 }
예제 #2
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;
 }
예제 #4
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);
        }
예제 #5
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);
        }
예제 #6
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;
        }
예제 #7
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();
        }
예제 #8
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); }
        }
        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 ();
        }
예제 #10
0
		public void AddFilter(string mimeType, string name)
		{
			Gtk.FileFilter mimeFilter = new Gtk.FileFilter();
			mimeFilter.Name = name;
			mimeFilter.AddMimeType(mimeType);
			AddFilter(mimeFilter);
		}
예제 #11
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();
        }