public static void Run(Tekla.Technology.Akit.IScript akit)
        {
            TSM.UI.ModelViewEnumerator views = TSM.UI.ViewHandler.GetSelectedViews();

            if (views.Count > 0)
            {
                while (views.MoveNext())
                {
                    TSM.UI.View activeView = views.Current;
                    TSM.UI.ModelObjectSelector selector = new Tekla.Structures.Model.UI.ModelObjectSelector();

                    ArrayList visibleParts = ItemSelector.getParts(activeView);
                    selector.Select(visibleParts);

                    akit.Callback("acmdViewTopInFormFace", "", "View_01 window_1");

                    ArrayList empty = new ArrayList();
                    selector.Select(empty);
                }
            }
            else
            {
                MessageBox.Show("Vaate aken peab olema aktiivne");
            }
        }
Beispiel #2
0
        public void Modify(PropertyValueChangedEventArgs e)
        {
            string label = e.ChangedItem.Label;

            Tekla.Structures.Model.UI.ModelViewEnumerator modelViewEnum = Tekla.Structures.Model.UI.ViewHandler.GetSelectedViews();
            if (modelViewEnum.Count == 1)
            {
                while (modelViewEnum.MoveNext())
                {
                    Tekla.Structures.Model.UI.View view = (Tekla.Structures.Model.UI.View)modelViewEnum.Current;
                    if (label == "Name")
                    {
                        view.Name = name;
                    }
                    if (label == "ViewDepthUp")
                    {
                        view.ViewDepthUp = double.Parse(viewDepthUp);
                    }
                    if (label == "ViewDepthDown")
                    {
                        view.ViewDepthDown = double.Parse(viewDepthDown);
                    }

                    view.Modify();
                    model.CommitChanges();
                }
            }
        }
Beispiel #3
0
        public void GetProperties()
        {
            Tekla.Structures.Model.UI.ModelViewEnumerator modelViewEnum = Tekla.Structures.Model.UI.ViewHandler.GetSelectedViews();

            if (modelViewEnum.Count == 1)
            {
                while (modelViewEnum.MoveNext())
                {
                    Tekla.Structures.Model.UI.View view = (Tekla.Structures.Model.UI.View)modelViewEnum.Current;
                    name          = view.Name;
                    viewDepthUp   = view.ViewDepthUp.ToString("F0");
                    viewDepthDown = view.ViewDepthDown.ToString("F0");
                }
            }
        }
Beispiel #4
0
        private void AddViewsToMenu(MenuStrip menuStrip)
        {
            ToolStripMenuItem myViewsMenuItem = new ToolStripMenuItem("My Views");
            string            strUsername     = Environment.UserName;

            Tekla.Structures.Model.UI.ModelViewEnumerator modelViewsEnum = Tekla.Structures.Model.UI.ViewHandler.GetPermanentViews();

            System.Collections.ArrayList arrayViewNames = new System.Collections.ArrayList();
            System.Collections.ArrayList arrayViews     = new System.Collections.ArrayList();
            while (modelViewsEnum.MoveNext())
            {
                Tekla.Structures.Model.UI.View currentView = modelViewsEnum.Current;
                if (currentView.Name.Contains(strUsername))
                {
                    arrayViewNames.Add(currentView.Name);
                    arrayViews.Add(currentView);
                }
            }

            arrayViewNames.Sort();

            foreach (string viewName in arrayViewNames)
            {
                foreach (Tekla.Structures.Model.UI.View view in arrayViews)
                {
                    if (viewName == view.Name)
                    {
                        ToolStripMenuItem SavedView = new ToolStripMenuItem(view.Name);
                        SavedView.Tag    = view;
                        SavedView.Click += new EventHandler(SavedView_Click);
                        myViewsMenuItem.DropDownItems.Add(SavedView);
                    }
                }
            }

            if (modelViewsEnum.Count > 0)
            {
                menuStrip.Items.Add(myViewsMenuItem);
            }
        }
        private void AddViewsToMenu(MenuStrip menuStrip)
        {
            ToolStripMenuItem myViewsMenuItem = new ToolStripMenuItem("My Views");
            string            strUsername     = Environment.UserName;

            Tekla.Structures.Model.UI.ModelViewEnumerator modelViewsEnum = Tekla.Structures.Model.UI.ViewHandler.GetPermanentViews();
            while (modelViewsEnum.MoveNext())
            {
                Tekla.Structures.Model.UI.View currentView = modelViewsEnum.Current;
                if (currentView.Name.Contains(strUsername))
                {
                    ToolStripMenuItem SavedView = new ToolStripMenuItem(currentView.Name);
                    SavedView.Tag    = currentView;
                    SavedView.Click += new EventHandler(SavedView_Click);
                    myViewsMenuItem.DropDownItems.Add(SavedView);
                }
            }

            if (modelViewsEnum.Count > 0)
            {
                menuStrip.Items.Add(myViewsMenuItem);
            }
        }
