コード例 #1
0
        public static void UpdateChildLayoutData(ContentControl item)
        {
            switch (item.Tag as string)
            {
            case "Text":
                MyText myText = item as MyText;
                myText.updateLayoutDate();
                break;

            case "Image":
                MyImage myImage = item as MyImage;
                myImage.updateLayoutDate();
                break;

            case "Media":
                MyMedia myMedia = item as MyMedia;
                myMedia.updateLayoutDate();
                break;

            case "Office":
                MyOffice myOffice = item as MyOffice;
                myOffice.updateLayoutDate();
                break;
            }
        }
コード例 #2
0
        public static void setControlSource(MyBaseControl currentControl, String content)
        {
            string tag = currentControl.Tag as string;

            switch (tag)
            {
            case "Text":
                MyText myText = currentControl as MyText;
                myText.setContentSource(content);
                break;

            case "Image":
                MyImage myImage = currentControl as MyImage;
                myImage.setContentSource(content);
                break;

            case "Media":
                MyMedia myMedia = currentControl as MyMedia;
                myMedia.setContentSource(content);
                break;

            case "Office":
                MyOffice myOffice = currentControl as MyOffice;
                myOffice.setContentSource(content);
                break;
            }
        }
コード例 #3
0
ファイル: AttributeLayout.cs プロジェクト: xiaojue52/myPlayer
        public static void SetAttrTree(MyBaseControl myBaseControl, MainWindow window)
        {
            window.currentControl = myBaseControl;
            string tag = myBaseControl.Tag as string;

            window.ControlAttrTree.Visibility = System.Windows.Visibility.Visible;
            switch (tag)
            {
            case "Text":
                MyText myText = myBaseControl as MyText;
                showTextAttrGird(myText, window);
                break;

            case "Image":
                MyImage myImage = myBaseControl as MyImage;
                showImageAttrGrid(myImage, window);
                break;

            case "Media":
                MyMedia myMedia = myBaseControl as MyMedia;
                showMediaAttrGrid(myMedia, window);
                break;

            case "Office":
                MyOffice myOffice = myBaseControl as MyOffice;
                showOfficeAttrGrid(myOffice, window);
                break;
            }
        }
コード例 #4
0
ファイル: CreateLayout.cs プロジェクト: xiaojue52/myPlayer
        private static void createChild(XmlNode canvas, MyContainer myContainer)
        {
            int count = canvas.ChildNodes.Count;

            for (int i = 0; i < count; i++)
            {
                LayoutData layoutData = new LayoutData();
                XmlNode    element    = canvas.ChildNodes.Item(i);
                layoutData.textBackground  = Convert.ToInt32(element.Attributes[14].Value);
                layoutData.textColor       = Convert.ToInt32(element.Attributes[13].Value);
                layoutData.textSize        = Convert.ToInt32(element.Attributes[12].Value);
                layoutData.backgroundColor = Convert.ToInt32(element.Attributes[11].Value);
                layoutData.sceneTime       = Convert.ToInt32(element.Attributes[10].Value);
                layoutData.stretchModel    = Convert.ToInt32(element.Attributes[9].Value);
                layoutData.imageSwitch     = Convert.ToInt32(element.Attributes[8].Value);
                layoutData.canvasTop       = double.Parse(element.Attributes[7].Value);
                layoutData.canvasLeft      = double.Parse(element.Attributes[6].Value);
                layoutData.text            = element.Attributes[5].Value;
                layoutData.angle           = double.Parse(element.Attributes[4].Value);
                layoutData.sourcePath      = element.Attributes[3].Value;
                layoutData.width           = double.Parse(element.Attributes[2].Value);
                layoutData.height          = double.Parse(element.Attributes[1].Value);
                layoutData.tag             = element.Attributes[0].Value;
                switch (layoutData.tag)
                {
                case "Text":
                    MyText myText = new MyText();
                    myText.initLayout(layoutData);
                    myContainer.Children.Add(myText);
                    break;

                case "Media":
                    MyMedia myMedia = new MyMedia();
                    myMedia.initLayout(layoutData);
                    myContainer.Children.Add(myMedia);
                    break;

                case "Image":
                    MyImage myImage = new MyImage();
                    myImage.initLayout(layoutData);
                    myContainer.Children.Add(myImage);
                    break;

                case "Office":
                    MyOffice myOffice = new MyOffice();
                    myOffice.initLayout(layoutData);
                    myContainer.Children.Add(myOffice);
                    break;
                }
                layoutData = null;
            }
        }
