OSDN Git Service

d1e1e226fb0ace20e54eac093e5e4223ee09248d
[pettanr/clientJs.git] / 0.6.x / js / main.js
1 \r
2 X( function(){\r
3         with( X.UI ){\r
4                 Page(\r
5                         'ホーム',\r
6                         'home',\r
7                         List(\r
8                                 [\r
9                                         {\r
10                                                 label   : 'ぺったんR',\r
11                                                 summary : X.VERSION + ( X.buildTimeStamp ? ' ' + X.buildTimeStamp : '' )\r
12                                         },\r
13                                         { label   : 'ツール' },\r
14                                         { label   : 'テスト' , next : 'test' },\r
15                                         { label   : '情報' , next : 'info' },\r
16                                         { label   : 'ローカルストレージ' },\r
17                                         { label   : '外部API接続' }\r
18                                 ],\r
19                                 AndroidItem()\r
20                         )\r
21                 ).show();\r
22 \r
23                 Page(\r
24                         'テスト目次',\r
25                         'test',\r
26                         List(\r
27                                 [\r
28                                         { label : '戻る', back : true },\r
29                                         { label : 'インタラクション・ジェスチャー' },\r
30                                         { label : 'Ajax' },\r
31                                         { label : 'マルチメディア' }\r
32                                 ],\r
33                                 AndroidItem()\r
34                         )\r
35                 );\r
36 \r
37                 Page(\r
38                         '情報',\r
39                         'info',\r
40                         List(\r
41                                 [\r
42                                         { label : '戻る', back : true },\r
43                                         { label : 'システムスコア'   , next : 'spec' },\r
44                                         { label : 'OS・ブラウザ'     , next : 'ua' },\r
45                                         { label : 'プラグインとアドオン', next : 'plugin' },\r
46                                         { label : 'ストレージ' },\r
47                                         { label : 'HID' },\r
48                                         { label : 'pettanR ビルド情報' }\r
49                                 ],\r
50                                 AndroidItem()\r
51                         )\r
52                 );\r
53 \r
54                 Page(\r
55                         'システムスコア',\r
56                         'spec',\r
57                         List(\r
58                                 [\r
59                                         { label : '戻る', back : true },\r
60                                         {\r
61                                                 label   : '起動時間',\r
62                                                 summary : X.bootSpeed + 'ms'\r
63                                         }\r
64                                 ],\r
65                                 AndroidItem()\r
66                         )\r
67                 );\r
68 \r
69                 Page(\r
70                         'OS・ブラウザ',\r
71                         'ua',\r
72                         List(\r
73                                 [\r
74                                         { label : '戻る', back : true },\r
75                                         {\r
76                                                 label   : 'ブラウザ',\r
77                                                 summary : X.UA.IE ? 'IE ' + X.UA.IE :\r
78                                                         X.UA.Opera      ? 'Presto Opera ' + X.UA.Opera :\r
79                                                         X.UA.Gecko      ? 'Gecko ' + X.UA.Gecko :\r
80                                                         X.UA.KHTML      ? 'KHTML ' + X.UA.KHTML :\r
81                                                         X.UA.WebKit     ? 'WebKit ' + X.UA.WebKit :\r
82                                                         X.UA.BlinkOpera ? 'Blink Opera ' + X.UA.BlinkOpera :\r
83                                                         X.UA.Blink      ? 'Blink ' + X.UA.Blink :\r
84                                                         X.UA.AOSP       ? 'AOSP ' + X.UA.AOSP :\r
85                                                         X.UA.ChromeWV   ? 'Chrome WebView ' + X.UA.ChromeWV :\r
86                                                         X.UA.Edge       ? 'Edge' + X.UA.Edge : 'Other'\r
87                                         },\r
88                                         {\r
89                                                 label   : 'OS',\r
90                                                 summary : X.UA.Windows ? 'Windows ' + X.UA.Windows : X.UA.Mac ? 'Mac' : X.UA.Android ? 'Android' : X.UA.iOS ? 'iOS' : 'Other'\r
91                                         },\r
92                                         {\r
93                                                 label   : 'ユーザーエージェント文字列',\r
94                                                 summary : navigator.userAgent\r
95                                         },\r
96                                         {\r
97                                                 label   : 'プラットフォーム',\r
98                                                 summary : 'navigator.platform=' + navigator.platform\r
99                                         },\r
100                                         {\r
101                                                 label   : 'アプリ名',\r
102                                                 summary : 'navigator.appName=' + navigator.appName\r
103                                         },\r
104                                         {\r
105                                                 label   : 'アプリコード名',\r
106                                                 summary : 'navigator.appCodeName=' + navigator.appCodeName\r
107                                         },\r
108                                         {\r
109                                                 label   : 'アプリバージョン',\r
110                                                 summary : 'navigator.appVersion=' + navigator.appVersion\r
111                                         }\r
112                                 ],\r
113                                 AndroidItem()\r
114                         )\r
115                 );\r
116 \r
117                 Page(\r
118                         'プラグインとアドオン',\r
119                         'plugin',\r
120                         List(\r
121                                 [\r
122                                         { label : '戻る', back : true },\r
123                                         {\r
124                                                 label   : 'Adobe FlashPlayer',\r
125                                                 summary : X.Plugin.Flash || '-'\r
126                                         },\r
127                                         {\r
128                                                 label   : 'Silverlight',\r
129                                                 summary : X.Plugin.Silverlight || '-'\r
130                                         },\r
131                                         {\r
132                                                 label   : 'Unity Web Player',\r
133                                                 summary : X.Plugin.Unity || '-'\r
134                                         },\r
135                                         {\r
136                                                 label   : 'Google Gears',\r
137                                                 summary : X.Plugin.Gears ? 'o' : '-'\r
138                                         },\r
139                                         {\r
140                                                 label   : 'Windows Media Player',\r
141                                                 summary : X.Plugin.WMP || '-'\r
142                                         }\r
143                                 ],\r
144                                 AndroidItem()\r
145                         )\r
146                 );\r
147                 \r
148         };\r
149 } );\r
150 \r
151 \r
152 var AndroidItem = X.UI.Box.inherits(\r
153         'AndroidItem',\r
154         X.Class.NONE,\r
155         {\r
156                 next : '',\r
157                 back : false,           \r
158                 \r
159                 Constructor : function(){\r
160                         this.Super( {\r
161                                 sizing      : 'border',\r
162                                 bgColor     : 0x34383B,\r
163                                 borderColor : 0x252527,\r
164                                 borderStyle : 'solid',\r
165                                 borderWidth : [ 0, 0, 0.15 ],\r
166                                 height      : 4,\r
167                                 left        : 0,\r
168                                 right       : 0\r
169                         } )\r
170                         .listen( X.UI.Event.TAP )\r
171                         .listen( X.UI.Event.ITEMDATA_CHANGED );\r
172                 },\r
173 \r
174                 handleEvent : function( e ){\r
175                         var txt;\r
176                         \r
177                         switch( e.type ){\r
178                                 case X.UI.Event.ITEMDATA_CHANGED :\r
179                                         if( e.itemData.summary ){\r
180                                                 this.add( X.UI.Text( e.itemData.label, {\r
181                                                         fontColor   : 0xAAAAAA,\r
182                                                         fontBold    : true,\r
183                                                         top         : 0.7,\r
184                                                         left        : 1\r
185                                                 } ) )\r
186                                                 .add( X.UI.Text( e.itemData.summary, {\r
187                                                         fontColor   : 0x777777,\r
188                                                         fontSize    : 0.8,\r
189                                                         top         : 3.1,\r
190                                                         left        : 1.27\r
191                                                 } ) );\r
192                                         } else {\r
193                                                 this.add( X.UI.Text( e.itemData.label, {\r
194                                                         fontColor   : 0xAAAAAA,\r
195                                                         fontBold    : true,\r
196                                                         top         : 1.35,\r
197                                                         left        : 1\r
198                                                 } ) );\r
199                                         };\r
200                                         \r
201                                         if( e.itemData.next ){\r
202                                                 this.add( X.UI.Text( String.fromCharCode( 9654 ), {\r
203                                                         fontColor   : 0xAAAAAA,\r
204                                                         fontBold    : true,\r
205                                                         top         : 1.35,\r
206                                                         width       : 1,\r
207                                                         right       : 1\r
208                                                 } ) );\r
209                                                 \r
210                                                 this.next = e.itemData.next;\r
211                                         } else\r
212                                         if( e.itemData.back ){\r
213                                                 this.back = true;\r
214                                         };\r
215                                         break;\r
216                                 \r
217                                 case X.UI.Event.TAP :\r
218                                         txt = this.getNodeAt( 0 );\r
219                                         txt.content( txt.content() + '+' );\r
220                                         \r
221                                         if( this.next ){\r
222                                                 X.UI.Page.move( this.next );\r
223                                         } else\r
224                                         if( this.back ){\r
225                                                 X.UI.Page.back();\r
226                                         };\r
227                                         \r
228                         };\r
229                 }       \r
230         }       \r
231 );\r
232 \r