Ejemplo n.º 1
0
        void UpdateDecoratorPreview(bool resetScale)
        {
            Decorator selectedDecorator = null;

            if (puzzlePropertyGrid.SelectedObject is GraphElement graphElement)
            {
                selectedDecorator = graphElement.Decorator;
            }
            if (puzzlePropertyGrid.SelectedObject is Decorator)
            {
                selectedDecorator = puzzlePropertyGrid.SelectedObject as Decorator;
            }
            if (editView != null)
            {
                decoratorPreviewBuffer.Graphics.Clear(editView.Graph.MetaData.BackgroundColor);
                if (selectedDecorator != null)
                {
                    if (resetScale)
                    {
                        decoratorPreviewScale = PuzzleToolkit.GetSuggestedDecorationScale(selectedDecorator);
                    }
                    PuzzleGraphRenderer renderer = new PuzzleGraphRenderer(decoratorPreviewBuffer.Graphics);
                    double width  = decoratorPreviewPictureBox.Width;
                    double height = decoratorPreviewPictureBox.Height;
                    renderer.DrawDecorator(selectedDecorator, new MathHelper.Vector(width / 2.0, height / 2.0),
                                           height * decoratorPreviewScale, editView.Graph.MetaData, editView.Graph.MetaData.BackgroundColor, true);
                }
                decoratorPreviewBuffer.Render();
            }
        }
Ejemplo n.º 2
0
 private void ToolkitAdd_Click(object sender, EventArgs e)
 {
     if (editView != null)
     {
         if (editView.SelectedObjects.Count == 0)
         {
             MessageBox.Show(Resources.Lang.Errors_NoElement);
             return;
         }
         Decorator decorator = editView.SelectedObjects[0].Decorator;
         if (string.IsNullOrWhiteSpace(toolkitTextBox.Text))
         {
             MessageBox.Show(Resources.Lang.Errors_NameEmpty);
             return;
         }
         string name = toolkitTextBox.Text;
         double size = PuzzleToolkit.GetSuggestedDecorationScale(decorator);
         toolkit.Items.Add(new PuzzleToolkitDecoratorItem(name, decorator, size));
         InitToolkit(toolkit);
         UpdateToolkitListView();
     }
 }