Example #1
0
        bool guard = false; // to prevent reentrancy
        void FigureExplorer_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (guard)
            {
                return;
            }

            guard = true;

            foreach (var deselected in e.RemovedItems)
            {
                IFigure deselectedFigure = deselected as IFigure;
                if (deselectedFigure != null)
                {
                    deselectedFigure.Selected = false;
                }
            }

            foreach (var selected in e.AddedItems)
            {
                IFigure selectedFigure = selected as IFigure;
                if (selectedFigure != null)
                {
                    selectedFigure.Selected = true;
                }
            }

            CurrentDrawing.RaiseSelectionChanged(CurrentDrawing.GetSelectedFigures());

            guard = false;
        }
Example #2
0
        private void FigureItems_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var selected = FigureItems.SelectedItem;

            IFigure selectedFigure = selected as IFigure;

            if (selectedFigure != null)
            {
                selectedFigure.Selected = true;
            }

            pg.Show(selectedFigure, CurrentDrawing.ActionManager);

            //FigureItems.SelectedValue = selectedFigure;

            CurrentDrawing.RaiseSelectionChanged(CurrentDrawing.GetSelectedFigures());
        }