예제 #1
0
        public void Attach(TopLevel topLevel)
        {
            var resources = new List<IDisposable>();
            var initialClientSize = topLevel.PlatformImpl.ClientSize;

            var queueManager = ((IRenderRoot)topLevel).RenderQueueManager;

            if (queueManager == null)
                return;

            var viewport = PlatformManager.CreateRenderTarget(topLevel.PlatformImpl);
            resources.Add(viewport);
            resources.Add(queueManager.RenderNeeded.Subscribe(_
                =>
                Dispatcher.UIThread.InvokeAsync(() => topLevel.PlatformImpl.Invalidate(new Rect(topLevel.ClientSize)))));

            topLevel.PlatformImpl.Paint = rect =>
            {
                viewport.Render(topLevel);
                queueManager.RenderFinished();
            };

            topLevel.Closed += delegate
            {
                foreach (var disposable in resources)
                    disposable.Dispose();
                resources.Clear();
            };
        }
예제 #2
0
        public void Attach(TopLevel topLevel)
        {
            var resources = new List<IDisposable>();
            var initialClientSize = topLevel.PlatformImpl.ClientSize;


            var queueManager = ((IRenderRoot)topLevel).RenderQueueManager;

            if (queueManager == null)
                return;


            var viewport = PlatformManager.CreateRenderTarget(topLevel.PlatformImpl);
            resources.Add(viewport);
            resources.Add(queueManager.RenderNeeded.Subscribe(_
                =>
                Dispatcher.UIThread.InvokeAsync(() => topLevel.PlatformImpl.Invalidate(new Rect(topLevel.ClientSize)))));

            topLevel.PlatformImpl.Paint = rect =>
            {
                try
                {
                    viewport.Render(topLevel);
                }
                catch (RenderTargetCorruptedException ex)
                {
                    Logging.Logger.Error("Renderer", this, "Render target was corrupted. Exception: {0}", ex);
                    viewport.Dispose();
                    resources.Remove(viewport);
                    viewport = PlatformManager.CreateRenderTarget(topLevel.PlatformImpl);
                    resources.Add(viewport);
                    topLevel.PlatformImpl.Paint(rect); // Retry painting
                }
                queueManager.RenderFinished();
            };

            topLevel.Closed += delegate
            {
                foreach (var disposable in resources)
                    disposable.Dispose();
                resources.Clear();
            };

        }
예제 #3
0
        public void Attach(TopLevel topLevel)
        {
            var resources = new List<IDisposable>();
            var initialClientSize = topLevel.PlatformImpl.ClientSize;


            var queueManager = ((IRenderRoot)topLevel).RenderQueueManager;

            if (queueManager == null)
                return;

            var platformRender = PerspexLocator.Current.GetService<IPlatformRenderInterface>();
            if(platformRender == null)
                return;

            var viewport = platformRender
                .CreateRenderer(topLevel.PlatformImpl.Handle, initialClientSize.Width, initialClientSize.Height);
            resources.Add(viewport);


            resources.Add(topLevel.GetObservable(TopLevel.ClientSizeProperty).Subscribe(clientSize =>
            {
                viewport.Resize((int) clientSize.Width, (int) clientSize.Height);
            }));
            resources.Add(queueManager.RenderNeeded.Subscribe(_
                =>
                Dispatcher.UIThread.InvokeAsync(() => topLevel.PlatformImpl.Invalidate(new Rect(topLevel.ClientSize)))));

            topLevel.PlatformImpl.Paint = rect =>
            {
                viewport.Render(topLevel);
                queueManager.RenderFinished();
            };

            topLevel.Closed += delegate
            {
                foreach (var disposable in resources)
                    disposable.Dispose();
                resources.Clear();
            };

        }
예제 #4
0
파일: PopupRoot.cs 프로젝트: soosr/Avalonia
 /// <summary>
 /// Initializes a new instance of the <see cref="PopupRoot"/> class.
 /// </summary>
 /// <param name="parent">The popup parent.</param>
 /// <param name="impl">The popup implementation.</param>
 /// <param name="dependencyResolver">
 /// The dependency resolver to use. If null the default dependency resolver will be used.
 /// </param>
 public PopupRoot(TopLevel parent, IPopupImpl impl, IAvaloniaDependencyResolver?dependencyResolver)
     : base(impl, dependencyResolver)
 {
     _parent = parent;
 }
예제 #5
0
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _topLevel = null;
 }
예제 #6
0
 /// <summary>
 /// Attaches DevTools to a window, to be opened with the specified options.
 /// </summary>
 /// <param name="root">The window to attach DevTools to.</param>
 /// <param name="options">Additional settings of DevTools.</param>
 public static void AttachDevTools(this TopLevel root, DevToolsOptions options)
 {
     DevTools.Attach(root, options);
 }
예제 #7
0
 /// <summary>
 /// Attaches DevTools to a window, to be opened with the F12 key.
 /// </summary>
 /// <param name="root">The window to attach DevTools to.</param>
 public static void AttachDevTools(this TopLevel root)
 {
     DevTools.Attach(root, new DevToolsOptions());
 }
예제 #8
0
 public static IDisposable Open(TopLevel root) => Open(root, new DevToolsOptions());
예제 #9
0
파일: Popup.cs 프로젝트: jorik041/Perspex
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _topLevel = null;
 }