Beispiel #6
0
        private void UpdateProperties()
        {
            if (this.propertyGrid1.InvokeRequired)
            {
                UpdatePropertiesCallback d = new UpdatePropertiesCallback(UpdateProperties);
                this.Invoke(d);
            }
            else
            {
                Drawing drawing = drawingHandler.GetActiveDrawing();
                if (drawing != null)
                {
                    DrawingObjectEnumerator drawingObjectEnum = drawingHandler.GetDrawingObjectSelector().GetSelected();
                    statusLabel.Text = drawingObjectEnum.GetSize().ToString() + " objects selected";
                    ArrayList arraySelectedObjects = new ArrayList();
                    if (drawingObjectEnum.GetSize() == 0)
                    {
                        activeDrawing.GetProperties();
                        propertyGrid1.SelectedObject = activeDrawing;
                    }

                    while (drawingObjectEnum.MoveNext())
                    {
                        string objectType = drawingObjectEnum.Current.GetType().ToString();
                        if (!arraySelectedObjects.Contains(objectType))
                        {
                            arraySelectedObjects.Add(objectType);
                        }
                    }

                    comboBox1.Text = "";
                    comboBox1.Items.Clear();

                    arraySelectedObjects.Sort();
                    foreach (string objectName in arraySelectedObjects)
                    {
                        comboBox1.Items.Add(objectName);
                    }

                    if (arraySelectedObjects.Count == 1)
                    {
                        if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Part")
                        {
                            drawingPart.GetProperties();
                            propertyGrid1.SelectedObject = drawingPart;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Weld")
                        {
                            drawingWeld.GetProperties();
                            propertyGrid1.SelectedObject = drawingWeld;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.View")
                        {
                            view.GetProperties();
                            propertyGrid1.SelectedObject = view;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Bolt")
                        {
                            drawingBolt.GetProperties();
                            propertyGrid1.SelectedObject = drawingBolt;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.StraightDimensionSet")
                        {
                            straightDim.GetProperties();
                            propertyGrid1.SelectedObject = straightDim;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.RadiusDimension")
                        {
                            radiusDim.GetProperties();
                            propertyGrid1.SelectedObject = radiusDim;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.CurvedDimensionSetRadial")
                        {
                            radialDim.GetProperties();
                            propertyGrid1.SelectedObject = radialDim;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.AngleDimension")
                        {
                            angleDim.GetProperties();
                            propertyGrid1.SelectedObject = angleDim;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.GridLine")
                        {
                            drawingGrid.GetProperties();
                            propertyGrid1.SelectedObject = drawingGrid;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Line")
                        {
                            line.GetProperties();
                            propertyGrid1.SelectedObject = line;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Arc")
                        {
                            arc.GetProperties();
                            propertyGrid1.SelectedObject = arc;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Polyline")
                        {
                            polyline.GetProperties();
                            propertyGrid1.SelectedObject = polyline;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Rectangle")
                        {
                            rectangle.GetProperties();
                            propertyGrid1.SelectedObject = rectangle;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Circle")
                        {
                            circle.GetProperties();
                            propertyGrid1.SelectedObject = circle;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Polygon")
                        {
                            polygon.GetProperties();
                            propertyGrid1.SelectedObject = polygon;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Text")
                        {
                            text.GetProperties();
                            propertyGrid1.SelectedObject = text;
                        }
                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Symbol")
                        {
                            symbol.GetProperties();
                            propertyGrid1.SelectedObject = symbol;
                        }
                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Drawing.Mark")
                        {
                            mark.GetProperties();
                            propertyGrid1.SelectedObject = mark;
                        }

                        else
                        {
                            activeDrawing.GetProperties();
                            propertyGrid1.SelectedObject = activeDrawing;
                        }

                        comboBox1.SelectedText = arraySelectedObjects[0].ToString();
                        propertyGrid1.Focus();
                    }

                    if (arraySelectedObjects.Count > 1)
                    {
                        propertyGrid1.SelectedObject = null;
                    }
                }

                if (drawing == null)
                {
                    ModelObjectEnumerator modelObjectEnum = model.GetModelObjectSelector().GetSelectedObjects();
                    statusLabel.Text = modelObjectEnum.GetSize().ToString() + " objects selected";
                    ArrayList arraySelectedObjects = new ArrayList();

                    if (modelObjectEnum.GetSize() == 0)
                    {
                        propertyGrid1.SelectedObject = null;
                    }

                    while (modelObjectEnum.MoveNext())
                    {
                        string objectType = modelObjectEnum.Current.GetType().ToString();
                        if (!arraySelectedObjects.Contains(objectType))
                        {
                            arraySelectedObjects.Add(objectType);
                        }
                    }

                    comboBox1.Text = "";
                    comboBox1.Items.Clear();

                    arraySelectedObjects.Sort();
                    foreach (string objectName in arraySelectedObjects)
                    {
                        comboBox1.Items.Add(objectName);
                    }

                    if (arraySelectedObjects.Count == 0)
                    {
                        Tekla.Structures.Model.UI.ModelViewEnumerator modelViewEnum = Tekla.Structures.Model.UI.ViewHandler.GetSelectedViews();
                        if (modelViewEnum.Count == 1)
                        {
                            modelView.GetProperties();
                            propertyGrid1.SelectedObject = modelView;

                            comboBox1.SelectedText = "Tekla.Structures.Model.UI.View";
                            propertyGrid1.Focus();
                        }
                    }

                    if (arraySelectedObjects.Count == 1)
                    {
                        if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Model.Beam")
                        {
                            beam.GetProperties();
                            propertyGrid1.SelectedObject = beam;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Model.ContourPlate")
                        {
                            contourPlate.GetProperties();
                            propertyGrid1.SelectedObject = contourPlate;
                        }

                        else if (arraySelectedObjects[0].ToString().Contains("Tekla.Structures.Model.Weld"))
                        {
                            modelWeld.GetProperties();
                            propertyGrid1.SelectedObject = modelWeld;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Model.PolygonWeld")
                        {
                            modelWeld.GetProperties();
                            propertyGrid1.SelectedObject = modelWeld;
                        }

                        else if (arraySelectedObjects[0].ToString().Contains("Tekla.Structures.Model.Bolt"))
                        {
                            modelBolt.GetProperties();
                            propertyGrid1.SelectedObject = modelBolt;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Model.Grid")
                        {
                            modelGrid.GetProperties();
                            propertyGrid1.SelectedObject = modelGrid;
                        }

                        else if (arraySelectedObjects[0].ToString() == "Tekla.Structures.Model.Connection")
                        {
                            modelConnection.GetProperties();
                            propertyGrid1.SelectedObject = modelConnection;
                        }

                        comboBox1.SelectedText = arraySelectedObjects[0].ToString();
                        propertyGrid1.Focus();
                    }

                    if (arraySelectedObjects.Count > 1)
                    {
                        propertyGrid1.SelectedObject = null;
                    }
                }
            }
        }