/// <summary> /// Añade las propiedades seleccionadas al ChartContainer que corresponda /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void observationsAndProperties_MouseDoubleClick(object sender, MouseButtonEventArgs e) { LinkedList<AbstractDataVisualizerViewModel> viewModels; TreeViewItem anItem = (TreeViewItem)observationsAndProperties.SelectedItem; if (anItem == null) { return; } bool createNewChartContainer = LoadDataFromXML(anItem, out viewModels); foreach (AbstractDataVisualizerViewModel viewModel in viewModels) { string observacion = viewModel.Observation; if (createNewChartContainer) { createNewChartContainer = false; UC_ChartContainer newContainer = new UC_ChartContainer(observacion); GraphicActions.getMyGraphicActions().addObservationContainer(newContainer); addToAnchorablePane(newContainer, newContainer.Observation); } //comprobamos que no sea de la clase abstracta if (((viewModel is ContinousDataVisualizerViewModel) || (viewModel is DiscreteDataVisualizerViewModel))) { double[] startEnd = GraphicActions.getMyGraphicActions().getSelectedRange(); UC_DataVisualizer dataVisualizer = new UC_DataVisualizer(viewModel, startEnd[0], startEnd[1]); GraphicActions.getMyGraphicActions().addToContainer(observacion, dataVisualizer); } } }
/// <summary> /// Adds a UC_DataVisualizer to the the given observation /// </summary> /// <param name="observacion">The observation to which the UC_DataVisualizer will be added</param> /// <param name="dataVisualizer">The UC_DataVisualizer to be added</param> internal void addToContainer(string observacion, UC_DataVisualizer dataVisualizer) { UC_ChartContainer theTarget; chartContainers.TryGetValue(observacion, out theTarget); theTarget.addToAnchorablePane(dataVisualizer, dataVisualizer.Property); }