main
1using System;
2using System.Windows.Controls;
3using System.Windows.Media.Imaging;
4using gorilla.utility;
5using solidware.financials.windows.ui.views.icons;
6
7namespace solidware.financials.windows.ui.views
8{
9 static public class MenuItemExtensions
10 {
11 static public MenuItem add(this MenuItem item, string header, Action action)
12 {
13 var menu_item = new MenuItem {Header = header, Command = new SimpleCommand(action)};
14 item.Items.Add(menu_item);
15 return menu_item;
16 }
17
18 static public MenuItem parent(this MenuItem item)
19 {
20 return item.Parent.downcast_to<MenuItem>();
21 }
22
23 static public MenuItem apply_icon(this MenuItem item, UIIcon icon)
24 {
25 var image = new Image();
26 image.Width = 16;
27 image.Height = 16;
28 image.apply_icon(icon);
29 item.Icon = image;
30 return item;
31 }
32
33 static public void apply_icon(this Image image, UIIcon icon)
34 {
35 image.Tag = icon;
36
37 var source = new BitmapImage();
38 source.BeginInit();
39 source.StreamSource = icon.ImageStream();
40 source.EndInit();
41 image.Source = source;
42 }
43 }
44}