示例#1
0
        private void PopulateAlbumOptionMenu(PicasaWeb picasa)
        {
            PicasaAlbumCollection albums = null;

            if (picasa != null)
            {
                try {
                    albums = picasa.GetAlbums();
                } catch {
                    Console.WriteLine("Can't get the albums");
                    picasa = null;
                }
            }

            Gtk.Menu menu = new Gtk.Menu();

            bool disconnected = picasa == null || !account.Connected || albums == null;

            if (disconnected || albums.Count == 0)
            {
                string msg = disconnected ? Catalog.GetString("(Not Connected)")
                                        : Catalog.GetString("(No Albums)");

                Gtk.MenuItem item = new Gtk.MenuItem(msg);
                menu.Append(item);

                ok_button.Sensitive        = false;
                album_optionmenu.Sensitive = false;
                album_button.Sensitive     = false;

                if (disconnected)
                {
                    album_button.Sensitive = false;
                }
            }
            else
            {
                foreach (PicasaAlbum album in albums.AllValues)
                {
                    System.Text.StringBuilder label_builder = new System.Text.StringBuilder();

                    label_builder.Append(album.Title);

                    Gtk.MenuItem item = new Gtk.MenuItem(label_builder.ToString());
                    ((Gtk.Label)item.Child).UseUnderline = false;
                    menu.Append(item);
                }

                ok_button.Sensitive        = items.Length > 0;
                album_optionmenu.Sensitive = true;
                album_button.Sensitive     = true;
            }

            menu.ShowAll();
            album_optionmenu.Menu = menu;
        }
示例#2
0
 public PicasaAlbumCollection getAllAlbums()
 {
     return(web.GetAlbums());
 }