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); }
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; }