コード例 #5
0
ファイル: CreateLayout.cs プロジェクト: xiaojue52/myPlayer
        public static MyContainer previewCanvasContent(MyContainer myContainer)
        {
            MyContainer previewCanvas = new MyContainer();

            previewCanvas.initLayout(myContainer.layoutData);
            int count = myContainer.Children.Count;

            for (int i = 0; i < count; i++)
            {
                ContentControl temp = myContainer.Children[i] as ContentControl;
                switch (temp.Tag as string)
                {
                case "Text":
                    MyText text     = new MyText();
                    MyText tempText = (MyText)temp;
                    text.Tag = "preview";
                    text.initLayout(tempText.layoutData);
                    previewCanvas.Children.Add(text);
                    //AttributeLayout.SetAttrTree(tag, this);
                    break;

                case "Image":
                    MyImage image     = new MyImage();
                    MyImage tempImage = (MyImage)temp;
                    image.Tag = "preview";
                    image.initLayout(tempImage.layoutData);
                    previewCanvas.Children.Add(image);
                    //AttributeLayout.SetAttrTree(tag, this);
                    break;

                case "Media":
                    MyMedia media     = new MyMedia();
                    MyMedia tempMedia = (MyMedia)temp;
                    media.Tag = "preview";
                    media.initLayout(tempMedia.layoutData);
                    previewCanvas.Children.Add(media);
                    //AttributeLayout.SetAttrTree(tag, this);
                    break;

                case "Office":
                    MyOffice myOffice   = new MyOffice();
                    MyOffice tempOffice = (MyOffice)temp;
                    myOffice.Tag = "preview";
                    myOffice.initLayout(tempOffice.layoutData);
                    previewCanvas.Children.Add(myOffice);
                    //AttributeLayout.SetAttrTree(tag, this);
                    break;
                }
            }
            return(previewCanvas);
        }
コード例 #6
0
ファイル: AttributeLayout.cs プロジェクト: xiaojue52/myPlayer
        private static void showOfficeAttrGrid(MyOffice myOffice, MainWindow window)
        {
            window.SourceGrid.Visibility     = System.Windows.Visibility.Visible;
            window.ImageAttrGrid.Visibility  = System.Windows.Visibility.Collapsed;
            window.SourceAttrGrid.Visibility = System.Windows.Visibility.Visible;
            window.TextAttrGrid.Visibility   = System.Windows.Visibility.Collapsed;
            window.TextAttrBg.Visibility     = System.Windows.Visibility.Collapsed;
            window.TextAttrFS.Visibility     = System.Windows.Visibility.Collapsed;
            window.TextAttrFC.Visibility     = System.Windows.Visibility.Collapsed;
            window.ControlWidth.Text         = myOffice.layoutData.width.ToString();
            window.ControlHeight.Text        = myOffice.layoutData.height.ToString();

            window.SourceButton.Tag = "Office";
            window.SourcePath.Text  = myOffice.layoutData.sourcePath;
        }
コード例 #7
0
ファイル: CreateLayout.cs プロジェクト: xiaojue52/myPlayer
        public static void CreateControlByTag(string tag, DragEventArgs e, MyContainer canvas, MainWindow mWindow)
        {
            Point position = e.GetPosition(canvas);

            //MyContainer canvas = new MyContainer();
            switch (tag)
            {
            case "Text":
                MyText myText = new MyText();
                Canvas.SetLeft(myText, Math.Max(0, position.X - myText.Width / 2));
                Canvas.SetTop(myText, Math.Max(0, position.Y - myText.Height / 2));
                canvas.Children.Add(myText);
                myText.updateLayoutDate();
                AttributeLayout.SetAttrTree(myText, mWindow);
                break;

            case "Media":
                MyMedia myMedia = new MyMedia();
                Canvas.SetLeft(myMedia, Math.Max(0, position.X - myMedia.Width / 2));
                Canvas.SetTop(myMedia, Math.Max(0, position.Y - myMedia.Height / 2));
                canvas.Children.Add(myMedia);
                myMedia.updateLayoutDate();
                AttributeLayout.SetAttrTree(myMedia, mWindow);
                break;

            case "Image":
                MyImage myImage = new MyImage();
                Canvas.SetLeft(myImage, Math.Max(0, position.X - myImage.Width / 2));
                Canvas.SetTop(myImage, Math.Max(0, position.Y - myImage.Height / 2));
                canvas.Children.Add(myImage);
                myImage.updateLayoutDate();
                AttributeLayout.SetAttrTree(myImage, mWindow);
                break;

            case "Word":
                MyOffice myOffice = new MyOffice();
                Canvas.SetLeft(myOffice, Math.Max(0, position.X - myOffice.Width / 2));
                Canvas.SetTop(myOffice, Math.Max(0, position.Y - myOffice.Height / 2));
                canvas.Children.Add(myOffice);
                myOffice.updateLayoutDate();
                AttributeLayout.SetAttrTree(myOffice, mWindow);
                break;
            }
            //return canvas;
        }