예제 #10
0
파일: Popup.cs 프로젝트: KvanTTT/Perspex
        /// <summary>
        /// Opens the popup.
        /// </summary>
        public void Open()
        {
            if (_popupRoot == null)
            {
                _popupRoot = new PopupRoot(DependencyResolver)
                {
                    [~ContentControl.ContentProperty] = this[~ChildProperty],
                    [~WidthProperty] = this[~WidthProperty],
                    [~HeightProperty] = this[~HeightProperty],
                    [~MinWidthProperty] = this[~MinWidthProperty],
                    [~MaxWidthProperty] = this[~MaxWidthProperty],
                    [~MinHeightProperty] = this[~MinHeightProperty],
                    [~MaxHeightProperty] = this[~MaxHeightProperty],
                };

                ((ISetLogicalParent)_popupRoot).SetParent(this);
            }

            _popupRoot.Position = GetPosition();

            if (_topLevel == null && PlacementTarget != null)
            {
                _topLevel = PlacementTarget.GetSelfAndLogicalAncestors().First(x => x is TopLevel) as TopLevel;
            }

            if (_topLevel != null)
            {
                _topLevel.Deactivated += TopLevelDeactivated;
                _topLevel.AddHandler(PointerPressedEvent, PointerPressedOutside, RoutingStrategies.Tunnel);
            }

            PopupRootCreated?.Invoke(this, EventArgs.Empty);

            _popupRoot.Show();
            IsOpen = true;
            Opened?.Invoke(this, EventArgs.Empty);
        }
예제 #11
0
        public void UpdateRevitProjectZone(FamilyInstance projectZone)
        {
            Document val = projectZone.get_Document();

            Dimension[] associatedDimensions = m_AssociatedDimensions;
            foreach (Dimension val2 in associatedDimensions)
            {
                if (val2 != null)
                {
                    val2.set_IsLocked(false);
                }
            }
            double westOffset  = WestOffset;
            object westGrid    = (object)WestGrid;
            double num         = westOffset + ((westGrid != null) ? westGrid.get_Curve().GetEndPoint(0).get_X() : 0.0);
            double southOffset = SouthOffset;
            object southGrid   = (object)SouthGrid;
            double num2        = southOffset + ((southGrid != null) ? southGrid.get_Curve().GetEndPoint(0).get_Y() : 0.0);
            XYZ    val3        = new XYZ(num, num2, 0.0);
            double eastOffset  = EastOffset;
            object eastGrid    = (object)EastGrid;
            double num3        = eastOffset + ((eastGrid != null) ? eastGrid.get_Curve().GetEndPoint(0).get_X() : 0.0);
            double northOffset = NorthOffset;
            object northGrid   = (object)NorthGrid;
            double num4        = northOffset + ((northGrid != null) ? northGrid.get_Curve().GetEndPoint(0).get_Y() : 0.0);
            double num5        = num3 - num;
            double num6        = num4 - num2;
            XYZ    val4        = projectZone.get_Location().get_Point();
            XYZ    val5        = val3 - val4;

            ElementTransformUtils.MoveElement(val, projectZone.get_Id(), val5);
            projectZone.LookupParameter("Name").Set(Name);
            projectZone.LookupParameter("Top Level").Set(TopLevel.get_Id());
            projectZone.LookupParameter("Base Level").Set(BaseLevel.get_Id());
            projectZone.LookupParameter("Top Offset").Set(TopOffset);
            projectZone.LookupParameter("Base Offset").Set(BaseOffset);
            projectZone.LookupParameter("Length").Set(num5);
            projectZone.LookupParameter("Width").Set(num6);
            val.Regenerate();
            ViewPlan viewForLevel = GetViewForLevel(BaseLevel);

            if (viewForLevel == null)
            {
                throw new Exception("No plan view exists for the base level of this project zone. A view must exist for dimensions to be created.");
            }
            Grid[] array = (Grid[])new Grid[4]
            {
                NorthGrid,
                SouthGrid,
                EastGrid,
                WestGrid
            };
            double[] array2 = new double[4]
            {
                NorthOffset,
                SouthOffset,
                EastOffset,
                WestOffset
            };
            Reference[] sideReferences = GetSideReferences(projectZone, viewForLevel);
            Reference[] gridReferences = GetGridReferences(array, viewForLevel);
            for (int j = 0; j < 4; j++)
            {
                if (m_AssociatedDimensions[j] != null)
                {
                    bool flag = false;
                    if (array[j] != null)
                    {
                        foreach (Reference reference in m_AssociatedDimensions[j].get_References())
                        {
                            Reference val6 = reference;
                            ElementId val7 = val6.get_ElementId();
                            if (val7 == array[j].get_Id())
                            {
                                flag = true;
                            }
                        }
                    }
                    if (!flag)
                    {
                        val.Delete(m_AssociatedDimensions[j].get_Id());
                        m_AssociatedDimensions[j] = null;
                    }
                    if (m_AssociatedDimensions[j] != null && !m_AssociatedDimensions[j].get_Value().HasValue&& (array2[j] >= 1E-09 || array2[j] <= 1E-09))
                    {
                        val.Delete(m_AssociatedDimensions[j].get_Id());
                        m_AssociatedDimensions[j] = null;
                    }
                }
                if (array[j] != null && m_AssociatedDimensions[j] == null)
                {
                    if (array2[j] >= 1E-09 || array2[j] <= -1E-09)
                    {
                        ReferenceArray val8 = new ReferenceArray();
                        val8.Append(sideReferences[j]);
                        val8.Append(gridReferences[j]);
                        Line val9 = CreateDimensionLine(projectZone, (Directions)j, array2[j]);
                        m_AssociatedDimensions[j] = val.get_Create().NewDimension(viewForLevel, val9, val8);
                    }
                    else
                    {
                        m_AssociatedDimensions[j] = val.get_Create().NewAlignment(viewForLevel, sideReferences[j], gridReferences[j]);
                    }
                }
            }
            Dimension[] associatedDimensions2 = m_AssociatedDimensions;
            foreach (Dimension val10 in associatedDimensions2)
            {
                if (val10 != null)
                {
                    val10.set_IsLocked(true);
                }
            }
        }
