Beispiel #1
0
        public VideoPanel()
        {
            data = new List <EP_Info>();
            ScrollViewer sv = new ScrollViewer();

            viv.sv = sv;
            sv.VerticalScrollBarVisibility = ScrollBarVisibility.Hidden;

            viv.img                  = new Image();
            viv.map                  = new BitmapImage();
            viv.img.Source           = viv.map;
            viv.img.PointerReleased += (o, e) => {
                object t = viv.img.DataContext;
                if (t != null)
                {
                    VideoPage.PlayControl(t as string);
                }
            };
            viv.title        = new Button();
            viv.title.Click += (o, e) => {
                object t = viv.title.DataContext;
                if (t != null)
                {
                    VideoPage.PlayControl(t as string);
                }
            };
            viv.title.Background    = trans_brush;
            viv.title.Foreground    = title_brush;
            viv.detail              = CreateTextBlockNext();
            viv.detail.TextWrapping = TextWrapping.Wrap;
            viv.detail.Foreground   = font_brush;
            viv.gv             = new ListViewG();
            viv.gv.Visibility  = Visibility.Collapsed;
            viv.gv.DataContext = 170;
            viv.gv.GetListBox.SelectionChanged += (o, e) =>
            {
                int index = (o as ListView).SelectedIndex;
                if (index > -1)
                {
                    VideoPage.PlayControl(data[index].vid);
                }
            };
            ListBoxH lbh = new ListBoxH();
            ListBox  lb  = lbh.GetListBox;

            lb.Items.Add(o_play[Setting.language]);
            lb.Items.Add(o_downA[Setting.language]);
            lb.Foreground = font_brush;
            viv.option    = lbh;
            Canvas can = new Canvas();

            viv.can        = can;
            viv.sv.Content = can;
            can.Children.Add(viv.img);
            can.Children.Add(viv.title);
            can.Children.Add(viv.option);
            can.Children.Add(viv.detail);
            can.Children.Add(viv.gv);
        }
        void UpdateArea(ref Area ar)
        {
            List <ImageContext> lic = ar.context;
            int             len     = lic.Count;
            List <ItemModE> lim     = ar.items;
            int             c       = lim.Count;
            ItemModE        im;

            for (int i = 0; i < len; i++)
            {
                if (i >= c)
                {
                    im = Component.CreateItemMod();
                    im.button.Click += (o, e) => {
                        object ob = (o as Button).DataContext;
                        if (ob != null)
                        {
                            VideoPage.SetAdress(o as string);
                            PageManageEx.CreateNewPage(PageTag.videopage);
                        }
                    };
                    ar.can.Children.Add(im.can);
                    lim.Add(im);
                }
                im = lim[i];
                ImageContext ic = lic[i];
                if (ic.src == null)
                {
                    break;
                }
                (im.img.Source as BitmapImage).UriSource = new Uri(ic.src);
                im.button.DataContext = ic.href;
                if (ic.title == null)
                {
                    im.title.Text = "";
                }
                else
                {
                    im.title.Text = ic.title;
                }
                if (!ar.expand)
                {
                    im.can.Visibility = Visibility.Collapsed;
                }
            }
            for (int i = c - 1; i >= len; i--)
            {
                im = lim[i];
                lim.RemoveAt(i);
                //ReCycleItemMod(im.index);
            }
        }
Beispiel #3
0
 static void PlayEnd(object o, RoutedEventArgs e)
 {
     buff[current.play_part].Visibility = Visibility.Collapsed;
     current.play_part++;
     if (current.play_part < vic.part)
     {
         PlayChange();
     }
     else
     {
         string vid = VideoPage.GetNextVid(current.vid);
         if (vid != null)
         {
             Setvid(vid);
         }
     }
 }
        public static void Create(Canvas p, Thickness m)
        {
            if (tb != null)
            {
                ReSize(m);
                return;
            }
            double w = m.Right - m.Left;

            tb          = new TextBox();
            tb.KeyDown += s_keydown;
            tb.Width    = w - 30;
            p.Children.Add(tb);

            ok        = new SymbolIcon();
            ok.Symbol = Symbol.Find;
            Thickness tk = new Thickness();

            tk.Left             = w - 30;
            tk.Right            = w;
            ok.Margin           = tk;
            ok.PointerReleased += (s, e) => { Find(); };
            p.Children.Add(ok);


            m.Top    += 40;
            m.Right  -= 4;
            m.Bottom -= 10;
            sv        = new Scroll_S();
            sv.SetParent(p);
            sv.ReSize(m);
            sv.Getmore   = () => { loading = true; index += 15; part++; Find(); };
            sv.itemclick = (o) => {
                VideoPage.SetAdress(o as string);
                PageManageEx.CreateNewPage(PageTag.videopage);
            };
#if desktop
            sv.ShowBorder();
#endif
        }
