- Transition(Animation) example added, SVG/AGIF Visual example added. (visual-animation-test.cs)
- AnimatorVisual, SVGVisual, AnimatedImageVisaul(AGIF) high level classes added.
- Visaul high level class naming changed (remove "Map" suffix)
- UpdateVisual() added. (by only changing high level visual class's property, visual is updated automatically)
- property naming change : Offset => Position, VisualSize => Size
Change-Id: I978b820ed1dc5dadc54d1ed9872f4182f022bd2f
Signed-off-by: dongsug.song <dongsug.song@samsung.com>
<Compile Include="examples\test1.cs" />\r
<Compile Include="examples\user-alphafunction.cs" />\r
<Compile Include="examples\view-navi-property.cs" />\r
+ <Compile Include="examples\visual-animation-test.cs" />\r
<Compile Include="examples\visual-view-test.cs" />\r
<Compile Include="examples\visuals-using-custom-view\ContactData.cs" />\r
<Compile Include="examples\visuals-using-custom-view\ContactView.cs" />\r
</ProjectReference>\r
</ItemGroup>\r
<ItemGroup>\r
+ <Content Include="res\images\application-icon-0.png" />\r
+ <Content Include="res\images\background-blocks.jpg" />\r
+ <Content Include="res\images\dali-logo-anim.gif" />\r
+ <Content Include="res\images\dog-anim.gif" />\r
+ <Content Include="res\images\echo.gif" />\r
<Content Include="res\images\focuseffect\0-normal.png" />\r
<Content Include="res\images\focuseffect\1-normal.png" />\r
<Content Include="res\images\focuseffect\2-normal.png" />\r
<Content Include="res\images\image-1.jpg" />\r
<Content Include="res\images\image-2.jpg" />\r
<Content Include="res\images\image-3.jpg" />\r
+ <Content Include="res\images\Kid1.svg" />\r
+ <Content Include="res\images\Mail.svg" />\r
<Content Include="res\images\menu\0.png" />\r
<Content Include="res\images\menu\1.png" />\r
<Content Include="res\images\menu\2.png" />\r
<Content Include="res\images\star-mod.png" />\r
<Content Include="res\images\focuseffect\thumbnail_shadow.9.png" />\r
<Content Include="res\images\focuseffect\white-pixel.png" />\r
+ <Content Include="res\images\World.svg" />\r
</ItemGroup>\r
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.\r
//new Test1.Example().Run(args); //o
//new UserAlphaFunctionTest.Example().Run(args); //o
//new MyCSharpExample.Example().Run(args); //o
- //new VisualViewTest.Example().Run(args); //o
//new CustomControlTest.Example().Run(args); //o
//new ScrollViewTest.Example().Run(args); //o
//new ImageViewTest.Example().Run(args); //o
- //new FlexContainerTest.SampleMain().Run(args); //o
+ //new FlexContainerTest.SampleMain().Run(args); //o
//new DatePickerUsingJson.Example().Run(args); //o
//new DaliTest.Example().Run(args); //o
- //new FirstScreen.FirstScreenApp().Run(args); //o
//new MyCSharpExample.Example().Run(args); //o
- new FirstScreen.FirstScreenApp().Run(args); //o
+ //new FirstScreen.FirstScreenApp().Run(args); //o
//new MyCSharpExample.Example().Run(args); //o
+ new VisaulAnimationExample.Example().Run(args);
+ //new VisualViewTest.Example().Run(args); //o
}
}
-
}
Tizen.Log.Debug("NUI", "next index = " + index);
nextView = label[index];
- if (e.CurrentView.HasKeyInputFocus())
+ if (e.CurrentView.HasFocus())
{
//currentView?.ClearKeyInputFocus(); //removed
}
--- /dev/null
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+using System;
+using System.Runtime.InteropServices;
+using Tizen.NUI;
+
+namespace VisaulAnimationExample
+{
+ class Example : NUIApplication
+ {
+ private VisualView _contentView;
+ private TextLabel _title;
+ private PushButton _shadowButton;
+ private bool _active = false;
+ private const string _resPath = "/home/owner/apps_rw/NUISamples.TizenTV/res";
+
+ private Animation _animation;
+ private bool _transitionInProgress = false;
+ private int cnt1, cnt2;
+
+ private SVGVisual svgVisual;
+ private AnimatedImageVisual gifVisual;
+
+ public Example() : base()
+ {
+ }
+
+ public Example(string stylesheet) : base(stylesheet)
+ {
+ }
+
+ public Example(string stylesheet, WindowMode windowMode) : base(stylesheet, windowMode)
+ {
+ }
+
+ protected override void OnCreate()
+ {
+ base.OnCreate();
+ Initialize();
+ }
+
+ public void Initialize()
+ {
+ Stage stage = Stage.Instance;
+ stage.BackgroundColor = Color.White;
+
+ TableView titleLayout = new TableView(2, 1);
+ titleLayout.Name = ("TitleLayout");
+ titleLayout.AnchorPoint = AnchorPoint.TopLeft;
+ titleLayout.Position2D = new Position2D(10, 10);
+ titleLayout.Size2D = new Size2D((int)(stage.Size.Width * 0.9f), (int)(stage.Size.Height * 0.9f));
+ titleLayout.SetCellPadding(new Size2D(10, 10));
+ titleLayout.BackgroundColor = Color.Cyan;
+ stage.GetDefaultLayer().Add(titleLayout);
+
+ _title = new TextLabel("Visual Transition / SVG / AGIF Example");
+ _title.Name = ("Title");
+ _title.SetStyleName("Title");
+ _title.WidthResizePolicy = ResizePolicyType.FillToParent;
+ _title.HeightResizePolicy = ResizePolicyType.UseNaturalSize;
+ _title.HorizontalAlignment = "CENTER";
+ titleLayout.AddChild(_title, new TableView.CellPosition(0, 0));
+ titleLayout.SetFitHeight(0);
+
+ TableView contentLayout = new TableView(3, 2);
+ contentLayout.Name = ("ContentLayout");
+ contentLayout.WidthResizePolicy = ResizePolicyType.FillToParent;
+ contentLayout.HeightResizePolicy = ResizePolicyType.FillToParent;
+ contentLayout.AnchorPoint = AnchorPoint.TopLeft;
+ contentLayout.SetCellPadding(new Size2D(10, 10));
+ contentLayout.BackgroundColor = Color.Magenta;
+ titleLayout.AddChild(contentLayout, new TableView.CellPosition(1, 0));
+
+ //////////////////////////////////////////////////////////////////////
+ // Create a conttent view
+ _contentView = new VisualView();
+ _contentView.WidthResizePolicy = ResizePolicyType.Fixed;
+ _contentView.HeightResizePolicy = ResizePolicyType.Fixed;
+ _contentView.Size2D = new Size2D(250, 250);
+ _contentView.BackgroundImage = _resPath + "/images/background-blocks.jpg";
+
+ ImageVisual _icon = new ImageVisual();
+ _icon.URL = _resPath + "/images/application-icon-0.png";
+ _icon.DepthIndex = 1;
+ _icon.Size = new Size2D(50, 50);
+ _icon.SizePolicy = new Vector2(1, 1);
+ _icon.Position = new Position2D(5, 5);
+ _icon.PositionPolicy = new Vector2(1, 1);
+ _icon.Origin = Visual.AlignType.TopBegin;
+ _icon.AnchorPoint = Visual.AlignType.TopBegin;
+ _contentView.AddVisual("icon_visual1", _icon);
+
+ contentLayout.AddChild(_contentView, new TableView.CellPosition(0, 0));
+
+ _shadowButton = new PushButton();
+ _shadowButton.LabelText = "Toggle Transition";
+ _shadowButton.Name = ("ToggleTransition");
+ _shadowButton.ParentOrigin = ParentOrigin.Center;
+ _shadowButton.AnchorPoint = AnchorPoint.Center;
+ _shadowButton.Clicked += (obj, ev) =>
+ {
+ _active = !_active;
+ StartTransition(_active);
+ return true;
+ };
+ _shadowButton.WidthResizePolicy = ResizePolicyType.FillToParent;
+ _shadowButton.HeightResizePolicy = ResizePolicyType.FillToParent;
+ contentLayout.AddChild(_shadowButton, new TableView.CellPosition(0, 1));
+
+ //////////////////////////////////////////////////////////////////////
+ // make SVG visual test
+ VisualView VisualView1 = new VisualView();
+ VisualView1.WidthResizePolicy = ResizePolicyType.FillToParent;
+ VisualView1.HeightResizePolicy = ResizePolicyType.FillToParent;
+ VisualView1.BackgroundColor = Color.Black;
+ contentLayout.AddChild(VisualView1, new TableView.CellPosition(1, 0));
+
+ svgVisual = new SVGVisual();
+ svgVisual.URL = _resPath + "/images/Kid1.svg";
+ svgVisual.Size = new Size2D(300, 300);
+ svgVisual.SizePolicy = new Vector2(1, 1);
+ svgVisual.Position = new Position2D(0, 0);
+ svgVisual.PositionPolicy = new Vector2(1, 1);
+ svgVisual.Origin = Visual.AlignType.TopBegin;
+ svgVisual.AnchorPoint = Visual.AlignType.TopBegin;
+ VisualView1.AddVisual("svg_visual1", svgVisual);
+
+ PushButton svgButton = new PushButton();
+ svgButton.LabelText = "SVG Visual Test";
+ svgButton.Name = ("svg_visual_test");
+ svgButton.AnchorPoint = AnchorPoint.Center;
+ svgButton.WidthResizePolicy = ResizePolicyType.FillToParent;
+ svgButton.HeightResizePolicy = ResizePolicyType.FillToParent;
+ svgButton.Clicked += (obj, ev) =>
+ {
+ cnt1++;
+ if (cnt1 % 2 == 0)
+ {
+ svgVisual.URL = _resPath + "/images/World.svg";
+ }
+ else
+ {
+ svgVisual.URL = _resPath + "/images/Mail.svg";
+ }
+ Tizen.Log.Debug("NUI", "svg button clicked!");
+ return true;
+ };
+ contentLayout.AddChild(svgButton, new TableView.CellPosition(1, 1));
+
+ //////////////////////////////////////////////////////////////////////
+ // make AnimatedImage visual test
+ VisualView VisualView2 = new VisualView();
+ VisualView2.WidthResizePolicy = ResizePolicyType.FillToParent;
+ VisualView2.HeightResizePolicy = ResizePolicyType.FillToParent;
+ VisualView2.BackgroundColor = Color.Blue;
+ contentLayout.AddChild(VisualView2, new TableView.CellPosition(2, 0));
+
+ gifVisual = new AnimatedImageVisual();
+ gifVisual.URL = _resPath + "/images/echo.gif";
+ gifVisual.Size = new Size2D(200, 200);
+ gifVisual.SizePolicy = new Vector2(1, 1);
+ gifVisual.Position = new Position2D(0, 0);
+ gifVisual.PositionPolicy = new Vector2(1, 1);
+ gifVisual.Origin = Visual.AlignType.TopBegin;
+ gifVisual.AnchorPoint = Visual.AlignType.TopBegin;
+ VisualView2.AddVisual("gif_visual", gifVisual);
+
+ PushButton gifButton = new PushButton();
+ gifButton.LabelText = "AnimatedImage Visual Test";
+ gifButton.Name = ("gif_visual_test");
+ gifButton.AnchorPoint = AnchorPoint.Center;
+ gifButton.WidthResizePolicy = ResizePolicyType.FillToParent;
+ gifButton.HeightResizePolicy = ResizePolicyType.FillToParent;
+ gifButton.Clicked += (obj, ev) =>
+ {
+ Tizen.Log.Debug("NUI", "gif button clicked!");
+ cnt2++;
+ if (cnt2 % 2 == 0)
+ {
+ gifVisual.URL = _resPath + "/images/dali-logo-anim.gif";
+ }
+ else
+ {
+ gifVisual.URL = _resPath + "/images/dog-anim.gif";
+ }
+ return true;
+ };
+ contentLayout.AddChild(gifButton, new TableView.CellPosition(2, 1));
+
+
+ }
+
+ private void StartTransition(bool activate)
+ {
+ if (_animation)
+ {
+ _animation.Stop();
+ _animation.Finished += OnTransitionFinished;
+ }
+
+ if (activate)
+ {
+ AnimatorVisual grow = new AnimatorVisual();
+ grow.AlphaFunction = "LINEAR";
+ grow.StartTime = 0;
+ grow.EndTime = 1000;
+ grow.Target = "icon_visual1";
+ grow.PropertyIndex = "Size";
+ grow.DestinationValue = new Size2D(200, 200);
+ _animation = _contentView.AnimateVisual(grow);
+ }
+ else
+ {
+ AnimatorVisual shrink = new AnimatorVisual();
+ shrink.AlphaFunction = "LINEAR";
+ shrink.StartTime = 0;
+ shrink.EndTime = 1000;
+ shrink.Target = "icon_visual1";
+ shrink.PropertyIndex = "Size";
+ shrink.DestinationValue = new Size2D(50, 50);
+ _animation = _contentView.AnimateVisual(shrink);
+ }
+
+ if (_animation)
+ {
+ _animation.Finished += OnTransitionFinished;
+ _transitionInProgress = true;
+ _animation.Play();
+ }
+ }
+ private void OnTransitionFinished(object sender, EventArgs e)
+ {
+ _transitionInProgress = false;
+ if (_animation)
+ {
+ _animation.Finished += OnTransitionFinished;
+ _animation.Reset();
+ }
+ }
+
+
+ /// <summary>
+ /// The main entry point for the application.
+ /// </summary>
+ [STAThread]
+ static void _Main(string[] args)
+ {
+ Example example = new Example();
+ example.Run(args);
+ }
+
+
+ }
+}
Initialize();
}
+ private ImageVisual imageVisualMap1;
+ private TextVisual textVisualMap1;
+ private NPatchVisual npatchImageVisualMap1;
+ private BorderVisual borderVisualMap1;
+ private int cnt;
+
public void Initialize()
{
Stage stage = Stage.Instance;
_visualView.Size = new Size(stage.Size.Width, stage.Size.Height, 0.0f);
/* color visual */
- ColorVisualMap colorVisualMap1 = new ColorVisualMap();
+ ColorVisual colorVisualMap1 = new ColorVisual();
colorVisualMap1.MixColor = Color.Green;
_visualView.Background = colorVisualMap1.OutputVisualMap;
stage.GetDefaultLayer().Add(_visualView);
/* image visual 1. */
- ImageVisualMap imageVisualMap1 = new ImageVisualMap();
+ imageVisualMap1 = new ImageVisual();
imageVisualMap1.URL = resources + "/images/image-1.jpg";
- imageVisualMap1.VisualSize = new Vector2(200.0f, 200.0f);
- imageVisualMap1.Offset = new Vector2(10.0f, 10.0f);
- imageVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ imageVisualMap1.Size = new Vector2(200.0f, 200.0f);
+ imageVisualMap1.Position = new Vector2(10.0f, 10.0f);
+ imageVisualMap1.PositionPolicy = new Vector2(1, 1);
imageVisualMap1.SizePolicy = new Vector2(1, 1);
- imageVisualMap1.Origin = AlignType.TopBegin;
- imageVisualMap1.AnchorPoint = AlignType.TopBegin;
+ imageVisualMap1.Origin = Visual.AlignType.TopBegin;
+ imageVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("imageVisual1", imageVisualMap1);
/* image visual 2. */
- ImageVisualMap imageVisualMap2 = new ImageVisualMap();
+ ImageVisual imageVisualMap2 = new ImageVisual();
imageVisualMap2.URL = resources + "/images/image-2.jpg";
- imageVisualMap2.VisualSize = new Vector2(250.0f, 200.0f);
- imageVisualMap2.Offset = new Vector2(220.0f, 10.0f);
- imageVisualMap2.OffsetPolicy = new Vector2(1, 1);
+ imageVisualMap2.Size = new Vector2(250.0f, 200.0f);
+ imageVisualMap2.Position = new Vector2(220.0f, 10.0f);
+ imageVisualMap2.PositionPolicy = new Vector2(1, 1);
imageVisualMap2.SizePolicy = new Vector2(1, 1);
- imageVisualMap2.Origin = AlignType.TopBegin;
- imageVisualMap2.AnchorPoint = AlignType.TopBegin;
+ imageVisualMap2.Origin = Visual.AlignType.TopBegin;
+ imageVisualMap2.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("imageVisual2", imageVisualMap2);
- /* Modify imageVisual2, we just need do this. */
- //imageVisualMap2.URL = "./examples/images/image-3.jpg";
- //_visualView.AddVisual("imageVisual2", imageVisualMap2); //update a visual with same visual name.
-
- //_visualView.RemoveVisual( "imageVisual1" );
- //_visualView.RemoveVisual( imageVisualMap1 );
-
- //_visualView.RemoveAll(); //Delete all visuals of visual view.
-
/* text visual. */
- TextVisualMap textVisualMap1 = new TextVisualMap();
+ textVisualMap1 = new TextVisual();
textVisualMap1.Text = "Hello Goodbye";
textVisualMap1.PointSize = 20.0f;
- textVisualMap1.VisualSize = new Vector2(900.0f, 250.0f);
- textVisualMap1.Offset = new Vector2(10.0f, 220.0f);
- textVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ textVisualMap1.Size = new Vector2(900.0f, 250.0f);
+ textVisualMap1.Position = new Vector2(10.0f, 220.0f);
+ textVisualMap1.PositionPolicy = new Vector2(1, 1);
textVisualMap1.SizePolicy = new Vector2(1, 1);
- textVisualMap1.Origin = AlignType.TopBegin;
- textVisualMap1.AnchorPoint = AlignType.TopBegin;
+ textVisualMap1.Origin = Visual.AlignType.TopBegin;
+ textVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("textVisual1", textVisualMap1);
/* border visual */
- BorderVisualMap borderVisualMap1 = new BorderVisualMap();
+ borderVisualMap1 = new BorderVisual();
borderVisualMap1.Color = Color.Red;
- borderVisualMap1.Size = 5.0f;
+ borderVisualMap1.BorderSize = 5.0f;
- borderVisualMap1.VisualSize = new Vector2(100.0f, 100.0f);
- borderVisualMap1.Offset = new Vector2(10.0f, 380.0f);
- borderVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ borderVisualMap1.Size = new Vector2(100.0f, 100.0f);
+ borderVisualMap1.Position = new Vector2(10.0f, 380.0f);
+ borderVisualMap1.PositionPolicy = new Vector2(1, 1);
borderVisualMap1.SizePolicy = new Vector2(1, 1);
- borderVisualMap1.Origin = AlignType.TopBegin;
- borderVisualMap1.AnchorPoint = AlignType.TopBegin;
+ borderVisualMap1.Origin = Visual.AlignType.TopBegin;
+ borderVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("borderVisual1", borderVisualMap1);
/* gradient visual */
- GradientVisualMap gradientVisualMap1 = new GradientVisualMap();
- PropertyArray stopOffset = new PropertyArray();
- stopOffset.Add(new PropertyValue(0.0f));
- stopOffset.Add(new PropertyValue(0.3f));
- stopOffset.Add(new PropertyValue(0.6f));
- stopOffset.Add(new PropertyValue(0.8f));
- stopOffset.Add(new PropertyValue(1.0f));
- gradientVisualMap1.StopOffset = stopOffset;
+ GradientVisual gradientVisualMap1 = new GradientVisual();
+ PropertyArray stopPosition = new PropertyArray();
+ stopPosition.Add(new PropertyValue(0.0f));
+ stopPosition.Add(new PropertyValue(0.3f));
+ stopPosition.Add(new PropertyValue(0.6f));
+ stopPosition.Add(new PropertyValue(0.8f));
+ stopPosition.Add(new PropertyValue(1.0f));
+ gradientVisualMap1.StopOffset = stopPosition;
PropertyArray stopColor = new PropertyArray();
stopColor.Add(new PropertyValue(new Vector4(129.0f, 198.0f, 193.0f, 255.0f) / 255.0f));
stopColor.Add(new PropertyValue(new Vector4(196.0f, 198.0f, 71.0f, 122.0f) / 255.0f));
gradientVisualMap1.Center = new Vector2(0.5f, 0.5f);
gradientVisualMap1.Radius = 1.414f;
- gradientVisualMap1.VisualSize = new Vector2(100.0f, 100.0f);
- gradientVisualMap1.Offset = new Vector2(120.0f, 380.0f);
- gradientVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ gradientVisualMap1.Size = new Vector2(100.0f, 100.0f);
+ gradientVisualMap1.Position = new Vector2(120.0f, 380.0f);
+ gradientVisualMap1.PositionPolicy = new Vector2(1, 1);
gradientVisualMap1.SizePolicy = new Vector2(1, 1);
- gradientVisualMap1.Origin = AlignType.TopBegin;
- gradientVisualMap1.AnchorPoint = AlignType.TopBegin;
+ gradientVisualMap1.Origin = Visual.AlignType.TopBegin;
+ gradientVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("gradientVisual1", gradientVisualMap1);
/* primitive visual: Cone */
- PrimitiveVisualMap primitiveVisualMap1 = new PrimitiveVisualMap();
+ PrimitiveVisual primitiveVisualMap1 = new PrimitiveVisual();
primitiveVisualMap1.Shape = PrimitiveVisualShapeType.Cone;
primitiveVisualMap1.BevelPercentage = 0.3f;
primitiveVisualMap1.BevelSmoothness = 0.0f;
primitiveVisualMap1.ScaleDimensions = new Vector3(1.0f, 1.0f, 0.3f);
primitiveVisualMap1.MixColor = new Vector4((245.0f / 255.0f), (188.0f / 255.0f), (73.0f / 255.0f), 1.0f);
- primitiveVisualMap1.VisualSize = new Vector2(100.0f, 100.0f);
- primitiveVisualMap1.Offset = new Vector2(230.0f, 380.0f);
- primitiveVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ primitiveVisualMap1.Size = new Vector2(100.0f, 100.0f);
+ primitiveVisualMap1.Position = new Vector2(230.0f, 380.0f);
+ primitiveVisualMap1.PositionPolicy = new Vector2(1, 1);
primitiveVisualMap1.SizePolicy = new Vector2(1, 1);
- primitiveVisualMap1.Origin = AlignType.TopBegin;
- primitiveVisualMap1.AnchorPoint = AlignType.TopBegin;
+ primitiveVisualMap1.Origin = Visual.AlignType.TopBegin;
+ primitiveVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("primitiveVisual1", primitiveVisualMap1);
/* primitive visual: Sphere */
- PrimitiveVisualMap primitiveVisualMap2 = new PrimitiveVisualMap();
+ PrimitiveVisual primitiveVisualMap2 = new PrimitiveVisual();
primitiveVisualMap2.Shape = PrimitiveVisualShapeType.Sphere;
primitiveVisualMap2.BevelPercentage = 0.3f;
primitiveVisualMap2.BevelSmoothness = 0.0f;
primitiveVisualMap2.ScaleDimensions = new Vector3(1.0f, 1.0f, 0.3f);
primitiveVisualMap2.MixColor = new Vector4((245.0f / 255.0f), (188.0f / 255.0f), (73.0f / 255.0f), 1.0f);
- primitiveVisualMap2.VisualSize = new Vector2(100.0f, 100.0f);
- primitiveVisualMap2.Offset = new Vector2(340.0f, 380.0f);
- primitiveVisualMap2.OffsetPolicy = new Vector2(1, 1);
+ primitiveVisualMap2.Size = new Vector2(100.0f, 100.0f);
+ primitiveVisualMap2.Position = new Vector2(340.0f, 380.0f);
+ primitiveVisualMap2.PositionPolicy = new Vector2(1, 1);
primitiveVisualMap2.SizePolicy = new Vector2(1, 1);
- primitiveVisualMap2.Origin = AlignType.TopBegin;
- primitiveVisualMap2.AnchorPoint = AlignType.TopBegin;
+ primitiveVisualMap2.Origin = Visual.AlignType.TopBegin;
+ primitiveVisualMap2.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("primitiveVisual2", primitiveVisualMap2);
/* primitive visual: Cylinder */
- PrimitiveVisualMap primitiveVisualMap3 = new PrimitiveVisualMap();
+ PrimitiveVisual primitiveVisualMap3 = new PrimitiveVisual();
primitiveVisualMap3.Shape = PrimitiveVisualShapeType.Cylinder;
primitiveVisualMap3.BevelPercentage = 0.3f;
primitiveVisualMap3.BevelSmoothness = 0.0f;
primitiveVisualMap3.ScaleDimensions = new Vector3(1.0f, 1.0f, 0.3f);
primitiveVisualMap3.MixColor = new Vector4((245.0f / 255.0f), (188.0f / 255.0f), (73.0f / 255.0f), 1.0f);
- primitiveVisualMap3.VisualSize = new Vector2(100.0f, 100.0f);
- primitiveVisualMap3.Offset = new Vector2(10.0f, 490.0f);
- primitiveVisualMap3.OffsetPolicy = new Vector2(1, 1);
+ primitiveVisualMap3.Size = new Vector2(100.0f, 100.0f);
+ primitiveVisualMap3.Position = new Vector2(10.0f, 490.0f);
+ primitiveVisualMap3.PositionPolicy = new Vector2(1, 1);
primitiveVisualMap3.SizePolicy = new Vector2(1, 1);
- primitiveVisualMap3.Origin = AlignType.TopBegin;
- primitiveVisualMap3.AnchorPoint = AlignType.TopBegin;
+ primitiveVisualMap3.Origin = Visual.AlignType.TopBegin;
+ primitiveVisualMap3.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("primitiveVisual3", primitiveVisualMap3);
/* primitive visual: ConicalFrustrum */
- PrimitiveVisualMap primitiveVisualMap4 = new PrimitiveVisualMap();
+ PrimitiveVisual primitiveVisualMap4 = new PrimitiveVisual();
primitiveVisualMap4.Shape = PrimitiveVisualShapeType.ConicalFrustrum;
primitiveVisualMap4.BevelPercentage = 0.3f;
primitiveVisualMap4.BevelSmoothness = 0.0f;
primitiveVisualMap4.ScaleDimensions = new Vector3(1.0f, 1.0f, 0.3f);
primitiveVisualMap4.MixColor = new Vector4((245.0f / 255.0f), (188.0f / 255.0f), (73.0f / 255.0f), 1.0f);
- primitiveVisualMap4.VisualSize = new Vector2(100.0f, 100.0f);
- primitiveVisualMap4.Offset = new Vector2(120.0f, 490.0f);
- primitiveVisualMap4.OffsetPolicy = new Vector2(1, 1);
+ primitiveVisualMap4.Size = new Vector2(100.0f, 100.0f);
+ primitiveVisualMap4.Position = new Vector2(120.0f, 490.0f);
+ primitiveVisualMap4.PositionPolicy = new Vector2(1, 1);
primitiveVisualMap4.SizePolicy = new Vector2(1, 1);
- primitiveVisualMap4.Origin = AlignType.TopBegin;
- primitiveVisualMap4.AnchorPoint = AlignType.TopBegin;
+ primitiveVisualMap4.Origin = Visual.AlignType.TopBegin;
+ primitiveVisualMap4.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("primitiveVisual4", primitiveVisualMap4);
/* primitive visual: Cube */
- PrimitiveVisualMap primitiveVisualMap5 = new PrimitiveVisualMap();
+ PrimitiveVisual primitiveVisualMap5 = new PrimitiveVisual();
primitiveVisualMap5.Shape = PrimitiveVisualShapeType.Cube;
primitiveVisualMap5.BevelPercentage = 0.3f;
primitiveVisualMap5.BevelSmoothness = 0.0f;
primitiveVisualMap5.ScaleDimensions = new Vector3(1.0f, 1.0f, 0.3f);
primitiveVisualMap5.MixColor = new Vector4((245.0f / 255.0f), (188.0f / 255.0f), (73.0f / 255.0f), 1.0f);
- primitiveVisualMap5.VisualSize = new Vector2(100.0f, 100.0f);
- primitiveVisualMap5.Offset = new Vector2(230.0f, 490.0f);
- primitiveVisualMap5.OffsetPolicy = new Vector2(1, 1);
+ primitiveVisualMap5.Size = new Vector2(100.0f, 100.0f);
+ primitiveVisualMap5.Position = new Vector2(230.0f, 490.0f);
+ primitiveVisualMap5.PositionPolicy = new Vector2(1, 1);
primitiveVisualMap5.SizePolicy = new Vector2(1, 1);
- primitiveVisualMap5.Origin = AlignType.TopBegin;
- primitiveVisualMap5.AnchorPoint = AlignType.TopBegin;
+ primitiveVisualMap5.Origin = Visual.AlignType.TopBegin;
+ primitiveVisualMap5.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("primitiveVisual5", primitiveVisualMap5);
/* mesh visual nothing show. */
- MeshVisualMap meshVisualMap1 = new MeshVisualMap();
+ MeshVisual meshVisualMap1 = new MeshVisual();
meshVisualMap1.ObjectURL = resources + "/models/Dino.obj";
meshVisualMap1.MaterialtURL = resources + "/models/Dino.mtl";
meshVisualMap1.TexturesPath = resources + "/images/";
meshVisualMap1.ShadingMode = MeshVisualShadingModeValue.TexturedWithSpecularLighting;
- meshVisualMap1.VisualSize = new Size2D(400, 400);
- meshVisualMap1.Offset = new Position2D(-50, 600);
- meshVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ meshVisualMap1.Size = new Size2D(400, 400);
+ meshVisualMap1.Position = new Position2D(-50, 600);
+ meshVisualMap1.PositionPolicy = new Vector2(1, 1);
meshVisualMap1.SizePolicy = new Vector2(1, 1);
- meshVisualMap1.Origin = AlignType.TopBegin;
- meshVisualMap1.AnchorPoint = AlignType.TopBegin;
+ meshVisualMap1.Origin = Visual.AlignType.TopBegin;
+ meshVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
_visualView.AddVisual("meshVisual1", meshVisualMap1);
/* n-patch image visual 1. */
- NPatchVisualMap npatchImageVisualMap1 = new NPatchVisualMap();
+ npatchImageVisualMap1 = new NPatchVisual();
npatchImageVisualMap1.URL = resources + "/images/gallery-4.jpg";
- npatchImageVisualMap1.VisualSize = new Size2D(400, 400);
- npatchImageVisualMap1.Offset = new Position2D(300, 600);
- npatchImageVisualMap1.OffsetPolicy = new Vector2(1, 1);
+ npatchImageVisualMap1.Size = new Size2D(400, 400);
+ npatchImageVisualMap1.Position = new Position2D(300, 600);
+ npatchImageVisualMap1.PositionPolicy = new Vector2(1, 1);
npatchImageVisualMap1.SizePolicy = new Vector2(1, 1);
- npatchImageVisualMap1.Origin = AlignType.TopBegin;
- npatchImageVisualMap1.AnchorPoint = AlignType.TopBegin;
+ npatchImageVisualMap1.Origin = Visual.AlignType.TopBegin;
+ npatchImageVisualMap1.AnchorPoint = Visual.AlignType.TopBegin;
npatchImageVisualMap1.Border = new Rectangle(100, 100, 100, 100);
_visualView.AddVisual("npatchImageVisual1", npatchImageVisualMap1);
_window = this.Window;
_window.WindowFocusChanged += (sender, ee) =>
{
+ cnt++;
Tizen.Log.Debug("NUI", "[WindowFocusTest] WindowFocusChanged event comes! focus gained=" + ee.FocusGained);
+ imageVisualMap1.Size += new Vector2(50.0f, 50.0f);
+ imageVisualMap1.Position += new Vector2(20.0f, 20.0f);
+
+ textVisualMap1.Text = "Hello Goodbye" + cnt;
+ textVisualMap1.PointSize = 10.0f + (float)(cnt);
+
+ npatchImageVisualMap1.URL = resources + "/images/gallery-" + (cnt % 5) + ".jpg";
+
+ borderVisualMap1.BorderSize = 1.0f + (float)cnt;
};
Tizen.Log.Debug("NUI", "[WindowFocusTest] is focus acceptable=" + _window.IsFocusAcceptable());
_window.SetAcceptFocus(true);
Tizen.Log.Debug("NUI", "[WindowFocusTest] set focus acceptable=true!!!");
Tizen.Log.Debug("NUI", "[WindowFocusTest] is focus acceptable=" + _window.IsFocusAcceptable());
+
+
}
[STAThread]
.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute)))
.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute)))
.Add((int)VisualTransformPropertyType.Size, new PropertyValue(new Vector2(40.0f, 40.0f)))
- .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)AlignType.CenterBegin))
- .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)AlignType.CenterBegin));
+ .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)Visual.AlignType.CenterBegin))
+ .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)Visual.AlignType.CenterBegin));
_imageVisual.SetTransformAndSize(imageVisualTransform, size);
// Configure the transform and size of Text visual.
.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Relative, (int)VisualTransformPolicyType.Relative)))
.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute)))
.Add((int)VisualTransformPropertyType.Size, new PropertyValue(new Vector2(size.X - 100.0f, 50.0f)))
- .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)AlignType.Center))
- .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)AlignType.Center));
+ .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)Visual.AlignType.Center))
+ .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)Visual.AlignType.Center));
_textVisual.SetTransformAndSize(textVisualTransform, size);
// Configure the transform and size of Primitive visual.
.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute)))
.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute)))
.Add((int)VisualTransformPropertyType.Size, new PropertyValue(new Vector2(40.0f, 40.0f)))
- .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)AlignType.CenterBegin))
- .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)AlignType.CenterBegin));
+ .Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)Visual.AlignType.CenterBegin))
+ .Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)Visual.AlignType.CenterBegin));
_primitiveVisual.SetTransformAndSize(primitiveVisualTransform, size);
// Configure the transform and size of Color visual. This is also the default value.
.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Relative, (int)VisualTransformPolicyType.Relative)))
.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(new Vector2((int)VisualTransformPolicyType.Relative, (int)VisualTransformPolicyType.Relative)))
.Add( (int)VisualTransformPropertyType.Size, new PropertyValue(new Vector2(1.0f, 1.0f)) )
- .Add( (int)VisualTransformPropertyType.Origin, new PropertyValue((int)AlignType.TopBegin) )
- .Add( (int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)AlignType.TopBegin) );
+ .Add( (int)VisualTransformPropertyType.Origin, new PropertyValue((int)Visual.AlignType.TopBegin) )
+ .Add( (int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)Visual.AlignType.TopBegin) );
_colorVisual.SetTransformAndSize(colorVisualTransform, size);
}
}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 306.90988 416.79828"
+ xml:space="preserve"
+ inkscape:version="0.48.4 r9939"
+ width="100%"
+ height="100%"
+ sodipodi:docname="Kid1.svg"><metadata
+ id="metadata185"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs183" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="640"
+ inkscape:window-height="480"
+ id="namedview181"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:zoom="0.28032166"
+ inkscape:cx="152.20465"
+ inkscape:cy="184.87264"
+ inkscape:window-x="75"
+ inkscape:window-y="34"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="Layer_1" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 192.28065,343.14765 c 0,0 -4.5,75.5 37.5,71 42,-4.5 11.5,-75.5 11.5,-75.5 l -49,4.5 z"
+ id="path3"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 229.78065,414.14765 c 24.024,-2.574 24.325,-26.903 20.184,-47.259 l -56.117,5.805 c 3.172,20.614 12.003,44.018 35.933,41.454 z"
+ id="path5"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 113.60765,343.14765 c 0,0 -23.087995,69 14,73 37.088,4 48,-73 48,-73 h -62 z"
+ id="path7"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 169.15465,370.76265 -60.625,-7.118 c -3.745,20.685 -4.689,49.94 19.078,52.503 21.993,2.372 34.78,-23.738 41.547,-45.385 z"
+ id="path9"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 117.10565,371.73465 39.895,2.68 c 0,0 -7.065,27.803 -23.798,24.788 -16.733,-3.015 -16.097,-27.468 -16.097,-27.468 z"
+ id="path11"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 206.27865,381.65765 35.399,-5.164 c 0,0 2.531,26.234 -10.49,26.241 -18.543,0.011 -24.909,-21.077 -24.909,-21.077 z"
+ id="path13"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 121.49165,210.92765 c -24.560995,5.263 -52.631995,5.263 -52.631995,5.263 l 5.354,60.772 25.859995,-5.032 c 0,0 64.328,-18.197 62.574,-34.16 -2.104,-19.138 -16.595,-32.106 -41.156,-26.843 z"
+ id="path15"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 231.14065,228.64765 c -10.143,-34.251 -65.789,-51.053 -65.789,-51.053 0,0 -19.298,28.07 -43.86,33.333 -1.209,0.259 -2.428,0.502 -3.65,0.736 l -20.035995,60.709 2.267995,-0.441 -16.300995,80.54 184.714995,-4.731 c 0,10e-4 -25.566,-79.313 -37.347,-119.093 z"
+ id="path17"
+ inkscape:connector-curvature="0" /><line
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="110.72466"
+ y1="311.29565"
+ x2="104.40065"
+ y2="352.30963"
+ id="line19" /><polygon
+ style="fill:#666666;stroke:#000000;stroke-miterlimit:10"
+ points="390.823,464.081 392.798,470.374 237.225,476.667 237.225,468.729 "
+ id="polygon21"
+ transform="translate(-145.43535,-189.01935)" /><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="317.35651"
+ y1="383.66669"
+ x2="317.35651"
+ y2="199.5519"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0"
+ style="stop-color:#402A04"
+ id="stop24" /><stop
+ offset="1"
+ style="stop-color:#7F5100"
+ id="stop26" /></linearGradient><path
+ style="fill:url(#SVGID_1_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="M 172.97165,196.01565 H 63.267655 c 0,0 -54.6040005,-192.1050008 109.704995,-188.5960008 164.309,3.5089998 106.414,188.5960008 106.414,188.5960008 h -106.415 z"
+ id="path28"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="317.6879"
+ y1="298.16669"
+ x2="317.6879"
+ y2="399.66791"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop31" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop33" /></linearGradient><path
+ style="fill:url(#SVGID_2_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 93.798655,65.647649 c 0,0 -48.605,145.281001 77.692995,145.281001 126.298,0 80.202,-145.281001 80.202,-145.281001 H 93.798655 z"
+ id="path35"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="316.33801"
+ y1="383.66669"
+ x2="316.33801"
+ y2="199.5519"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0"
+ style="stop-color:#402A04"
+ id="stop38" /><stop
+ offset="1"
+ style="stop-color:#7F5100"
+ id="stop40" /></linearGradient><path
+ style="fill:url(#SVGID_3_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 108.82665,29.573649 c 0,0 -37.535995,22.859 -34.316995,82.359001 h 62.920995 c 0,0 7.255,-35.965001 7.255,-31.786001 0,4.179 3.509,31.786001 3.509,31.786001 h 48.246 V 87.833649 l 8.772,24.099001 h 62.281 c 0,0 0,-53.553001 -28.63,-82.359001 -28.072,0.877 -130.037,0 -130.037,0 z"
+ id="path42"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="195.0862"
+ y1="372.3811"
+ x2="217.894"
+ y2="516.99213"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0"
+ style="stop-color:#006178"
+ id="stop45" /><stop
+ offset="1"
+ style="stop-color:#00495C"
+ id="stop47" /></linearGradient><path
+ style="fill:url(#SVGID_4_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 111.64765,331.69965 -70.387995,13.196 c -6.487,1.216 -12.79,-3.096 -14.006,-9.583 L 1.8536545,199.83065 c -1.21599995,-6.487 3.096,-12.79 9.5830005,-14.006 l 70.388,-13.196 c 6.487,-1.216 12.79,3.096 14.006,9.583 l 25.399995,135.482 c 1.217,6.487 -3.096,12.79 -9.583,14.006 z"
+ id="path49"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_5_"
+ gradientUnits="userSpaceOnUse"
+ x1="197.17931"
+ y1="393.6586"
+ x2="218.5313"
+ y2="505.75641"><stop
+ offset="0"
+ style="stop-color:#6BBBD0"
+ id="stop52" /><stop
+ offset="1"
+ style="stop-color:#ACCCD4"
+ id="stop54" /></linearGradient><polygon
+ style="fill:url(#SVGID_5_);stroke:#000000;stroke-miterlimit:10"
+ points="179.836,514.167 159.336,399.948 236.336,387.667 254.336,498.167 "
+ id="polygon56"
+ transform="translate(-145.43535,-189.01935)" /><linearGradient
+ id="SVGID_6_"
+ gradientUnits="userSpaceOnUse"
+ x1="207.9456"
+ y1="466.41"
+ x2="201.4173"
+ y2="399.4946"><stop
+ offset="0"
+ style="stop-color:#FBCA51"
+ id="stop59" /><stop
+ offset="1"
+ style="stop-color:#FFECBF"
+ id="stop61" /></linearGradient><ellipse
+ style="fill:url(#SVGID_6_);stroke:#000000;stroke-miterlimit:10"
+ cx="205.43201"
+ cy="440.64801"
+ rx="28.959"
+ ry="28.080999"
+ id="ellipse63"
+ sodipodi:cx="205.43201"
+ sodipodi:cy="440.64801"
+ sodipodi:rx="28.959"
+ sodipodi:ry="28.080999"
+ transform="translate(-145.43535,-189.01935)" /><linearGradient
+ id="SVGID_7_"
+ gradientUnits="userSpaceOnUse"
+ x1="190.9269"
+ y1="427.96649"
+ x2="192.52139"
+ y2="436.33749"><stop
+ offset="0"
+ style="stop-color:#6BBBD0"
+ id="stop66" /><stop
+ offset="1"
+ style="stop-color:#ACCCD4"
+ id="stop68" /></linearGradient><line
+ style="fill:url(#SVGID_7_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="44.983662"
+ y1="238.97565"
+ x2="47.595661"
+ y2="247.29865"
+ id="line70" /><linearGradient
+ id="SVGID_8_"
+ gradientUnits="userSpaceOnUse"
+ x1="211.39799"
+ y1="423.5397"
+ x2="213.01559"
+ y2="432.0325"><stop
+ offset="0"
+ style="stop-color:#6BBBD0"
+ id="stop73" /><stop
+ offset="1"
+ style="stop-color:#ACCCD4"
+ id="stop75" /></linearGradient><line
+ style="fill:url(#SVGID_8_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="66.200653"
+ y1="234.40564"
+ x2="67.343658"
+ y2="243.13666"
+ id="line77" /><path
+ style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 47.595655,260.51865 c 0,0 0.653,13.22 15.831,9.14 15.178,-4.08 11.229,-15.994 11.229,-15.994"
+ id="path79"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_9_"
+ gradientUnits="userSpaceOnUse"
+ x1="247.2587"
+ y1="416.16669"
+ x2="247.2587"
+ y2="464.19009"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop82" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop84" /></linearGradient><path
+ style="fill:url(#SVGID_9_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 125.03565,225.81865 c 0,0 -54.844995,-4.046 -54.589995,5.391 0.255,9.437 21.359,3.668 20.849,8.259 -0.51,4.591 -10.173,3.424 -8.763,9.166 1.335,5.436 9.891,0.337 10.485,4.399 0.594,4.062 -7.944,4.738 -7.2,9.587 0.744,4.849 9.437,1.275 9.947,4.081 0.51,2.806 -5.959,4.099 -3.664,7.415 2.296,3.316 25.481995,4.532 36.820995,-0.784 11.531,-5.406 -3.885,-47.514 -3.885,-47.514 z"
+ id="path86"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 108.82665,147.75265 c 0,0 0.464,-21.64 21.464,-21.14 21,0.5 22,21.14 22,21.14"
+ id="path88"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 194.78965,147.75265 c 0,0 5.5,-23.64 25,-23.64 19.5,0 21.571,21 21.571,21"
+ id="path90"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="M 154.28965,177.59465"
+ id="path92"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 154.28965,177.59465 c 0,0 0.715,18.789 16.607,18.421 15.893,-0.368 12.893,-18.421 12.893,-18.421"
+ id="path94"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 228.94765,254.13365 c -2.38,6.629 -9.604,20.319 -44.933,26.513 -37.922,6.649 -56.122,-3.11 -56.122,-3.11 l -10.787,-59.329 c 0,0 37.312,5.696 53.792,4.439 16.48,-1.257 33.346,-5.764 33.346,-5.764 0,0 18.324,-4.366 23.904,8.074 5.579,12.439 3.538,21.552 0.8,29.177 z"
+ id="path96"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_10_"
+ gradientUnits="userSpaceOnUse"
+ x1="316.32571"
+ y1="383.66669"
+ x2="316.32571"
+ y2="199.5519"><stop
+ offset="0"
+ style="stop-color:#402A04"
+ id="stop99" /><stop
+ offset="1"
+ style="stop-color:#7F5100"
+ id="stop101" /></linearGradient><polygon
+ style="fill:url(#SVGID_10_)"
+ points="408.426,250.667 394.198,218.593 358.725,207.167 262.541,210.167 237.725,225.136 224.225,247.667 "
+ id="polygon103"
+ transform="translate(-145.43535,-189.01935)" /><polygon
+ style="fill:#c1272d;stroke:#000000;stroke-miterlimit:10"
+ points="399.167,290.713 428.616,269.855 394.694,225.136 365.225,225.136 354.191,247.667 404.225,254.667 "
+ id="polygon105"
+ transform="translate(-145.43535,-189.01935)" /><path
+ style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 245.96865,0.64764917 c -6.811,-2.50199997 -41.178,27.49999983 -36.678,36.49999983 4.5,9 39,21.5 39,21.5 l 13.209,-17.558 c -10e-4,0 -4.031,-36.2179998 -15.531,-40.44199983 z"
+ id="path107"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 272.19765,55.502649 -13.408,15.144 c 0,0 9,36.500001 17.5,35.500001 8.5,-1 32,-21.720001 30,-31.408001 -2,-9.688 -34.092,-19.236 -34.092,-19.236 z"
+ id="path109"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 243.78965,58.647649 c 0,0 13.418,-23.5 17.709,-22.5 4.291,1 15.093,16.043 15.791,19.356 0.698,3.313 -13,20.644 -18.5,19.144 -5.5,-1.5 -12.5,-10 -15,-16 z"
+ id="path111"
+ inkscape:connector-curvature="0" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="215.78966"
+ y1="36.11665"
+ x2="245.96864"
+ y2="54.967648"
+ id="line113" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="262.99066"
+ y1="73.483643"
+ x2="277.31567"
+ y2="96.647644"
+ id="line115" /><circle
+ style="opacity:0.2;fill:#d86d44"
+ cx="262.54099"
+ cy="357.16699"
+ r="19.249001"
+ id="circle117"
+ sodipodi:cx="262.54099"
+ sodipodi:cy="357.16699"
+ sodipodi:rx="19.249001"
+ sodipodi:ry="19.249001"
+ transform="translate(-145.43535,-189.01935)" /><circle
+ style="opacity:0.2;fill:#d86d44"
+ cx="372.72501"
+ cy="357.16699"
+ r="19.249001"
+ id="circle119"
+ sodipodi:cx="372.72501"
+ sodipodi:cy="357.16699"
+ sodipodi:rx="19.249001"
+ sodipodi:ry="19.249001"
+ transform="translate(-145.43535,-189.01935)" /><path
+ style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="M 231.14065,228.64765"
+ id="path121"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_11_"
+ gradientUnits="userSpaceOnUse"
+ x1="218.8582"
+ y1="511.4505"
+ x2="220.60651"
+ y2="520.62927"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0"
+ style="stop-color:#006178"
+ id="stop124" /><stop
+ offset="1"
+ style="stop-color:#00495C"
+ id="stop126" /></linearGradient><path
+ style="fill:url(#SVGID_11_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 61.249655,330.25265 c 0.7,3.23 4.623,2.704 4.623,2.704 0,0 14.196,-2.268 16.856,-2.704 2.66,-0.436 5.413,-2.183 4.802,-5.501 -0.611,-3.318 -2.578,-4.334 -4.977,-4.104 -2.143,0.206 -17.811,4.016 -17.811,4.016 0,0 -4.628,0.35 -3.493,5.589 z"
+ id="path128"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_12_"
+ gradientUnits="userSpaceOnUse"
+ x1="196.34351"
+ y1="377.0275"
+ x2="197.17529"
+ y2="381.39441"><stop
+ offset="0"
+ style="stop-color:#006178"
+ id="stop131" /><stop
+ offset="1"
+ style="stop-color:#00495C"
+ id="stop133" /></linearGradient><polygon
+ style="fill:url(#SVGID_12_);stroke:#000000;stroke-miterlimit:10"
+ points="186.437,382.911 186.437,379.506 206.978,374.966 207.302,379.506 "
+ id="polygon135"
+ transform="translate(-145.43535,-189.01935)" /><linearGradient
+ id="SVGID_13_"
+ gradientUnits="userSpaceOnUse"
+ x1="152.85809"
+ y1="432.1676"
+ x2="155.30721"
+ y2="445.02539"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop138" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop140" /></linearGradient><path
+ style="fill:url(#SVGID_13_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 2.5626545,251.52265 c 0.949,7.344 13.9770005,5.843 12.4400005,-2.53 -1.537,-8.373 -13.8540005,-8.404 -12.4400005,2.53 z"
+ id="path142"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_14_"
+ gradientUnits="userSpaceOnUse"
+ x1="150.90849"
+ y1="418.1373"
+ x2="153.3576"
+ y2="430.99509"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop145" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop147" /></linearGradient><path
+ style="fill:url(#SVGID_14_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 0.61265455,237.49265 c 0.94899995,7.344 13.97700045,5.843 12.44000045,-2.53 -1.537,-8.373 -13.85300045,-8.404 -12.44000045,2.53 z"
+ id="path149"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_15_"
+ gradientUnits="userSpaceOnUse"
+ x1="155.52521"
+ y1="446.19681"
+ x2="157.7338"
+ y2="457.79221"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop152" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop154" /></linearGradient><path
+ style="fill:url(#SVGID_15_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 5.7066545,264.72965 c 0.856,6.623 12.6050005,5.269 11.2180005,-2.281 -1.387,-7.55 -12.4920005,-7.58 -11.2180005,2.281 z"
+ id="path156"
+ inkscape:connector-curvature="0" /><linearGradient
+ id="SVGID_16_"
+ gradientUnits="userSpaceOnUse"
+ x1="153.2876"
+ y1="459.8923"
+ x2="155.15581"
+ y2="469.70059"
+ gradientTransform="translate(-145.43535,-189.01935)"><stop
+ offset="0.0019"
+ style="stop-color:#FFCA94"
+ id="stop159" /><stop
+ offset="1"
+ style="stop-color:#E2A380"
+ id="stop161" /></linearGradient><path
+ style="fill:url(#SVGID_16_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ d="m 14.738655,269.81365 c 0,0 -14.45200045,0.644 -13.0900005,6.785 1.362,6.141 15.1240005,2.806 15.1240005,2.806 l -2.034,-9.591 z"
+ id="path163"
+ inkscape:connector-curvature="0" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="103.19666"
+ y1="134.52966"
+ x2="111.07164"
+ y2="138.28766"
+ id="line165" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="116.44066"
+ y1="121.91666"
+ x2="119.95366"
+ y2="128.63864"
+ id="line167" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="231.53465"
+ y1="117.39664"
+ x2="227.96065"
+ y2="125.27765"
+ id="line169" /><line
+ style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="249.61266"
+ y1="127.38266"
+ x2="237.84065"
+ y2="134.52966"
+ id="line171" /><line
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="243.72664"
+ y1="311.64764"
+ x2="251.97566"
+ y2="348.16364"
+ id="line173" /><line
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="184.01564"
+ y1="310.31366"
+ x2="184.01564"
+ y2="349.90466"
+ id="line175" /><line
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="146.45665"
+ y1="311.64764"
+ x2="143.12267"
+ y2="350.95166"
+ id="line177" /><line
+ style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+ x1="218.07564"
+ y1="311.29565"
+ x2="222.05864"
+ y2="348.93066"
+ id="line179" /></svg>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 195.689 195.688"
+ xml:space="preserve"
+ inkscape:version="0.48.4 r9939"
+ width="100%"
+ height="100%"
+ sodipodi:docname="Mail.svg"><metadata
+ id="metadata68"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs66" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1508"
+ inkscape:window-height="982"
+ id="namedview64"
+ showgrid="false"
+ inkscape:zoom="8.970293"
+ inkscape:cx="97.257987"
+ inkscape:cy="98.235009"
+ inkscape:window-x="75"
+ inkscape:window-y="34"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="Layer_1"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" /><g
+ id="g3"
+ transform="translate(-200.38201,-323.492)"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="298.22559"
+ y1="324.43469"
+ x2="298.22559"
+ y2="518.20068"><stop
+ offset="0"
+ style="stop-color:#FFFFFF;stop-opacity:0.7"
+ id="stop6" /><stop
+ offset="0.9987"
+ style="stop-color:#D8D9D8;stop-opacity:0.7"
+ id="stop8" /></linearGradient><path
+ style="fill:url(#SVGID_1_);fill-rule:evenodd"
+ d="m 210.005,518.68 c -5.031,0 -9.124,-4.093 -9.124,-9.123 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.441 c 5.03,0 9.123,4.093 9.123,9.124 v 176.44 c 0,5.03 -4.093,9.123 -9.123,9.123 H 210.005 z"
+ id="path10"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#d8d8d7"
+ d="m 386.446,324.492 c 4.755,0 8.624,3.868 8.624,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.624,8.623 h -176.44 c -4.755,0 -8.624,-3.868 -8.624,-8.623 V 333.116 c 0,-4.755 3.868,-8.624 8.624,-8.624 h 176.44 m 0,-1 h -176.44 c -5.315,0 -9.624,4.309 -9.624,9.624 v 176.441 c 0,5.315 4.309,9.623 9.624,9.623 h 176.441 c 5.315,0 9.624,-4.308 9.624,-9.623 V 333.116 c -0.001,-5.315 -4.31,-9.624 -9.625,-9.624 l 0,0 z"
+ id="path12"
+ inkscape:connector-curvature="0" /></g><path
+ style="fill:#e1dfe2;fill-rule:evenodd"
+ d="M 43.775991,58.85 H 148.48299 c 3.322,0 6.015,2.693 6.015,6.015 v 81.128 c 0,3.322 -2.693,6.015 -6.015,6.015 H 43.775991 c -3.322,0 -6.015,-2.693 -6.015,-6.015 V 64.865 c 0,-3.323 2.693,-6.015 6.015,-6.015 z"
+ id="path14"
+ inkscape:connector-curvature="0" /><g
+ id="g16"
+ transform="translate(-200.38201,-323.492)"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="296.51169"
+ y1="381.51559"
+ x2="296.51169"
+ y2="474.0015"><stop
+ offset="0.0032"
+ style="stop-color:#E6C71E"
+ id="stop19" /><stop
+ offset="1"
+ style="stop-color:#E1BB23"
+ id="stop21" /></linearGradient><path
+ style="fill:url(#SVGID_2_);fill-rule:evenodd"
+ d="m 244.158,474.999 c -3.041,0 -5.515,-2.474 -5.515,-5.515 v -82.699 c 0,-3.041 2.474,-5.515 5.515,-5.515 h 104.707 c 3.041,0 5.515,2.474 5.515,5.515 v 82.699 c 0,3.041 -2.474,5.515 -5.515,5.515 H 244.158 z"
+ id="path23"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#d6b429"
+ d="m 348.865,381.771 c 2.765,0 5.015,2.25 5.015,5.015 v 82.699 c 0,2.765 -2.25,5.015 -5.015,5.015 H 244.158 c -2.765,0 -5.015,-2.25 -5.015,-5.015 v -82.699 c 0,-2.765 2.25,-5.015 5.015,-5.015 h 104.707 m 0,-1 H 244.158 c -3.322,0 -6.015,2.693 -6.015,6.015 v 82.699 c 0,3.322 2.693,6.015 6.015,6.015 h 104.707 c 3.322,0 6.015,-2.693 6.015,-6.015 v -82.699 c 0,-3.322 -2.693,-6.015 -6.015,-6.015 l 0,0 z"
+ id="path25"
+ inkscape:connector-curvature="0" /></g><path
+ style="fill:#c9af2d;fill-rule:evenodd"
+ d="m 39.744991,60.112 -1.026,1.112 58.106,56.862 v -2.652 l -57.08,-55.322 z"
+ id="path27"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#9e8831;fill-rule:evenodd"
+ d="m 39.867991,60.294 0.589,-0.666 56.368,55.16 v 0.646 l -56.957,-55.14 z"
+ id="path29"
+ inkscape:connector-curvature="0" /><polygon
+ style="fill:#eecf32;fill-rule:evenodd"
+ points="239.625,471.413 240.152,471.976 296.94,421.926 296.94,420.907 "
+ id="polygon31"
+ transform="translate(-200.38201,-323.492)" /><path
+ style="fill:#c9af2d;fill-rule:evenodd"
+ d="m 97.159431,118.6434 56.403999,-56.915 -1.09844,-1.5594 -55.638999,55.265 0,2.652 z"
+ id="path33"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" /><path
+ style="fill:#968330;fill-rule:evenodd"
+ d="m 96.824991,114.788 55.097999,-55.103 0.542,0.485 -55.638999,55.265 v -0.647 z"
+ id="path35"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#9e8831;fill-rule:evenodd"
+ d="m 148.48299,57.119 -104.706999,0 c -4.82917,1.06976 -6.015,3.82683 -6.015,7.746 0,-3.322 2.693,-6.015 6.015,-6.015 l 104.706999,0 c 3.322,0 6.015,2.693 6.015,6.015 l 0,-1.731 c 0,-3.322 -2.693,-6.015 -6.015,-6.015 z"
+ id="path37"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sccsscss" /><path
+ style="fill:#bba330;fill-rule:evenodd"
+ d="m 38.470991,146.961 c 0,0 0.246,0.5 0.772,0.959 l 57.316,-50.505 0.02,-1.375 -58.108,50.921 z"
+ id="path39"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#bba330;fill-rule:evenodd"
+ d="m 96.557991,95.891 v 1.524 l 55.750999,51.174 c 0.466,-0.33 0.768,-0.716 0.768,-0.716 L 96.557991,95.891 z"
+ id="path41"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#eecf32;fill-rule:evenodd"
+ d="M 152.30999,148.589 96.558991,97.415 v 0.761 l 55.114999,50.925 c 0.32,-0.151 0.213,-0.212 0.636,-0.512 z"
+ id="path43"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#ac9431;fill-rule:evenodd"
+ d="m 88.629991,88.999 c -3.192,1.17 -4.69,6.312 -6.235,7.829 -1.544,1.517 -4.703,1.544 -6.273,5.029 -1.57,3.485 1.75,4.183 1.675,7.319 -0.076,3.136 -2.91,3.923 -2.368,7.185 0.541,3.262 3.454,2.5 4.846,4.564 1.391,2.064 -0.81,5.496 2.281,6.831 3.091,1.335 5.185,-0.25 8.327,0.084 3.142,0.334 2.986,4.66 7.796,4.18 5.496999,-0.548 4.266999,-4.183 7.267999,-5.811 3.001,-1.628 6.925,1.166 8.397,-2.402 1.472,-3.568 -0.258,-5.944 0.469,-9.521 0.727,-3.577 4.949,-4.005 4.769,-7.767 -0.18,-3.762 -4.779,-6.555 -7.659,-7.681 -1.814,-0.709 -0.625,-7.017 -4.299,-8.084 -3.673,-1.067 -5.597,0.229 -10.023999,0.635 -4.428,0.407 -3.247,-4.488 -8.97,-2.39 z"
+ id="path45"
+ inkscape:connector-curvature="0" /><g
+ id="g47"
+ transform="translate(-200.38201,-323.492)"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="297.85461"
+ y1="413.6799"
+ x2="297.85461"
+ y2="452.90948"><stop
+ offset="0"
+ style="stop-color:#F9F3D9"
+ id="stop50" /><stop
+ offset="1"
+ style="stop-color:#EAE3CA"
+ id="stop52" /></linearGradient><path
+ style="fill:url(#SVGID_3_);fill-rule:evenodd"
+ d="m 298.342,453.3 c -2.136,0 -3.101,-1.126 -4.034,-2.215 -0.778,-0.908 -1.583,-1.848 -3.018,-2.001 -0.322,-0.034 -0.633,-0.049 -0.936,-0.049 -0.919,0 -1.754,0.136 -2.561,0.267 -0.764,0.124 -1.484,0.241 -2.238,0.241 -0.892,0 -1.693,-0.166 -2.52,-0.523 -1.686,-0.729 -1.654,-2.082 -1.617,-3.649 0.025,-1.077 0.051,-2.191 -0.556,-3.092 -0.607,-0.901 -1.469,-1.292 -2.303,-1.669 -1.183,-0.535 -2.205,-0.997 -2.503,-2.797 -0.275,-1.657 0.375,-2.643 1.063,-3.687 0.625,-0.949 1.272,-1.931 1.309,-3.452 0.034,-1.415 -0.597,-2.379 -1.154,-3.229 -0.744,-1.137 -1.387,-2.118 -0.542,-3.992 0.985,-2.186 2.632,-2.966 4.084,-3.653 0.806,-0.382 1.567,-0.742 2.136,-1.301 0.559,-0.549 1.086,-1.504 1.698,-2.61 1.089,-1.973 2.445,-4.427 4.448,-5.162 0.936,-0.343 1.715,-0.51 2.382,-0.51 1.299,0 1.967,0.656 2.675,1.35 0.759,0.745 1.619,1.589 3.318,1.589 0.167,0 0.344,-0.008 0.53,-0.025 1.51,-0.139 2.74,-0.381 3.824,-0.596 1.225,-0.242 2.282,-0.451 3.415,-0.451 0.894,0 1.749,0.127 2.693,0.402 2.02,0.587 2.468,2.9 2.862,4.941 0.291,1.5 0.542,2.794 1.414,3.136 2.703,1.057 7.325,3.818 7.5,7.46 0.092,1.901 -1.027,2.912 -2.212,3.982 -1.081,0.977 -2.199,1.986 -2.552,3.724 -0.326,1.603 -0.171,2.965 -0.021,4.281 0.189,1.669 0.369,3.246 -0.435,5.193 -0.609,1.478 -1.646,1.78 -3.018,1.78 -0.382,0 -0.779,-0.023 -1.184,-0.047 -0.431,-0.024 -0.869,-0.05 -1.309,-0.05 -1.16,0 -2.017,0.184 -2.774,0.595 -1.227,0.665 -1.782,1.648 -2.319,2.599 -0.832,1.471 -1.617,2.86 -4.854,3.183 -0.242,0.025 -0.472,0.037 -0.691,0.037 z"
+ id="path54"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#fffcf3"
+ d="m 291.481,410.466 c 1.197,0 1.8,0.593 2.499,1.279 0.793,0.778 1.692,1.661 3.493,1.661 0.175,0 0.359,-0.008 0.553,-0.026 1.523,-0.14 2.759,-0.384 3.849,-0.599 1.212,-0.239 2.258,-0.446 3.366,-0.446 0.869,0 1.703,0.125 2.623,0.392 1.873,0.544 2.306,2.778 2.688,4.749 0.305,1.572 0.568,2.93 1.568,3.321 2.647,1.035 7.173,3.725 7.341,7.24 0.085,1.784 -0.941,2.711 -2.13,3.785 -1.059,0.957 -2.26,2.041 -2.629,3.859 -0.334,1.642 -0.176,3.023 -0.024,4.36 0.186,1.636 0.362,3.181 -0.417,5.07 -0.558,1.354 -1.48,1.626 -2.787,1.626 -0.373,0 -0.76,-0.022 -1.17,-0.046 -0.43,-0.025 -0.874,-0.051 -1.323,-0.051 -1.204,0 -2.096,0.193 -2.893,0.625 -1.29,0.7 -1.863,1.714 -2.418,2.695 -0.833,1.474 -1.553,2.748 -4.661,3.058 -0.23,0.023 -0.455,0.035 -0.667,0.035 -2.022,0 -2.907,-1.033 -3.845,-2.128 -0.81,-0.946 -1.648,-1.923 -3.181,-2.087 -0.318,-0.034 -0.633,-0.05 -0.962,-0.05 -0.94,0 -1.784,0.137 -2.601,0.27 -0.753,0.122 -1.464,0.238 -2.198,0.238 -0.857,0 -1.626,-0.16 -2.421,-0.503 -1.457,-0.629 -1.507,-1.707 -1.466,-3.414 0.026,-1.116 0.053,-2.271 -0.598,-3.238 -0.647,-0.96 -1.582,-1.383 -2.408,-1.757 -1.164,-0.527 -2.083,-0.943 -2.359,-2.61 -0.259,-1.561 0.336,-2.463 1.025,-3.508 0.615,-0.933 1.312,-1.99 1.35,-3.584 0.036,-1.493 -0.618,-2.491 -1.195,-3.373 -0.733,-1.12 -1.312,-2.004 -0.524,-3.753 0.947,-2.102 2.48,-2.828 3.963,-3.53 0.826,-0.391 1.606,-0.76 2.205,-1.348 0.585,-0.575 1.121,-1.545 1.741,-2.668 1.069,-1.936 2.4,-4.346 4.315,-5.048 0.909,-0.334 1.66,-0.496 2.298,-0.496 m 0,-0.5 c -0.651,0 -1.451,0.152 -2.468,0.525 -3.192,1.17 -4.69,6.312 -6.235,7.829 -1.544,1.517 -4.703,1.544 -6.273,5.029 -1.57,3.485 1.75,4.183 1.675,7.319 -0.076,3.136 -2.91,3.923 -2.368,7.185 0.541,3.262 3.454,2.5 4.846,4.564 1.391,2.064 -0.81,5.496 2.281,6.831 0.947,0.409 1.801,0.544 2.619,0.544 1.587,0 3.044,-0.507 4.799,-0.507 0.294,0 0.597,0.014 0.91,0.048 2.977,0.317 2.994,4.217 7.079,4.217 0.226,0 0.465,-0.012 0.717,-0.037 5.497,-0.548 4.267,-4.183 7.268,-5.811 0.837,-0.454 1.747,-0.564 2.655,-0.564 0.853,0 1.704,0.097 2.493,0.097 1.382,0 2.574,-0.298 3.249,-1.935 1.472,-3.568 -0.258,-5.944 0.469,-9.521 0.727,-3.577 4.949,-4.005 4.769,-7.767 -0.18,-3.762 -4.779,-6.555 -7.659,-7.681 -1.814,-0.709 -0.625,-7.017 -4.299,-8.084 -1.027,-0.298 -1.917,-0.412 -2.763,-0.412 -2.181,0 -4.071,0.755 -7.261,1.047 -0.178,0.016 -0.347,0.024 -0.507,0.024 -3.128,0 -3.132,-2.939 -5.996,-2.94 l 0,0 z"
+ id="path56"
+ inkscape:connector-curvature="0" /></g><g
+ id="g58"
+ transform="translate(-200.38201,-323.492)"><path
+ style="fill:#2c2c2c"
+ d="m 295.754,427.07 c -0.707,0.492 -1.312,1.11 -1.816,1.854 -0.506,0.744 -0.9,1.554 -1.189,2.43 -0.287,0.876 -0.432,1.71 -0.432,2.502 0,1.008 0.289,1.842 0.863,2.502 0.576,0.66 1.32,0.99 2.232,0.99 0.793,0 1.523,-0.258 2.197,-0.774 0.67,-0.516 1.26,-1.163 1.764,-1.943 0.504,-0.78 0.9,-1.614 1.188,-2.502 0.288,-0.888 0.432,-1.704 0.432,-2.448 0,-0.433 -0.078,-0.852 -0.234,-1.26 -0.156,-0.408 -0.371,-0.762 -0.646,-1.062 -0.277,-0.3 -0.59,-0.546 -0.938,-0.738 -0.348,-0.191 -0.713,-0.288 -1.098,-0.288 -0.84,-0.001 -1.614,0.246 -2.323,0.737 z m 6.157,8.676 c -0.084,0.324 -0.125,0.618 -0.125,0.883 0,0.744 0.287,1.115 0.863,1.115 0.553,0 1.121,-0.252 1.711,-0.756 0.588,-0.504 1.121,-1.151 1.602,-1.943 0.479,-0.792 0.875,-1.68 1.188,-2.664 0.313,-0.984 0.469,-1.956 0.469,-2.916 0,-1.416 -0.271,-2.7 -0.811,-3.853 -0.541,-1.151 -1.266,-2.13 -2.178,-2.934 -0.912,-0.804 -1.951,-1.422 -3.115,-1.854 -1.164,-0.432 -2.381,-0.647 -3.652,-0.647 -1.537,0 -2.971,0.306 -4.303,0.918 -1.332,0.611 -2.49,1.446 -3.475,2.502 -0.984,1.057 -1.758,2.28 -2.322,3.672 -0.562,1.393 -0.846,2.88 -0.846,4.464 0,1.608 0.295,3.108 0.883,4.5 0.588,1.393 1.391,2.599 2.412,3.618 1.02,1.021 2.201,1.824 3.545,2.412 1.344,0.588 2.773,0.882 4.285,0.882 1.727,0 3.389,-0.396 4.986,-1.188 1.596,-0.792 2.908,-1.848 3.941,-3.168 h 2.268 c -0.576,1.009 -1.271,1.902 -2.088,2.683 -0.817,0.781 -1.709,1.439 -2.682,1.98 -0.973,0.54 -2.01,0.948 -3.115,1.225 -1.104,0.275 -2.23,0.414 -3.383,0.414 -1.896,0 -3.666,-0.349 -5.311,-1.044 -1.645,-0.696 -3.072,-1.65 -4.283,-2.862 -1.213,-1.212 -2.166,-2.64 -2.863,-4.284 -0.695,-1.644 -1.043,-3.426 -1.043,-5.346 0,-1.848 0.354,-3.582 1.062,-5.202 0.707,-1.62 1.668,-3.036 2.879,-4.248 1.213,-1.212 2.629,-2.166 4.248,-2.862 1.621,-0.695 3.342,-1.044 5.166,-1.044 1.656,0 3.229,0.276 4.717,0.828 1.488,0.553 2.789,1.314 3.906,2.286 1.115,0.972 1.998,2.137 2.645,3.492 0.648,1.355 0.973,2.85 0.973,4.481 0,1.561 -0.283,2.982 -0.846,4.267 -0.564,1.284 -1.266,2.382 -2.105,3.294 -0.842,0.912 -1.754,1.62 -2.736,2.124 -0.984,0.504 -1.896,0.756 -2.736,0.756 -0.625,0 -1.152,-0.192 -1.584,-0.576 -0.432,-0.384 -0.672,-0.972 -0.721,-1.764 h -0.107 c -0.553,0.624 -1.213,1.182 -1.98,1.674 -0.767,0.492 -1.596,0.738 -2.484,0.738 -0.768,0 -1.469,-0.15 -2.105,-0.45 -0.636,-0.3 -1.176,-0.702 -1.619,-1.206 -0.445,-0.504 -0.793,-1.104 -1.045,-1.8 -0.252,-0.696 -0.377,-1.44 -0.377,-2.232 0,-1.248 0.203,-2.484 0.611,-3.708 0.408,-1.224 0.979,-2.315 1.711,-3.276 0.73,-0.959 1.619,-1.739 2.662,-2.34 1.045,-0.6 2.203,-0.899 3.475,-0.899 0.84,0 1.621,0.222 2.34,0.666 0.721,0.444 1.283,1.206 1.693,2.286 l 0.826,-2.269 h 2.27 l -3.025,10.224 c -0.099,0.309 -0.188,0.628 -0.272,0.951 z"
+ id="path60"
+ inkscape:connector-curvature="0" /></g><path
+ style="fill:#e1dfe2;fill-rule:evenodd"
+ d="M 148.48299,149.755 H 43.775991 c -3.322,0 -6.015,-2.693 -6.015,-6.015 v 2.253 c 0,3.322 2.693,6.015 6.015,6.015 H 148.48299 c 3.322,0 6.015,-2.693 6.015,-6.015 v -2.253 c 0,3.322 -2.693,6.015 -6.015,6.015 z"
+ id="path62"
+ inkscape:connector-curvature="0" /></svg>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 195.687 195.688"
+ xml:space="preserve"
+ inkscape:version="0.48.4 r9939"
+ width="100%"
+ height="100%"
+ sodipodi:docname="World.svg"><metadata
+ id="metadata129"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs127" /><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1199"
+ inkscape:window-height="896"
+ id="namedview125"
+ showgrid="false"
+ inkscape:zoom="6.342955"
+ inkscape:cx="97.837987"
+ inkscape:cy="98.236009"
+ inkscape:window-x="75"
+ inkscape:window-y="34"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="Layer_1"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" /><g
+ id="g3"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="297.64529"
+ y1="324.43469"
+ x2="297.64529"
+ y2="518.20172"><stop
+ offset="0"
+ style="stop-color:#FFFFFF;stop-opacity:0.7"
+ id="stop6" /><stop
+ offset="0.9987"
+ style="stop-color:#D8D9D8;stop-opacity:0.7"
+ id="stop8" /></linearGradient><path
+ style="fill:url(#SVGID_1_);fill-rule:evenodd"
+ d="m 209.425,518.681 c -5.031,0 -9.124,-4.093 -9.124,-9.124 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.44 c 5.031,0 9.124,4.093 9.124,9.124 v 176.44 c 0,5.031 -4.093,9.124 -9.124,9.124 h -176.44 z"
+ id="path10"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#d8d8d7"
+ d="m 385.865,324.493 c 4.755,0 8.623,3.868 8.623,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.623,8.623 h -176.44 c -4.755,0 -8.623,-3.868 -8.623,-8.623 V 333.116 c 0,-4.755 3.868,-8.624 8.623,-8.624 h 176.44 m 0,-0.999 h -176.44 c -5.315,0 -9.623,4.309 -9.623,9.624 v 176.441 c 0,5.315 4.309,9.623 9.623,9.623 h 176.441 c 5.315,0 9.623,-4.309 9.623,-9.623 V 333.116 c 0,-5.315 -4.309,-9.623 -9.624,-9.623 l 0,0 z"
+ id="path12"
+ inkscape:connector-curvature="0" /></g><g
+ id="g14"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_2_"
+ gradientUnits="userSpaceOnUse"
+ x1="295.34409"
+ y1="366.51251"
+ x2="295.34409"
+ y2="477.05319"><stop
+ offset="0"
+ style="stop-color:#537FAF"
+ id="stop17" /><stop
+ offset="1"
+ style="stop-color:#436997"
+ id="stop19" /></linearGradient><path
+ style="fill:url(#SVGID_2_);fill-rule:evenodd"
+ d="m 295.344,365.432 c 30.647,0 55.492,24.845 55.492,55.492 0,30.647 -24.845,55.492 -55.492,55.492 -30.647,0 -55.492,-24.845 -55.492,-55.492 0,-30.647 24.845,-55.492 55.492,-55.492 z"
+ id="path21"
+ inkscape:connector-curvature="0" /></g><g
+ id="g23"
+ transform="translate(-199.80201,-323.493)"><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 336.697,448.9 c -1.4466,-17.74544 -6.79574,8.99663 -17.693,-19.639 -0.105,-0.613 -0.158,-1.2 -0.187,-1.775 -0.053,0.99 -0.003,2.033 0.187,3.145 8.478,23.495 15.228,8.439 17.693,18.269 z"
+ id="path25"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccc" /><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 322.35931,469.75845 c 11.4669,-11.09759 23.42214,-27.18821 22.63386,-47.49545 -0.009,-0.23982 5.82483,-0.446 5.82183,-0.686 0.33349,21.63904 -14.73709,38.28161 -28.45569,48.18145 z"
+ id="path27"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cscc" /></g><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 142.99999,70.832 c -0.788,3.617 -1.577,7.235 -2.365,10.852 -4.961,-1.349 -8.753,1.731 -13.289,3.095 -0.653,-2.785 -1.305,-5.572 -1.958,-8.357 -0.113,-0.024 -0.223,-0.043 -0.338,-0.074 0.765,3.266 1.531,6.534 2.296,9.801 4.537,-1.363 8.328,-4.444 13.289,-3.095 0.788,-3.617 1.577,-7.235 2.365,-10.852 0.387,-0.052 0.774,-0.104 1.161,-0.156 -0.238,-0.431 -0.502,-0.844 -0.75,-1.268 -0.137,0.017 -0.274,0.035 -0.411,0.054 z"
+ id="path29"
+ inkscape:connector-curvature="0" /><g
+ id="g31"
+ transform="translate(-199.80201,-323.493)"><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 329.068,380.749 c -0.243,-1.017 -0.486,-2.033 -0.729,-3.05 -0.135,-0.1 -0.264,-0.207 -0.4,-0.306 0.303,1.267 0.606,2.535 0.909,3.802 0.072,-0.148 0.146,-0.297 0.22,-0.446 z"
+ id="path33"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 327.22,389.512 c -0.489,-0.227 -0.978,-0.455 -1.468,-0.682 -0.183,0.371 -0.367,0.742 -0.55,1.114 0.673,0.313 1.345,0.625 2.018,0.938 3.634,-0.915 5.053,-5.373 4.871,-9.558 -0.155,3.741 -1.633,7.372 -4.871,8.188 z"
+ id="path35"
+ inkscape:connector-curvature="0" /></g><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 123.30399,61.978 c -0.543,-0.236 -1.087,-0.471 -1.63,-0.707 -0.179,0.379 -0.358,0.758 -0.537,1.136 0.722,0.313 1.445,0.627 2.167,0.94 0.365,-1.137 0.73,-2.275 1.095,-3.413 -0.129,-0.055 -0.257,-0.111 -0.386,-0.166 -0.236,0.737 -0.473,1.474 -0.709,2.21 z"
+ id="path37"
+ inkscape:connector-curvature="0" /><g
+ id="g39"
+ transform="translate(-199.80201,-323.493)"><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 272.087,393.816 c 0.93,-5.339 1.861,-10.68 2.792,-16.019 -0.025,-0.167 -0.072,-0.388 -0.129,-0.63 -0.93,5.334 -1.859,10.669 -2.789,16.003 0.037,0.217 0.085,0.431 0.126,0.646 z"
+ id="path41"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 260.998,417.547 c 0,0.424 0.044,0.842 0.117,1.256 0.455,-0.442 0.911,-0.885 1.366,-1.327 1.956,0 13.993,0.484 15.897,1.198 0,-0.465 -0.021,-0.926 -0.05,-1.385 -2.041,-0.705 -13.906,-1.182 -15.847,-1.182 -0.495,0.479 -0.989,0.96 -1.483,1.44 z"
+ id="path43"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 271.142,443.257 c -0.062,0.322 -0.109,0.664 -0.134,1.038 5.203,13.429 12.196,14.9 12.423,28.805 0.219,-15.067 -6.933,-16.306 -12.289,-29.843 z"
+ id="path45"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#3d5e86;fill-rule:evenodd"
+ d="m 276.572,434.507 c -0.064,-0.093 -8.841,-3.054 -12.462,-5.359 -7.139,-4.544 -14.035,-13.956 -20.542,-26.81 -0.1,0.258 -0.211,0.51 -0.306,0.77 6.597,13.166 13.598,22.794 20.849,27.409 3.571,2.273 12.138,5.178 12.438,5.348 0.136,-0.364 0.169,-0.795 0.023,-1.358 z"
+ id="path49"
+ inkscape:connector-curvature="0" /></g><g
+ id="g51"
+ transform="translate(-217.32904,-322.54707)"><linearGradient
+ id="SVGID_3_"
+ gradientUnits="userSpaceOnUse"
+ x1="334.81161"
+ y1="368.34589"
+ x2="334.81161"
+ y2="475.01251"
+ gradientTransform="translate(17.527034,-0.89641334)"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop54" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop56" /></linearGradient><path
+ style="fill:url(#SVGID_3_);fill-rule:evenodd"
+ d="m 368.20538,422.0761 c 0,-4.224 -0.33035,-10.38051 -1.22335,-14.33451 -9.023,1.521 -33.199,4.524 -30.451,20.622 8.53,23.641 15.312,8.248 17.739,18.45 0.38,4.725 -6.01,12.864 -10.126,19.052 14.62,-9.993 24.06135,-24.74349 24.06135,-43.78949 z"
+ id="path58"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sccccs" /></g><g
+ id="g60"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_4_"
+ gradientUnits="userSpaceOnUse"
+ x1="334.4075"
+ y1="368.34589"
+ x2="334.4075"
+ y2="475.01251"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop63" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop65" /></linearGradient><path
+ style="fill:url(#SVGID_4_);fill-rule:evenodd"
+ d="m 340.438,405.177 c 0.788,-3.617 1.577,-7.235 2.365,-10.852 0.387,-0.052 0.774,-0.104 1.161,-0.156 -2.168,-3.931 -4.798,-7.569 -7.818,-10.845 -1.648,5.677 -4.173,17.083 -11.293,15.147 0.765,3.266 1.531,6.534 2.296,9.801 4.536,-1.364 8.327,-4.444 13.289,-3.095 z"
+ id="path67"
+ inkscape:connector-curvature="0" /></g><g
+ id="g69"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_5_"
+ gradientUnits="userSpaceOnUse"
+ x1="328.65619"
+ y1="368.34589"
+ x2="328.65619"
+ y2="475.01251"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop72" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop74" /></linearGradient><path
+ style="fill:url(#SVGID_5_);fill-rule:evenodd"
+ d="m 329.068,380.749 c -1.288,2.608 -2.577,5.217 -3.865,7.824 0.673,0.313 1.345,0.625 2.018,0.938 3.816,-0.96 5.194,-5.829 4.836,-10.184 -1.319,-1.165 -2.692,-2.267 -4.118,-3.304 0.376,1.576 0.752,3.151 1.129,4.726 z"
+ id="path76"
+ inkscape:connector-curvature="0" /></g><linearGradient
+ id="SVGID_6_"
+ gradientUnits="userSpaceOnUse"
+ x1="322.56961"
+ y1="368.34589"
+ x2="322.56961"
+ y2="475.01251"
+ gradientTransform="translate(-199.80201,-323.493)"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop79" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop81" /></linearGradient><path
+ style="fill:url(#SVGID_6_);fill-rule:evenodd"
+ d="m 122.55399,58.04 c -0.472,1 -0.945,1.999 -1.417,2.999 0.722,0.313 1.445,0.627 2.168,0.94 0.365,-1.137 0.73,-2.275 1.095,-3.413 -0.603,-0.26 -1.206,-0.52 -1.809,-0.78 -0.013,0.084 -0.025,0.169 -0.037,0.254 z"
+ id="path83"
+ inkscape:connector-curvature="0" /><g
+ id="g85"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_7_"
+ gradientUnits="userSpaceOnUse"
+ x1="272.83749"
+ y1="368.69739"
+ x2="272.83749"
+ y2="474.75171"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop88" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop90" /></linearGradient><path
+ style="fill:url(#SVGID_7_);fill-rule:evenodd"
+ d="m 289.565,475.865 c -1.934,-0.202 -3.929,-0.524 -5.938,-0.96 0.533,-10.776 -2.327,-14.988 -5.941,-20.313 -2.057,-3.029 -4.387,-6.462 -6.424,-11.704 0.232,-3.271 1.997,-4.275 3.555,-5.163 1.275,-0.727 2.479,-1.413 1.998,-3.28 -0.096,-0.164 -0.096,-0.164 -1.222,-0.578 -2.546,-0.935 -8.511,-3.123 -11.348,-4.93 -6.877,-4.377 -13.845,-13.534 -20.711,-27.213 5.141,-13.864 15.829,-25.245 29.361,-31.274 0.786,2.477 1.591,5.021 1.737,6.015 l -1.458,8.292 -1.458,8.372 c 0.583,3.561 1.838,6.961 3.052,10.25 1.614,4.371 3.281,8.887 3.357,13.59 -2.776,-0.693 -14.013,-1.111 -15.644,-1.111 h -0.102 l -1.631,1.585 v 0.105 c 0,6.491 8.881,11.957 14.996,12.867 0.383,0.058 0.781,0.086 1.182,0.086 1.528,0 3.001,-0.416 4.425,-0.817 1.436,-0.405 2.92,-0.824 4.474,-0.824 0.413,0 0.824,0.03 1.22,0.089 13.326,1.986 15.562,6.703 15.026,14.712 -2.567,9.616 -8.209,22.441 -11.942,30.928 l -0.564,1.276 z"
+ id="path92"
+ inkscape:connector-curvature="0" /><path
+ style="fill:#f5fbfd"
+ d="m 272.741,370.792 c 0.736,2.319 1.466,4.644 1.632,5.632 l -2.904,16.661 -0.015,0.084 0.014,0.084 c 0.587,3.499 1.847,6.911 3.065,10.21 1.57,4.253 3.191,8.644 3.335,13.193 -3.276,-0.657 -13.81,-1.05 -15.387,-1.05 h -0.203 l -0.146,0.141 -0.837,0.813 -0.646,0.627 -0.152,0.147 v 0.211 c 0,4.531 5.786,11.712 15.208,13.115 0.395,0.059 0.806,0.089 1.22,0.089 1.563,0 3.053,-0.42 4.493,-0.827 1.419,-0.4 2.886,-0.814 4.405,-0.814 0.401,0 0.799,0.029 1.183,0.086 6.37,0.949 10.356,2.524 12.543,4.956 1.889,2.101 2.57,4.926 2.274,9.443 -2.575,9.637 -8.198,22.421 -11.921,30.884 l -0.492,1.119 c -1.796,-0.194 -3.65,-0.493 -5.523,-0.892 0.49,-10.702 -2.377,-14.926 -5.995,-20.255 -2.042,-3.008 -4.355,-6.415 -6.378,-11.602 0.24,-3.093 1.931,-4.057 3.425,-4.908 1.301,-0.741 2.646,-1.507 2.116,-3.56 l -0.022,-0.087 -0.051,-0.074 c -0.104,-0.149 -0.104,-0.149 -1.306,-0.59 -2.321,-0.852 -8.485,-3.114 -11.299,-4.905 -6.822,-4.343 -13.743,-13.431 -20.573,-27.018 5.101,-13.665 15.618,-24.897 28.937,-30.913 m 0.307,-0.685 c -13.74,6.037 -24.57,17.472 -29.787,31.631 6.597,13.166 13.598,22.794 20.849,27.409 3.621,2.305 12.398,5.266 12.462,5.359 0.955,3.699 -5.15,2.093 -5.564,8.419 5.597,14.445 13.27,15.045 12.359,32.179 2.078,0.457 4.195,0.811 6.354,1.028 3.832,-8.726 9.872,-22.225 12.598,-32.457 0.557,-8.315 -1.871,-12.984 -15.239,-14.975 -0.427,-0.064 -0.846,-0.092 -1.257,-0.092 -3.144,0 -5.88,1.641 -8.898,1.641 -0.377,0 -0.759,-0.026 -1.146,-0.083 -6.077,-0.905 -14.782,-6.232 -14.782,-12.62 0.494,-0.48 0.989,-0.96 1.483,-1.44 1.956,0 13.993,0.484 15.897,1.198 0,-8.417 -5.042,-15.941 -6.416,-24.133 0.972,-5.58 1.945,-11.162 2.918,-16.743 -0.154,-1.05 -1.001,-3.704 -1.831,-6.321 l 0,0 z"
+ id="path94"
+ inkscape:connector-curvature="0" /></g><g
+ id="g96"
+ transform="translate(-199.80201,-323.493)"><linearGradient
+ id="SVGID_8_"
+ gradientUnits="userSpaceOnUse"
+ x1="272.82639"
+ y1="368.33749"
+ x2="272.82639"
+ y2="475.51071"><stop
+ offset="0"
+ style="stop-color:#D1DBE8"
+ id="stop99" /><stop
+ offset="1"
+ style="stop-color:#C4CDDC"
+ id="stop101" /></linearGradient><path
+ style="fill:url(#SVGID_8_);fill-rule:evenodd"
+ d="m 287.081,428.701 c -4.097,-0.61 -7.409,2.046 -11.301,1.466 -6.077,-0.905 -14.782,-6.232 -14.782,-12.62 0.494,-0.48 0.989,-0.96 1.483,-1.44 1.956,0 13.993,0.484 15.897,1.198 0,-8.417 -5.042,-15.941 -6.416,-24.133 0.972,-5.58 1.945,-11.162 2.918,-16.743 -0.154,-1.05 -1.001,-3.704 -1.831,-6.321 -13.74,6.037 -24.57,17.472 -29.787,31.631 6.597,13.166 13.598,22.794 20.849,27.409 3.621,2.305 12.398,5.266 12.462,5.359 0.955,3.699 -5.15,2.093 -5.564,8.419 5.597,14.445 13.187,15.646 12.276,32.78 2.078,0.457 4.047,0.713 6.206,0.93 2.76103,-10.7429 8.89487,-23.77947 12.829,-32.96 0.556,-8.315 -1.871,-12.984 -15.239,-14.975 z"
+ id="path103"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccccc" /></g><path
+ style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+ d="m 143.92999,71.247 c -2.151,-3.9 -5.028,-7.893 -8.025,-11.143"
+ id="path105"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+ d="m 132.77899,56.97 c -1.308,-1.156 -3.383,-3.07 -4.992,-4.109"
+ id="path107"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+ d="m 73.432991,46.99 c -14.161,6.084 -24.626,17.909 -29.827,32.251"
+ id="path109"
+ inkscape:connector-curvature="0" /><g
+ id="g111"
+ transform="translate(-199.80201,-323.493)"><path
+ style="fill:#e1dfe2;fill-rule:evenodd"
+ d="m 295.344,476.415 c -30.44,0 -55.144,-24.514 -55.476,-54.876 -0.002,0.206 -0.016,0.409 -0.016,0.616 0,30.647 24.844,55.492 55.492,55.492 30.647,0 57.06855,-24.52869 55.492,-55.492 -0.0105,-0.2067 -0.013,-0.41 -0.016,-0.616 -0.48966,30.20434 -25.035,54.876 -55.476,54.876 z"
+ id="path113"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="scssscs" /></g><path
+ style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+ d="M 90.267991,152.213"
+ id="path115"
+ inkscape:connector-curvature="0" /><path
+ style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+ d="M 83.481991,151.099"
+ id="path117"
+ inkscape:connector-curvature="0" /><g
+ id="g121"
+ transform="translate(-199.80201,-323.493)"><path
+ style="fill:#37577e;fill-rule:evenodd"
+ d="m 295.344,366.659 c 30.441,0 54.98834,24.98797 55.476,54.878 0.002,-0.205 0.0107,-0.40807 0.016,-0.614 0.78828,-30.647 -24.845,-55.492 -55.492,-55.492 -30.647,0 -55.492,24.845 -55.492,55.492 0,0.206 0.013,0.408 0.016,0.614 0.331,-30.363 25.035,-54.878 55.476,-54.878 z"
+ id="path123"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="scssscs" /></g></svg>
\ No newline at end of file
_visualDictionary.Add(visualIndex, visual);
_tranformDictionary.Add(visualIndex, visualMap.OutputTransformMap);
+ visualMap.VisualIndex = visualIndex;
+ visualMap.Name = visualName;
+ visualMap.Parent = this;
+
RelayoutRequest();
}
}
EnableVisual(item.Key, true);
}
}
+
+ internal void UpdateVisual(int visualIndex, string visualName, VisualMap visualMap)
+ {
+ VisualBase visual = null;
+
+ visual = VisualFactory.Get().CreateVisual(visualMap.OutputVisualMap);
+ visual.Name = visualName;
+ visual.DepthIndex = visualMap.DepthIndex;
+
+ RegisterVisual(visualIndex, visual);
+
+ _visualDictionary[visualIndex] = visual;
+ _tranformDictionary[visualIndex] = visualMap.OutputTransformMap;
+
+ RelayoutRequest();
+
+ Tizen.Log.Debug("NUI", "UpdateVisual() name=" + visualName);
+ }
+
+ /// <summary>
+ /// Create visual animation (transition) with the input property map
+ /// </summary>
+ /// <param name="visualMap">property map to define visual animation</param>
+ /// <returns>Animation instance</returns>
+ public Animation AnimateVisual(AnimatorVisual visualMap)
+ {
+ foreach (var item in _visualDictionary.ToList())
+ {
+ if (item.Value.Name == visualMap.Target)
+ {
+ TransitionData _transitionData = new TransitionData(visualMap.OutputVisualMap);
+ return this.CreateTransition(_transitionData);
}
+ }
+ return null;
+ }
+ }
}
/// </summary>
public class VisualMap
{
- private Vector2 _visualSize = Vector2.Zero;
- private Vector2 _visualOffset = Vector2.Zero;
- private Vector2 _visualOffsetPolicy = new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute); // default absolute
- private Vector2 _visualSizePolicy = new Vector2((int)VisualTransformPolicyType.Absolute, (int)VisualTransformPolicyType.Absolute); // default absolute
- private AlignType _visualOrigin = AlignType.TopBegin;
- private AlignType _visualAnchorPoint = AlignType.TopBegin;
+ private Vector2 _visualSize = null;
+ private Vector2 _visualOffset = null;
+ private Vector2 _visualOffsetPolicy = null;
+ private Vector2 _visualSizePolicy = null;
+ private Visual.AlignType? _visualOrigin = null;
+ private Visual.AlignType? _visualAnchorPoint = null;
private PropertyMap _visualTransformMap = null;
private float _depthIndex = 0.0f;
protected PropertyMap _outputVisualMap = null;
+ public string Name
+ {
+ set;
+ get;
+ }
+ public int VisualIndex
+ {
+ set;
+ get;
+ }
+ public VisualView Parent
+ {
+ set;
+ get;
+ }
+
public VisualMap()
{
}
/// It can be either relative (percentage of the parent)
/// or absolute (in world units).<br>
/// </summary>
- public Vector2 VisualSize
+ public Vector2 Size
{
get
{
set
{
_visualSize = value;
+ UpdateVisual();
}
}
/// It can be either relative (percentage of the parent)
/// or absolute (in world units).<br>
/// </summary>
- public Vector2 Offset
+ public Vector2 Position
{
get
{
set
{
_visualOffset = value;
+ UpdateVisual();
}
}
/// (percentage of the parent) or absolute (in world units).<br>
/// 0 indicates the component is relative, and 1 absolute.<br>
/// </summary>
- public Vector2 OffsetPolicy
+ public Vector2 PositionPolicy
{
get
{
set
{
_visualOffsetPolicy = value;
+ UpdateVisual();
}
}
set
{
_visualSizePolicy = value;
+ UpdateVisual();
}
}
/// <summary>
/// Get or set the origin of the visual within its control area.
/// </summary>
- public AlignType Origin
+ public Visual.AlignType Origin
{
get
{
- return _visualOrigin;
+ return _visualOrigin ?? (Visual.AlignType)(-1);
}
set
{
_visualOrigin = value;
+ UpdateVisual();
}
}
/// <summary>
/// Get or set the anchor-point of the visual.
/// </summary>
- public AlignType AnchorPoint
+ public Visual.AlignType AnchorPoint
{
get
{
- return _visualAnchorPoint;
+ return _visualAnchorPoint ?? (Visual.AlignType)(-1);
}
set
{
_visualAnchorPoint = value;
+ UpdateVisual();
}
}
private void ComposingTransformMap()
{
- if (_visualSize != Vector2.Zero)
- {
- _visualTransformMap = new PropertyMap();
- _visualTransformMap.Add((int)VisualTransformPropertyType.Size, new PropertyValue(_visualSize));
- _visualTransformMap.Add((int)VisualTransformPropertyType.Offset, new PropertyValue(_visualOffset));
- _visualTransformMap.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(_visualOffsetPolicy));
- _visualTransformMap.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(_visualSizePolicy));
- _visualTransformMap.Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)_visualOrigin));
- _visualTransformMap.Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)_visualAnchorPoint));
- }
+ _visualTransformMap = new PropertyMap();
+ if (_visualSize != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Size, new PropertyValue(_visualSize)); }
+ if (_visualOffset != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Offset, new PropertyValue(_visualOffset)); }
+ if (_visualOffsetPolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.OffsetPolicy, new PropertyValue(_visualOffsetPolicy)); }
+ if (_visualSizePolicy != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.SizePolicy, new PropertyValue(_visualSizePolicy)); }
+ if (_visualOrigin != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.Origin, new PropertyValue((int)_visualOrigin)); }
+ if (_visualAnchorPoint != null) { _visualTransformMap.Add((int)VisualTransformPropertyType.AnchorPoint, new PropertyValue((int)_visualAnchorPoint)); }
}
/// <summary>
return _outputVisualMap;
}
}
+
+ public void UpdateVisual()
+ {
+ if (VisualIndex > 0)
+ {
+ Tizen.Log.Debug("NUI", "UpdateVisual()! VisualIndex=" + VisualIndex);
+ Parent.UpdateVisual(VisualIndex, Name, this);
+ }
+ else
+ {
+ Tizen.Log.Debug("NUI", "VisualIndex was not set");
+ }
+ }
+
}
/// <summary>
/// A class encapsulating the property map of a image visual.
/// </summary>
- public class ImageVisualMap : VisualMap
+ public class ImageVisual : VisualMap
{
- public ImageVisualMap() : base()
+ public ImageVisual() : base()
{
}
- private string _url = "";
- private FittingModeType _fittingMode = FittingModeType.ShrinkToFit;
- private SamplingModeType _samplingMode = SamplingModeType.Box;
- private int _desiredWidth = 0;
- private int _desiredHeight = 0;
- private bool _synchronousLoading = false;
- private bool _borderOnly = false;
- private Vector4 _pixelArea = new Vector4(0.0f, 0.0f, 1.0f, 1.0f);
- private WrapModeType _wrapModeU = WrapModeType.ClampToEdge;
- private WrapModeType _wrapModeV = WrapModeType.ClampToEdge;
+ private string _url = null;
+ private FittingModeType? _fittingMode = null;
+ private SamplingModeType? _samplingMode = null;
+ private int? _desiredWidth = null;
+ private int? _desiredHeight = null;
+ private bool? _synchronousLoading = false;
+ private bool? _borderOnly = null;
+ private Vector4 _pixelArea = null;
+ private WrapModeType? _wrapModeU = null;
+ private WrapModeType? _wrapModeV = null;
/// <summary>
/// Get or set the URL of the image.
set
{
_url = value;
+ UpdateVisual();
}
}
{
get
{
- return _fittingMode;
+ return _fittingMode ?? (FittingModeType)(-1);
}
set
{
_fittingMode = value;
+ UpdateVisual();
}
}
{
get
{
- return _samplingMode;
+ return _samplingMode ?? (SamplingModeType)(-1);
}
set
{
_samplingMode = value;
+ UpdateVisual();
}
}
{
get
{
- return _desiredWidth;
+ return _desiredWidth ?? (-1);
}
set
{
_desiredWidth = value;
+ UpdateVisual();
}
}
{
get
{
- return _desiredHeight;
+ return _desiredHeight ?? (-1);
}
set
{
_desiredHeight = value;
+ UpdateVisual();
}
}
{
get
{
- return _synchronousLoading;
+ return _synchronousLoading ?? false;
}
set
{
_synchronousLoading = value;
+ UpdateVisual();
}
}
{
get
{
- return _borderOnly;
+ return _borderOnly ?? false;
}
set
{
_borderOnly = value;
+ UpdateVisual();
}
}
set
{
_pixelArea = value;
+ UpdateVisual();
}
}
{
get
{
- return _wrapModeU;
+ return _wrapModeU ?? (WrapModeType)(-1);
}
set
{
_wrapModeU = value;
+ UpdateVisual();
}
}
{
get
{
- return _wrapModeV;
+ return _wrapModeV ?? (WrapModeType)(-1);
}
set
{
_wrapModeV = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_url != "")
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Image));
- _outputVisualMap.Add(ImageVisualProperty.URL, new PropertyValue(_url));
- _outputVisualMap.Add(ImageVisualProperty.FittingMode, new PropertyValue((int)_fittingMode));
- _outputVisualMap.Add(ImageVisualProperty.SamplingMode, new PropertyValue((int)_samplingMode));
-
- if (_desiredWidth != 0)
- {
- _outputVisualMap.Add(ImageVisualProperty.DesiredWidth, new PropertyValue(_desiredWidth));
- }
-
- if (_desiredHeight != 0)
- {
- _outputVisualMap.Add(ImageVisualProperty.DesiredHeight, new PropertyValue(_desiredHeight));
- }
-
- _outputVisualMap.Add(ImageVisualProperty.SynchronousLoading, new PropertyValue(_synchronousLoading));
- _outputVisualMap.Add(ImageVisualProperty.BorderOnly, new PropertyValue(_borderOnly));
- _outputVisualMap.Add(ImageVisualProperty.PixelArea, new PropertyValue(_pixelArea));
- _outputVisualMap.Add(ImageVisualProperty.WrapModeU, new PropertyValue((int)_wrapModeU));
- _outputVisualMap.Add(ImageVisualProperty.WrapModeV, new PropertyValue((int)_wrapModeV));
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Image));
+ if (_url != null) { _outputVisualMap.Add(ImageVisualProperty.URL, new PropertyValue(_url)); }
+ if (_fittingMode != null) { _outputVisualMap.Add(ImageVisualProperty.FittingMode, new PropertyValue((int)_fittingMode)); }
+ if (_samplingMode != null) { _outputVisualMap.Add(ImageVisualProperty.SamplingMode, new PropertyValue((int)_samplingMode)); }
+ if (_desiredWidth != null) { _outputVisualMap.Add(ImageVisualProperty.DesiredWidth, new PropertyValue((int)_desiredWidth)); }
+ if (_desiredHeight != null) { _outputVisualMap.Add(ImageVisualProperty.DesiredHeight, new PropertyValue((int)_desiredHeight)); }
+ if (_synchronousLoading != null) { _outputVisualMap.Add(ImageVisualProperty.SynchronousLoading, new PropertyValue((bool)_synchronousLoading)); }
+ if (_borderOnly != null) { _outputVisualMap.Add(ImageVisualProperty.BorderOnly, new PropertyValue((bool)_borderOnly)); }
+ if (_pixelArea != null) { _outputVisualMap.Add(ImageVisualProperty.PixelArea, new PropertyValue(_pixelArea)); }
+ if (_wrapModeU != null) { _outputVisualMap.Add(ImageVisualProperty.WrapModeU, new PropertyValue((int)_wrapModeU)); }
+ if (_wrapModeV != null) { _outputVisualMap.Add(ImageVisualProperty.WrapModeV, new PropertyValue((int)_wrapModeV)); }
}
+
}
/// <summary>
/// A class encapsulating the property map of a text visual.
/// </summary>
- public class TextVisualMap : VisualMap
+ public class TextVisual : VisualMap
{
- public TextVisualMap() : base()
+ public TextVisual() : base()
{
}
- private string _text = "";
- private string _fontFamily = "";
+ private string _text = null;
+ private string _fontFamily = null;
private PropertyMap _fontStyle = null;
- private float _pointSize = 0.0f;
- private bool _multiLine = false;
- private string _horizontalAlignment = "BEGIN";
- private string _verticalAlignment = "TOP";
- private Color _textColor = Color.Black;
- private bool _enableMarkup = false;
+ private float? _pointSize = null;
+ private bool? _multiLine = null;
+ private string _horizontalAlignment = null;
+ private string _verticalAlignment = null;
+ private Color _textColor = null;
+ private bool? _enableMarkup = null;
/// <summary>
/// Get or set the text to display in UTF-8 format.
set
{
_text = value;
+ UpdateVisual();
}
}
set
{
_fontFamily = value;
+ UpdateVisual();
}
}
set
{
_fontStyle = value;
+ UpdateVisual();
}
}
{
get
{
- return _pointSize;
+ return _pointSize ?? (-1.0f);
}
set
{
_pointSize = value;
+ UpdateVisual();
}
}
{
get
{
- return _multiLine;
+ return _multiLine ?? false;
}
set
{
_multiLine = value;
+ UpdateVisual();
}
}
set
{
_horizontalAlignment = value;
+ UpdateVisual();
}
}
set
{
_verticalAlignment = value;
+ UpdateVisual();
}
}
set
{
_textColor = value;
+ UpdateVisual();
}
}
{
get
{
- return _enableMarkup;
+ return _enableMarkup ?? false;
}
set
{
_enableMarkup = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_text != "")
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Text));
- _outputVisualMap.Add(TextVisualProperty.Text, new PropertyValue(_text));
-
- if (_fontFamily != "")
- {
- _outputVisualMap.Add(TextVisualProperty.FontFamily, new PropertyValue(_fontFamily));
- }
-
- if (_fontStyle != null)
- {
- _outputVisualMap.Add(TextVisualProperty.FontStyle, new PropertyValue(_fontStyle));
- }
-
- if (_pointSize != 0)
- {
- _outputVisualMap.Add(TextVisualProperty.PointSize, new PropertyValue(_pointSize));
- }
-
- _outputVisualMap.Add(TextVisualProperty.MultiLine, new PropertyValue(_multiLine));
- _outputVisualMap.Add(TextVisualProperty.HorizontalAlignment, new PropertyValue(_horizontalAlignment));
- _outputVisualMap.Add(TextVisualProperty.VerticalAlignment, new PropertyValue(_verticalAlignment));
- _outputVisualMap.Add(TextVisualProperty.TextColor, new PropertyValue(_textColor));
- _outputVisualMap.Add(TextVisualProperty.EnableMarkup, new PropertyValue(_enableMarkup));
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Text));
+ if (_text != null) { _outputVisualMap.Add(TextVisualProperty.Text, new PropertyValue(_text)); }
+ if (_fontFamily != null) { _outputVisualMap.Add(TextVisualProperty.FontFamily, new PropertyValue(_fontFamily)); }
+ if (_fontStyle != null) { _outputVisualMap.Add(TextVisualProperty.FontStyle, new PropertyValue(_fontStyle)); }
+ if (_pointSize != null) { _outputVisualMap.Add(TextVisualProperty.PointSize, new PropertyValue((float)_pointSize)); }
+ if (_multiLine != null) { _outputVisualMap.Add(TextVisualProperty.MultiLine, new PropertyValue((bool)_multiLine)); }
+ if (_horizontalAlignment != null) { _outputVisualMap.Add(TextVisualProperty.HorizontalAlignment, new PropertyValue(_horizontalAlignment)); }
+ if (_verticalAlignment != null) { _outputVisualMap.Add(TextVisualProperty.VerticalAlignment, new PropertyValue(_verticalAlignment)); }
+ if (_textColor != null) { _outputVisualMap.Add(TextVisualProperty.TextColor, new PropertyValue(_textColor)); }
+ if (_enableMarkup != null) { _outputVisualMap.Add(TextVisualProperty.EnableMarkup, new PropertyValue((bool)_enableMarkup)); }
}
}
/// <summary>
/// A class encapsulating the property map of a border visual.
/// </summary>
- public class BorderVisualMap : VisualMap
+ public class BorderVisual : VisualMap
{
- public BorderVisualMap() : base()
+ public BorderVisual() : base()
{
}
- private Color _color = Color.Black;
- private float _size = 0.000001f;
- private bool _antiAliasing = false;
+ private Color _color = null;
+ private float? _size = null;
+ private bool? _antiAliasing = null;
/// <summary>
/// Get or set the color of the border.
set
{
_color = value;
+ UpdateVisual();
}
}
/// <summary>
/// Get or set the width of the border (in pixels).
/// </summary>
- public float Size
+ public float BorderSize
{
get
{
- return _size;
+ return _size ?? (-1.0f);
}
set
{
_size = value;
+ UpdateVisual();
}
}
{
get
{
- return _antiAliasing;
+ return _antiAliasing ?? false;
}
set
{
_antiAliasing = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_size > 0.000001f)
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Border));
- _outputVisualMap.Add(BorderVisualProperty.Color, new PropertyValue(_color));
- _outputVisualMap.Add(BorderVisualProperty.Size, new PropertyValue(_size));
- _outputVisualMap.Add(BorderVisualProperty.AntiAliasing, new PropertyValue(_antiAliasing));
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Border));
+ if (_color != null) { _outputVisualMap.Add(BorderVisualProperty.Color, new PropertyValue(_color)); }
+ if (_size != null) { _outputVisualMap.Add(BorderVisualProperty.Size, new PropertyValue((float)_size)); }
+ if (_antiAliasing != null) { _outputVisualMap.Add(BorderVisualProperty.AntiAliasing, new PropertyValue((bool)_antiAliasing)); }
}
}
/// <summary>
/// A class encapsulating the property map of a color visual.
/// </summary>
- public class ColorVisualMap : VisualMap
+ public class ColorVisual : VisualMap
{
- public ColorVisualMap() : base()
+ public ColorVisual() : base()
{
}
- private Color _mixColor = Color.Black;
+ private Color _mixColor = null;
/// <summary>
/// Get or set the solid color required.
set
{
_mixColor = value;
+ UpdateVisual();
}
}
{
_outputVisualMap = new PropertyMap();
_outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Color));
- _outputVisualMap.Add(ColorVisualProperty.MixColor, new PropertyValue(_mixColor));
+ if (_mixColor != null) { _outputVisualMap.Add(ColorVisualProperty.MixColor, new PropertyValue(_mixColor)); }
}
}
/// <summary>
/// A class encapsulating the property map of a gradient visual.
/// </summary>
- public class GradientVisualMap : VisualMap
+ public class GradientVisual : VisualMap
{
- public GradientVisualMap() : base()
+ public GradientVisual() : base()
{
}
- private Vector2 _startPosition = Vector2.Zero;
- private Vector2 _endPosition = Vector2.Zero;
- private Vector2 _center = Vector2.Zero;
- private float _radius = 0.000001f;
- private PropertyArray _stopOffset = null; //0.0, 1.0
- private PropertyArray _stopColor = null; // Color.Black, Color.Blue
- private GradientVisualUnitsType _units = GradientVisualUnitsType.ObjectBoundingBox;
- private GradientVisualSpreadMethodType _spreadMethod = GradientVisualSpreadMethodType.Pad;
+ private Vector2 _startPosition = null;
+ private Vector2 _endPosition = null;
+ private Vector2 _center = null;
+ private float? _radius = null;
+ private PropertyArray _stopOffset = null;
+ private PropertyArray _stopColor = null;
+ private GradientVisualUnitsType? _units = null;
+ private GradientVisualSpreadMethodType? _spreadMethod = null;
/// <summary>
/// Get or set the start position of a linear gradient.<br>
set
{
_startPosition = value;
+ UpdateVisual();
}
}
set
{
_endPosition = value;
+ UpdateVisual();
}
}
set
{
_center = value;
+ UpdateVisual();
}
}
{
get
{
- return _radius;
+ return _radius ?? (-1.0f);
}
set
{
_radius = value;
+ UpdateVisual();
}
}
set
{
_stopOffset = value;
+ UpdateVisual();
}
}
set
{
_stopColor = value;
+ UpdateVisual();
}
}
{
get
{
- return _units;
+ return _units ?? (GradientVisualUnitsType)(-1);
}
set
{
_units = value;
+ UpdateVisual();
}
}
{
get
{
- return _spreadMethod;
+ return _spreadMethod ?? (GradientVisualSpreadMethodType)(-1);
}
set
{
_spreadMethod = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_startPosition != Vector2.Zero && _endPosition != Vector2.Zero && _center != Vector2.Zero
- && _radius > 0.000001f && _stopColor != null)
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Gradient));
- _outputVisualMap.Add(GradientVisualProperty.StartPosition, new PropertyValue(_startPosition));
- _outputVisualMap.Add(GradientVisualProperty.EndPosition, new PropertyValue(_endPosition));
- _outputVisualMap.Add(GradientVisualProperty.Center, new PropertyValue(_center));
- _outputVisualMap.Add(GradientVisualProperty.Radius, new PropertyValue(_radius));
-
- if (_stopOffset != null)
- {
- _outputVisualMap.Add(GradientVisualProperty.StopOffset, new PropertyValue(_stopOffset));
- }
-
- _outputVisualMap.Add(GradientVisualProperty.StopColor, new PropertyValue(_stopColor));
- _outputVisualMap.Add(GradientVisualProperty.Units, new PropertyValue((int)_units));
- _outputVisualMap.Add(GradientVisualProperty.SpreadMethod, new PropertyValue((int)_spreadMethod));
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Gradient));
+ if (_startPosition != null) { _outputVisualMap.Add(GradientVisualProperty.StartPosition, new PropertyValue(_startPosition)); }
+ if (_endPosition != null) { _outputVisualMap.Add(GradientVisualProperty.EndPosition, new PropertyValue(_endPosition)); }
+ if (_center != null) { _outputVisualMap.Add(GradientVisualProperty.Center, new PropertyValue(_center)); }
+ if (_radius != null) { _outputVisualMap.Add(GradientVisualProperty.Radius, new PropertyValue((float)_radius)); }
+ if (_stopOffset != null) { _outputVisualMap.Add(GradientVisualProperty.StopOffset, new PropertyValue(_stopOffset)); }
+ if (_stopColor != null) { _outputVisualMap.Add(GradientVisualProperty.StopColor, new PropertyValue(_stopColor)); }
+ if (_units != null) { _outputVisualMap.Add(GradientVisualProperty.Units, new PropertyValue((int)_units)); }
+ if (_spreadMethod != null) { _outputVisualMap.Add(GradientVisualProperty.SpreadMethod, new PropertyValue((int)_spreadMethod)); }
}
}
/// <summary>
/// A class encapsulating the property map of a mesh visual.
/// </summary>
- public class MeshVisualMap : VisualMap
+ public class MeshVisual : VisualMap
{
- public MeshVisualMap() : base()
+ public MeshVisual() : base()
{
}
- private string _objectURL = "";
- private string _materialtURL = "";
- private string _texturesPath = "";
- private MeshVisualShadingModeValue _shadingMode = MeshVisualShadingModeValue.TexturedWithDetailedSpecularLighting;
- private bool _useMipmapping = true;
- private bool _useSoftNormals = true;
- private Vector3 _lightPosition = null; //default center of screen
+ private string _objectURL = null;
+ private string _materialtURL = null;
+ private string _texturesPath = null;
+ private MeshVisualShadingModeValue? _shadingMode = null;
+ private bool? _useMipmapping = null;
+ private bool? _useSoftNormals = null;
+ private Vector3 _lightPosition = null;
/// <summary>
/// Get or set the location of the ".obj" file.
set
{
_objectURL = value;
+ UpdateVisual();
}
}
set
{
_materialtURL = value;
+ UpdateVisual();
}
}
set
{
_texturesPath = value;
+ UpdateVisual();
}
}
{
get
{
- return _shadingMode;
+ return _shadingMode??(MeshVisualShadingModeValue)(-1);
}
set
{
_shadingMode = value;
+ UpdateVisual();
}
}
{
get
{
- return _useMipmapping;
+ return _useMipmapping??false;
}
set
{
_useMipmapping = value;
+ UpdateVisual();
}
}
{
get
{
- return _useSoftNormals;
+ return _useSoftNormals??false;
}
set
{
_useSoftNormals = value;
+ UpdateVisual();
}
}
set
{
_lightPosition = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_objectURL != "")
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Mesh));
- _outputVisualMap.Add(MeshVisualProperty.ObjectURL, new PropertyValue(_objectURL));
-
- if (_materialtURL != "" && _texturesPath != "")
- {
- _outputVisualMap.Add(MeshVisualProperty.MaterialtURL, new PropertyValue(_materialtURL));
- _outputVisualMap.Add(MeshVisualProperty.TexturesPath, new PropertyValue(_texturesPath));
- }
-
- _outputVisualMap.Add(MeshVisualProperty.ShadingMode, new PropertyValue((int)_shadingMode));
- _outputVisualMap.Add(MeshVisualProperty.UseMipmapping, new PropertyValue(_useMipmapping));
- _outputVisualMap.Add(MeshVisualProperty.UseSoftNormals, new PropertyValue(_useSoftNormals));
-
- if (_lightPosition != null)
- {
- _outputVisualMap.Add(MeshVisualProperty.LightPosition, new PropertyValue(_lightPosition));
- }
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Mesh));
+ if (_objectURL != null) { _outputVisualMap.Add(MeshVisualProperty.ObjectURL, new PropertyValue(_objectURL)); }
+ if (_materialtURL != null) { _outputVisualMap.Add(MeshVisualProperty.MaterialtURL, new PropertyValue(_materialtURL)); }
+ if (_texturesPath != null) { _outputVisualMap.Add(MeshVisualProperty.TexturesPath, new PropertyValue(_texturesPath)); }
+ if (_shadingMode != null) { _outputVisualMap.Add(MeshVisualProperty.ShadingMode, new PropertyValue((int)_shadingMode)); }
+ if (_useMipmapping != null) { _outputVisualMap.Add(MeshVisualProperty.UseMipmapping, new PropertyValue((bool)_useMipmapping)); }
+ if (_useSoftNormals != null) { _outputVisualMap.Add(MeshVisualProperty.UseSoftNormals, new PropertyValue((bool)_useSoftNormals)); }
}
}
/// <summary>
/// A class encapsulating the property map of a primetive visual.
/// </summary>
- public class PrimitiveVisualMap : VisualMap
+ public class PrimitiveVisual : VisualMap
{
- public PrimitiveVisualMap() : base()
+ public PrimitiveVisual() : base()
{
}
- private PrimitiveVisualShapeType _shape = PrimitiveVisualShapeType.Sphere;
- private Color _mixColor = new Color(0.5f, 0.5f, 0.5f, 1.0f);
- private int _slices = 128;
- private int _stacks = 128;
- private float _scaleTopRadius = 1.0f;
- private float _scaleBottomRadius = 1.5f;
- private float _scaleHeight = 3.0f;
- private float _scaleRadius = 1.0f;
- private Vector3 _scaleDimensions = Vector3.One;
- private float _bevelPercentage = 0.0f;
- private float _bevelSmoothness = 0.0f;
- private Vector3 _lightPosition = null; // default ?? center of screen
+ private PrimitiveVisualShapeType? _shape = null;
+ private Color _mixColor = null;
+ private int? _slices = null;
+ private int? _stacks = null;
+ private float? _scaleTopRadius = null;
+ private float? _scaleBottomRadius = null;
+ private float? _scaleHeight = null;
+ private float? _scaleRadius = null;
+ private Vector3 _scaleDimensions = null;
+ private float? _bevelPercentage = null;
+ private float? _bevelSmoothness = null;
+ private Vector3 _lightPosition = null;
/// <summary>
/// Get or set the specific shape to render.<br>
{
get
{
- return _shape;
+ return _shape??(PrimitiveVisualShapeType)(-1);
}
set
{
_shape = value;
+ UpdateVisual();
}
}
set
{
_mixColor = value;
+ UpdateVisual();
}
}
{
get
{
- return _slices;
+ return _slices??(-1);
}
set
{
_slices = value;
+ UpdateVisual();
}
}
{
get
{
- return _stacks;
+ return _stacks??(-1);
}
set
{
_stacks = value;
+ UpdateVisual();
}
}
{
get
{
- return _scaleTopRadius;
+ return _scaleTopRadius ?? (-1.0f);
}
set
{
_scaleTopRadius = value;
+ UpdateVisual();
}
}
{
get
{
- return _scaleBottomRadius;
+ return _scaleBottomRadius ?? (-1.0f);
}
set
{
_scaleBottomRadius = value;
+ UpdateVisual();
}
}
{
get
{
- return _scaleHeight;
+ return _scaleHeight??(-1.0f);
}
set
{
_scaleHeight = value;
+ UpdateVisual();
}
}
{
get
{
- return _scaleRadius;
+ return _scaleRadius ?? (-1.0f);
}
set
{
_scaleRadius = value;
+ UpdateVisual();
}
}
set
{
_scaleDimensions = value;
+ UpdateVisual();
}
}
{
get
{
- return _bevelPercentage;
+ return _bevelPercentage ?? (-1.0f);
}
set
{
_bevelPercentage = value;
+ UpdateVisual();
}
}
{
get
{
- return _bevelSmoothness;
+ return _bevelSmoothness ?? (-1.0f);
}
set
{
_bevelSmoothness = value;
+ UpdateVisual();
}
}
set
{
_lightPosition = value;
+ UpdateVisual();
}
}
{
_outputVisualMap = new PropertyMap(); ;
_outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Primitive));
- _outputVisualMap.Add(PrimitiveVisualProperty.Shape, new PropertyValue((int)_shape));
- _outputVisualMap.Add(PrimitiveVisualProperty.MixColor, new PropertyValue(_mixColor));
- _outputVisualMap.Add(PrimitiveVisualProperty.Slices, new PropertyValue(_slices));
- _outputVisualMap.Add(PrimitiveVisualProperty.Stacks, new PropertyValue(_stacks));
- _outputVisualMap.Add(PrimitiveVisualProperty.ScaleTopRadius, new PropertyValue(_scaleTopRadius));
- _outputVisualMap.Add(PrimitiveVisualProperty.ScaleBottomRadius, new PropertyValue(_scaleBottomRadius));
- _outputVisualMap.Add(PrimitiveVisualProperty.ScaleHeight, new PropertyValue(_scaleHeight));
- _outputVisualMap.Add(PrimitiveVisualProperty.ScaleRadius, new PropertyValue(_scaleRadius));
- _outputVisualMap.Add(PrimitiveVisualProperty.ScaleDimensions, new PropertyValue(_scaleDimensions));
- _outputVisualMap.Add(PrimitiveVisualProperty.BevelPercentage, new PropertyValue(_bevelPercentage));
- _outputVisualMap.Add(PrimitiveVisualProperty.BevelSmoothness, new PropertyValue(_bevelSmoothness));
-
- if (_lightPosition != null)
- {
- _outputVisualMap.Add(PrimitiveVisualProperty.LightPosition, new PropertyValue(_lightPosition));
- }
+ if (_shape != null) { _outputVisualMap.Add(PrimitiveVisualProperty.Shape, new PropertyValue((int)_shape)); }
+ if (_mixColor != null) { _outputVisualMap.Add(PrimitiveVisualProperty.MixColor, new PropertyValue(_mixColor)); }
+ if (_slices != null) { _outputVisualMap.Add(PrimitiveVisualProperty.Slices, new PropertyValue((int)_slices)); }
+ if (_stacks != null) { _outputVisualMap.Add(PrimitiveVisualProperty.Stacks, new PropertyValue((int)_stacks)); }
+ if (_scaleTopRadius != null) { _outputVisualMap.Add(PrimitiveVisualProperty.ScaleTopRadius, new PropertyValue((float)_scaleTopRadius)); }
+ if (_scaleBottomRadius != null) { _outputVisualMap.Add(PrimitiveVisualProperty.ScaleBottomRadius, new PropertyValue((float)_scaleBottomRadius)); }
+ if (_scaleHeight != null) { _outputVisualMap.Add(PrimitiveVisualProperty.ScaleHeight, new PropertyValue((float)_scaleHeight)); }
+ if (_scaleRadius != null) { _outputVisualMap.Add(PrimitiveVisualProperty.ScaleRadius, new PropertyValue((float)_scaleRadius)); }
+ if (_scaleDimensions != null) { _outputVisualMap.Add(PrimitiveVisualProperty.ScaleDimensions, new PropertyValue(_scaleDimensions)); }
+ if (_bevelPercentage != null) { _outputVisualMap.Add(PrimitiveVisualProperty.BevelPercentage, new PropertyValue((float)_bevelPercentage)); }
+ if (_bevelSmoothness != null) { _outputVisualMap.Add(PrimitiveVisualProperty.BevelSmoothness, new PropertyValue((float)_bevelSmoothness)); }
+ if (_lightPosition != null) { _outputVisualMap.Add(PrimitiveVisualProperty.LightPosition, new PropertyValue(_lightPosition)); }
}
}
/// <summary>
/// A class encapsulating the property map of a n-patch image visual.
/// </summary>
- public class NPatchVisualMap : VisualMap
+ public class NPatchVisual : VisualMap
{
- public NPatchVisualMap() : base()
+ public NPatchVisual() : base()
{
}
- private string _url = "";
- private bool _borderOnly = false;
- private Rectangle _border = new Rectangle(0, 0, 0, 0);
+ private string _url = null;
+ private bool? _borderOnly = null;
+ private Rectangle _border = null;
/// <summary>
/// Get or set the URL of the image.
set
{
_url = value;
+ UpdateVisual();
}
}
{
get
{
- return _borderOnly;
+ return _borderOnly ?? false;
}
set
{
_borderOnly = value;
+ UpdateVisual();
}
}
set
{
_border = value;
+ UpdateVisual();
}
}
protected override void ComposingPropertyMap()
{
- if (_url != "")
- {
- _outputVisualMap = new PropertyMap();
- _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.NPatch));
- _outputVisualMap.Add(NpatchImageVisualProperty.URL, new PropertyValue(_url));
- _outputVisualMap.Add(NpatchImageVisualProperty.BorderOnly, new PropertyValue(_borderOnly));
- _outputVisualMap.Add(NpatchImageVisualProperty.Border, new PropertyValue(_border));
- }
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.NPatch));
+ if (_url != null) { _outputVisualMap.Add(NpatchImageVisualProperty.URL, new PropertyValue(_url)); }
+ if (_borderOnly != null) { _outputVisualMap.Add(NpatchImageVisualProperty.BorderOnly, new PropertyValue((bool)_borderOnly)); }
+ if (_border != null) { _outputVisualMap.Add(NpatchImageVisualProperty.Border, new PropertyValue(_border)); }
}
}
}
/// <summary>
- /// This specifies align types.
- /// </summary>
- public enum AlignType
- {
- TopBegin = 0,
- TopCenter,
- TopEnd,
- CenterBegin,
- Center,
- CenterEnd,
- BottomBegin,
- BottomCenter,
- BottomEnd
- }
-
- /// <summary>
/// This specifies all the transform property types.
/// </summary>
public enum VisualTransformPropertyType
Primitive,
Wireframe,
Text,
- NPatch
+ NPatch,
+ SVG,
+ AnimatedImage
}
/// <summary>
public static readonly int ShaderSubdivideGridY = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_Y;
public static readonly int ShaderHints = NDalic.VISUAL_SHADER_HINTS;
}
+
+ /// <summary>
+ /// This specifies Visaul align types.
+ /// </summary>
+ public enum AlignType
+ {
+ TopBegin = 0,
+ TopCenter,
+ TopEnd,
+ CenterBegin,
+ Center,
+ CenterEnd,
+ BottomBegin,
+ BottomCenter,
+ BottomEnd
+ }
}
/// <summary>
public static readonly int Border = NDalic.IMAGE_VISUAL_WRAP_MODE_V + 1;
}
+ /// <summary>
+ /// A class encapsulating the property map of a SVG visual.
+ /// </summary>
+ public class SVGVisual : VisualMap
+ {
+ public SVGVisual() : base()
+ {
+ }
+
+ private string _url = null;
+
+ public string URL
+ {
+ get
+ {
+ return _url;
+ }
+ set
+ {
+ _url = value;
+ UpdateVisual();
+ }
+ }
+
+ protected override void ComposingPropertyMap()
+ {
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.SVG));
+ if (_url != null) { _outputVisualMap.Add(ImageVisualProperty.URL, new PropertyValue(_url)); }
+ }
+ }
+
+ /// <summary>
+ /// A class encapsulating the property map of a Animated Image(AGIF) visual.
+ /// </summary>
+ public class AnimatedImageVisual : VisualMap
+ {
+ public AnimatedImageVisual() : base()
+ {
+ }
+
+ private string _url = null;
+
+ public string URL
+ {
+ get
+ {
+ return _url;
+ }
+ set
+ {
+ _url = value;
+ UpdateVisual();
+ }
+ }
+
+ protected override void ComposingPropertyMap()
+ {
+ _outputVisualMap = new PropertyMap();
+ _outputVisualMap.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.AnimatedImage));
+ if (_url != null) { _outputVisualMap.Add(ImageVisualProperty.URL, new PropertyValue(_url)); }
+ }
+ }
+
+ /// <summary>
+ /// A class encapsulating the property map of a visual transition(Animator).
+ /// </summary>
+ public class AnimatorVisual : VisualMap
+ {
+ public AnimatorVisual() : base()
+ {
+ }
+
+ private string _alphaFunction = null;
+ private int _startTime = 0;
+ private int _endTime = 0;
+ private string _target = null;
+ private string _propertyIndex = null;
+ private object _destinationValue = null;
+
+ public string AlphaFunction
+ {
+ get
+ {
+ return _alphaFunction;
+ }
+ set
+ {
+ _alphaFunction = value;
+ }
+ }
+
+ public int StartTime
+ {
+ get
+ {
+ return _startTime;
+ }
+ set
+ {
+ _startTime = value;
+ }
+ }
+
+ public int EndTime
+ {
+ get
+ {
+ return _endTime;
+ }
+ set
+ {
+ _endTime = value;
+ }
+ }
+
+ public string Target
+ {
+ get
+ {
+ return _target;
+ }
+ set
+ {
+ _target = value;
+ }
+ }
+
+ public string PropertyIndex
+ {
+ get
+ {
+ return _propertyIndex;
+ }
+ set
+ {
+ _propertyIndex = value;
+ }
+ }
+
+ public object DestinationValue
+ {
+ get
+ {
+ return _destinationValue;
+ }
+ set
+ {
+ _destinationValue = value;
+ }
+ }
+
+ protected override void ComposingPropertyMap()
+ {
+ PropertyMap _animator = new PropertyMap();
+ _animator.Add("alphaFunction", new PropertyValue(_alphaFunction));
+
+ PropertyMap _timePeriod = new PropertyMap();
+ _timePeriod.Add("duration", new PropertyValue((_endTime - _startTime) / 1000.0f));
+ _timePeriod.Add("delay", new PropertyValue(_startTime / 1000.0f));
+ _animator.Add("timePeriod", new PropertyValue(_timePeriod));
+
+ string _str1 = _propertyIndex.Substring(0, 1);
+ string _str2 = _propertyIndex.Substring(1);
+ string _str = _str1.ToLower() + _str2;
+ dynamic _obj = (object)_destinationValue;
+
+ PropertyMap _transition = new PropertyMap();
+ _transition.Add("target", new PropertyValue(_target));
+ _transition.Add("property", new PropertyValue(_str));
+ _transition.Add("targetValue", new PropertyValue(_obj));
+ _transition.Add("animator", new PropertyValue(_animator));
+
+ _outputVisualMap = _transition;
+ }
+ }
+
}