Пример #1
0
        public void Run(FSpot.IBrowsableCollection photos)
        {
            if (null == photos)
            {
                throw new ArgumentNullException("photos");
            }

            this.photos = photos;

            Glade.XML glade_xml = new Glade.XML(
                null, "TabbloExport.glade", DialogName,
                "f-spot");
            glade_xml.Autoconnect(this);

            dialog = (Gtk.Dialog)glade_xml.GetWidget(DialogName);

            FSpot.Widgets.IconView icon_view =
                new FSpot.Widgets.IconView(photos);
            icon_view.DisplayDates = false;
            icon_view.DisplayTags  = false;

            username_entry.Changed += HandleAccountDataChanged;
            password_entry.Changed += HandleAccountDataChanged;
            ReadAccountData();
            HandleAccountDataChanged(null, null);

            dialog.Modal        = false;
            dialog.TransientFor = null;

            dialog.Response += HandleResponse;

            thumb_scrolled_window.Add(icon_view);
            icon_view.Show();
            dialog.Show();
        }
Пример #2
0
        public void Run(IBrowsableCollection selection)
        {
            CreateDialog();

            items = selection.Items;

            if (items.Length > 60)
            {
                HigMessageDialog mbox = new HigMessageDialog(Dialog, Gtk.DialogFlags.DestroyWithParent | Gtk.DialogFlags.Modal, Gtk.MessageType.Error, Gtk.ButtonsType.Ok, Catalog.GetString("Too many images to export"), Catalog.GetString("Facebook only permits 60 photographs per album.  Please refine your selection and try again."));
                mbox.Run();
                mbox.Destroy();
                return;
            }

            captions = new string [items.Length];
            tags     = new List <Mono.Facebook.Tag> [items.Length];

            thumbnail_iconview = new FSpot.Widgets.IconView(selection);
            thumbnail_iconview.DisplayDates      = false;
            thumbnail_iconview.DisplayTags       = false;
            thumbnail_iconview.ButtonPressEvent += HandleThumbnailIconViewButtonPressEvent;
            thumbnail_iconview.KeyPressEvent    += HandleThumbnailIconViewKeyPressEvent;
            thumbnail_iconview.Show();
            thumbnails_scrolled_window.Add(thumbnail_iconview);

            login_button.Visible  = true;
            login_button.Clicked += HandleLoginClicked;

            logout_button.Visible  = false;
            logout_button.Clicked += HandleLogoutClicked;

            whoami_label.Text = Catalog.GetString("You are not logged in.");

            album_info_vbox.Sensitive   = false;
            picture_info_vbox.Sensitive = false;

            create_album_radiobutton.Toggled += HandleCreateAlbumToggled;
            create_album_radiobutton.Active   = true;

            existing_album_radiobutton.Toggled += HandleExistingAlbumToggled;

            CellRendererText cell = new CellRendererText();

            existing_album_combobox.PackStart(cell, false);

            tag_image_eventbox.ButtonPressEvent += HandleTagImageButtonPressEvent;

            Dialog.Response += HandleResponse;
            Dialog.Show();
        }
