Ejemplo n.º 1
0
 public bool CheckForChanges(MapSelection mhit)
 {
     return((EntityDef != mhit.EntityDef) ||
            (Archetype != mhit.Archetype) ||
            (Drawable != mhit.Drawable) ||
            (TimeCycleModifier != mhit.TimeCycleModifier) ||
            (ArchetypeExtension != mhit.ArchetypeExtension) ||
            (EntityExtension != mhit.EntityExtension) ||
            (CarGenerator != mhit.CarGenerator) ||
            (MloEntityDef != mhit.MloEntityDef) ||
            (DistantLodLights != mhit.DistantLodLights) ||
            (GrassBatch != mhit.GrassBatch) ||
            (WaterQuad != mhit.WaterQuad) ||
            (CollisionBounds != mhit.CollisionBounds) ||
            (NavPoly != mhit.NavPoly) ||
            (PathNode != mhit.PathNode) ||
            (TrainTrackNode != mhit.TrainTrackNode) ||
            (ScenarioNode != mhit.ScenarioNode) ||
            (Audio != mhit.Audio));
 }
Ejemplo n.º 2
0
        public void SetSelection(MapSelection item, List <MapSelection> multiItems)
        {
            Selection      = item;
            SelectionItems = multiItems;

            SelectionNameTextBox.Text = item.GetNameString("Nothing selected");
            //SelEntityPropertyGrid.SelectedObject = item.EntityDef;
            SelArchetypePropertyGrid.SelectedObject     = item.Archetype;
            SelDrawablePropertyGrid.SelectedObject      = item.Drawable;
            SelDrawableModelPropertyGrid.SelectedObject = null;
            SelDrawableModelsTreeView.Nodes.Clear();
            SelDrawableTexturesTreeView.Nodes.Clear();
            SelDrawableTexturePropertyGrid.SelectedObject = null;
            SelDrawableTexturePictureBox.Image            = null;
            HierarchyTreeView.Nodes.Clear();
            if (item.Drawable != null)
            {
                AddSelectionDrawableModelsTreeNodes(item.Drawable.DrawableModelsHigh, "High Detail", true);
                AddSelectionDrawableModelsTreeNodes(item.Drawable.DrawableModelsMedium, "Medium Detail", false);
                AddSelectionDrawableModelsTreeNodes(item.Drawable.DrawableModelsLow, "Low Detail", false);
                AddSelectionDrawableModelsTreeNodes(item.Drawable.DrawableModelsVeryLow, "Very Low Detail", false);
                //AddSelectionDrawableModelsTreeNodes(item.Drawable.DrawableModelsX, "X Detail", false);
            }

            if (item.EntityDef != null)
            {
                AddSelectionEntityHierarchyNodes(item.EntityDef);
            }

            if (item.MultipleSelection)
            {
                SelectionEntityTabPage.Text          = "Multiple items";
                SelEntityPropertyGrid.SelectedObject = multiItems.ToArray();
            }
            else if (item.TimeCycleModifier != null)
            {
                SelectionEntityTabPage.Text          = "Time Cycle Modifier";
                SelEntityPropertyGrid.SelectedObject = item.TimeCycleModifier;
            }
            else if (item.CarGenerator != null)
            {
                SelectionEntityTabPage.Text          = "Car Generator";
                SelEntityPropertyGrid.SelectedObject = item.CarGenerator;
            }
            else if (item.DistantLodLights != null)
            {
                SelectionEntityTabPage.Text          = "Distant LOD Lights";
                SelEntityPropertyGrid.SelectedObject = item.DistantLodLights;
            }
            else if (item.GrassBatch != null)
            {
                SelectionEntityTabPage.Text          = "Grass";
                SelEntityPropertyGrid.SelectedObject = item.GrassBatch;
            }
            else if (item.BoxOccluder != null)
            {
                SelectionEntityTabPage.Text          = "Box Occluder";
                SelEntityPropertyGrid.SelectedObject = item.BoxOccluder;
            }
            else if (item.OccludeModel != null)
            {
                SelectionEntityTabPage.Text          = "Occlude Model";
                SelEntityPropertyGrid.SelectedObject = item.OccludeModel;
            }
            else if (item.WaterQuad != null)
            {
                SelectionEntityTabPage.Text          = "Water Quad";
                SelEntityPropertyGrid.SelectedObject = item.WaterQuad;
            }
            else if (item.NavPoly != null)
            {
                SelectionEntityTabPage.Text          = "Nav Poly";
                SelEntityPropertyGrid.SelectedObject = item.NavPoly;
            }
            else if (item.NavPoint != null)
            {
                SelectionEntityTabPage.Text          = "Nav Point";
                SelEntityPropertyGrid.SelectedObject = item.NavPoint;
            }
            else if (item.NavPortal != null)
            {
                SelectionEntityTabPage.Text          = "Nav Portal";
                SelEntityPropertyGrid.SelectedObject = item.NavPortal;
            }
            else if (item.PathNode != null)
            {
                SelectionEntityTabPage.Text          = "Path Node";
                SelEntityPropertyGrid.SelectedObject = item.PathNode;
            }
            else if (item.TrainTrackNode != null)
            {
                SelectionEntityTabPage.Text          = "Train Track Node";
                SelEntityPropertyGrid.SelectedObject = item.TrainTrackNode;
            }
            else if (item.ScenarioNode != null)
            {
                SelectionEntityTabPage.Text          = item.ScenarioNode.FullTypeName;
                SelEntityPropertyGrid.SelectedObject = item.ScenarioNode;
            }
            else if (item.Audio != null)
            {
                SelectionEntityTabPage.Text          = item.Audio.FullTypeName;
                SelEntityPropertyGrid.SelectedObject = item.Audio;
            }
            else
            {
                SelectionEntityTabPage.Text          = "Entity";
                SelEntityPropertyGrid.SelectedObject = item.EntityDef;
            }


            if (item.EntityExtension != null)
            {
                SelectionExtensionTabPage.Text          = "Entity Extension";
                SelExtensionPropertyGrid.SelectedObject = item.EntityExtension;
            }
            else if (item.ArchetypeExtension != null)
            {
                SelectionExtensionTabPage.Text          = "Archetype Extension";
                SelExtensionPropertyGrid.SelectedObject = item.ArchetypeExtension;
            }
            else if (item.CollisionPoly != null)
            {
                SelectionExtensionTabPage.Text          = "Collision Polygon";
                SelExtensionPropertyGrid.SelectedObject = item.CollisionPoly;
            }
            else if (item.CollisionBounds != null)
            {
                SelectionExtensionTabPage.Text          = "Collision Bounds";
                SelExtensionPropertyGrid.SelectedObject = item.CollisionBounds;
            }
            else
            {
                SelectionExtensionTabPage.Text          = "Extension";
                SelExtensionPropertyGrid.SelectedObject = null;
            }
        }