1 /*
2 * Copyright 2011, The Haiku Project. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 * Artwork: Michele Frau (a.k.a. zuMi)
7 * Stephan Aßmus <superstippi@gmx.de>
8 */
9
10
11 #include "ToolBarIcons.h"
12
13 #include <new>
14 #include <stdio.h>
15 #include <string.h>
16
17 #include <Bitmap.h>
18 #include <ControlLook.h>
19 #include <IconUtils.h>
20
21
22 static const uint8 kDocumentOpen[] = {
23 0x6e, 0x63, 0x69, 0x66, 0x06, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
24 0x03, 0x00, 0x00, 0x80, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3a,
25 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49,
26 0xc0, 0x00, 0x00, 0xff, 0xea, 0x80, 0xff, 0xff, 0xbb, 0x00, 0x02, 0x00,
27 0x06, 0x02, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00,
28 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff,
29 0xff, 0xd9, 0xd9, 0xff, 0x03, 0xff, 0xc8, 0x00, 0x03, 0x0a, 0x06, 0x24,
30 0x46, 0x46, 0x46, 0x44, 0x24, 0x3c, 0x24, 0x3a, 0x28, 0x26, 0x28, 0x0a,
31 0x04, 0xb4, 0x97, 0x46, 0xb3, 0xcb, 0x36, 0x48, 0x36, 0x46, 0x46, 0x08,
32 0x04, 0x24, 0x34, 0x24, 0x2c, 0x46, 0x2c, 0x46, 0x34, 0x07, 0x0a, 0x00,
33 0x03, 0x00, 0x01, 0x02, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04,
34 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x05,
35 0x01, 0x00, 0x00, 0x0a, 0x02, 0x01, 0x02, 0x10, 0x01, 0x17, 0x83, 0x22,
36 0x04, 0x0a, 0x04, 0x01, 0x02, 0x00, 0x0a, 0x01, 0x01, 0x01, 0x10, 0x01,
37 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x01, 0x00
38 };
39
40
41 static const uint8 kDocumentSaveAs[] = {
42 0x6e, 0x63, 0x69, 0x66, 0x09, 0x04, 0x00, 0x66, 0x05, 0x00, 0x02, 0x00,
43 0x16, 0x02, 0x00, 0x00, 0x00, 0x3a, 0x40, 0x00, 0xc0, 0x00, 0x00, 0x00,
44 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49, 0xe0, 0x00, 0x00, 0xff, 0xff, 0xe6,
45 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
46 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xab,
47 0xff, 0x40, 0x05, 0x80, 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x39,
48 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x46,
49 0x00, 0x00, 0x00, 0xf7, 0xff, 0xcc, 0x03, 0xd9, 0x00, 0x00, 0x03, 0x00,
50 0x00, 0x80, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3a, 0x40, 0x00,
51 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00,
52 0x00, 0xff, 0xff, 0xff, 0xff, 0xe5, 0xe5, 0xff, 0x0c, 0x0a, 0x05, 0x48,
53 0x48, 0x22, 0x48, 0x22, 0xb3, 0xcb, 0x44, 0xb3, 0xcb, 0x48, 0x26, 0x0a,
54 0x04, 0x28, 0x36, 0x42, 0x36, 0x42, 0x48, 0x28, 0x48, 0x0a, 0x04, 0x26,
55 0xb3, 0xcb, 0x2e, 0xb3, 0xcb, 0x2e, 0x30, 0x26, 0x30, 0x0a, 0x04, 0x2e,
56 0xb3, 0xcb, 0x42, 0xb3, 0xcb, 0x42, 0x2e, 0x2e, 0x2e, 0x0a, 0x04, 0x3a,
57 0x24, 0x3e, 0x24, 0x3e, 0x2c, 0x3a, 0x2c, 0x0a, 0x04, 0x2a, 0x44, 0x40,
58 0x44, 0x42, 0x48, 0x28, 0x48, 0x0a, 0x07, 0x22, 0x2c, 0x48, 0x2c, 0x48,
59 0x3e, 0x3c, 0x3e, 0x35, 0x43, 0x2e, 0x3e, 0x22, 0x3e, 0x06, 0x12, 0xfe,
60 0x44, 0xf4, 0x13, 0x01, 0x32, 0x3c, 0x34, 0x3c, 0x34, 0x3c, 0xbb, 0x2b,
61 0x3c, 0x35, 0x3a, 0x35, 0x3b, 0x35, 0x3b, 0x36, 0x3c, 0xbb, 0x91, 0x3c,
62 0x36, 0x3c, 0x38, 0x3a, 0x36, 0x30, 0x38, 0x2e, 0x36, 0x2e, 0x36, 0x2e,
63 0xbb, 0x91, 0x2e, 0x35, 0x30, 0x35, 0x2f, 0x35, 0x2f, 0x34, 0x2e, 0xbb,
64 0x2b, 0x2e, 0x34, 0x2e, 0x32, 0x30, 0x34, 0x3a, 0x32, 0x04, 0x04, 0xfe,
65 0x29, 0x3a, 0x29, 0x34, 0x29, 0x34, 0x29, 0x33, 0x27, 0x32, 0x28, 0x32,
66 0x26, 0x32, 0x25, 0x34, 0x25, 0x33, 0x25, 0x34, 0x04, 0x05, 0xfe, 0x00,
67 0x29, 0x38, 0x26, 0x39, 0x27, 0x39, 0xb4, 0xf4, 0x39, 0x25, 0x37, 0x25,
68 0x38, 0x25, 0x36, 0x27, 0x35, 0x26, 0x35, 0x27, 0x35, 0x29, 0x04, 0x05,
69 0xfe, 0x00, 0x2d, 0x38, 0x2f, 0x39, 0x2e, 0x39, 0x30, 0x39, 0x31, 0x37,
70 0x31, 0x38, 0x31, 0x36, 0x2f, 0x35, 0x30, 0x35, 0x2f, 0x35, 0x2d, 0x08,
71 0x02, 0x2d, 0x3a, 0x2d, 0x30, 0x0e, 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22,
72 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01,
73 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x00, 0x00, 0x0a, 0x01, 0x01,
74 0x01, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x01, 0x00,
75 0x0a, 0x04, 0x01, 0x02, 0x00, 0x0a, 0x01, 0x01, 0x03, 0x10, 0x01, 0x17,
76 0x83, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x03, 0x00, 0x0a, 0x01, 0x01, 0x04,
77 0x00, 0x0a, 0x06, 0x01, 0x05, 0x00, 0x0a, 0x07, 0x01, 0x06, 0x10, 0x01,
78 0x17, 0x84, 0x22, 0x04, 0x0a, 0x08, 0x01, 0x06, 0x00, 0x0a, 0x07, 0x01,
79 0x07, 0x00, 0x0a, 0x01, 0x04, 0x08, 0x09, 0x0b, 0x0a, 0x10, 0x01, 0x17,
80 0x82, 0x00, 0x04
81 };
82
83
84 static const uint8 kDocumentSave[] = {
85 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x05, 0x00, 0x02, 0x00,
86 0x16, 0x02, 0x00, 0x00, 0x00, 0x3a, 0x40, 0x00, 0xc0, 0x00, 0x00, 0x00,
87 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49, 0xe0, 0x00, 0x00, 0xff, 0xff, 0xe6,
88 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
89 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xab,
90 0xff, 0x40, 0x05, 0x80, 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x39,
91 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x46,
92 0x00, 0x00, 0x00, 0xf7, 0xff, 0xcc, 0x03, 0xd9, 0x00, 0x00, 0x06, 0x0a,
93 0x05, 0x48, 0x48, 0x22, 0x48, 0x22, 0xb3, 0xcb, 0x44, 0xb3, 0xcb, 0x48,
94 0x26, 0x0a, 0x04, 0x28, 0x36, 0x42, 0x36, 0x42, 0x48, 0x28, 0x48, 0x0a,
95 0x04, 0x26, 0xb3, 0xcb, 0x2e, 0xb3, 0xcb, 0x2e, 0x30, 0x26, 0x30, 0x0a,
96 0x04, 0x2e, 0xb3, 0xcb, 0x42, 0xb3, 0xcb, 0x42, 0x2e, 0x2e, 0x2e, 0x0a,
97 0x04, 0x3a, 0x24, 0x3e, 0x24, 0x3e, 0x2c, 0x3a, 0x2c, 0x0a, 0x04, 0x2a,
98 0x44, 0x40, 0x44, 0x42, 0x48, 0x28, 0x48, 0x0a, 0x0a, 0x00, 0x01, 0x00,
99 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00,
100 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x00, 0x00, 0x0a,
101 0x01, 0x01, 0x01, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01,
102 0x01, 0x00, 0x0a, 0x04, 0x01, 0x02, 0x00, 0x0a, 0x01, 0x01, 0x03, 0x10,
103 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x03, 0x00, 0x0a, 0x01,
104 0x01, 0x04, 0x00, 0x0a, 0x06, 0x01, 0x05, 0x00
105 };
106
107
108 static const uint8 kDrawRectangularSelection[] = {
109 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x05, 0x54, 0x05, 0xff,
110 0x02, 0x08, 0x02, 0x25, 0x23, 0x23, 0x23, 0x08, 0x02, 0x23, 0x25, 0x23,
111 0x23, 0x24, 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x86,
112 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x86, 0x22, 0x04,
113 0x0a, 0x02, 0x01, 0x00, 0x10, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
114 0x01, 0x00, 0x30, 0x2e, 0x22, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
115 0x01, 0x00, 0x30, 0x2c, 0x20, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
116 0x01, 0x00, 0x30, 0x2c, 0x20, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
117 0x01, 0x00, 0x30, 0x3a, 0x22, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
118 0x01, 0x00, 0x30, 0x38, 0x20, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
119 0x01, 0x00, 0x30, 0x38, 0x20, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
120 0x01, 0x00, 0x30, 0x2c, 0x46, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
121 0x01, 0x00, 0x30, 0x2a, 0x44, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
122 0x01, 0x00, 0x30, 0x2a, 0x44, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
123 0x01, 0x00, 0x30, 0x38, 0x46, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
124 0x01, 0x00, 0x30, 0x36, 0x44, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
125 0x01, 0x00, 0x30, 0x36, 0x44, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
126 0x01, 0x00, 0x30, 0x44, 0x46, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
127 0x01, 0x00, 0x30, 0x42, 0x44, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
128 0x01, 0x00, 0x30, 0x42, 0x44, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
129 0x01, 0x01, 0x30, 0x22, 0x2c, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
130 0x01, 0x01, 0x30, 0x20, 0x2a, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
131 0x01, 0x01, 0x30, 0x20, 0x2a, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
132 0x01, 0x01, 0x30, 0x22, 0x38, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
133 0x01, 0x01, 0x30, 0x20, 0x36, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
134 0x01, 0x01, 0x30, 0x20, 0x36, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
135 0x01, 0x01, 0x30, 0x22, 0x44, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
136 0x01, 0x01, 0x30, 0x20, 0x42, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
137 0x01, 0x01, 0x30, 0x20, 0x42, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
138 0x01, 0x01, 0x30, 0x46, 0x22, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
139 0x01, 0x01, 0x30, 0x44, 0x20, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
140 0x01, 0x01, 0x30, 0x44, 0x20, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
141 0x01, 0x01, 0x30, 0x46, 0x2e, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
142 0x01, 0x01, 0x30, 0x44, 0x2c, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
143 0x01, 0x01, 0x30, 0x44, 0x2c, 0x01, 0x17, 0x82, 0x22, 0x04, 0x0a, 0x00,
144 0x01, 0x01, 0x30, 0x46, 0x3a, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x01,
145 0x01, 0x01, 0x30, 0x44, 0x38, 0x01, 0x17, 0x86, 0x22, 0x04, 0x0a, 0x02,
146 0x01, 0x01, 0x30, 0x44, 0x38, 0x01, 0x17, 0x82, 0x22, 0x04
147 };
148
149
150 static const uint8 kEditCopy[] = {
151 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x03, 0xd9, 0x91, 0x00,
152 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3b, 0xc0, 0x00, 0xc0, 0x00,
153 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49, 0x20, 0x00, 0x00, 0xff,
154 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x03, 0x00, 0x00, 0x80, 0x02, 0x00,
155 0x06, 0x02, 0x00, 0x00, 0x00, 0x3b, 0xc0, 0x00, 0xc0, 0x00, 0x00, 0x00,
156 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49, 0x20, 0x00, 0x00, 0xff, 0xff, 0xff,
157 0xff, 0xd9, 0xd9, 0xff, 0x03, 0x0a, 0x04, 0x30, 0x2a, 0x48, 0x2a, 0x48,
158 0x48, 0x30, 0x48, 0x0a, 0x04, 0x34, 0x2e, 0x44, 0x2e, 0x44, 0x30, 0x34,
159 0x30, 0x0a, 0x04, 0x34, 0x34, 0x42, 0x34, 0x42, 0x36, 0x34, 0x36, 0x0a,
160 0x0a, 0x00, 0x01, 0x00, 0x30, 0x14, 0x1a, 0x01, 0x17, 0x83, 0x22, 0x04,
161 0x0a, 0x01, 0x01, 0x00, 0x30, 0x12, 0x18, 0x01, 0x17, 0x83, 0x22, 0x04,
162 0x0a, 0x02, 0x01, 0x00, 0x20, 0x12, 0x18, 0x0a, 0x01, 0x02, 0x02, 0x01,
163 0x20, 0x12, 0x18, 0x0a, 0x01, 0x02, 0x02, 0x01, 0x20, 0x12, 0x24, 0x0a,
164 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a,
165 0x03, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x04, 0x01,
166 0x00, 0x00, 0x0a, 0x03, 0x02, 0x01, 0x02, 0x00, 0x0a, 0x03, 0x02, 0x02,
167 0x01, 0x20, 0x20, 0x2c
168 };
169
170
171 static const uint8 kEditCut[] = {
172 0x6e, 0x63, 0x69, 0x66, 0x06, 0x05, 0x54, 0x03, 0x80, 0x00, 0x00, 0x02,
173 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0xc0, 0x00, 0x00,
174 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x47, 0x7f, 0xff, 0x00, 0xe6, 0xea,
175 0xf2, 0xff, 0xce, 0xd2, 0xd9, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00,
176 0x3a, 0x40, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00,
177 0x4a, 0x30, 0x00, 0x00, 0xff, 0xab, 0xab, 0xff, 0xd9, 0x00, 0x00, 0x05,
178 0xff, 0x04, 0x00, 0x66, 0x04, 0x06, 0x05, 0x4b, 0x00, 0x32, 0x24, 0x32,
179 0x26, 0x32, 0xb3, 0xcb, 0x30, 0x1f, 0x2e, 0x38, 0x32, 0x02, 0x04, 0x28,
180 0x3c, 0xb7, 0x11, 0x3c, 0xb5, 0x4e, 0x3c, 0x24, 0x42, 0x24, 0xbf, 0x3a,
181 0x24, 0xc1, 0xdd, 0x28, 0x48, 0xb5, 0x4e, 0x48, 0xb7, 0x11, 0x48, 0x2c,
182 0x42, 0x2c, 0xc1, 0xdd, 0x2c, 0xbf, 0x3a, 0x02, 0x04, 0x32, 0x38, 0x32,
183 0x38, 0x32, 0x3c, 0x2e, 0x42, 0x2e, 0x3e, 0x2e, 0x42, 0x2a, 0x42, 0x2a,
184 0x42, 0x2a, 0x3e, 0x2e, 0x38, 0x2e, 0x3c, 0x2e, 0x38, 0x0a, 0x04, 0x30,
185 0x32, 0x2e, 0x34, 0x2e, 0x1f, 0x30, 0x1f, 0x15, 0x0a, 0x05, 0x01, 0x00,
186 0x12, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9,
187 0x71, 0x47, 0x97, 0xb6, 0xba, 0xfe, 0xcc, 0x01, 0x17, 0x84, 0x02, 0x04,
188 0x0a, 0x05, 0x01, 0x01, 0x12, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc,
189 0x93, 0x91, 0x3f, 0xc9, 0x71, 0x47, 0x97, 0xb6, 0xba, 0xfe, 0xcc, 0x01,
190 0x17, 0x88, 0x00, 0x04, 0x0a, 0x05, 0x01, 0x02, 0x12, 0x3f, 0xc9, 0x71,
191 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9, 0x71, 0x47, 0x97, 0xb6,
192 0xba, 0xfe, 0xcc, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x00, 0x01, 0x00,
193 0x12, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9,
194 0x71, 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x01, 0x17, 0x84, 0x02, 0x04,
195 0x0a, 0x01, 0x01, 0x01, 0x12, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc,
196 0x93, 0x91, 0x3f, 0xc9, 0x71, 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x01,
197 0x17, 0x88, 0x00, 0x04, 0x0a, 0x01, 0x01, 0x02, 0x12, 0x3f, 0xc9, 0x71,
198 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9, 0x71, 0x47, 0x17, 0xb6,
199 0xc2, 0x2f, 0xec, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x02, 0x01, 0x00,
200 0x02, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9,
201 0x71, 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x0a, 0x03, 0x01, 0x01, 0x12,
202 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91, 0x3f, 0xc9, 0x71,
203 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x01, 0x17, 0x83, 0x00, 0x04, 0x0a,
204 0x03, 0x01, 0x02, 0x02, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93,
205 0x91, 0x3f, 0xc9, 0x71, 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x0a, 0x04,
206 0x01, 0x03, 0x02, 0x3f, 0xc9, 0x71, 0x3c, 0x93, 0x91, 0xbc, 0x93, 0x91,
207 0x3f, 0xc9, 0x71, 0x47, 0x17, 0xb6, 0xc2, 0x2f, 0xec, 0x0a, 0x00, 0x00,
208 0x20, 0xb4, 0xe4, 0xb2, 0xf3, 0x0a, 0x05, 0x01, 0x00, 0x12, 0xbf, 0xc9,
209 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x64,
210 0x70, 0xba, 0xf9, 0xaa, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x05, 0x01,
211 0x01, 0x12, 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f,
212 0xc9, 0x95, 0x49, 0x64, 0x70, 0xba, 0xf9, 0xaa, 0x01, 0x17, 0x88, 0x00,
213 0x04, 0x0a, 0x05, 0x01, 0x02, 0x12, 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1,
214 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x64, 0x70, 0xba, 0xf9, 0xaa,
215 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x00, 0x01, 0x00, 0x12, 0xbf, 0xc9,
216 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x24,
217 0x70, 0xc2, 0x2f, 0x9a, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x01, 0x01,
218 0x01, 0x12, 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f,
219 0xc9, 0x95, 0x49, 0x24, 0x70, 0xc2, 0x2f, 0x9a, 0x01, 0x17, 0x88, 0x00,
220 0x04, 0x0a, 0x01, 0x01, 0x02, 0x12, 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1,
221 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x24, 0x70, 0xc2, 0x2f, 0x9a,
222 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x02, 0x01, 0x00, 0x02, 0xbf, 0xc9,
223 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x24,
224 0x70, 0xc2, 0x2f, 0x9a, 0x0a, 0x03, 0x01, 0x01, 0x12, 0xbf, 0xc9, 0x85,
225 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95, 0x49, 0x24, 0x70,
226 0xc2, 0x2f, 0x9a, 0x01, 0x17, 0x83, 0x00, 0x04, 0x0a, 0x03, 0x01, 0x02,
227 0x02, 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9,
228 0x95, 0x49, 0x24, 0x70, 0xc2, 0x2f, 0x9a, 0x0a, 0x04, 0x01, 0x03, 0x02,
229 0xbf, 0xc9, 0x85, 0x3c, 0x92, 0xb1, 0x3c, 0x92, 0xbb, 0x3f, 0xc9, 0x95,
230 0x49, 0x24, 0x70, 0xc2, 0x2f, 0x9a
231 };
232
233
234 const unsigned char kEditDelete[] = {
235 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0x80, 0x00, 0x00,
236 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x20, 0x00, 0xc0, 0x00,
237 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xe0, 0x00, 0x00, 0xff,
238 0xab, 0xab, 0xff, 0xd9, 0x00, 0x00, 0x01, 0x0a, 0x0c, 0x48, 0x2a, 0x40,
239 0x22, 0x35, 0x2d, 0x2a, 0x22, 0x22, 0x2a, 0x2d, 0x35, 0x22, 0x40, 0x2a,
240 0x48, 0x35, 0x3d, 0x40, 0x48, 0x48, 0x40, 0x3d, 0x35, 0x03, 0x0a, 0x00,
241 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01,
242 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x00,
243 0x00
244 };
245
246
247 static const uint8 kEditTrash[] = {
248 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x05, 0x00, 0x03, 0x08,
249 0x59, 0x3e, 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00,
250 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x44, 0x80, 0x00,
251 0x00, 0x80, 0xff, 0x28, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3b,
252 0xc0, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49,
253 0x20, 0x00, 0x00, 0x73, 0xe5, 0xbe, 0xff, 0x11, 0xb2, 0x7b, 0x02, 0x0a,
254 0x04, 0x42, 0x48, 0x46, 0x2a, 0x24, 0x2a, 0x28, 0x48, 0x0a, 0x04, 0x48,
255 0x2a, 0x48, 0x22, 0x22, 0x22, 0x22, 0x2a, 0x05, 0x0a, 0x00, 0x02, 0x00,
256 0x01, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01, 0x01,
257 0x01, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x00, 0x10,
258 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x01, 0x00, 0x0a, 0x04,
259 0x01, 0x00, 0x00
260 };
261
262
263 static const uint8 kGoDown[] = {
264 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
265 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
266 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xff,
267 0xff, 0x80, 0xff, 0xff, 0xd5, 0x00, 0x01, 0x0a, 0x07, 0x35, 0x48, 0x22,
268 0x34, 0x2c, 0x34, 0x2c, 0xb3, 0xcb, 0x3e, 0xb3, 0xcb, 0x3e, 0x34, 0x48,
269 0x34, 0x03, 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83,
270 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04,
271 0x0a, 0x02, 0x01, 0x00, 0x00
272 };
273
274
275 const unsigned char kGoNext[] = {
276 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0x00, 0x59, 0x00,
277 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
278 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0x80,
279 0xff, 0x80, 0xff, 0x00, 0xb3, 0x00, 0x01, 0x0a, 0x07, 0x48, 0x35, 0x34,
280 0x48, 0x34, 0x3e, 0x22, 0x3e, 0x22, 0x2c, 0x34, 0x2c, 0x34, 0x22, 0x03,
281 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04,
282 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02,
283 0x01, 0x00, 0x00
284 };
285
286
287 const unsigned char kGoPrevious[] = {
288 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0x00, 0x59, 0x00,
289 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
290 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0x80,
291 0xff, 0x80, 0xff, 0x00, 0xb3, 0x00, 0x01, 0x0a, 0x07, 0x22, 0x35, 0x36,
292 0x22, 0x36, 0x2c, 0x48, 0x2c, 0x48, 0x3e, 0x36, 0x3e, 0x36, 0x48, 0x03,
293 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04,
294 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02,
295 0x01, 0x00, 0x00
296 };
297
298
299 static const uint8 kGoUp[] = {
300 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
301 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
302 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xff,
303 0xff, 0x80, 0xff, 0xff, 0xd5, 0x00, 0x01, 0x0a, 0x07, 0x35, 0x22, 0x48,
304 0x36, 0x3e, 0x36, 0x3e, 0x48, 0x2c, 0x48, 0x2c, 0x36, 0x22, 0x36, 0x03,
305 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04,
306 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02,
307 0x01, 0x00, 0x00
308 };
309
310
311 const unsigned char kMediaMovieLibraryR4[] = {
312 0x6e, 0x63, 0x69, 0x66, 0x06, 0x05, 0x00, 0x02, 0x00, 0x16, 0x02, 0x00,
313 0x00, 0x00, 0x3a, 0x40, 0x08, 0xc0, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4b,
314 0xff, 0xf9, 0x49, 0xe0, 0x04, 0x00, 0x82, 0xff, 0x29, 0x02, 0x00, 0x16,
315 0x02, 0x00, 0x00, 0x00, 0x39, 0x80, 0x10, 0xc0, 0x00, 0x01, 0x00, 0x00,
316 0x00, 0x4b, 0xff, 0xfd, 0x49, 0xe0, 0x04, 0x00, 0x82, 0xff, 0x29, 0x05,
317 0x54, 0x02, 0x00, 0x16, 0x02, 0x00, 0x00, 0x00, 0x3a, 0x40, 0x00, 0xc0,
318 0x00, 0x00, 0x00, 0x00, 0x00, 0x4b, 0xff, 0xfb, 0x46, 0xc0, 0x00, 0x00,
319 0xff, 0xff, 0xe6, 0x04, 0x00, 0x66, 0x09, 0x0a, 0x04, 0x28, 0x36, 0x42,
320 0x36, 0x42, 0x48, 0x28, 0x48, 0x0a, 0x04, 0x22, 0x38, 0x22, 0x46, 0x28,
321 0x42, 0x28, 0x3c, 0x02, 0x04, 0x3f, 0x22, 0xc1, 0x54, 0x22, 0xbd, 0x5f,
322 0x22, 0x36, 0x2b, 0x36, 0xb5, 0x67, 0x36, 0xb9, 0x5c, 0x3f, 0x34, 0xbd,
323 0x5f, 0x34, 0xc1, 0x54, 0x34, 0x48, 0x2b, 0x48, 0xb9, 0x5c, 0x48, 0xb5,
324 0x67, 0x06, 0x04, 0xef, 0x46, 0x2b, 0x46, 0xb7, 0x04, 0x46, 0xb7, 0xbf,
325 0xc1, 0xef, 0xb8, 0x6a, 0xc2, 0x10, 0xb8, 0x18, 0xc1, 0xef, 0xb8, 0x6a,
326 0x41, 0x2b, 0xc1, 0xf0, 0xb6, 0x59, 0xc1, 0xf0, 0xb6, 0x59, 0xc2, 0x10,
327 0xb6, 0xab, 0x06, 0x03, 0x3b, 0xc1, 0x88, 0xb5, 0xa9, 0xc1, 0x19, 0xb5,
328 0x1d, 0xc1, 0x88, 0xb5, 0xa9, 0x40, 0xb6, 0xb1, 0x40, 0xb4, 0xa2, 0x40,
329 0xb4, 0xa2, 0xc0, 0x79, 0xb4, 0xbc, 0x06, 0x03, 0x37, 0x3e, 0xb4, 0xa2,
330 0xbe, 0x3a, 0xb4, 0xbc, 0x3e, 0xb4, 0xa2, 0xb6, 0xb1, 0xbd, 0x2b, 0xb5,
331 0xa9, 0xbd, 0x2b, 0xb5, 0xa9, 0xbd, 0x9a, 0xb5, 0x1d, 0x06, 0x04, 0xfb,
332 0xbc, 0xc4, 0xb6, 0x59, 0xbc, 0xa3, 0xb6, 0xab, 0xbc, 0xc4, 0xb6, 0x59,
333 0x3d, 0x2b, 0xbc, 0xc3, 0xb8, 0x6a, 0xbc, 0xc3, 0xb8, 0x6a, 0xbc, 0xa3,
334 0xb8, 0x18, 0x38, 0x2b, 0x38, 0xb7, 0xbf, 0x38, 0xb7, 0x04, 0x06, 0x03,
335 0x3b, 0xbd, 0x2b, 0xb9, 0x1a, 0xbd, 0x9a, 0xb9, 0xa6, 0xbd, 0x2b, 0xb9,
336 0x1a, 0x3e, 0xb8, 0x12, 0x3e, 0xba, 0x21, 0x3e, 0xba, 0x21, 0xbe, 0x3a,
337 0xba, 0x06, 0x06, 0x03, 0x37, 0x40, 0xba, 0x21, 0xc0, 0x79, 0xba, 0x06,
338 0x40, 0xba, 0x21, 0xb8, 0x12, 0xc1, 0x88, 0xb9, 0x1a, 0xc1, 0x88, 0xb9,
339 0x1a, 0xc1, 0x19, 0xb9, 0xa6, 0x09, 0x0a, 0x05, 0x03, 0x00, 0x01, 0x02,
340 0x30, 0x22, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x02,
341 0x30, 0x0e, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x00, 0x02, 0x00,
342 0x01, 0x10, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x00,
343 0x0a, 0x02, 0x01, 0x01, 0x00, 0x0a, 0x03, 0x07, 0x08, 0x07, 0x06, 0x05,
344 0x04, 0x03, 0x02, 0x10, 0x01, 0x17, 0x83, 0x00, 0x04, 0x0a, 0x04, 0x07,
345 0x02, 0x03, 0x07, 0x08, 0x05, 0x06, 0x04, 0x00, 0x0a, 0x03, 0x07, 0x08,
346 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x30, 0x0c, 0x20, 0x01, 0x17, 0x83,
347 0x00, 0x04, 0x0a, 0x04, 0x07, 0x02, 0x03, 0x07, 0x08, 0x05, 0x06, 0x04,
348 0x20, 0x0c, 0x20
349 };
350
351
352 const unsigned char kMediaPlaybackStartEnabled[] = {
353 0x6e, 0x63, 0x69, 0x66, 0x03, 0x04, 0x00, 0x66, 0x03, 0x00, 0x59, 0x00,
354 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00,
355 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0x80,
356 0xff, 0x80, 0xff, 0x00, 0xb2, 0x00, 0x01, 0x0a, 0x03, 0x46, 0x35, 0x24,
357 0xb3, 0xcb, 0x24, 0x48, 0x03, 0x0a, 0x00, 0x01, 0x00, 0x30, 0x22, 0x22,
358 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17,
359 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x00, 0x00
360 };
361
362
363 static const uint8 kViewFullScreen[] = {
364 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
365 0x03, 0xff, 0xd4, 0x00, 0x02, 0x02, 0x06, 0x02, 0x3b, 0x00, 0x00, 0x00,
366 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0xc0, 0x00, 0x48, 0xc0, 0x00, 0x48,
367 0xe0, 0x00, 0xab, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xe1, 0xdc, 0x05, 0x54,
368 0x02, 0x02, 0x06, 0x02, 0xb9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
369 0x00, 0xb9, 0x00, 0x00, 0x46, 0x00, 0x00, 0x46, 0x00, 0x00, 0xff, 0x80,
370 0xaa, 0xff, 0x00, 0x00, 0x47, 0xd9, 0x03, 0x00, 0x2a, 0x80, 0x03, 0x0a,
371 0x04, 0x2a, 0x2c, 0x2a, 0x28, 0x34, 0x28, 0x34, 0x2c, 0x0a, 0x04, 0x42,
372 0x42, 0x2a, 0x42, 0x2a, 0x2c, 0x42, 0x2c, 0x0a, 0x03, 0x22, 0x22, 0x2c,
373 0x22, 0x22, 0x2c, 0x0d, 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22,
374 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x04, 0x01, 0x01, 0x10, 0x01, 0x17,
375 0x84, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22,
376 0x04, 0x0a, 0x02, 0x01, 0x00, 0x00, 0x0a, 0x03, 0x01, 0x01, 0x00, 0x0a,
377 0x06, 0x01, 0x02, 0x12, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
378 0x00, 0xc0, 0x00, 0x00, 0x4a, 0xc0, 0x00, 0x4a, 0xc0, 0x00, 0x01, 0x17,
379 0x84, 0x22, 0x04, 0x0a, 0x06, 0x01, 0x02, 0x12, 0x00, 0x00, 0x00, 0x40,
380 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4a, 0xc0, 0x00, 0x37,
381 0x6c, 0x80, 0x01, 0x17, 0x84, 0x22, 0x04, 0x0a, 0x06, 0x01, 0x02, 0x30,
382 0xb3, 0x05, 0xb3, 0x05, 0x01, 0x17, 0x84, 0x22, 0x04, 0x0a, 0x06, 0x01,
383 0x02, 0x12, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
384 0x00, 0x00, 0x37, 0x6c, 0x89, 0x4a, 0xbf, 0xff, 0x01, 0x17, 0x84, 0x22,
385 0x04, 0x0a, 0x05, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00,
386 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x61, 0xfd, 0x4a, 0xc0, 0x00,
387 0x0a, 0x05, 0x01, 0x02, 0x00, 0x0a, 0x05, 0x01, 0x02, 0x02, 0x00, 0x00,
388 0x00, 0x40, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4a, 0xc0,
389 0x00, 0x00, 0x00, 0x00, 0x0a, 0x05, 0x01, 0x02, 0x02, 0xc0, 0x00, 0x00,
390 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x4a, 0xc0, 0x00,
391 0x4a, 0xc0, 0x00
392 };
393
394
395 static const uint8 kViewWindowed[] = {
396 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
397 0x03, 0xff, 0xd4, 0x00, 0x05, 0x54, 0x02, 0x02, 0x06, 0x02, 0x3b, 0x80,
398 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x48, 0x00,
399 0x00, 0x48, 0x40, 0x00, 0xb8, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xe1, 0xdc,
400 0x03, 0x00, 0x40, 0x80, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x39,
401 0x80, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4b, 0xe0, 0x00, 0x47,
402 0x40, 0x00, 0x00, 0xab, 0xd5, 0xff, 0xff, 0x00, 0x6c, 0xd9, 0x03, 0x0a,
403 0x04, 0x22, 0x26, 0x22, 0x22, 0x2e, 0x22, 0x2e, 0x26, 0x0a, 0x04, 0x3e,
404 0x3c, 0x22, 0x3c, 0x22, 0x26, 0x3e, 0x26, 0x0a, 0x07, 0x46, 0x2e, 0x3c,
405 0x2e, 0x3c, 0x24, 0x3f, 0x27, 0x44, 0x22, 0x48, 0x26, 0x43, 0x2b, 0x0b,
406 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x26, 0x26, 0x01, 0x17, 0x84, 0x22,
407 0x04, 0x0a, 0x03, 0x01, 0x01, 0x30, 0x24, 0x24, 0x01, 0x17, 0x84, 0x22,
408 0x04, 0x0a, 0x01, 0x01, 0x00, 0x30, 0x24, 0x24, 0x01, 0x17, 0x84, 0x22,
409 0x04, 0x0a, 0x02, 0x01, 0x00, 0x20, 0x24, 0x24, 0x0a, 0x04, 0x01, 0x01,
410 0x20, 0x24, 0x24, 0x0a, 0x00, 0x01, 0x02, 0x30, 0x22, 0x22, 0x01, 0x17,
411 0x84, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x02, 0x10, 0x01, 0x17, 0x84, 0x22,
412 0x04, 0x0a, 0x06, 0x01, 0x02, 0x00, 0x0a, 0x00, 0x01, 0x02, 0x12, 0xc0,
413 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x4a,
414 0xbe, 0xe8, 0x4a, 0xc1, 0x17, 0x01, 0x17, 0x84, 0x22, 0x04, 0x0a, 0x05,
415 0x01, 0x02, 0x12, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
416 0xc0, 0x00, 0x00, 0x4a, 0x9e, 0xe8, 0x4a, 0xa1, 0x17, 0x01, 0x17, 0x84,
417 0x22, 0x04, 0x0a, 0x06, 0x01, 0x02, 0x02, 0xc0, 0x00, 0x00, 0x00, 0x00,
418 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x4a, 0x9e, 0xe8, 0x4a, 0xa1,
419 0x17
420 };
421
422
423 static const uint8 kZoomFitBest[] = {
424 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x05, 0x54, 0x02, 0x00,
425 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x80, 0x00, 0xc0, 0x00, 0x00, 0x00,
426 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0x80, 0x00, 0x00, 0xff, 0xff, 0xe5,
427 0x03, 0x20, 0x59, 0xce, 0x02, 0x01, 0x06, 0x02, 0x3a, 0x80, 0x00, 0x00,
428 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x80, 0x00, 0x47, 0xbf, 0xff, 0x47,
429 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xbd, 0xea, 0xfa, 0x04, 0x08,
430 0x02, 0x46, 0x46, 0x3f, 0x3f, 0x02, 0x04, 0x40, 0x32, 0x40, 0xbd, 0x40,
431 0x40, 0xb7, 0x17, 0x32, 0x24, 0xbd, 0x40, 0x24, 0xb7, 0x17, 0x24, 0x24,
432 0x32, 0x24, 0xb7, 0x17, 0x24, 0xbd, 0x40, 0x32, 0x40, 0xb7, 0x17, 0x40,
433 0xbd, 0x40, 0x40, 0x02, 0x04, 0x32, 0x28, 0xbc, 0x5f, 0x28, 0xb7, 0xf8,
434 0x28, 0x28, 0x32, 0x28, 0xb7, 0xf8, 0x28, 0xbc, 0x5f, 0x32, 0x3c, 0xb7,
435 0xf8, 0x3c, 0xbc, 0x5f, 0x3c, 0x3c, 0x32, 0x3c, 0xbc, 0x5f, 0x3c, 0xb7,
436 0xf8, 0x0a, 0x06, 0x2b, 0x2b, 0x31, 0x2c, 0x2e, 0x2d, 0x31, 0x31, 0x2d,
437 0x2e, 0x2c, 0x31, 0x09, 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22,
438 0x01, 0x17, 0x88, 0x22, 0x04, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x10, 0x01,
439 0x17, 0x88, 0x22, 0x04, 0x0a, 0x02, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17,
440 0x84, 0x20, 0x04, 0x0a, 0x03, 0x01, 0x02, 0x10, 0x01, 0x17, 0x84, 0x00,
441 0x04, 0x0a, 0x04, 0x01, 0x02, 0x00, 0x0a, 0x03, 0x01, 0x03, 0x00, 0x0a,
442 0x03, 0x01, 0x03, 0x02, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
443 0x00, 0xc0, 0x00, 0x00, 0x4a, 0x40, 0x00, 0x4a, 0x40, 0x00, 0x0a, 0x03,
444 0x01, 0x03, 0x02, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x40, 0x00, 0x00,
445 0x00, 0x00, 0x00, 0x08, 0x0e, 0xcc, 0x4a, 0x40, 0x00, 0x0a, 0x03, 0x01,
446 0x03, 0x02, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00,
447 0x00, 0x00, 0x4a, 0x40, 0x00, 0x08, 0x0e, 0xcc
448 };
449
450
451 static const uint8 kZoomFitViewBest[] = {
452 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x03, 0xbf, 0x50, 0x00,
453 0x03, 0xff, 0xd4, 0x00, 0x02, 0x02, 0x06, 0x02, 0x3c, 0x60, 0x00, 0x00,
454 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x80, 0x00, 0x48, 0xa0, 0x00, 0x49,
455 0x20, 0x00, 0xca, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xe1, 0xdc, 0x05, 0x54,
456 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x40, 0x00, 0xc0, 0x00,
457 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x49, 0x20, 0x00, 0x00, 0xab,
458 0xd5, 0xff, 0xff, 0x00, 0x6c, 0xd9, 0x03, 0x00, 0x40, 0x80, 0x04, 0x0a,
459 0x04, 0x22, 0x2a, 0x22, 0x22, 0x2e, 0x22, 0x2e, 0x2a, 0x0a, 0x04, 0x48,
460 0x48, 0x22, 0x48, 0x22, 0x2a, 0x48, 0x2a, 0x0a, 0x0a, 0x2a, 0x38, 0x40,
461 0x38, 0x40, 0x34, 0x46, 0x39, 0x40, 0x3e, 0x40, 0x3a, 0x2a, 0x3a, 0x2a,
462 0x3e, 0x24, 0x39, 0x2a, 0x34, 0x0a, 0x0a, 0x36, 0x32, 0x36, 0x40, 0x3a,
463 0x40, 0x35, 0x46, 0x30, 0x40, 0x34, 0x40, 0x34, 0x32, 0x30, 0x32, 0x35,
464 0x2c, 0x3a, 0x32, 0x07, 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22,
465 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x04, 0x01, 0x01, 0x10, 0x01, 0x17,
466 0x84, 0x22, 0x04, 0x0a, 0x01, 0x01, 0x00, 0x10, 0x01, 0x17, 0x83, 0x22,
467 0x04, 0x0a, 0x02, 0x01, 0x00, 0x00, 0x0a, 0x03, 0x01, 0x01, 0x00, 0x0a,
468 0x06, 0x02, 0x02, 0x03, 0x30, 0xb3, 0x05, 0xb3, 0x05, 0x01, 0x17, 0x84,
469 0x22, 0x04, 0x0a, 0x05, 0x02, 0x02, 0x03, 0x00
470 };
471
472
473 static const uint8 kZoomIn[] = {
474 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x05, 0x54, 0x02, 0x00,
475 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00, 0x00, 0x00,
476 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xff, 0xff, 0xe5,
477 0x03, 0x21, 0x5a, 0xce, 0x02, 0x01, 0x06, 0x02, 0x3a, 0x80, 0x00, 0x00,
478 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x80, 0x00, 0x47, 0xc0, 0x00, 0x47,
479 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xbd, 0xea, 0xfa, 0x04, 0x08,
480 0x02, 0x46, 0x46, 0x41, 0x41, 0x02, 0x04, 0x32, 0x24, 0xbd, 0x40, 0x24,
481 0xb7, 0x17, 0x24, 0x24, 0x32, 0x24, 0xb7, 0x17, 0x24, 0xbd, 0x40, 0x32,
482 0x40, 0xb7, 0x17, 0x40, 0xbd, 0x40, 0x40, 0x40, 0x32, 0x40, 0xbd, 0x40,
483 0x40, 0xb7, 0x17, 0x02, 0x04, 0x32, 0x28, 0xbc, 0x5f, 0x28, 0xb7, 0xf8,
484 0x28, 0x28, 0x32, 0x28, 0xb7, 0xf8, 0x28, 0xbc, 0x5f, 0x32, 0x3c, 0xb7,
485 0xf8, 0x3c, 0xbc, 0x5f, 0x3c, 0x3c, 0x32, 0x3c, 0xbc, 0x5f, 0x3c, 0xb7,
486 0xf8, 0x0a, 0x0c, 0x30, 0x34, 0x2c, 0x34, 0x2c, 0x30, 0x30, 0x30, 0x30,
487 0x2c, 0x34, 0x2c, 0x34, 0x30, 0x38, 0x30, 0x38, 0x34, 0x34, 0x34, 0x34,
488 0x38, 0x30, 0x38, 0x06, 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22,
489 0x01, 0x17, 0x88, 0x22, 0x04, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x10, 0x01,
490 0x17, 0x88, 0x22, 0x04, 0x0a, 0x02, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17,
491 0x84, 0x20, 0x04, 0x0a, 0x03, 0x01, 0x02, 0x10, 0x01, 0x17, 0x84, 0x00,
492 0x04, 0x0a, 0x04, 0x01, 0x02, 0x00, 0x0a, 0x03, 0x01, 0x03, 0x00
493 };
494
495
496 static const uint8 kZoomOriginal[] = {
497 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x05, 0x54, 0x02, 0x00,
498 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00, 0x00, 0x00,
499 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xff, 0xff, 0xe5,
500 0x03, 0x21, 0x5a, 0xce, 0x02, 0x01, 0x06, 0x02, 0x3a, 0x80, 0x00, 0x00,
501 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x80, 0x00, 0x47, 0xc0, 0x00, 0x47,
502 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xbd, 0xea, 0xfa, 0x04, 0x08,
503 0x02, 0x46, 0x46, 0x41, 0x41, 0x02, 0x04, 0x32, 0x24, 0xbd, 0x40, 0x24,
504 0xb7, 0x17, 0x24, 0x24, 0x32, 0x24, 0xb7, 0x17, 0x24, 0xbd, 0x40, 0x32,
505 0x40, 0xb7, 0x17, 0x40, 0xbd, 0x40, 0x40, 0x40, 0x32, 0x40, 0xbd, 0x40,
506 0x40, 0xb7, 0x17, 0x02, 0x04, 0x32, 0x28, 0xbc, 0x5f, 0x28, 0xb7, 0xf8,
507 0x28, 0x28, 0x32, 0x28, 0xb7, 0xf8, 0x28, 0xbc, 0x5f, 0x32, 0x3c, 0xb7,
508 0xf8, 0x3c, 0xbc, 0x5f, 0x3c, 0x3c, 0x32, 0x3c, 0xbc, 0x5f, 0x3c, 0xb7,
509 0xf8, 0x06, 0x0c, 0xd2, 0x11, 0x11, 0x30, 0x32, 0x2e, 0x30, 0x30, 0x2c,
510 0x30, 0x30, 0x30, 0x2c, 0x2c, 0x34, 0x36, 0x36, 0x38, 0x2e, 0x36, 0x30,
511 0x06, 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22, 0x01, 0x17, 0x88,
512 0x22, 0x04, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17, 0x88, 0x22,
513 0x04, 0x0a, 0x02, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17, 0x84, 0x20, 0x04,
514 0x0a, 0x03, 0x01, 0x02, 0x10, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x04,
515 0x01, 0x02, 0x00, 0x0a, 0x03, 0x01, 0x03, 0x00
516 };
517
518
519 static const uint8 kZoomOut[] = {
520 0x6e, 0x63, 0x69, 0x66, 0x05, 0x04, 0x00, 0x66, 0x05, 0x54, 0x02, 0x00,
521 0x16, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0xc0, 0x00, 0x00, 0x00,
522 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0, 0x00, 0x00, 0xff, 0xff, 0xe5,
523 0x03, 0x21, 0x5a, 0xce, 0x02, 0x01, 0x06, 0x02, 0x3a, 0x80, 0x00, 0x00,
524 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x80, 0x00, 0x47, 0xc0, 0x00, 0x47,
525 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xbd, 0xea, 0xfa, 0x04, 0x08,
526 0x02, 0x46, 0x46, 0x41, 0x41, 0x02, 0x04, 0x32, 0x24, 0xbd, 0x40, 0x24,
527 0xb7, 0x17, 0x24, 0x24, 0x32, 0x24, 0xb7, 0x17, 0x24, 0xbd, 0x40, 0x32,
528 0x40, 0xb7, 0x17, 0x40, 0xbd, 0x40, 0x40, 0x40, 0x32, 0x40, 0xbd, 0x40,
529 0x40, 0xb7, 0x17, 0x02, 0x04, 0x32, 0x28, 0xbc, 0x5f, 0x28, 0xb7, 0xf8,
530 0x28, 0x28, 0x32, 0x28, 0xb7, 0xf8, 0x28, 0xbc, 0x5f, 0x32, 0x3c, 0xb7,
531 0xf8, 0x3c, 0xbc, 0x5f, 0x3c, 0x3c, 0x32, 0x3c, 0xbc, 0x5f, 0x3c, 0xb7,
532 0xf8, 0x0a, 0x04, 0x2c, 0x34, 0x2c, 0x30, 0x38, 0x30, 0x38, 0x34, 0x06,
533 0x0a, 0x00, 0x02, 0x00, 0x01, 0x30, 0x22, 0x22, 0x01, 0x17, 0x88, 0x22,
534 0x04, 0x0a, 0x01, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17, 0x88, 0x22, 0x04,
535 0x0a, 0x02, 0x02, 0x00, 0x01, 0x10, 0x01, 0x17, 0x84, 0x20, 0x04, 0x0a,
536 0x03, 0x01, 0x02, 0x10, 0x01, 0x17, 0x84, 0x00, 0x04, 0x0a, 0x04, 0x01,
537 0x02, 0x00, 0x0a, 0x03, 0x01, 0x03, 0x00
538 };
539
540
541 static const uint8 kPagePrevious[] = {
542 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x05, 0x01, 0x03, 0x00,
543 0x00, 0x80, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00,
544 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0x9f, 0xff,
545 0x00, 0xff, 0xff, 0xff, 0xff, 0xd9, 0xd9, 0xff, 0x04, 0x00, 0x66, 0x03,
546 0x28, 0x1b, 0x01, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60,
547 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0,
548 0x00, 0x00, 0xff, 0xa8, 0x00, 0xff, 0x92, 0x61, 0x03, 0x03, 0x0a, 0x04,
549 0x2a, 0xb3, 0xcb, 0x48, 0xb3, 0xcb, 0x48, 0x48, 0x2a, 0x48, 0x0a, 0x07,
550 0x40, 0x2e, 0x2c, 0x2e, 0x2c, 0x28, 0x22, 0x32, 0x2c, 0x3c, 0x2c, 0x36,
551 0x40, 0x36, 0x0a, 0x07, 0x22, 0x35, 0x36, 0x22, 0x36, 0x2c, 0x48, 0x2c,
552 0x48, 0x3e, 0x36, 0x3e, 0x36, 0x48, 0x06, 0x0a, 0x00, 0x01, 0x00, 0x30,
553 0x1e, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x00, 0x30,
554 0x1c, 0x20, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x00, 0x20,
555 0x1c, 0x20, 0x0a, 0x04, 0x01, 0x02, 0x12, 0x3d, 0xfe, 0x4e, 0x00, 0x00,
556 0x00, 0x00, 0x00, 0x00, 0x3e, 0x16, 0x93, 0x46, 0xc2, 0x38, 0x46, 0xc3,
557 0xc7, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x02, 0x12, 0x3d,
558 0xfe, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x16, 0x93, 0x46,
559 0x82, 0x54, 0x46, 0x80, 0xf5, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x06,
560 0x01, 0x02, 0x02, 0x3d, 0xfe, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
561 0x3e, 0x16, 0x93, 0x46, 0x82, 0x54, 0x46, 0x80, 0xf5
562 };
563
564
565 static const uint8 kPageNext[] = {
566 0x6e, 0x63, 0x69, 0x66, 0x07, 0x04, 0x00, 0x66, 0x05, 0x01, 0x03, 0x00,
567 0x00, 0x80, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00,
568 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0x9f, 0xff,
569 0x00, 0xff, 0xff, 0xff, 0xff, 0xd9, 0xd9, 0xff, 0x04, 0x00, 0x66, 0x03,
570 0x26, 0x19, 0x01, 0x02, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x3c, 0x60,
571 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x48, 0xa0,
572 0x00, 0x00, 0xff, 0xaa, 0x06, 0xff, 0x8d, 0x5e, 0x03, 0x03, 0x0a, 0x04,
573 0x2a, 0xb3, 0xcb, 0x48, 0xb3, 0xcb, 0x48, 0x48, 0x2a, 0x48, 0x0a, 0x07,
574 0x22, 0x36, 0x36, 0x36, 0x36, 0x3c, 0x40, 0x32, 0x36, 0x28, 0x36, 0x2e,
575 0x22, 0x2e, 0x0a, 0x07, 0x48, 0x35, 0x34, 0x48, 0x34, 0x3e, 0x22, 0x3e,
576 0x22, 0x2c, 0x34, 0x2c, 0x34, 0x22, 0x06, 0x0a, 0x00, 0x01, 0x00, 0x30,
577 0x1e, 0x22, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x02, 0x01, 0x00, 0x30,
578 0x1c, 0x20, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x03, 0x01, 0x00, 0x20,
579 0x1c, 0x20, 0x0a, 0x04, 0x01, 0x02, 0x12, 0x3d, 0xfe, 0x4e, 0x00, 0x00,
580 0x00, 0x00, 0x00, 0x00, 0x3e, 0x16, 0x93, 0x46, 0xbf, 0xe4, 0x46, 0xc3,
581 0xc7, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x05, 0x01, 0x02, 0x12, 0x3d,
582 0xfe, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x16, 0x93, 0x46,
583 0x80, 0x00, 0x46, 0x80, 0xf5, 0x01, 0x17, 0x83, 0x22, 0x04, 0x0a, 0x06,
584 0x01, 0x02, 0x02, 0x3d, 0xfe, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
585 0x3e, 0x16, 0x93, 0x46, 0x80, 0x00, 0x46, 0x80, 0xf5
586 };
587
588
589 struct IconData {
590 const uint8* data;
591 size_t size;
592 BBitmap* bitmap;
593 };
594
595
596 static IconData kIcons[] = {
597 { kDocumentOpen, sizeof(kDocumentOpen), NULL },
598 { kDocumentSaveAs, sizeof(kDocumentSaveAs), NULL },
599 { kDocumentSave, sizeof(kDocumentSave), NULL },
600 { kDrawRectangularSelection, sizeof(kDrawRectangularSelection), NULL },
601 { kEditCopy, sizeof(kEditCopy), NULL },
602 { kEditCut, sizeof(kEditCut), NULL },
603 { kEditDelete, sizeof(kEditDelete), NULL },
604 { kEditTrash, sizeof(kEditTrash), NULL },
605 { kMediaMovieLibraryR4, sizeof(kMediaMovieLibraryR4), NULL },
606 { kMediaPlaybackStartEnabled, sizeof(kMediaPlaybackStartEnabled), NULL },
607 { kGoDown, sizeof(kGoDown), NULL },
608 { kGoNext, sizeof(kGoNext), NULL },
609 { kGoPrevious, sizeof(kGoPrevious), NULL },
610 { kGoUp, sizeof(kGoUp), NULL },
611 { kViewFullScreen, sizeof(kViewFullScreen), NULL },
612 { kViewWindowed, sizeof(kViewWindowed), NULL },
613 { kZoomFitBest, sizeof(kZoomFitBest), NULL },
614 { kZoomFitViewBest, sizeof(kZoomFitViewBest), NULL },
615 { kZoomIn, sizeof(kZoomIn), NULL },
616 { kZoomOriginal, sizeof(kZoomOriginal), NULL },
617 { kZoomOut, sizeof(kZoomOut), NULL },
618 { kPagePrevious, sizeof(kPagePrevious), NULL },
619 { kPageNext, sizeof(kPageNext), NULL }
620 };
621
622
623 status_t
init_tool_bar_icons()624 init_tool_bar_icons()
625 {
626 const BSize toolBarIconsSize = be_control_look->ComposeIconSize(22);
627 const BSize iconRenderSize = be_control_look->ComposeIconSize(32);
628
629 BBitmap bitmap = BBitmap(BRect(BPoint(0, 0), iconRenderSize),
630 B_BITMAP_NO_SERVER_LINK, B_RGBA32);
631
632 for (uint32 i = 0; i < sizeof(kIcons) / sizeof(IconData); i++) {
633 status_t ret = BIconUtils::GetVectorIcon(kIcons[i].data,
634 kIcons[i].size, &bitmap);
635 if (ret != B_OK)
636 return ret;
637 kIcons[i].bitmap = new(std::nothrow) BBitmap(BRect(BPoint(0, 0),
638 toolBarIconsSize), 0, B_RGBA32);
639 if (kIcons[i].bitmap == NULL)
640 return B_NO_MEMORY;
641 ret = kIcons[i].bitmap->InitCheck();
642 if (ret != B_OK)
643 return ret;
644
645 kIcons[i].bitmap->ImportBits(&bitmap, BPoint(0, 0), BPoint(0, 0),
646 toolBarIconsSize);
647 }
648
649 // Initializing 14 icons on startup takes about 10ms on a Core2Duo @ 2GHz.
650
651 return B_OK;
652 }
653
654
655 void
uninit_tool_bar_icons()656 uninit_tool_bar_icons()
657 {
658 for (uint32 i = 0; i < sizeof(kIcons) / sizeof(IconData); i++) {
659 delete kIcons[i].bitmap;
660 kIcons[i].bitmap = NULL;
661 }
662 }
663
664
665 const BBitmap*
tool_bar_icon(uint32 which)666 tool_bar_icon(uint32 which)
667 {
668 if (which >= sizeof(kIcons) / sizeof(IconData))
669 return NULL;
670 return kIcons[which].bitmap;
671 }
672
673