Ejemplo n.º 1
0
        private void Item_Add(object sender, RoutedEventArgs e)
        {
            if (addItemText.Text == "")
            {
                MessageBoxButton btn = MessageBoxButton.OK;
                FirstFloor.ModernUI.Windows.Controls.ModernDialog.ShowMessage("You should fill in the Input TextArea below before adding!", "Error Message", btn);
                return;
            }
            TreeViewItem currentTreeViewItem = null;

            //Find the original Source and set it as the currentTreeViewItem
            FrameworkElement element = e.OriginalSource as FrameworkElement;

            if (element != null)
            {
                while (VisualTreeHelper.GetParent(element) != null)
                {
                    element = VisualTreeHelper.GetParent(element) as FrameworkElement;
                    TreeViewItem item = element as TreeViewItem;
                    if (item != null)
                    {
                        // Perform custom logic here
                        // You have to return here because otherwise the method will traverse
                        // the whole visual tree on every mouse move and there will be performance
                        // implications
                        currentTreeViewItem = item;
                        break;
                    }
                }
            }

            currentTreeViewItem.IsSelected = true;//Mark the current TreeViewItem as the selectedItem
            if (tv.Items.IndexOf(tv.SelectedItem) != -1)
            {
                NEXP.IndependentVariable       selectedIDV = (NEXP.IndependentVariable)tv.SelectedItem;
                NEXP.IndependentVariable.Level level       = new NEXP.IndependentVariable.Level();
                level.name = addItemText.Text;
                selectedIDV.levels.Add(level);
                currentTreeViewItem.IsExpanded = true;
            }
            else
            {
                NEXP.IndependentVariable.Level selectedLevel = (NEXP.IndependentVariable.Level)tv.SelectedItem;
                NEXP.IndependentVariable.Level level         = new NEXP.IndependentVariable.Level();
                level.name = addItemText.Text;
                foreach (NEXP.IndependentVariable IDV in NEXP.MainWindow.datas.independentVariables)
                {
                    if (IDV.levels.Contains(selectedLevel))
                    {
                        //Log.getLogInstance().writeLog("second");
                        IDV.levels.Add(level);
                        break;
                    }
                }
                currentTreeViewItem.IsExpanded = true;
            }
        }
Ejemplo n.º 2
0
        private void Item_Del(object sender, RoutedEventArgs e)
        {
            TreeViewItem currentTreeViewItem = null;

            //Find the original Source and set it as the currentTreeViewItem
            FrameworkElement element = e.OriginalSource as FrameworkElement;

            if (element != null)
            {
                while (VisualTreeHelper.GetParent(element) != null)
                {
                    element = VisualTreeHelper.GetParent(element) as FrameworkElement;
                    TreeViewItem item = element as TreeViewItem;
                    if (item != null)
                    {
                        // Perform custom logic here
                        // You have to return here because otherwise the method will traverse
                        // the whole visual tree on every mouse move and there will be performance
                        // implications
                        currentTreeViewItem = item;
                        break;
                    }
                }
            }

            currentTreeViewItem.IsSelected = true;//Mark the current TreeViewItem as the selectedItem
            if (tv.Items.IndexOf(tv.SelectedItem) != -1)
            {
                NEXP.MainWindow.datas.independentVariables.RemoveAt(tv.Items.IndexOf(tv.SelectedItem));
                return;
            }
            else
            {
                NEXP.IndependentVariable.Level tmp = (NEXP.IndependentVariable.Level)tv.SelectedItem;
                foreach (NEXP.IndependentVariable IDV in NEXP.MainWindow.datas.independentVariables)
                {
                    if (IDV.levels.Contains(tmp))
                    {
                        //Log.getLogInstance().writeLog("second");
                        IDV.levels.Remove(tmp);
                    }
                }
            }
        }
Ejemplo n.º 3
0
        private void Icon_Add_MouseUp(object sender, MouseButtonEventArgs e)
        {
            //Log.getLogInstance().writeLog("click");
            if (e.LeftButton == MouseButtonState.Released && sender == this.downSender)
            {
                TimeSpan timeSinceDown = DateTime.Now - this.downTime;
                if (timeSinceDown.TotalMilliseconds < 500)
                {
                    System.Windows.Controls.Canvas tmp = sender as System.Windows.Controls.Canvas;
                    if (tmp.Name == "Add")
                    {
                        if (addItemText.Text != "")
                        {
                            if (tv.SelectedItem == null)
                            {
                                NEXP.IndependentVariable idv = new NEXP.IndependentVariable();
                                idv.name = addItemText.Text;
                                NEXP.MainWindow.datas.independentVariables.Add(idv);
                            }
                            else if (tv.Items.IndexOf(tv.SelectedItem) != -1)
                            {
                                NEXP.IndependentVariable       selectedIDV = (NEXP.IndependentVariable)tv.SelectedItem;
                                NEXP.IndependentVariable.Level level       = new NEXP.IndependentVariable.Level();
                                level.name = addItemText.Text;
                                selectedIDV.levels.Add(level);
                            }
                            else
                            {
                            }
                        }
                    }
                    else if (tmp.Name == "Minus")
                    {
                        if (tv.SelectedItem != null)
                        {
                            //Log.getLogInstance().writeLog((tv.Items.IndexOf(tv.SelectedItem)).ToString());

                            if (tv.Items.IndexOf(tv.SelectedItem) != -1)
                            {
                                NEXP.MainWindow.datas.independentVariables.RemoveAt(tv.Items.IndexOf(tv.SelectedItem));
                                return;
                            }
                            else
                            {
                                NEXP.IndependentVariable.Level selectedLevel = (NEXP.IndependentVariable.Level)tv.SelectedItem;
                                foreach (NEXP.IndependentVariable IDV in NEXP.MainWindow.datas.independentVariables)
                                {
                                    if (IDV.levels.Contains(selectedLevel))
                                    {
                                        //Log.getLogInstance().writeLog("second");
                                        IDV.levels.Remove(selectedLevel);
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                    }
                }
            }
        }