Analyzing Paint 3D 2/2

The Paint 3D app has been updated, and they have solved the issue shown in the previous post Analyzing Paint 3D 1/2 , now if you press tab, it will only cycle around the control PaintDialog.

about.JPG

I have also taken a look to all the fonts in the system for Paint, Edge, and more fonts. At the moment all remain the same. You find them by searching *.ttf in Windows/SystemApps.

There are no news about using SVGImageSource instead Canvas Path for the tool icons. I understand will be changed in the CreatorsUpdate.

Before digging about the properties and structure of the controls, you can take a look to them with Visual Studio. Create a new project and add the references from the winmd files, then you will be able to open that:

metadata

It is only the information from the metatada, not the source code, so you won’t able to use that. But it is interesting because you can do it directly from VS.

Let’s analyze first the visuals left from the previous post and then the rest of the controls.

Shadows

In this release, we still have a rectangle with a lineargradientbrush for the shadows of the panels, they have the following properties:

shadow

If you do not usually apply linear gradient brushes, you can get more information at msdn uwp brushes.

Now you can apply the same shadow in your apps, let’s take a look to the controls that appear like a popup.

PaintDialog

It is a Content Control that simulates a popup dialog. It does not appear in the Canvas Panel of the Popups, it is inside the main visual tree and the controls have this inside to show its functionality limiting the actions inside it.

HsvColorPicker

hsv

This is a control that appears with a PaintDialog, it has a shadow, really complex because it has a Shadow Grid with 7 borders to make the shadow. It bothers my who decided and why to do that:

shadow2

The background brush of this control, is defined in the DropShadowBorder #FFF6F6F6, it is not an static resource, I cannot assure that, but apparently it is. The margin of the header is 24,28,0,0. So now are a factor x4. and the color of the title is Black with 0.6 of opacity.

The color selector is SaturationGradient.png inside Content folder that looks like the following:

gradient

And below contains the color which is binded to the color of other Control.

The slider to change the hue, has been customized with a gradient with 29 stops:

gradientinfo

I understand this gradient has been made with a tool, and not hardcoded. I would like to see more Win2D and Composition in this app but at the moment nothing really surprising.

After looking the rest of the information that can be extracted, and watching that the SwapChainPanel does not show any information when is used in 3D, I decided to give my conclusions and continue when the Creators Update and the new Universal Examples on GitHub get released.

Conclusions

There is no way to analyze styles, transitions, etc. from the Live Visual Tree. might be in the future will appear a third party tool to analyze it. (In case you know how please share)

I am waiting new real documentation ‘Acrylic’ with personas, XAML lights, shadows, SvgImageSource, updated Compiled binding and many more. Might be on Feb 8 we get more information.

The GitHub repositories are stopped, most of them have 6 months old and composition repo 4 months, that means ages.

Paint 3D app is not using any internal SDK it is using the typical we use. it is a really outdated version comparing it to the release I think we will see in a near future. Might be when release the new SDK without being prerelease.

And that’s all not surprises but details, as always @juanpaexpedite

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s