예제 #12
0
 /// <summary>
 /// Called when the control is added to the visual tree.
 /// </summary>
 /// <param name="root">THe root of the visual tree.</param>
 protected override void OnAttachedToVisualTree(IRenderRoot root)
 {
     base.OnAttachedToVisualTree(root);
     _topLevel = root as TopLevel;
 }
예제 #13
0
    public void initalizeResourcePriorities(Nation player)
    {
        TopLevel aiTopLevel = player.getAI().GetTopLevel();

        aiTopLevel.setResPriority(player, MyEnum.Resources.wheat, 3);
        aiTopLevel.setResPriority(player, MyEnum.Resources.meat, 2.5f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.fruit, 2.5f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.coal, 1);
        aiTopLevel.setResPriority(player, MyEnum.Resources.cotton, 1.5f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.dyes, 2.5f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.gold, 3f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.iron, 2.25f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.oil, 0.25f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.rubber, 0.25f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.spice, 2.75f);
        aiTopLevel.setResPriority(player, MyEnum.Resources.wood, 1.5f);

        for (int i = 0; i < player.getProvinces().Count; i++)
        {
            int pIndex = player.getProvinces()[i];
            assemblyCsharp.Province prov = State.getProvinces()[pIndex];
            if (prov.getResource() == MyEnum.Resources.wheat)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.wheat, -0.2f);
            }
            if (prov.getResource() == MyEnum.Resources.meat)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.meat, -0.15f);
            }
            if (prov.getResource() == MyEnum.Resources.fruit)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.fruit, -0.15f);
            }
            if (prov.getResource() == MyEnum.Resources.coal)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.iron, 0.15f);
                aiTopLevel.alterResPriority(player, MyEnum.Resources.coal, -0.05f);
            }
            if (prov.getResource() == MyEnum.Resources.cotton)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.dyes, 0.16f);
                aiTopLevel.alterResPriority(player, MyEnum.Resources.cotton, -0.075f);
                aiTopLevel.alterResPriority(player, MyEnum.Resources.wood, 0.075f);
            }

            if (prov.getResource() == MyEnum.Resources.dyes)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.cotton, 0.2f);
            }
            if (prov.getResource() == MyEnum.Resources.gold)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.gold, -0.15f);
            }
            if (prov.getResource() == MyEnum.Resources.iron)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.coal, 0.1f);
                aiTopLevel.alterResPriority(player, MyEnum.Resources.iron, -0.075f);
            }
            if (prov.getResource() == MyEnum.Resources.oil)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.oil, -0.075f);
            }
            if (prov.getResource() == MyEnum.Resources.rubber)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.rubber, -0.075f);
            }
            if (prov.getResource() == MyEnum.Resources.spice)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.gold, -0.075f);
            }
            if (prov.getResource() == MyEnum.Resources.wood)
            {
                aiTopLevel.alterResPriority(player, MyEnum.Resources.wood, -0.1f);
                aiTopLevel.alterResPriority(player, MyEnum.Resources.cotton, 0.075f);
            }
        }
    }
예제 #14
0
    //just for AI
    public void initalizeFactoryPriorities(Nation player)
    {
        TopLevel aiTopLevel = player.getAI().GetTopLevel();

        foreach (MyEnum.Goods good in Enum.GetValues(typeof(MyEnum.Goods)))
        {
            aiTopLevel.setFactPriority(player, good, 1);
        }

        for (int i = 0; i < player.getProvinces().Count; i++)
        {
            int pIndex = player.getProvinces()[i];
            assemblyCsharp.Province prov = State.getProvinces()[pIndex];

            if (prov.getResource() == MyEnum.Resources.coal)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.steel, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.parts, 0.15f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.arms, 0.15f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.chemicals, 0.2f);
            }
            if (prov.getResource() == MyEnum.Resources.cotton)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.fabric, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.clothing, 0.2f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.furniture, 0.1f);
            }

            if (prov.getResource() == MyEnum.Resources.dyes)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.fabric, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.clothing, 0.2f);
            }

            if (prov.getResource() == MyEnum.Resources.iron)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.steel, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.parts, 0.2f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.arms, 0.2f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.gear, 0.075f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.auto, 0.075f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.tank, 0.12f);
            }

            if (prov.getResource() == MyEnum.Resources.oil)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.auto, 0.15f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.fighter, 0.1f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.tank, 0.1f);
            }
            if (prov.getResource() == MyEnum.Resources.rubber)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.gear, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.telephone, 0.2f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.auto, 0.12f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.fighter, 0.075f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.tank, 0.075f);
            }

            if (prov.getResource() == MyEnum.Resources.wood)
            {
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.lumber, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.paper, 0.25f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.furniture, 0.15f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.telephone, 0.075f);
                aiTopLevel.alterFactPriority(player, MyEnum.Goods.fighter, 0.075f);
            }
        }
    }
예제 #15
0
 private static void Window_Activated(object sender, EventArgs e)
 {
     LastActiveTopLevel = (TopLevel)sender;
 }
예제 #16
0
 /// <inheritdoc/>
 protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e)
 {
     _topLevel = null;
 }
