public GUIInspector() { InitializeComponent(); settings = new Settings(); strategyMgr = new StrategyManager(); grantTrees = new GeneratedGrantTrees(); treeOperations = new TreeOperation(strategyMgr, grantTrees); // Setzen des Eventmanager List <Strategy> possibleEventManager = settings.getPossibleEventManager(); strategyMgr.setSpecifiedEventStrategy(possibleEventManager[0].className); List <Strategy> possibleOperationSystems = settings.getPossibleOperationSystems(); String cUserOperationSystemName = possibleOperationSystems[0].userName; // muss dynamisch ermittelt werden strategyMgr.setSpecifiedOperationSystem(Settings.strategyUserNameToClassName(cUserOperationSystemName)); IOperationSystemStrategy operationSystemStrategy = strategyMgr.getSpecifiedOperationSystem(); List <Strategy> possibleTrees = settings.getPossibleTrees(); strategyMgr.setSpecifiedTree(possibleTrees[0].className); ITreeStrategy <OSMElements.OSMElement> treeStrategy = strategyMgr.getSpecifiedTree(); List <Strategy> possibleFilter = Settings.getPossibleFilters(); String cUserFilterName = possibleFilter[0].userName; // der Filter muss dynamisch ermittelt werden strategyMgr.setSpecifiedFilter(Settings.strategyUserNameToClassName(cUserFilterName)); strategyMgr.getSpecifiedFilter().setGeneratedGrantTrees(grantTrees); strategyMgr.getSpecifiedFilter().setTreeOperation(treeOperations); IFilterStrategy filterStrategy = strategyMgr.getSpecifiedFilter(); strategyMgr.setSpecifiedGeneralTemplateUi(settings.getPossibleUiTemplateStrategies()[0].className); strategyMgr.getSpecifiedGeneralTemplateUi().setGeneratedGrantTrees(grantTrees); strategyMgr.getSpecifiedGeneralTemplateUi().setTreeOperation(treeOperations); strategyMgr.setSpecifiedBrailleDisplay(settings.getPossibleBrailleDisplays()[0].className); // muss dynamisch ermittelt werden #region setzen der neuen (Juni 2017) Event Interfaces strategyMgr.setSpecifiedEventAction(settings.getPossibleEventAction()[0].className); strategyMgr.getSpecifiedEventAction().setGrantTrees(grantTrees); strategyMgr.getSpecifiedEventAction().setTreeOperation(treeOperations); strategyMgr.setSpecifiedEventManager(settings.getPossibleEventManager2()[0].className); strategyMgr.setSpecifiedEventProcessor(settings.getPossibleEventProcessor()[0].className); strategyMgr.getSpecifiedEventProcessor().setGrantTrees(grantTrees); strategyMgr.getSpecifiedEventProcessor().setTreeOperations(treeOperations); #endregion strategyMgr.setSpecifiedExternalScreenreader(settings.getPossibleExternalScreenreaders()[0].className); strategyMgr.setSpecifiedBrailleConverter(settings.getPossibleBrailleConverter()[0].className); filteredTreeOutput.SelectedItemChanged += new RoutedPropertyChangedEventHandler <object>(filteredTreeOutput_SelectedItemChanged); guiFunctions = new GuiFunctions(strategyMgr, grantTrees, treeOperations); root = new TreeViewItem(); NodeButton.IsEnabled = false; SaveButton.IsEnabled = false; filteredPropRoot = new GuiFunctions.MyViewModel(); }
/// <summary> /// Displays properties of the marked tree node of the filtered tree in an table. /// </summary> /// <param name="IdGenerated"></param> void updatePropertiesTable(String IdGenerated) { OSMElements.OSMElement osmElement = treeOperations.searchNodes.getFilteredTreeOsmElementById(IdGenerated); this.filteredPropRoot = new GuiFunctions.MyViewModel(osmElement); if (filteredTreeProp.Columns.Count == 0) { filteredTreeProp.Columns.Clear(); /* int columnIndex = 0; * foreach (var name in this.filteredPropRoot.ColumnNames) * { * filteredTreeProp.Columns.Add( * new DataGridTextColumn * { * Header = name, * Binding = new Binding(string.Format("Values[{0}]", columnIndex++)) * }); * }*/ filteredTreeProp.Columns.Add( new DataGridTextColumn { Header = "Property", // Binding = new Binding(string.Format("Values", 0)), Binding = new Binding("Values.Name") } ); filteredTreeProp.Columns.Add( new DataGridTextColumn { Header = "Content", Binding = new Binding("Values.currentValue") } ); } filteredTreeProp.DataContext = this.filteredPropRoot; System.Drawing.Rectangle rect = strategyMgr.getSpecifiedOperationSystem().getRect(osmElement); strategyMgr.getSpecifiedOperationSystem().paintRect(rect); NodeButton.CommandParameter = IdGenerated; }