コード例 #1
0
ファイル: ImportDialog.cs プロジェクト: cizma/f-spot
		void BuildUI (Window parent)
		{
			TransientFor = parent;
			WindowPosition = WindowPosition.CenterOnParent;

			photo_view = new PhotoImageView (Controller.Photos);
			photo_scrolled.Add (photo_view);
			photo_scrolled.SetSizeRequest (200, 200);
			photo_view.Show ();

			GtkUtil.ModifyColors (photo_scrolled);
			GtkUtil.ModifyColors (photo_view);

			var tray = new BrowseablePointerGridView (photo_view.Item) {
				DisplayTags = false
			};
			icon_scrolled.Add (tray);
			tray.Show ();

			progress_bar.Hide ();

			import_button.Sensitive = false;

			tag_entry = new TagEntry (App.Instance.Database.Tags, false);
			tag_entry.UpdateFromTagNames (new string []{});
			tagentry_box.Add (tag_entry);
			tag_entry.Show ();
			attachtags_label.MnemonicWidget = tag_entry;
		}
コード例 #2
0
        private bool SetupEditor(Editor editor)
        {
            EditorState state = editor.CreateState();

            EditorSelection selection  = new EditorSelection();
            PhotoImageView  photo_view = MainWindow.Toplevel.PhotoView.View;

            if (Page.InPhotoView && photo_view != null)
            {
                if (photo_view.GetSelection(out selection.x, out selection.y,
                                            out selection.width, out selection.height))
                {
                    state.Selection = selection;
                }
                else
                {
                    state.Selection = null;
                }
                state.PhotoImageView = photo_view;
            }
            else
            {
                state.Selection      = null;
                state.PhotoImageView = null;
            }
            if (Page.Sidebar.Selection == null)
            {
                return(false);
            }
            state.Items = Page.Sidebar.Selection.Items;

            editor.Initialize(state);
            return(true);
        }
コード例 #3
0
ファイル: EditorPageWidget.cs プロジェクト: swgshaw/f-spot
        bool SetupEditor(Editor editor)
        {
            EditorState state = editor.CreateState();

            PhotoImageView photo_view = App.Instance.Organizer.PhotoView.View;

            if (Page.InPhotoView && photo_view != null)
            {
                state.Selection      = photo_view.Selection;
                state.PhotoImageView = photo_view;
            }
            else
            {
                state.Selection      = Gdk.Rectangle.Zero;
                state.PhotoImageView = null;
            }
            if ((Page.Sidebar as Sidebar).Selection == null)
            {
                return(false);
            }
            state.Items = (Page.Sidebar as Sidebar).Selection.Items.ToArray();

            editor.Initialize(state);
            return(true);
        }
コード例 #4
0
        public Loupe(PhotoImageView view) : base("Loupe")
        {
            this.view = view;
            Decorated = false;

            var win = (Gtk.Window)view.Toplevel;

            win.GetPosition(out old_win_pos.X, out old_win_pos.Y);
            win.ConfigureEvent += HandleToplevelConfigure;

            TransientFor      = win;
            DestroyWithParent = true;

            BuildUI();
        }
コード例 #5
0
ファイル: Loupe.cs プロジェクト: Yetangitu/f-spot
        public Loupe(PhotoImageView view)
            : base("Loupe")
        {
            this.view = view;
            Decorated = false;

            var win = (Gtk.Window) view.Toplevel;

            win.GetPosition (out old_win_pos.X, out old_win_pos.Y);
            win.ConfigureEvent += HandleToplevelConfigure;

            TransientFor = win;
            DestroyWithParent = true;

            BuildUI ();
        }