예제 #17
0
 public static string ToJson(this TopLevel self) => JsonConvert.SerializeObject(self, QuickType.Converter.Settings);
        // [TestMethod]
        public void User_GeneralResponse_Deserializes()
        {
            // Arrange
            string userJsonResponse = @"{
                ""data"": {
                    ""User"": {
                                ""id"": 137485,
                        ""siteUrl"": ""https://anilist.co/user/137485"",
                        ""favourites"": {
                                    ""anime"": {
                                        ""nodes"": [
                                            {
                                ""id"": 10165,
                                            ""title"": {
                                ""english"": ""Nichijou - My Ordinary Life"",
                                                ""native"": ""日常"",
                                                ""romaji"": ""Nichijou""
                                }
                },
                            {
                                ""id"": 15227,
                                ""title"": {
                                ""english"": ""In This Corner of the World"",
                                ""native"": ""この世界の片隅に"",
                                ""romaji"": ""Kono Sekai no Katasumi ni""
                                }
                            },
                            {
                                ""id"": 99426,
                                ""title"": {
                                ""english"": ""A Place Further Than the Universe"",
                                ""native"": ""宇宙よりも遠い場所"",
                                ""romaji"": ""Sora yori mo Tooi Basho""
                                }
                            },
                            {
                                ""id"": 232,
                                ""title"": {
                                ""english"": ""Cardcaptor Sakura"",
                                ""native"": ""カードキャプターさくら"",
                                ""romaji"": ""Cardcaptor Sakura""
                                }
                            },
                            {
                                ""id"": 20766,
                                ""title"": {
                                ""english"": null,
                                ""native"": ""ラブライブ!The School Idol Movie"",
                                ""romaji"": ""Love Live! The School Idol Movie""
                                }
                            },
                            {
                                ""id"": 13125,
                                ""title"": {
                                ""english"": ""From the New World"",
                                ""native"": ""新世界より"",
                                ""romaji"": ""Shinsekai yori""
                                }
                            },
                            {
                                ""id"": 21858,
                                ""title"": {
                                ""english"": null,
                                ""native"": ""リトルウィッチアカデミア (TV)"",
                                ""romaji"": ""Little Witch Academia (TV)""
                                }
                            },
                            {
                                ""id"": 21673,
                                ""title"": {
                                ""english"": ""Symphogear XV"",
                                ""native"": ""戦姫絶唱シンフォギアXV"",
                                ""romaji"": ""Senki Zesshou Symphogear XV""
                                }
                            }
                            ]
                        }
                        },
                        ""statistics"": {
                        ""anime"": {
                            ""count"": 306,
                            ""minutesWatched"": 182649,
                            ""genres"": [
                            {
                                ""count"": 127,
                                ""minutesWatched"": 122049,
                                ""genre"": ""Comedy""
                            },
                            {
                                ""count"": 70,
                                ""minutesWatched"": 106813,
                                ""genre"": ""Adventure""
                            },
                            {
                                ""count"": 113,
                                ""minutesWatched"": 81420,
                                ""genre"": ""Action""
                            },
                            {
                                ""count"": 68,
                                ""minutesWatched"": 52858,
                                ""genre"": ""Fantasy""
                            },
                            {
                                ""count"": 58,
                                ""minutesWatched"": 56514,
                                ""genre"": ""Mystery""
                            },
                            {
                                ""count"": 81,
                                ""minutesWatched"": 39380,
                                ""genre"": ""Drama""
                            },
                            {
                                ""count"": 43,
                                ""minutesWatched"": 54256,
                                ""genre"": ""Psychological""
                            },
                            {
                                ""count"": 82,
                                ""minutesWatched"": 18387,
                                ""genre"": ""Slice of Life""
                            },
                            {
                                ""count"": 55,
                                ""minutesWatched"": 18709,
                                ""genre"": ""Supernatural""
                            },
                            {
                                ""count"": 56,
                                ""minutesWatched"": 11637,
                                ""genre"": ""Romance""
                            },
                            {
                                ""count"": 48,
                                ""minutesWatched"": 18402,
                                ""genre"": ""Sci-Fi""
                            },
                            {
                                ""count"": 23,
                                ""minutesWatched"": 14698,
                                ""genre"": ""Sports""
                            },
                            {
                                ""count"": 30,
                                ""minutesWatched"": 6627,
                                ""genre"": ""Music""
                            },
                            {
                                ""count"": 25,
                                ""minutesWatched"": 7661,
                                ""genre"": ""Horror""
                            },
                            {
                                ""count"": 23,
                                ""minutesWatched"": 4545,
                                ""genre"": ""Ecchi""
                            },
                            {
                                ""count"": 17,
                                ""minutesWatched"": 5641,
                                ""genre"": ""Thriller""
                            },
                            {
                                ""count"": 15,
                                ""minutesWatched"": 4285,
                                ""genre"": ""Mahou Shoujo""
                            },
                            {
                                ""count"": 11,
                                ""minutesWatched"": 482,
                                ""genre"": ""Hentai""
                            },
                            {
                                ""count"": 5,
                                ""minutesWatched"": 3127,
                                ""genre"": ""Mecha""
                            }
                            ],
                            ""tags"": [
                            {
                                ""count"": 71,
                                ""minutesWatched"": 111697,
                                ""tag"": {
                                ""id"": 82,
                                ""name"": ""Male Protagonist"",
                                ""description"": ""Main character is male."",
                                ""category"": ""Cast-Main Cast""
                                }
                            },
                            {
                                ""count"": 44,
                                ""minutesWatched"": 106130,
                                ""tag"": {
                                ""id"": 56,
                                ""name"": ""Shounen"",
                                ""description"": ""Target demographic is teenage and young adult males."",
                                ""category"": ""Demographic""
                                }
                            },
                            {
                                ""count"": 96,
                                ""minutesWatched"": 29329,
                                ""tag"": {
                                ""id"": 98,
                                ""name"": ""Female Protagonist"",
                                ""description"": ""Main character is female."",
                                ""category"": ""Cast-Main Cast""
                                }
                            },
                            {
                                ""count"": 94,
                                ""minutesWatched"": 29126,
                                ""tag"": {
                                ""id"": 86,
                                ""name"": ""Primarily Female Cast"",
                                ""description"": ""Main cast is mostly composed of female characters."",
                                ""category"": ""Cast-Main Cast""
                                }
                            },
                            {
                                ""count"": 43,
                                ""minutesWatched"": 58322,
                                ""tag"": {
                                ""id"": 66,
                                ""name"": ""Super Power"",
                                ""description"": ""Prominently features characters with special abilities that allow them to do what would normally be physically or logically impossible."",
                                ""category"": ""Theme-Fantasy""
                                }
                            },
                            {
                                ""count"": 51,
                                ""minutesWatched"": 34720,
                                ""tag"": {
                                ""id"": 85,
                                ""name"": ""Tragedy"",
                                ""description"": ""Centers around tragic events and unhappy endings."",
                                ""category"": ""Theme-Drama""
                                }
                            },
                            {
                                ""count"": 12,
                                ""minutesWatched"": 60534,
                                ""tag"": {
                                ""id"": 648,
                                ""name"": ""Crime"",
                                ""description"": ""Centers around unlawful activities punishable by the state or other authority."",
                                ""category"": ""Theme-Other""
                                }
                            },
                            {
                                ""count"": 67,
                                ""minutesWatched"": 19229,
                                ""tag"": {
                                ""id"": 46,
                                ""name"": ""School"",
                                ""description"": ""Partly or completely set in a primary or secondary educational institution."",
                                ""category"": ""Setting-Scene""
                                }
                            },
                            {
                                ""count"": 8,
                                ""minutesWatched"": 59265,
                                ""tag"": {
                                ""id"": 310,
                                ""name"": ""Espionage"",
                                ""description"": ""Prominently features characters infiltrating an organization in order to steal sensitive information."",
                                ""category"": ""Theme-Action""
                                }
                            },
                            {
                                ""count"": 6,
                                ""minutesWatched"": 56727,
                                ""tag"": {
                                ""id"": 456,
                                ""name"": ""Conspiracy"",
                                ""description"": ""Contains one or more factions controlling or attempting to control the world from the shadows."",
                                ""category"": ""Theme-Drama""
                                }
                            },
                            {
                                ""count"": 19,
                                ""minutesWatched"": 48200,
                                ""tag"": {
                                ""id"": 193,
                                ""name"": ""Episodic"",
                                ""description"": ""Features story arcs that are loosely tied or lack an overarching plot."",
                                ""category"": ""Technical""
                                }
                            },
                            {
                                ""count"": 57,
                                ""minutesWatched"": 14742,
                                ""tag"": {
                                ""id"": 92,
                                ""name"": ""Cute Girls Doing Cute Things"",
                                ""description"": ""Centers around, well, cute girls doing cute things."",
                                ""category"": ""Theme-Slice of Life""
                                }
                            },
                            {
                                ""count"": 10,
                                ""minutesWatched"": 43970,
                                ""tag"": {
                                ""id"": 40,
                                ""name"": ""Police"",
                                ""description"": ""Centers around the life and activities of law enforcement officers."",
                                ""category"": ""Theme-Other-Organisations""
                                }
                            },
                            {
                                ""count"": 7,
                                ""minutesWatched"": 42788,
                                ""tag"": {
                                ""id"": 488,
                                ""name"": ""Age Regression"",
                                ""description"": ""Prominently features a character who was returned to a younger state."",
                                ""category"": ""Cast-Traits""
                                }
                            },
                            {
                                ""count"": 42,
                                ""minutesWatched"": 20683,
                                ""tag"": {
                                ""id"": 321,
                                ""name"": ""Urban Fantasy"",
                                ""description"": ""Set in a world similar to the real world, but with the existence of magic or other supernatural elements."",
                                ""category"": ""Setting-Universe""
                                }
                            },
                            {
                                ""count"": 3,
                                ""minutesWatched"": 41284,
                                ""tag"": {
                                ""id"": 158,
                                ""name"": ""Crossover"",
                                ""description"": ""Centers around the placement of two or more otherwise discrete fictional characters, settings, or universes into the context of a single story."",
                                ""category"": ""Theme-Other""
                                }
                            },
                            {
                                ""count"": 22,
                                ""minutesWatched"": 30768,
                                ""tag"": {
                                ""id"": 99,
                                ""name"": ""Henshin"",
                                ""description"": ""Prominently features character or costume transformations which often grant special abilities."",
                                ""category"": ""Theme-Fantasy""
                                }
                            },
                            {
                                ""count"": 38,
                                ""minutesWatched"": 16751,
                                ""tag"": {
                                ""id"": 29,
                                ""name"": ""Magic"",
                                ""description"": ""Prominently features magical elements or the use of magic."",
                                ""category"": ""Theme-Fantasy""
                                }
                            },
                            {
                                ""count"": 22,
                                ""minutesWatched"": 23259,
                                ""tag"": {
                                ""id"": 105,
                                ""name"": ""Ensemble Cast"",
                                ""description"": ""Features a large cast of characters with (almost) equal screen time and importance to the plot."",
                                ""category"": ""Cast-Main Cast""
                                }
                            },
                            {
                                ""count"": 21,
                                ""minutesWatched"": 22921,
                                ""tag"": {
                                ""id"": 43,
                                ""name"": ""Swordplay"",
                                ""description"": ""Prominently features the use of swords in combat."",
                                ""category"": ""Theme-Action""
                                }
                            },
                            {
                                ""count"": 13,
                                ""minutesWatched"": 26753,
                                ""tag"": {
                                ""id"": 111,
                                ""name"": ""War"",
                                ""description"": ""Partly or completely set during wartime."",
                                ""category"": ""Theme-Other""
                                }
                            },
                            {
                                ""count"": 37,
                                ""minutesWatched"": 9069,
                                ""tag"": {
                                ""id"": 50,
                                ""name"": ""Seinen"",
                                ""description"": ""Target demographic is adult males."",
                                ""category"": ""Demographic""
                                }
                            },
                            {
                                ""count"": 27,
                                ""minutesWatched"": 10904,
                                ""tag"": {
                                ""id"": 102,
                                ""name"": ""Coming of Age"",
                                ""description"": ""Centers around a character's transition from childhood to adulthood."",
                                ""category"": ""Theme-Drama""
                                }
                            },
                            {
                                ""count"": 17,
                                ""minutesWatched"": 19067,
                                ""tag"": {
                                ""id"": 109,
                                ""name"": ""Primarily Adult Cast"",
                                ""description"": ""Main cast is mostly composed of characters above a high school age."",
                                ""category"": ""Cast-Main Cast""
                                }
                            },
                            {
                                ""count"": 32,
                                ""minutesWatched"": 8023,
                                ""tag"": {
                                ""id"": 76,
                                ""name"": ""Yuri"",
                                ""description"": ""Prominently features romance between two females, not inherently sexual. Also known as Girls' Love."",
                                ""category"": ""Theme-Romance""
                                }
                            },
                            {
                                ""count"": 13,
                                ""minutesWatched"": 20778,
                                ""tag"": {
                                ""id"": 96,
                                ""name"": ""Time Manipulation"",
                                ""description"": ""Prominently features time-traveling or other time-warping phenomena."",
                                ""category"": ""Theme-Sci-Fi""
                                }
                            },
                            {
                                ""count"": 5,
                                ""minutesWatched"": 21785,
                                ""tag"": {
                                ""id"": 326,
                                ""name"": ""Cultivation"",
                                ""description"": ""Features characters using training, often martial arts-related, and other special methods to cultivate life force and gain strength or immortality."",
                                ""category"": ""Theme-Fantasy""
                                }
                            },
                            {
                                ""count"": 18,
                                ""minutesWatched"": 16390,
                                ""tag"": {
                                ""id"": 252,
                                ""name"": ""Revenge"",
                                ""description"": ""Prominently features a character who aims to exact punishment in a resentful or vindictive manner."",
                                ""category"": ""Theme-Drama""
                                }
                            },
                            {
                                ""count"": 26,
                                ""minutesWatched"": 8906,
                                ""tag"": {
                                ""id"": 84,
                                ""name"": ""School Club"",
                                ""description"": ""Partly or completely set in a school club scene."",
                                ""category"": ""Setting-Scene""
                                }
                            },
                            {
                                ""count"": 23,
                                ""minutesWatched"": 9098,
                                ""tag"": {
                                ""id"": 253,
                                ""name"": ""Gods"",
                                ""description"": ""Prominently features a character of divine or religious nature."",
                                ""category"": ""Cast-Traits""
                                }
                            }
                            ]
                        }
                        }
                    }
                }
            }
            ";

            // Act
            TopLevel userResponse = JsonConvert.DeserializeObject <TopLevel>(userJsonResponse);

            // Assert, only on types with relevant equality.
            int expectedId = 137485;
            int actualId   = userResponse.Data.User.Id;

            Assert.AreEqual <int>(expectedId, actualId);
            // Add breakpoint to assert by eyes.
        }
