blob: dfce44cac89a1c97f6423fccf681b3a40bc7b83a [file] [log] [blame]
// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart = 2.9
part of swarmlib;
/**
* An informational dialog that shows keyboard shortcuts and provides a
* link to the Dart language webpage.
*/
//TODO(efortuna): fix DialogView so it doesn't require the HTML passed to
// the constructor.
class HelpDialog extends DialogView {
CompositeView _parent;
Function _doneHandler;
HelpDialog(this._parent, this._doneHandler)
: super('Information', '', makeContent());
void onDone() {
_doneHandler();
}
static View makeContent() {
return new View.html('''
<div>
<p>
Keyboard shortcuts:
${generateTableHtml()}
</p>
<p>
<div id="dart-logo">
<a href="http://dartlang.org">
Dart, the programming language</a>.
</div>
</p>
</div>
''');
}
static String generateTableHtml() {
String cellStart = '''<th valign="middle" align="center">''';
return '''<table width="90%" border=1 cellspacing="0" cellpadding="2">
<tr bgcolor="#c3d9ff">
${cellStart} Shortcut Key </th>
${cellStart} Action </th>
</tr>
<tr>
${cellStart} j, &lt;down arrow&gt; </th>
${cellStart} Next Article </th>
</tr>
<tr>
${cellStart} k, &lt;up arrow&gt; </th>
${cellStart} Previous Article </th>
</tr>
<tr>
${cellStart} o, &lt;enter&gt; </th>
${cellStart} Open Article </th>
</tr>
<tr>
${cellStart} &lt;esc&gt;, &lt;delete&gt; </th>
${cellStart} Back </th>
</tr>
<tr>
${cellStart} a, h, &lt;left arrow&gt; </th>
${cellStart} Left </th>
</tr>
<tr>
${cellStart} d, l, &lt;right arrow&gt; </th>
${cellStart} Right </th>
</tr>
<tr>
${cellStart} n </th>
${cellStart} Next Category </th>
</tr>
<tr>
${cellStart} p </th>
${cellStart} Previous Category </th>
</tr>
</table>''';
}
}