コード例 #6
0
ファイル: EditTagIconDialog.cs プロジェクト: iainlane/f-spot
        public EditTagIconDialog(Db db, Tag t, Gtk.Window parent_window)
            : base("EditTagIconDialog.ui", "edit_tag_icon_dialog")
        {
            this.db = db;
            TransientFor = parent_window;
            Title = String.Format (Catalog.GetString ("Edit Icon for Tag {0}"), t.Name);

            preview_pixbuf = t.Icon;
            Cms.Profile screen_profile;
            if (preview_pixbuf != null && FSpot.ColorManagement.Profiles.TryGetValue (Preferences.Get<string> (Preferences.COLOR_MANAGEMENT_DISPLAY_PROFILE), out screen_profile)) {
                preview_image.Pixbuf = preview_pixbuf.Copy ();
                ColorManagement.ApplyProfile (preview_image.Pixbuf, screen_profile);
            } else
                preview_image.Pixbuf = preview_pixbuf;

            query = new FSpot.PhotoQuery (db.Photos);

            if (db.Tags.Hidden != null)
                query.Terms = FSpot.OrTerm.FromTags (new Tag [] {t});
            else
                query.Terms = new FSpot.Literal (t);

            image_view = new PhotoImageView (query) {CropHelpers = false};
            image_view.SelectionXyRatio = 1.0;
            image_view.SelectionChanged += HandleSelectionChanged;
            image_view.PhotoChanged += HandlePhotoChanged;

            external_photo_chooser = new Gtk.FileChooserButton (Catalog.GetString ("Select Photo from file"),
                    Gtk.FileChooserAction.Open);

            external_photo_chooser.Filter = new FileFilter();
            external_photo_chooser.Filter.AddPixbufFormats();
                        external_photo_chooser.LocalOnly = false;
            external_photo_chooser_hbox.PackStart (external_photo_chooser);
            external_photo_chooser.Show ();
            external_photo_chooser.SelectionChanged += HandleExternalFileSelectionChanged;

            photo_scrolled_window.Add (image_view);

            if (query.Count > 0) {
                photo_spin_button.Wrap = true;
                photo_spin_button.Adjustment.Lower = 1.0;
                photo_spin_button.Adjustment.Upper = (double) query.Count;
                photo_spin_button.Adjustment.StepIncrement = 1.0;
                photo_spin_button.ValueChanged += HandleSpinButtonChanged;

                image_view.Item.Index = 0;
            } else {
                from_photo_label.Markup = String.Format (Catalog.GetString (
                    "\n<b>From Photo</b>\n" +
                    " You can use one of your library photos as an icon for this tag.\n" +
                    " However, first you must have at least one photo associated\n" +
                    " with this tag. Please tag a photo as '{0}' and return here\n" +
                    " to use it as an icon."), t.Name);
                photo_scrolled_window.Visible = false;
                photo_label.Visible = false;
                photo_spin_button.Visible = false;
            }

            icon_store = new ListStore (typeof (string), typeof (Gdk.Pixbuf));

            icon_view = new Gtk.IconView (icon_store);
            icon_view.PixbufColumn = 1;
            icon_view.SelectionMode = SelectionMode.Single;
            icon_view.SelectionChanged += HandleIconSelectionChanged;

            icon_scrolled_window.Add (icon_view);

            icon_view.Show();

            image_view.Show ();

            FSpot.Delay fill_delay = new FSpot.Delay (FillIconView);
            fill_delay.Start ();
        }
コード例 #7
0
ファイル: Sharpener.cs プロジェクト: f-spot/f-spot-xplat
 public Sharpener(PhotoImageView view) : base(view)
 {
 }
コード例 #8
0
ファイル: Sharpener.cs プロジェクト: iainlane/f-spot
 public Sharpener(PhotoImageView view)
     : base(view)
 {
 }
コード例 #9
0
ファイル: AdjustTimeDialog.cs プロジェクト: Yetangitu/f-spot
        public AdjustTimeDialog(Db db, IBrowsableCollection collection)
            : base("AdjustTimeDialog.ui", "time_dialog")
        {
            this.db = db;
            this.collection = collection;

            view = new PhotoImageView (collection);
            view_scrolled.Add (view);
            item = view.Item;
            item.Changed += HandleItemChanged;
            item.MoveFirst ();

            tray = new BrowseablePointerGridView (view.Item) {
                MaxColumns = 1,
                DisplayRatings = false,
                DisplayTags = false,
                DisplayDates = true
            };
            tray_scrolled.Add (tray);

            //forward_button.Clicked += HandleForwardClicked;
            //back_button.Clicked += HandleBackClicked;
            ok_button.Clicked += HandleOkClicked;
            cancel_button.Clicked += HandleCancelClicked;

            photo_spin.ValueChanged += HandleSpinChanged;
            photo_spin.SetIncrements (1.0, 1.0);
            photo_spin.Adjustment.StepIncrement = 1.0;
            photo_spin.Wrap = true;

            date_edit.TimeChanged += HandleTimeChanged;
            date_edit.DateChanged += HandleTimeChanged;
            Gtk.Entry entry = (Gtk.Entry) date_edit.Children [0];
            entry.Changed += HandleTimeChanged;
            entry = (Gtk.Entry) date_edit.Children [2];
            entry.Changed += HandleTimeChanged;
            offset_entry.Changed += HandleOffsetChanged;
            ShowAll ();
            HandleCollectionChanged (collection);

            spacing_entry.Changed += HandleSpacingChanged;
            spacing_entry.Sensitive = ! difference_check.Active;

            difference_check.Toggled += HandleActionToggled;
        }