Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
TouchViewController.cs
Go to the documentation of this file.
1 // Copyright (c) 2014 Silicon Studio Corp. (http://siliconstudio.co.jp)
2 // This file is distributed under Apache 2.0 License. See LICENSE.md for details.
3 //
4 // TouchViewController.cs
5 //
6 // Authors:
7 // Sebastien Pouliot <sebastien@xamarin.com>
8 //
9 // Copyright 2012 Xamarin Inc.
10 //
11 // Licensed under the Apache License, Version 2.0 (the "License");
12 // you may not use this file except in compliance with the License.
13 // You may obtain a copy of the License at
14 //
15 // http://www.apache.org/licenses/LICENSE-2.0
16 //
17 // Unless required by applicable law or agreed to in writing, software
18 // distributed under the License is distributed on an "AS IS" BASIS,
19 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 // See the License for the specific language governing permissions and
21 // limitations under the License.
22 //
23 
24 using System;
25 using System.Collections.Generic;
26 using System.Drawing;
27 
28 #if XAMCORE_2_0
29 using CoreGraphics;
30 using Foundation;
31 using UIKit;
32 #else
33 using MonoTouch.CoreGraphics;
34 using MonoTouch.Foundation;
35 using MonoTouch.UIKit;
36 #endif
37 
38 using MonoTouch.Dialog;
39 
40 #if !HAVE_NATIVE_TYPES
41 using CGSize = global::System.Drawing.SizeF;
42 #endif
43 
44 namespace SiliconStudio.Paradox.UnitTesting.UI {
45 
46  [CLSCompliant (false)]
47  public partial class TouchViewController : DialogViewController {
48 
49  public TouchViewController (RootElement root) : base (root, true)
50  {
51  Autorotate = true;
52 
53  if (UIDevice.CurrentDevice.CheckSystemVersion (5, 0)) {
54  NavigationItem.RightBarButtonItems = new UIBarButtonItem [] {
55  new UIBarButtonItem (ArrowDown, UIBarButtonItemStyle.Plain, ChangeSort),
56  new UIBarButtonItem (Asterisk, UIBarButtonItemStyle.Plain, ChangeFilter)
57  };
58  }
59 
60  Section testcases = root [0];
61  OriginalCaption = testcases.Caption;
62  Unfiltered = new List<Element> ();
63  foreach (Element e in testcases)
64  Unfiltered.Add (e);
65 
66  CurrentFilter = ResultFilter.All;
67  Filter ();
68  CurrentSortOrder = SortOrder.None;
70  ChangeSort (this, EventArgs.Empty);
71  }
72 
73  // Filter
74 
75  UIBarButtonItem FilterButton {
76  get {
77  return NavigationItem.RightBarButtonItems [1];
78  }
79  }
80 
81  enum ResultFilter {
82  All,
83  Failed,
84  Ignored,
85  Success,
86  }
87 
88  string OriginalCaption { get; set; }
89  List<Element> Unfiltered { get; set; }
90 
91  ResultFilter CurrentFilter { get; set; }
92 
93  void ChangeFilter (object sender, EventArgs e)
94  {
95  switch (CurrentFilter) {
96  case ResultFilter.All:
97  CurrentFilter = ResultFilter.Failed;
98  FilterButton.Image = RemoveSign;
99  break;
100  case ResultFilter.Failed:
101  CurrentFilter = ResultFilter.Ignored;
102  FilterButton.Image = QuestionSign;
103  break;
104  case ResultFilter.Ignored:
105  CurrentFilter = ResultFilter.Success;
106  FilterButton.Image = OkSign;
107  break;
108  case ResultFilter.Success:
109  CurrentFilter = ResultFilter.All;
110  FilterButton.Image = Asterisk;
111  break;
112  }
113  Filter ();
114  }
115 
116  public void Filter ()
117  {
118  Section filtered = new Section ();
119  foreach (TestElement te in Unfiltered) {
120  bool add_element = false;
121  switch (CurrentFilter) {
122  case ResultFilter.All:
123  add_element = true;
124  break;
125  case ResultFilter.Failed:
126  add_element = te.Result.IsFailure ();
127  break;
128  case ResultFilter.Ignored:
129  add_element = te.Result.IsIgnored ();
130  break;
131  case ResultFilter.Success:
132  add_element = te.Result.IsSuccess () || te.Result.IsInconclusive ();
133  break;
134  }
135 
136  if (add_element)
137  filtered.Add (te);
138  }
139  Root.RemoveAt (0);
140  if (CurrentFilter == ResultFilter.All) {
141  filtered.Caption = String.Format ("{0} ({1})", OriginalCaption, Unfiltered.Count);
142  } else {
143  filtered.Caption = String.Format ("{0} ({1} : {2}/{3})", OriginalCaption, CurrentFilter, filtered.Count, Unfiltered.Count);
144  }
145  Root.Insert (0, filtered);
146  ReloadData ();
147  }
148 
149  // Sort
150 
151  UIBarButtonItem SortButton {
152  get {
153  return NavigationItem.RightBarButtonItems [0];
154  }
155  }
156 
157  enum SortOrder {
158  None,
159  Ascending,
160  Descending
161  }
162 
163  SortOrder CurrentSortOrder { get; set; }
164 
165  static ElementComparer Ascending = new ElementComparer (SortOrder.Ascending);
166  static ElementComparer Descending = new ElementComparer (SortOrder.Descending);
167 
168  void ChangeSort (object sender, EventArgs e)
169  {
170  List<Element> list = Root [0].Elements;
171  switch (CurrentSortOrder) {
172  case SortOrder.Ascending:
173  SortButton.Image = ArrowUp;
174  CurrentSortOrder = SortOrder.Descending;
175  list.Sort (Descending);
176  break;
177  default:
178  SortButton.Image = ArrowDown;
179  CurrentSortOrder = SortOrder.Ascending;
180  list.Sort (Ascending);
181  break;
182  }
183  ReloadData ();
184  }
185 
186  class ElementComparer : IComparer <Element> {
187  int order;
188 
189  public ElementComparer (SortOrder sortOrder)
190  {
191  order = sortOrder == SortOrder.Descending ? -1 : 1;
192  }
193 
194  public int Compare (Element x, Element y)
195  {
196  return order * x.Caption.CompareTo (y.Caption);
197  }
198  }
199 
200  // UI
201 
202  static UIImage arrow_up;
203  static UIImage arrow_down;
204  static UIImage ok_sign;
205  static UIImage remove_sign;
206  static UIImage question_sign;
207  static UIImage asterisk;
208 
209  static UIImage ArrowUp {
210  get {
211  if (arrow_up == null)
212  arrow_up = GetAwesomeIcon (icon_arrow_up);
213  return arrow_up;
214  }
215  }
216 
217  static UIImage ArrowDown {
218  get {
219  if (arrow_down == null)
220  arrow_down = GetAwesomeIcon (icon_arrow_down);
221  return arrow_down;
222  }
223  }
224 
225  static UIImage OkSign {
226  get {
227  if (ok_sign == null)
228  ok_sign = GetAwesomeIcon (icon_ok_sign);
229  return ok_sign;
230  }
231  }
232 
233  static UIImage RemoveSign {
234  get {
235  if (remove_sign == null)
236  remove_sign = GetAwesomeIcon (icon_remove_sign);
237  return remove_sign;
238  }
239  }
240 
241  static UIImage QuestionSign {
242  get {
243  if (question_sign == null)
244  question_sign = GetAwesomeIcon (icon_question_sign);
245  return question_sign;
246  }
247  }
248 
249 
250  static UIImage Asterisk {
251  get {
252  if (asterisk == null)
253  asterisk = GetAwesomeIcon (icon_asterisk);
254  return asterisk;
255  }
256  }
257 
258  static UIImage GetAwesomeIcon (Action<CGContext> render)
259  {
260  // 20x20 normal, 40x40 retina
261  // https://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html
262  // http://tirania.org/blog/archive/2010/Jul-20-2.html
263  float size = 20f;
264  UIGraphics.BeginImageContextWithOptions (new CGSize (size, size), false, 0);
265  using (var c = UIGraphics.GetCurrentContext ()) {
266  c.SetFillColor (1.0f, 1.0f, 1.0f, 1.0f);
267  c.SetStrokeColor (1.0f, 1.0f, 1.0f, 1.0f);
268  c.TranslateCTM (3f, size - 3f);
269  c.ScaleCTM (size / 1000, -size / 1000);
270  render (c);
271  }
272  UIImage img = UIGraphics.GetImageFromCurrentImageContext ();
273  UIGraphics.EndImageContext ();
274  return img;
275  }
276 
277  #region generated code
278 
279  static void icon_arrow_up (CGContext c)
280  {
281  c.MoveTo (-0.5f, 375f);
282  c.AddQuadCurveToPoint (-1f, 394f, 13f, 408f);
283  c.AddLineToPoint (342f, 736f);
284  c.AddQuadCurveToPoint (356f, 750f, 375f, 750f);
285  c.AddQuadCurveToPoint (394f, 750f, 408f, 736f);
286  c.AddLineToPoint (736f, 408f);
287  c.AddQuadCurveToPoint (750f, 394f, 750f, 375f);
288  c.AddQuadCurveToPoint (750f, 356f, 736f, 342f);
289  c.AddLineToPoint (687f, 293f);
290  c.AddQuadCurveToPoint (673f, 279f, 654.5f, 279f);
291  c.AddQuadCurveToPoint (636f, 279f, 622f, 293f);
292  c.AddLineToPoint (456f, 458f);
293  c.AddLineToPoint (456f, 46f);
294  c.AddQuadCurveToPoint (456f, 27f, 442.5f, 13.5f);
295  c.AddQuadCurveToPoint (429f, 0f, 410f, 0f);
296  c.AddLineToPoint (340f, 0f);
297  c.AddQuadCurveToPoint (320f, 0f, 307f, 13.5f);
298  c.AddQuadCurveToPoint (294f, 27f, 294f, 46f);
299  c.AddLineToPoint (294f, 458f);
300  c.AddLineToPoint (129f, 293f);
301  c.AddQuadCurveToPoint (115f, 279f, 96f, 279f);
302  c.AddQuadCurveToPoint (77f, 279f, 63f, 293f);
303  c.AddLineToPoint (14f, 342f);
304  c.AddQuadCurveToPoint (0f, 356f, -0.5f, 375f);
305  c.ClosePath ();
306  c.MoveTo (-0.5f, 375f);
307  c.FillPath ();
308  c.StrokePath ();
309  }
310 
311  static void icon_arrow_down (CGContext c)
312  {
313  c.MoveTo (0f, 374f);
314  c.AddQuadCurveToPoint (0f, 393f, 14f, 407f);
315  c.AddLineToPoint (63f, 456f);
316  c.AddQuadCurveToPoint (77f, 470f, 96f, 470f);
317  c.AddQuadCurveToPoint (115f, 470f, 129f, 456f);
318  c.AddLineToPoint (294f, 291f);
319  c.AddLineToPoint (294f, 703f);
320  c.AddQuadCurveToPoint (294f, 722f, 307.5f, 735.5f);
321  c.AddQuadCurveToPoint (321f, 749f, 340f, 749f);
322  c.AddLineToPoint (410f, 749f);
323  c.AddQuadCurveToPoint (430f, 749f, 443f, 735.5f);
324  c.AddQuadCurveToPoint (456f, 722f, 456f, 703f);
325  c.AddLineToPoint (456f, 291f);
326  c.AddLineToPoint (622f, 456f);
327  c.AddQuadCurveToPoint (636f, 470f, 654.5f, 470f);
328  c.AddQuadCurveToPoint (673f, 470f, 687f, 456f);
329  c.AddLineToPoint (737f, 407f);
330  c.AddQuadCurveToPoint (751f, 393f, 751f, 374f);
331  c.AddQuadCurveToPoint (751f, 355f, 737f, 341f);
332  c.AddLineToPoint (408f, 13f);
333  c.AddQuadCurveToPoint (394f, -1f, 375f, -1f);
334  c.AddQuadCurveToPoint (356f, -1f, 342f, 13f);
335  c.AddLineToPoint (14f, 341f);
336  c.AddQuadCurveToPoint (0f, 355f, 0f, 374f);
337  c.ClosePath ();
338  c.MoveTo (0f, 374f);
339  c.FillPath ();
340  c.StrokePath ();
341  }
342 
343  static void icon_remove_sign (CGContext c)
344  {
345  c.MoveTo (0f, 376f);
346  c.AddQuadCurveToPoint (0f, 448f, 27.5f, 517f);
347  c.AddQuadCurveToPoint (55f, 586f, 110f, 641f);
348  c.AddQuadCurveToPoint (165f, 696f, 234f, 723f);
349  c.AddQuadCurveToPoint (303f, 750f, 375f, 750f);
350  c.AddQuadCurveToPoint (447f, 750f, 516f, 723f);
351  c.AddQuadCurveToPoint (585f, 696f, 640f, 641f);
352  c.AddQuadCurveToPoint (695f, 586f, 722.5f, 517f);
353  c.AddQuadCurveToPoint (750f, 448f, 750f, 376f);
354  c.AddQuadCurveToPoint (750f, 304f, 722.5f, 235f);
355  c.AddQuadCurveToPoint (695f, 166f, 640f, 111f);
356  c.AddQuadCurveToPoint (585f, 56f, 516f, 28.5f);
357  c.AddQuadCurveToPoint (447f, 1f, 375f, 1f);
358  c.AddQuadCurveToPoint (303f, 1f, 234f, 28.5f);
359  c.AddQuadCurveToPoint (165f, 56f, 110f, 111f);
360  c.AddQuadCurveToPoint (55f, 166f, 27.5f, 235f);
361  c.AddQuadCurveToPoint (0f, 304f, 0f, 376f);
362  c.ClosePath ();
363  c.MoveTo (0f, 376f);
364  c.MoveTo (185f, 240f);
365  c.AddLineToPoint (240f, 186f);
366  c.AddQuadCurveToPoint (245f, 181f, 251f, 181f);
367  c.AddQuadCurveToPoint (257f, 181f, 262f, 186f);
368  c.AddLineToPoint (376f, 300f);
369  c.AddLineToPoint (479f, 196f);
370  c.AddQuadCurveToPoint (484f, 191f, 490f, 191f);
371  c.AddQuadCurveToPoint (496f, 191f, 501f, 196f);
372  c.AddLineToPoint (554f, 249f);
373  c.AddQuadCurveToPoint (565f, 260f, 554f, 271f);
374  c.AddLineToPoint (450f, 374f);
375  c.AddLineToPoint (565f, 489f);
376  c.AddQuadCurveToPoint (576f, 500f, 565f, 511f);
377  c.AddLineToPoint (510f, 566f);
378  c.AddQuadCurveToPoint (499f, 577f, 488f, 566f);
379  c.AddLineToPoint (374f, 451f);
380  c.AddLineToPoint (270f, 555f);
381  c.AddQuadCurveToPoint (259f, 566f, 248f, 555f);
382  c.AddLineToPoint (196f, 502f);
383  c.AddQuadCurveToPoint (191f, 497f, 191f, 491f);
384  c.AddQuadCurveToPoint (191f, 485f, 196f, 480f);
385  c.AddLineToPoint (299f, 377f);
386  c.AddLineToPoint (185f, 262f);
387  c.AddQuadCurveToPoint (175f, 252f, 185f, 240f);
388  c.ClosePath ();
389  c.MoveTo (185f, 240f);
390  c.FillPath ();
391  c.StrokePath ();
392  }
393 
394  static void icon_ok_sign (CGContext c)
395  {
396  c.MoveTo (0f, 375f);
397  c.AddQuadCurveToPoint (0f, 453f, 29.5f, 521f);
398  c.AddQuadCurveToPoint (59f, 589f, 110f, 640f);
399  c.AddQuadCurveToPoint (161f, 691f, 229f, 720.5f);
400  c.AddQuadCurveToPoint (297f, 750f, 375f, 750f);
401  c.AddQuadCurveToPoint (453f, 750f, 521f, 720.5f);
402  c.AddQuadCurveToPoint (589f, 691f, 640f, 640f);
403  c.AddQuadCurveToPoint (691f, 589f, 720.5f, 521f);
404  c.AddQuadCurveToPoint (750f, 453f, 750f, 375f);
405  c.AddQuadCurveToPoint (750f, 297f, 720.5f, 229f);
406  c.AddQuadCurveToPoint (691f, 161f, 640f, 110f);
407  c.AddQuadCurveToPoint (589f, 59f, 521f, 29.5f);
408  c.AddQuadCurveToPoint (453f, 0f, 375f, 0f);
409  c.AddQuadCurveToPoint (297f, 0f, 229f, 29.5f);
410  c.AddQuadCurveToPoint (161f, 59f, 110f, 110f);
411  c.AddQuadCurveToPoint (59f, 161f, 29.5f, 229f);
412  c.AddQuadCurveToPoint (0f, 297f, 0f, 375f);
413  c.ClosePath ();
414  c.MoveTo (0f, 375f);
415  c.MoveTo (112f, 351.5f);
416  c.AddQuadCurveToPoint (112f, 342f, 119f, 335f);
417  c.AddLineToPoint (269f, 185f);
418  c.AddQuadCurveToPoint (276f, 179f, 287f, 174f);
419  c.AddQuadCurveToPoint (298f, 169f, 308f, 169f);
420  c.AddLineToPoint (333f, 169f);
421  c.AddQuadCurveToPoint (343f, 169f, 354f, 174f);
422  c.AddQuadCurveToPoint (365f, 179f, 372f, 185f);
423  c.AddLineToPoint (631f, 444f);
424  c.AddQuadCurveToPoint (638f, 451f, 638f, 460.5f);
425  c.AddQuadCurveToPoint (638f, 470f, 631f, 476f);
426  c.AddLineToPoint (581f, 526f);
427  c.AddQuadCurveToPoint (575f, 533f, 565.5f, 533f);
428  c.AddQuadCurveToPoint (556f, 533f, 549f, 526f);
429  c.AddLineToPoint (337f, 313f);
430  c.AddQuadCurveToPoint (330f, 306f, 320.5f, 306f);
431  c.AddQuadCurveToPoint (311f, 306f, 305f, 313f);
432  c.AddLineToPoint (201f, 417f);
433  c.AddQuadCurveToPoint (194f, 424f, 184.5f, 424f);
434  c.AddQuadCurveToPoint (175f, 424f, 169f, 417f);
435  c.AddLineToPoint (119f, 368f);
436  c.AddQuadCurveToPoint (112f, 361f, 112f, 351.5f);
437  c.ClosePath ();
438  c.MoveTo (112f, 351.5f);
439  c.FillPath ();
440  c.StrokePath ();
441  }
442 
443  static void icon_question_sign (CGContext c)
444  {
445  c.MoveTo (0f, 375f);
446  c.AddQuadCurveToPoint (0f, 453f, 29.5f, 521f);
447  c.AddQuadCurveToPoint (59f, 589f, 110f, 640f);
448  c.AddQuadCurveToPoint (161f, 691f, 229f, 720.5f);
449  c.AddQuadCurveToPoint (297f, 750f, 375f, 750f);
450  c.AddQuadCurveToPoint (453f, 750f, 521f, 720.5f);
451  c.AddQuadCurveToPoint (589f, 691f, 640f, 640f);
452  c.AddQuadCurveToPoint (691f, 589f, 720.5f, 521f);
453  c.AddQuadCurveToPoint (750f, 453f, 750f, 375f);
454  c.AddQuadCurveToPoint (750f, 297f, 720.5f, 229f);
455  c.AddQuadCurveToPoint (691f, 161f, 640f, 110f);
456  c.AddQuadCurveToPoint (589f, 59f, 521f, 29.5f);
457  c.AddQuadCurveToPoint (453f, 0f, 375f, 0f);
458  c.AddQuadCurveToPoint (297f, 0f, 229f, 29.5f);
459  c.AddQuadCurveToPoint (161f, 59f, 110f, 110f);
460  c.AddQuadCurveToPoint (59f, 161f, 29.5f, 229f);
461  c.AddQuadCurveToPoint (0f, 297f, 0f, 375f);
462  c.ClosePath ();
463  c.MoveTo (0f, 375f);
464  c.MoveTo (250f, 531f);
465  c.AddLineToPoint (294f, 476f);
466  c.AddQuadCurveToPoint (300f, 472f, 304f, 471f);
467  c.AddQuadCurveToPoint (310f, 471f, 314f, 475f);
468  c.AddQuadCurveToPoint (322f, 481f, 332f, 486f);
469  c.AddQuadCurveToPoint (340f, 490f, 350.5f, 493.5f);
470  c.AddQuadCurveToPoint (361f, 497f, 372f, 497f);
471  c.AddQuadCurveToPoint (392f, 497f, 405f, 486.5f);
472  c.AddQuadCurveToPoint (418f, 476f, 418f, 460f);
473  c.AddQuadCurveToPoint (418f, 443f, 406.5f, 429.5f);
474  c.AddQuadCurveToPoint (395f, 416f, 378f, 401f);
475  c.AddQuadCurveToPoint (367f, 392f, 356f, 381.5f);
476  c.AddQuadCurveToPoint (345f, 371f, 336f, 357.5f);
477  c.AddQuadCurveToPoint (327f, 344f, 321f, 327.5f);
478  c.AddQuadCurveToPoint (315f, 311f, 315f, 290f);
479  c.AddLineToPoint (315f, 260f);
480  c.AddQuadCurveToPoint (315f, 255f, 319.5f, 250.5f);
481  c.AddQuadCurveToPoint (324f, 246f, 329f, 246f);
482  c.AddLineToPoint (406f, 246f);
483  c.AddQuadCurveToPoint (412f, 246f, 416f, 250.5f);
484  c.AddQuadCurveToPoint (420f, 255f, 420f, 260f);
485  c.AddLineToPoint (420f, 285f);
486  c.AddQuadCurveToPoint (420f, 303f, 432f, 316f);
487  c.AddQuadCurveToPoint (444f, 329f, 461f, 344f);
488  c.AddQuadCurveToPoint (473f, 354f, 485f, 365.5f);
489  c.AddQuadCurveToPoint (497f, 377f, 506.5f, 392f);
490  c.AddQuadCurveToPoint (516f, 407f, 522.5f, 425f);
491  c.AddQuadCurveToPoint (529f, 443f, 529f, 467f);
492  c.AddQuadCurveToPoint (529f, 499f, 516f, 524f);
493  c.AddQuadCurveToPoint (503f, 549f, 481.5f, 565.5f);
494  c.AddQuadCurveToPoint (460f, 582f, 433f, 590.5f);
495  c.AddQuadCurveToPoint (406f, 599f, 379f, 599f);
496  c.AddQuadCurveToPoint (349f, 599f, 325.5f, 591.5f);
497  c.AddQuadCurveToPoint (302f, 584f, 285.5f, 575f);
498  c.AddQuadCurveToPoint (269f, 566f, 260.5f, 558f);
499  c.AddQuadCurveToPoint (252f, 550f, 251f, 549f);
500  c.AddQuadCurveToPoint (242f, 540f, 250f, 531f);
501  c.ClosePath ();
502  c.MoveTo (250f, 531f);
503  c.MoveTo (315f, 132f);
504  c.AddQuadCurveToPoint (315f, 127f, 319.5f, 122.5f);
505  c.AddQuadCurveToPoint (324f, 118f, 329f, 118f);
506  c.AddLineToPoint (406f, 118f);
507  c.AddQuadCurveToPoint (412f, 118f, 416f, 122.5f);
508  c.AddQuadCurveToPoint (420f, 127f, 420f, 132f);
509  c.AddLineToPoint (420f, 206f);
510  c.AddQuadCurveToPoint (420f, 220f, 406f, 220f);
511  c.AddLineToPoint (329f, 220f);
512  c.AddQuadCurveToPoint (324f, 220f, 319.5f, 216f);
513  c.AddQuadCurveToPoint (315f, 212f, 315f, 206f);
514  c.AddLineToPoint (315f, 132f);
515  c.ClosePath ();
516  c.MoveTo (315f, 132f);
517  c.FillPath ();
518  c.StrokePath ();
519  }
520 
521  static void icon_asterisk (CGContext c)
522  {
523  c.MoveTo (1f, 497f);
524  c.AddQuadCurveToPoint (-4f, 515f, 6f, 532f);
525  c.AddLineToPoint (41f, 593f);
526  c.AddQuadCurveToPoint (51f, 610f, 69.5f, 614.5f);
527  c.AddQuadCurveToPoint (88f, 619f, 105f, 610f);
528  c.AddLineToPoint (267f, 516f);
529  c.AddLineToPoint (267f, 703f);
530  c.AddQuadCurveToPoint (267f, 723f, 280.5f, 736.5f);
531  c.AddQuadCurveToPoint (294f, 750f, 314f, 750f);
532  c.AddLineToPoint (383f, 750f);
533  c.AddQuadCurveToPoint (403f, 750f, 416.5f, 736.5f);
534  c.AddQuadCurveToPoint (430f, 723f, 430f, 704f);
535  c.AddLineToPoint (430f, 516f);
536  c.AddLineToPoint (592f, 610f);
537  c.AddQuadCurveToPoint (609f, 619f, 627.5f, 614.5f);
538  c.AddQuadCurveToPoint (646f, 610f, 656f, 593f);
539  c.AddLineToPoint (690f, 532f);
540  c.AddQuadCurveToPoint (700f, 515f, 695.5f, 497f);
541  c.AddQuadCurveToPoint (691f, 479f, 674f, 469f);
542  c.AddLineToPoint (511f, 375f);
543  c.AddLineToPoint (674f, 281f);
544  c.AddQuadCurveToPoint (691f, 271f, 695.5f, 253f);
545  c.AddQuadCurveToPoint (700f, 235f, 691f, 218f);
546  c.AddLineToPoint (656f, 157f);
547  c.AddQuadCurveToPoint (646f, 140f, 627.5f, 135.5f);
548  c.AddQuadCurveToPoint (609f, 131f, 592f, 140f);
549  c.AddLineToPoint (430f, 234f);
550  c.AddLineToPoint (430f, 47f);
551  c.AddQuadCurveToPoint (430f, 27f, 416.5f, 13.5f);
552  c.AddQuadCurveToPoint (403f, 0f, 383f, 0f);
553  c.AddLineToPoint (314f, 0f);
554  c.AddQuadCurveToPoint (294f, 0f, 280.5f, 13.5f);
555  c.AddQuadCurveToPoint (267f, 27f, 267f, 46f);
556  c.AddLineToPoint (267f, 234f);
557  c.AddLineToPoint (105f, 140f);
558  c.AddQuadCurveToPoint (88f, 130f, 69.5f, 135f);
559  c.AddQuadCurveToPoint (51f, 140f, 41f, 157f);
560  c.AddLineToPoint (6f, 218f);
561  c.AddQuadCurveToPoint (-3f, 235f, 1.5f, 253f);
562  c.AddQuadCurveToPoint (6f, 271f, 23f, 281f);
563  c.AddLineToPoint (186f, 375f);
564  c.AddLineToPoint (23f, 469f);
565  c.AddQuadCurveToPoint (6f, 479f, 1f, 497f);
566  c.ClosePath ();
567  c.MoveTo (1f, 497f);
568  c.FillPath ();
569  c.StrokePath ();
570  }
571 
572  #endregion
573  }
574 }
_In_ size_t _In_ DXGI_FORMAT _In_ size_t _In_ float size_t y
Definition: DirectXTexP.h:191
global::System.Drawing.SizeF CGSize
_In_ size_t _In_ size_t size
Definition: DirectXTexP.h:175