예제 #19
0
 /// <summary>
 /// Called when the control is removed to the visual tree.
 /// </summary>
 /// <param name="root">THe root of the visual tree.</param>
 protected override void OnDetachedFromVisualTree(IRenderRoot root)
 {
     base.OnDetachedFromVisualTree(root);
     _topLevel = null;
 }
예제 #20
0
 public void SetOwner(TopLevel owner)
 {
     _owner = owner;
 }
예제 #21
0
 public static IDisposable Open(TopLevel root, DevToolsOptions options) =>
 Open(Application.Current, options, root as Window);
예제 #22
0
        private static void AttachDevTools(TopLevel window)
        {
#if DEBUG
            window.AttachDevTools();
#endif
        }
예제 #23
0
파일: Popup.cs 프로젝트: KvanTTT/Perspex
 /// <inheritdoc/>
 protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e)
 {
     _topLevel = null;
 }
예제 #24
0
 /// <inheritdoc/>
 protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromLogicalTree(e);
     _topLevel = null;
     _popupRoot?.Dispose();
     _popupRoot = null;
 }
예제 #25
0
 public static void AttachDevTools(this TopLevel control)
 {
     Avalonia.Diagnostics.DevTools.Attach(control);
 }
예제 #26
0
    public void alterPrioritiesBasedOnProvinceGain(Nation player, MyEnum.Resources res)
    {
        TopLevel aiTopLevel = player.getAI().GetTopLevel();

        aiTopLevel.alterResPriority(player, res, -0.65f);


        if (res == MyEnum.Resources.coal)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.arms, 0.15f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.steel, 0.25f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.parts, 0.15f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.chemicals, 0.5f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.arms, 0.25f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.steel, 0.4f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.parts, 0.3f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.chemicals, 0.4f);

            aiTopLevel.alterTechnologyPriority(player, "chemistry", 0.65f);
            aiTopLevel.alterTechnologyPriority(player, "fertilizer", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "medicine", 0.4f);
            aiTopLevel.alterTechnologyPriority(player, "synthetic_dyes", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "bessemer_process", 0.33f);
            aiTopLevel.alterTechnologyPriority(player, "steel_plows", 0.45f);
            aiTopLevel.alterTechnologyPriority(player, "square_timbering", 0.45f);
            aiTopLevel.alterTechnologyPriority(player, "steam_engine", 0.45f);
            aiTopLevel.alterTechnologyPriority(player, "compound_steam_engine", 0.45f);
        }

        if (res == MyEnum.Resources.cotton)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.fabric, 0.6f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.clothing, 0.45f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.furniture, 0.25f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.clothing, 0.5f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.fabric, 0.55f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.furniture, 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "cotton_gin", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "power_loom", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "sewing_machine", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "spinning_jenny", 0.5f);
        }

        if (res == MyEnum.Resources.dyes)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.clothing, 0.4f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.clothing, 0.35f);

            aiTopLevel.alterTechnologyPriority(player, "synthetic_dyes", -0.5f);
            aiTopLevel.alterTechnologyPriority(player, "sewing_machine", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "spinning_jenny", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "fertilizer", 0.2f);
        }

        if (res == MyEnum.Resources.iron)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.arms, 0.25f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.steel, 0.4f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.parts, 0.25f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.gear, 0.2f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.arms, 0.35f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.steel, 0.6f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.parts, 0.3f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.gear, 0.3f);

            aiTopLevel.alterTechnologyPriority(player, "bessemer_process", 0.55f);
            aiTopLevel.alterTechnologyPriority(player, "advanced_metalworking", 0.33f);
            aiTopLevel.alterTechnologyPriority(player, "steam_engine", 0.34f);
            aiTopLevel.alterTechnologyPriority(player, "automobile", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "flight", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "square_timbering", 0.45f);
            aiTopLevel.alterTechnologyPriority(player, "dynamite", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "steam_locomotive", 0.2f);
        }

        if (res == MyEnum.Resources.oil)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.auto, 0.5f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.auto, 0.6f);

            aiTopLevel.alterTechnologyPriority(player, "oil_drilling", 0.75f);
            aiTopLevel.alterTechnologyPriority(player, "automobile", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "flight", 0.35f);
        }

        if (res == MyEnum.Resources.rubber)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.gear, 0.6f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.telephone, 0.45f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.auto, 0.4f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.gear, 0.85f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.telephone, 0.65f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.auto, 0.6f);

            aiTopLevel.alterTechnologyPriority(player, "electricity", 0.75f);
            aiTopLevel.alterTechnologyPriority(player, "automobile", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "flight", 0.25f);
            aiTopLevel.alterTechnologyPriority(player, "telephone", 0.55f);
            aiTopLevel.alterTechnologyPriority(player, "fertilizer", 0.2f);
        }

        if (res == MyEnum.Resources.wood)
        {
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.lumber, 0.65f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.paper, 0.55f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.furniture, 0.35f);
            aiTopLevel.alterFactPriority(player, MyEnum.Goods.telephone, 0.2f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.paper, 1.0f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.lumber, 1.1f);

            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.furniture, 0.65f);
            aiTopLevel.alterProductionPriorities(player, MyEnum.Goods.telephone, 0.35f);


            aiTopLevel.alterTechnologyPriority(player, "pulping", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "compound_steam_engine", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "steam_engine", 0.35f);
        }

        if (res == MyEnum.Resources.wheat)
        {
            aiTopLevel.alterTechnologyPriority(player, "steel_plows", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "mechanical_reaper", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "fertilizer", 0.15f);
        }

        if (res == MyEnum.Resources.meat)
        {
            aiTopLevel.alterTechnologyPriority(player, "biology", 0.5f);
            aiTopLevel.alterTechnologyPriority(player, "barbed_wire", 0.5f);
        }

        if (res == MyEnum.Resources.fruit)
        {
            aiTopLevel.alterTechnologyPriority(player, "steel_plows", 0.35f);
            aiTopLevel.alterTechnologyPriority(player, "fertilizer", 0.25f);
        }
    }
