My previous post highlights features that had to be implemented as a part of this year's Google Summer of Code project. The WPF Designer branch, which was meant for parallel development got merged with the trunk in revision 6319.
I am summing up what has been done as far as WPF Designer is concerned. Since designer development is UI/UX-centric, I am keeping this post screenshot heavy with less text. Also for the post, let me describe the term "Adorner" in context of the designer if one is not aware of it. Adorners are essentially WPF Elements to interact with the control(s) they adorn in some way which improves the user experience with the designer for example "Resize thumbs" to resize the primary selection.
I have added commonly used adorners which ease out resize and placement operations. Below is a screenshot highlighting some of them.
Margins can be set or removed by clicking on the corresponding stub or handle.
The designer now also has an In-place editor to directly edit the Text inside any element. Text which can be edited are highlighted by a border around the text on mouse hover and one can simply click it to edit it.
Note : Some issues regarding the editor placement and size still exist but as far editing the text goes, it works fine.
Quick Operation's Menu
Another interesting feature that I have added is a quick operation menu attached next to the selection. The idea of coming up with is somewhere rooted in ReSharper context actions. The shortcut to trigger that is [Alt] + Enter. Currently it only allows changing some properties
- Horizontal Alignment
- Vertical Alignment
- DockPanel.Dock if the adorned element is inside a DockPanel.
- StackPanel orientation
- Type editor for properties of type ImageSource like Window.Icon and Image.Source.
- Editing attached properties.
- Validating numeric values through highlight colour and tooltip of the text.
- Hide obsolete properties in the designer.
The outline for the designer elements had been earlier coded by Ivan Shumilin. I have implemented that for the designer in the Outline pad.
- Edit operations : Cut/Copy/Paste elements in the designer.
- Re - ordering elements in the StackPanel through click and drag.
- Context menu having basic options.
- Navigating between elements through Tab and [Shift] + Tab.
- ToolTip for specific adorners.
and numerous other bug fixes.
Please feel free to reply with any suggestions/remarks on the above or if you have in mind any interesting feature that would be good be for the designer.For any bug encountered, please report them here