Beispiel #5
0
        public static void Create(Canvas p, Thickness m)//parent,margin
        {
            margin = m;
            if (svb != null)
            {
                nb.can.Visibility = Visibility.Visible;
                nb.show_filter    = false;
                SettingChanged();
                ReSize(m);
                return;
            }
            load   = false;
            create = false;
            SetNav(0);
            parent        = p;
            svb           = new ScrollViewB();
            svb.itemclick = (o) =>
            {
                if (o != null)
                {
                    VideoPage.SetAdress(o as string);
                    PageManageEx.CreateNewPage(PageTag.videopage);
                }
            };
            lid = svb.data;
            svb.SetParent(p);
            svb.ReSize(m);
#if desktop
            svb.ShowBorder();
#endif
            buff_fid = new FilterItemData[8];
            create   = true;
            if (load)
            {
                Analyze();
            }
            CreateNavBar();
            ReSize(m);
        }
Beispiel #6
0
        public static void Create(Canvas p, Thickness m)
        {
            if (sv != null)
            {
                sv.Show();
                ReSize(m);
                return;
            }
            task1 = load1 = false;
            WebClass.TaskGet("http://m.v.qq.com/index.html", (o) => {
                data1 = o;
                if (task1)
                {
                    ParseData.AnalyzeData(o.ToCharArray(), ref sv.area);
                    sv.Refresh();
                }
                else
                {
                    load1 = true;
                }
            });
            margin = m;
            sv     = new Scroll_ex();
#if desktop
            sv.maxcolumn = 5;
#else
            sv.maxcolumn = 4;
            sv.Lock      = MainEx.LockPivot;
            sv.UnLock    = MainEx.UnLockPivot;
#endif
            sv.UsingCustomTitle = true;
            sv.ForceUpdateOnce  = true;
            sv.area             = new Area_m[nav_all.Length];
            sv.ItemClick        = (o) => {
                if (o != null)
                {
                    VideoPage.SetAdress(o as string);
                    PageManageEx.CreateNewPage(PageTag.videopage);
                }
            };
            sv.PageClick = (o) => {
                PageAddress t = (PageAddress)o;
                if (t != PageAddress.None)
                {
                    PartialNav.LoadPage(t);
                    PageManageEx.CreateNewPage(PageTag.partial);
                }
            };
            for (int i = 0; i < nav_all.Length; i++)
            {
                int c = nav_all[i].count;
                sv.area[i].page  = nav_all[i].page;
                sv.area[i].title = nav_all[i].title;
                sv.area[i].count = c;
                sv.area[i].data  = new ItemData_m[c];
            }
            sv.ReSize(m);
            sv.SetParent(p);
            task1 = true;
            if (load1)
            {
                ParseData.AnalyzeData(data1.ToCharArray(), ref sv.area);
                sv.Refresh();
                load1 = false;
            }
        }
Beispiel #7
0
        public static void Create(SwapChain p, RawRectangleF m)//parent,margin
        {
            if (sp != null)
            {
                ReSize(m);
                return;
            }
            SetNav(0);
            Parent = p;

            nav        = new ListBox();
            nav.Hrizon = true;
            int c = nav_data.Length;

            for (int i = 0; i < c; i++)
            {
                nav.Data.Add(nav_data[i].title[0]);
            }
            nav.SelectedIndex = 0;
            nav.ItemWidth     = 60;
            nav.Forground     = new RawColor4(0.8f, 0.8f, 0.8f, 1);
            nav.BorderColor   = new RawColor4(0, 0, 0, 1);
            nav.Background    = new RawColor4(0.6f, 0.4725f, 0.4725f, 0.8f);

            RoundBorder rb = new RoundBorder();

            rb.RoundRect.RadiusX = 8;
            rb.RoundRect.RadiusY = 8;
            rb.Size = new Size2F(60, 20);

            rb.FillBrush      = BrushManage.GetLinearA();
            nav.FillTemplate  = rb;
            nav.SelectChanged = (o) => {
                var lb = o as ListBox;
                if (lb.SelectedIndex < 0)
                {
                    return;
                }
                if (lb.SelectedIndex >= 12)
                {
                    return;
                }
                FilterPanel.Visble = false;
                for (int ss = 0; ss < sp.Data.Count; ss++)
                {
                    (sp.Data[ss] as IDisposable).Dispose();
                }
                sp.Data.Clear();
                part            = 0;
                TextBar[1].Text = "1";
                SetNav(lb.SelectedIndex);
            };
            nav.ItemClick = (o) => {
                ShowOrHideFilter();
            };

            FilterPanel              = new UIViewPort();
            FilterPanel.Visble       = false;
            FilterPanel.GaussianBack = true;
            FilterPanel.Background   = new RawColor4(0, 0.1f, 0.2f, 0.4f);

            sp = new GridPanel();
            sp.ItemTemplate = DataMod.GetTemplate();
            sp.BorderColor  = new RawColor4(0, 0, 0, 1);
            create          = true;
            sp.ItemClick    = (o, e) => {
                if (sp.ClickIndex < 0)
                {
                    return;
                }
                string href = (sp.Data[sp.ClickIndex] as DataMod).href;
                if (href != null)
                {
                    VideoPage.SetAddress(href);
                }
                PageManageEx.CreateNewPage(PageTag.videopage);
            };
            lock (p.DX_Child)
            {
                p.DX_Child.Add(sp);
                p.DX_Child.Add(nav);
                p.DX_Child.Add(FilterPanel);
            }
            CreateBar(p);
            ReSize(m);
            if (load)
            {
                Analyze();
            }
        }