Пример #1
0
		static void GetFeed(string ticket)
		{
			nv = new NameValueCollection ();
			nv.Add ("ticket", ticket);
			XmlNodeList nl = Request (
				"http://live.nicovideo.jp/api/getalertstatus",
				@"//communities|//addr|//port|//thread",
				nv);
			if (nl.Count == 0) {
				Console.WriteLine ("チケットの値が不正です");
				LoginRequest ();
				return;
			}
			Server sv = new Server ();
			Notebook nb = new Notebook ();
			nb.AppendPage(sv.Page_all (), new MultiTab("最新の放送",nb));
			nb.AppendPage(sv.Page_mylist (), new MultiTab("お気に入り",nb));
			nb.AppendPage(Page_tab ("common"), new MultiTab("タブ(一般)",nb));
			nb.AppendPage(Page_tab ("live"), new MultiTab("タブ(ゲーム)",nb));
			nb.AppendPage(Page_tab ("face"), new MultiTab("タブ(顔出し)",nb));
			nb.AppendPage(Page_tab ("totu"), new MultiTab("タブ(凸待ち)",nb));
			nb.AppendPage(Page_tab ("req"), new MultiTab("タブ(動画紹介)",nb));
			nb.AppendPage(Page_tab ("try"), new MultiTab("タブ(やってみた)",nb));
			nb.AppendPage(Page_tab ("r18"), new MultiTab("タブ(R―18)",nb));

			//nb.SwitchPage += (sender, e) => PageChangedEvent(sender, e);

			Gtk.Window window = new Gtk.Window ("ニコ生フィーダー v1.0");
			window.DeleteEvent += new DeleteEventHandler (OnQuit);
			window.SetSizeRequest (300, 550);
			window.KeepAbove = true;
			Toolbar bar = new Toolbar ();
			ToggleToolButton sendBackBtn = new ToggleToolButton ();

			sendBackBtn.Toggled += (sender, e) => SendBack(sender, e, ref window);
			sendBackBtn.TooltipText = "最前面での固定を解除";
			ToggleToolButton logoutBtn = new ToggleToolButton ();
			logoutBtn.TooltipText = "ログアウト";
			logoutBtn.Clicked += (sender, e) => Logout(sender, e, ref window);

			bar.HeightRequest = 25;

			Gtk.Image img = new Gtk.Image();
			img.Pixbuf = new Gdk.Pixbuf("go_back.png",12,12);
			sendBackBtn.IconWidget = img;

			Gtk.Image img2 = new Gtk.Image();
			img2.Pixbuf = new Gdk.Pixbuf("logout.png",16,16);
			logoutBtn.IconWidget = img2;
			logoutBtn.HeightRequest = 25;
			sendBackBtn.HeightRequest = 25;
			bar.Add (logoutBtn);
			bar.Add (sendBackBtn);
			bar.ShowAll ();

			VBox vbox = new VBox(false, 0);
			vbox.PackStart (bar, false, true, 0);
			vbox.PackStart (nb, true, true, 0);
			window.Add (vbox);
			window.ShowAll ();
			window.Focus = nb;
			MainClass.communities = nl [0].InnerText;
			sv.receiveFromServer (nl [1].InnerText, nl [2].InnerText, nl [3].InnerText);
		}
Пример #2
0
		public static ScrolledWindow Page_tab(string tab)
		{
			Server sv = new Server ();
			ScrolledWindow sc = new ScrolledWindow();
			var ls = new Gtk.ListStore (
				typeof(Gdk.Pixbuf),
				typeof(string),
				typeof(string),
				typeof(string),
				typeof(string),
				typeof(long),
				typeof(string)
			);
			var tree = sv.CreateTree (ls);
			sc.HscrollbarPolicy = PolicyType.Automatic;
			sc.VscrollbarPolicy = PolicyType.Always;
//			sc.GrabBrokenEvent += ScHiddenEvent;
			sc.Add (tree);
			sc.Realized += (sender, e) => TreeRenderingEvent(sender, e, tab, tree, ls);
			return sc;
		}