예제 #27
0
 public CompositionRoot(TextWriter @out, Func <string> readLine, TopLevel top)
 {
     _out      = @out;
     _readLine = readLine;
     _top      = top;
 }
예제 #28
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PopupRoot"/> class.
 /// </summary>
 /// <param name="parent">The popup parent.</param>
 /// <param name="impl">The popup implementation.</param>
 /// <param name="dependencyResolver">
 /// The dependency resolver to use. If null the default dependency resolver will be used.
 /// </param>
 public PopupRoot(TopLevel parent, IPopupImpl impl, IAvaloniaDependencyResolver dependencyResolver)
     : base(ValidatingPopupImpl.Wrap(impl), dependencyResolver)
 {
     _parent = parent;
 }
예제 #29
0
 /// <summary>
 /// Attaches DevTools to a window, to be opened with the specified key gesture.
 /// </summary>
 /// <param name="root">The window to attach DevTools to.</param>
 /// <param name="gesture">The key gesture to open DevTools.</param>
 public static void AttachDevTools(this TopLevel root, KeyGesture gesture)
 {
     DevTools.Attach(root, gesture);
 }
예제 #30
0
 public static void AttachDevTools(this TopLevel control)
 {
     Diagnostics.DevTools.Attach(control, new KeyGesture(Key.F12));
 }