Пример #3
0
        internal TabbloExportView(FSpot.IBrowsableCollection photos)
            : base(Assembly.GetExecutingAssembly (),
					"TabbloExport.ui", DialogName)
        {
            // Thumbnails
            FSpot.Widgets.IconView icon_view =
                    new FSpot.Widgets.IconView (photos);
            icon_view.DisplayDates = false;
            icon_view.DisplayTags = false;

            thumb_scrolled_window.Add (icon_view);
            icon_view.Show ();

            // Tags
            attached_tags_view = new FSpot.Widgets.TagView ();
            attached_tags_alignment.Add (attached_tags_view);
            attached_tags_view.Show ();

            removed_tags_view = new FSpot.Widgets.TagView ();
            removed_tags_alignment.Add (removed_tags_view);
            removed_tags_view.Show ();
        }
		public void Run (FSpot.IBrowsableCollection photos)
		{
			if (null == photos) {
				throw new ArgumentNullException ("photos");
			}

			this.photos = photos;

			Glade.XML glade_xml = new Glade.XML (
					null, "TabbloExport.glade", DialogName,
					"f-spot");
			glade_xml.Autoconnect (this);

			dialog = (Gtk.Dialog) glade_xml.GetWidget (DialogName);

			FSpot.Widgets.IconView icon_view =
					new FSpot.Widgets.IconView (photos);
			icon_view.DisplayDates = false;
			icon_view.DisplayTags = false;

			username_entry.Changed += HandleAccountDataChanged;
			password_entry.Changed += HandleAccountDataChanged;
			ReadAccountData ();
			HandleAccountDataChanged (null, null);

			dialog.Modal = false;
			dialog.TransientFor = null;

			dialog.Response += HandleResponse;

			thumb_scrolled_window.Add (icon_view);
			icon_view.Show ();
			dialog.Show ();
		}
		public void Run (IBrowsableCollection selection)
		{
			CreateDialog ();

			items = selection.Items;

			if (items.Length > 60) {
				HigMessageDialog mbox = new HigMessageDialog (Dialog, Gtk.DialogFlags.DestroyWithParent | Gtk.DialogFlags.Modal, Gtk.MessageType.Error, Gtk.ButtonsType.Ok, Catalog.GetString ("Too many images to export"), Catalog.GetString ("Facebook only permits 60 photographs per album.  Please refine your selection and try again."));
				mbox.Run ();
				mbox.Destroy ();
				return;
			}

			captions = new string [items.Length];
			tags = new List<Mono.Facebook.Tag> [items.Length];

			thumbnail_iconview = new FSpot.Widgets.IconView (selection);
			thumbnail_iconview.DisplayDates = false;
			thumbnail_iconview.DisplayTags = false;
			thumbnail_iconview.ButtonPressEvent += HandleThumbnailIconViewButtonPressEvent;
			thumbnail_iconview.KeyPressEvent += HandleThumbnailIconViewKeyPressEvent;
			thumbnail_iconview.Show ();
			thumbnails_scrolled_window.Add (thumbnail_iconview);

			login_button.Visible = true;
			login_button.Clicked += HandleLoginClicked;

			logout_button.Visible = false;
			logout_button.Clicked += HandleLogoutClicked;

			whoami_label.Text = Catalog.GetString ("You are not logged in.");

			album_info_vbox.Sensitive = false;
			picture_info_vbox.Sensitive = false;

			create_album_radiobutton.Toggled += HandleCreateAlbumToggled;
			create_album_radiobutton.Active = true;

			existing_album_radiobutton.Toggled += HandleExistingAlbumToggled;

			CellRendererText cell = new CellRendererText ();
			existing_album_combobox.PackStart (cell, false);

			tag_image_eventbox.ButtonPressEvent += HandleTagImageButtonPressEvent;

			Dialog.Response += HandleResponse;
			Dialog.Show ();
		}
Пример #6
0
        public FacebookExportDialog(IBrowsableCollection selection)
            : base(Assembly.GetExecutingAssembly (), "FacebookExport.ui", "facebook_export_dialog")
        {
            // Sort selection by date ascending
            items = selection.Items;
            Array.Sort (items, new DateComparer ());
            current_item = -1;

            captions = new string [selection.Items.Length];
            tags = new List<Mono.Facebook.Tag> [selection.Items.Length];

            thumbnail_iconview = new FSpot.Widgets.IconView (selection);
            thumbnail_iconview.DisplayDates = false;
            thumbnail_iconview.DisplayTags = false;
            thumbnail_iconview.DisplayRatings = false;
            thumbnail_iconview.ButtonPressEvent += HandleThumbnailIconViewButtonPressEvent;
            thumbnail_iconview.KeyPressEvent += delegate (object sender, KeyPressEventArgs e) {(sender as FSpot.Widgets.IconView).Selection.Clear(); };
            thumbnails_scrolled_window.Add (thumbnail_iconview);
            thumbnail_iconview.Show ();

            login_button.Clicked += HandleLoginClicked;
            logout_button.Clicked += HandleLogoutClicked;
            offline_perm_check.Toggled += HandlePermissionToggled;
            photo_perm_check.Toggled += HandlePermissionToggled;

            create_album_radiobutton.Toggled += HandleCreateAlbumToggled;
            create_album_radiobutton.Active = true;

            existing_album_radiobutton.Toggled += HandleExistingAlbumToggled;

            CellRendererText cell = new CellRendererText ();
            existing_album_combobox.PackStart (cell, true);
            existing_album_combobox.SetAttributes (cell, "text", 0);

            tag_image_eventbox.ButtonPressEvent += HandleTagImageButtonPressEvent;

            tag_treeview.Sensitive = false;
            caption_textview.Sensitive = false;

            DoLogout ();

            account = new FacebookAccount();
            if (account.Authenticated)
                DoLogin ();
        }