// Конструктор. public PluginWindow() { _layersViewModel = new LayersViewModel(); DataContext = this; InitializeComponent(); }
public void FindLayers(LayersViewModel layersListData) { // Get the current document and database Document acDoc = acApp.DocumentManager.MdiActiveDocument; Database acCurDb = acDoc.Database; using (DocumentLock acLckDoc = acDoc.LockDocument()) { // Start a transaction using (Transaction acTrans = acCurDb.TransactionManager.StartTransaction()) { // Open the Layer table for read LayerTable acLyrTbl; acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId, OpenMode.ForRead) as LayerTable; foreach (ObjectId acObjId in acLyrTbl) { LayerTableRecord acLyrTblRec; acLyrTblRec = acTrans.GetObject(acObjId, OpenMode.ForRead) as LayerTableRecord; LayerModel dataLayer = new LayerModel() { Name = acLyrTblRec.Name, Color = acLyrTblRec.Color, Visible = !acLyrTblRec.IsOff, Id = acLyrTblRec.Id }; FindEntitiesForLayer(dataLayer); layersListData.LayersList.Add(dataLayer); } // Dispose of the transaction acTrans.Commit(); } } }
/// <summary> /// Creates new instance of layers view for showing tile layers. /// </summary> public LayersView(Editor editor) { this.editor = editor; // Initialize view model. layersViewModel = new LayersViewModel(editor); // Set data context. DataContext = layersViewModel; InitializeComponent(); // Hook create new layer action. createNewLayerAction = new Action(CreateTileLayer); CollectionView collectionView = (CollectionView)CollectionViewSource.GetDefaultView(layersListView.ItemsSource); collectionView.SortDescriptions.Add(new SortDescription("DrawOrder", ListSortDirection.Descending)); }
public EditWindow() { InitializeComponent(); _layersListData = new LayersViewModel(); DataContext = _layersListData; }
public override IDock CreateLayout() { var documentViewModel = new SceneControlDocumentViewModel() { Id = "Viewport", Title = "Viewport" }; documentViewModel.SceneControlViewModel.Document = m_ViewModel.Document; var layersToolViewModel = new LayersViewModel() { Id = "Layers", Title = "Layers" }; layersToolViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var editLayerToolViewModel = new EditLayerViewModel() { Id = "GroupAndLayerSettings", Title = "Group and Layer Settings" }; editLayerToolViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var addGeometryViewModel = new AddGeometryViewModel() { Id = "AddGeometry", Title = "Add Geometry" }; addGeometryViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var mainLayout = new ProportionalDock { Id = "MainLayout", Title = "MainLayout", Proportion = double.NaN, Orientation = Orientation.Horizontal, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new ProportionalDock { Id = "LeftPane", Title = "LeftPane", Proportion = .2, Orientation = Orientation.Vertical, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new ToolDock { Id = "LeftPaneTop", Title = "LeftPaneTop", Proportion = double.NaN, ActiveDockable = layersToolViewModel, VisibleDockables = CreateList <IDockable> ( layersToolViewModel ) }, new SplitterDock() { Id = "LeftPaneTopSplitter", Title = "LeftPaneTopSplitter" }, new ToolDock { Id = "LeftPaneBottom", Title = "LeftPaneBottom", Proportion = double.NaN, ActiveDockable = editLayerToolViewModel, VisibleDockables = CreateList <IDockable> ( editLayerToolViewModel ) } ) }, new SplitterDock() { Id = "LeftSplitter", Title = "LeftSplitter" }, new ProportionalDock { Id = "CenterPane", Title = "CenterPane", Proportion = double.NaN, Orientation = Orientation.Vertical, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new DocumentDock { Id = "DocumentsPane", Title = "DocumentsPane", Proportion = .8, ActiveDockable = documentViewModel, VisibleDockables = CreateList <IDockable> ( documentViewModel ) }, new SplitterDock() { Id = "CenterPaneSplitter", Title = "CenterPaneSplitter" }, new ToolDock { Id = "CenterPaneBottom", Title = "CenterPaneBottom", Proportion = double.NaN, ActiveDockable = addGeometryViewModel, VisibleDockables = CreateList <IDockable> ( addGeometryViewModel ) } ) } ) }; var mainView = new MainViewModel { Id = "Main", Title = "Main", ActiveDockable = mainLayout, VisibleDockables = CreateList <IDockable>(mainLayout) }; var root = CreateRootDock(); root.Id = "Root"; root.Title = "Root"; root.ActiveDockable = mainView; root.DefaultDockable = mainView; root.VisibleDockables = CreateList <IDockable>(mainView); return(root); }
public override IDock CreateLayout() { SpatialDocument document = new SpatialDocument(); ILayer layer = document.AddItemsLayer(); document.SelectedNode = layer; layer.Name = "WKT Geometries"; var documentViewModel = new SceneControlDocumentViewModel() { Id = "Document1", Title = "Document 1" }; documentViewModel.SceneControlViewModel.Document = document; var layersToolViewModel = new LayersViewModel() { Id = "Layers", Title = "Layers" }; layersToolViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var editLayerToolViewModel = new EditLayerViewModel() { Id = "GroupAndLayerSettings", Title = "Group and Layer Settings" }; editLayerToolViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var addGeometryViewModel = new AddGeometryViewModel() { Id = "AddGeometry", Title = "Add Geometry" }; addGeometryViewModel.SceneViewModel.Scene = documentViewModel.SceneControlViewModel; var mainLayout = new ProportionalDock { Id = "MainLayout", Title = "MainLayout", Proportion = double.NaN, Orientation = Orientation.Horizontal, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new ProportionalDock { Id = "LeftPane", Title = "LeftPane", Proportion = .2, Orientation = Orientation.Vertical, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new ToolDock { Id = "LeftPaneTop", Title = "LeftPaneTop", Proportion = double.NaN, ActiveDockable = layersToolViewModel, VisibleDockables = CreateList <IDockable> ( layersToolViewModel ) }, new SplitterDock() { Id = "LeftPaneTopSplitter", Title = "LeftPaneTopSplitter" }, new ToolDock { Id = "LeftPaneBottom", Title = "LeftPaneBottom", Proportion = double.NaN, ActiveDockable = editLayerToolViewModel, VisibleDockables = CreateList <IDockable> ( editLayerToolViewModel ) } ) }, new SplitterDock() { Id = "LeftSplitter", Title = "LeftSplitter" }, new ProportionalDock { Id = "CenterPane", Title = "CenterPane", Proportion = double.NaN, Orientation = Orientation.Vertical, ActiveDockable = null, VisibleDockables = CreateList <IDockable> ( new DocumentDock { Id = "DocumentsPane", Title = "DocumentsPane", Proportion = .8, ActiveDockable = documentViewModel, VisibleDockables = CreateList <IDockable> ( documentViewModel ) }, new SplitterDock() { Id = "CenterPaneSplitter", Title = "CenterPaneSplitter" }, new ToolDock { Id = "CenterPaneBottom", Title = "CenterPaneBottom", Proportion = double.NaN, ActiveDockable = addGeometryViewModel, VisibleDockables = CreateList <IDockable> ( addGeometryViewModel ) } ) } ) }; var mainView = new MainViewModel { Id = "Main", Title = "Main", ActiveDockable = mainLayout, VisibleDockables = CreateList <IDockable>(mainLayout) }; var root = CreateRootDock(); root.Id = "Root"; root.Title = "Root"; root.ActiveDockable = mainView; root.DefaultDockable = mainView; root.VisibleDockables = CreateList <IDockable>(mainView); root.Top = CreatePinDock(); root.Top.Alignment = Alignment.Top; root.Bottom = CreatePinDock(); root.Bottom.Alignment = Alignment.Bottom; root.Left = CreatePinDock(); root.Left.Alignment = Alignment.Left; root.Right = CreatePinDock(); root.Right.Alignment = Alignment.Right; return(root); }