예제 #31
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _topLevel = e.Root as TopLevel;
 }
예제 #32
0
 public static void AttachDevTools(this TopLevel control, KeyGesture gesture)
 {
     Diagnostics.DevTools.Attach(control, gesture);
 }
예제 #33
0
파일: PopupRoot.cs 프로젝트: soosr/Avalonia
 /// <summary>
 /// Initializes a new instance of the <see cref="PopupRoot"/> class.
 /// </summary>
 public PopupRoot(TopLevel parent, IPopupImpl impl)
     : this(parent, impl, null)
 {
 }
예제 #34
0
 public static void OpenDevTools(this TopLevel control)
 {
     Diagnostics.DevTools.OpenDevTools(control);
 }
예제 #35
0
 /// <inheritdoc/>
 protected override void OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs e)
 {
     base.OnAttachedToLogicalTree(e);
     _topLevel = e.Root as TopLevel;
 }
예제 #36
0
 public static IDisposable Open(TopLevel root) =>
 Open(Application.Current, new DevToolsOptions(), root as Window);
예제 #37
0
 /// <summary>
 /// Called when the control is removed to the visual tree.
 /// </summary>
 /// <param name="root">THe root of the visual tree.</param>
 protected override void OnDetachedFromVisualTree(IRenderRoot root)
 {
     base.OnDetachedFromVisualTree(root);
     _topLevel = null;
 }
예제 #38
0
        public Element CreateRevitProjectZone(Document doc)
        {
            double         westOffset      = WestOffset;
            object         westGrid        = (object)WestGrid;
            double         num             = westOffset + ((westGrid != null) ? westGrid.get_Curve().GetEndPoint(0).get_X() : 0.0);
            double         southOffset     = SouthOffset;
            object         southGrid       = (object)SouthGrid;
            double         num2            = southOffset + ((southGrid != null) ? southGrid.get_Curve().GetEndPoint(0).get_Y() : 0.0);
            XYZ            val             = new XYZ(num, num2, 0.0);
            double         eastOffset      = EastOffset;
            object         eastGrid        = (object)EastGrid;
            double         num3            = eastOffset + ((eastGrid != null) ? eastGrid.get_Curve().GetEndPoint(0).get_X() : 0.0);
            double         northOffset     = NorthOffset;
            object         northGrid       = (object)NorthGrid;
            double         num4            = northOffset + ((northGrid != null) ? northGrid.get_Curve().GetEndPoint(0).get_Y() : 0.0);
            double         num5            = num3 - num;
            double         num6            = num4 - num2;
            FamilySymbol   revitZoneSymbol = GetRevitZoneSymbol(doc);
            FamilyInstance val2            = doc.get_Create().NewFamilyInstance(val, revitZoneSymbol, BaseLevel, 0);

            val2.LookupParameter("Name").Set(Name);
            val2.LookupParameter("Top Level").Set(TopLevel.get_Id());
            val2.LookupParameter("Top Offset").Set(TopOffset);
            val2.LookupParameter("Base Offset").Set(BaseOffset);
            val2.LookupParameter("Length").Set(num5);
            val2.LookupParameter("Width").Set(num6);
            doc.Regenerate();
            UniqueId = val2.get_UniqueId();
            ViewPlan viewForLevel = GetViewForLevel(BaseLevel);

            if (viewForLevel == null)
            {
                throw new Exception("No plan view exists for the base level of this project zone. A view must exist for dimensions to be created.");
            }
            Grid[] array = (Grid[])new Grid[4]
            {
                NorthGrid,
                SouthGrid,
                EastGrid,
                WestGrid
            };
            double[] array2 = new double[4]
            {
                NorthOffset,
                SouthOffset,
                EastOffset,
                WestOffset
            };
            Reference[] sideReferences = GetSideReferences(val2, viewForLevel);
            Reference[] gridReferences = GetGridReferences(array, viewForLevel);
            for (int i = 0; i < 4; i++)
            {
                if (array[i] != null)
                {
                    if (array2[i] >= 1E-09 || array2[i] <= -1E-09)
                    {
                        ReferenceArray val3 = new ReferenceArray();
                        val3.Append(sideReferences[i]);
                        val3.Append(gridReferences[i]);
                        Line      val4 = CreateDimensionLine(val2, (Directions)i, array2[i]);
                        Dimension val5 = doc.get_Create().NewDimension(viewForLevel, val4, val3);
                        val5.set_IsLocked(true);
                    }
                    else
                    {
                        doc.get_Create().NewAlignment(viewForLevel, sideReferences[i], gridReferences[i]);
                    }
                }
            }
            return(val2);
        }
예제 #39
0
 private void OnParentChanged(IControl control)
 {
     Unregister();
     _root = (TopLevel) control;
     Register();
 }
예제 #40
0
 /// <summary>
 /// Called when the control is added to the visual tree.
 /// </summary>
 /// <param name="root">THe root of the visual tree.</param>
 protected override void OnAttachedToVisualTree(IRenderRoot root)
 {
     base.OnAttachedToVisualTree(root);
     _topLevel = root as TopLevel;
 }
예제 #41
-1
 /// <inheritdoc/>
 protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromLogicalTree(e);
     _topLevel = null;
     
     if (_popupRoot != null)
     {
         ((ISetLogicalParent)_popupRoot).SetParent(null);
         _popupRoot.Dispose();
         _popupRoot = null;
     }
 }