• R/O
  • HTTP
  • SSH
  • HTTPS

SeraphyScriptDialog: コミット

SeraphyScriptDialog v2以降のソースコード管理


コミットメタ情報

リビジョン071f9337a8d735947d030143daf50ca97d1b71d1 (tree)
日時2015-07-19 15:29:47
作者seraphy <seraphy@sera...>
コミッターseraphy

ログメッセージ

ウェブ上のヘルプ用のsidemenu生成ツールと、生成されたサイドメニューと使用するフレーム

変更サマリ

差分

--- /dev/null
+++ b/help/index.html
@@ -0,0 +1,11 @@
1+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
2+<html>
3+<head><title>SeraphyScriptDialogヘルプ</title></head>
4+<frameset cols="400,*">
5+ <frame src="sidemenu.html" name="sidemenu">
6+ <frame src="html/top.html" name="main">
7+ <noframes>
8+ このページはフレームを使用しています。
9+ </noframes>
10+</frameset>
11+</html>
--- /dev/null
+++ b/help/makesite.py
@@ -0,0 +1,89 @@
1+#! /usr/bin/python2.7
2+'''
3+Created on 2015/07/19
4+for Python2.7
5+
6+seraphyscriptdialog.hhcを読み取ってウェブ上のヘルプを作成するための
7+sidemenu.htmlファイルを構築します。
8+
9+python makesite.py
10+で変換作成を行います。
11+
12+@author: seraphy
13+'''
14+
15+from HTMLParser import HTMLParser
16+
17+class MyHTMLParser(HTMLParser):
18+
19+ sitemapAttr = ('type', 'text/sitemap')
20+
21+ beginBody = False
22+
23+ sitemapMode = False
24+ sitemapTitle = ''
25+ sitemapUrl = ''
26+
27+ def handle_starttag(self, tag, attrs):
28+ if not self.beginBody:
29+ if tag == 'body':
30+ self.wr.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">\r\n');
31+ self.wr.write('<html><head>\r\n');
32+ self.wr.write('<meta http-equiv="Content-Type" content="text/html; charset=Windows-31J">\r\n')
33+ self.wr.write('<meta http-equiv="Content-Language" content="ja-JP">\r\n')
34+ self.wr.write('<link href="sidemenu.css" rel="stylesheet" type="text/css" media="screen" >\r\n')
35+ self.wr.write('<title>SeraphyScriptDialog Help</title>\r\n');
36+ self.wr.write('<base target="main"/>\r\n');
37+ self.wr.write('<body>\r\n');
38+ self.beginBody = True
39+ return
40+
41+ if tag == 'object' and [x for x in attrs if x == self.sitemapAttr]:
42+ self.sitemapMode = True
43+ elif tag == 'param' and self.sitemapMode:
44+ paramType = [x[1] for x in attrs if x[0] == 'name']
45+ paramValue = [x[1] for x in attrs if x[0] == 'value']
46+ # print("*param name={0} value={1}".format(paramType, paramValue))
47+
48+ if paramType == ['Name']:
49+ self.sitemapTitle = paramValue[0]
50+ elif paramType == ['Local']:
51+ self.sitemapUrl = paramValue[0]
52+ else:
53+ raise Exception('unknown attrs:{0}'.format(attrs))
54+
55+ else:
56+ self.wr.write("<{0}>".format(tag))
57+
58+ def handle_endtag(self, tag):
59+ if not self.beginBody:
60+ return
61+
62+ if tag == 'object' and self.sitemapMode:
63+ if len(self.sitemapUrl) > 0:
64+ self.wr.write("<a href='{1}'>{0}</a>".format(self.sitemapTitle, self.sitemapUrl.replace('\\', '/')))
65+ else:
66+ self.wr.write("{0}".format(self.sitemapTitle))
67+
68+ self.sitemapMode = False
69+ self.sitemapTitle = ''
70+ self.sitemapUrl = ''
71+
72+ elif tag == 'param' and self.sitemapMode:
73+ pass
74+ else:
75+ self.wr.write("</{0}>\r\n".format(tag))
76+
77+def main():
78+ with open('seraphyscriptdialog.hhc', 'r') as f:
79+ text = f.read()
80+
81+ with open('sidemenu.html', 'w') as wr:
82+ parser = MyHTMLParser()
83+ parser.wr = wr
84+ parser.feed(text)
85+
86+ print("ok");
87+
88+if __name__ == '__main__':
89+ main()
--- /dev/null
+++ b/help/sidemenu.css
@@ -0,0 +1,78 @@
1+@charset "utf-8";
2+
3+body {
4+ margin-top: 0px;
5+ margin-bottom: 2em;
6+ margin-left: 0.5em;
7+ margin-right: 0.5em;
8+ font-family: "メイリオ", "MS P明朝", "MS 明朝", "細明朝体", "Osaka", serif;
9+ background-color: #FDFFFD;
10+}
11+
12+li {
13+ margin: 0.5em;
14+}
15+
16+a:link, a:active, a:visited {
17+ color: #807010;
18+}
19+a:hover {
20+ color: #00dd33;
21+}
22+
23+h1 {
24+ font-size: 140%;
25+ margin-bottom: 1.5em;
26+ margin-top: 1em;
27+ padding: 0.5em;
28+ color: #006600;
29+ text-align: center;
30+}
31+
32+h2 {
33+ font-size: 120%;
34+ margin-bottom: 0.5em;
35+ margin-top: 1em;
36+ padding: 0.3em;
37+ border-color: #0066FF;
38+ border-left-style: solid;
39+ border-left-width: 0.5em;
40+ border-bottom-style: solid;
41+ border-bottom-width: thin;
42+}
43+
44+h3 {
45+ font-size: 120%;
46+ margin-bottom: 0.5em;
47+ margin-top: 1em;
48+ padding: 0.3em;
49+ text-decoration: none;
50+ border-bottom: 3px solid #0066FF;
51+}
52+
53+h4 {
54+ font-size: 100%;
55+ margin-left: 1em;
56+ margin-bottom: 0.5em;
57+ margin-top: 1em;
58+ padding: 0.3em;
59+}
60+
61+p {
62+ text-indent: 1em;
63+ margin-bottom: 0ex;
64+ margin-top: 0ex;
65+ line-height: 1.2em;
66+}
67+
68+ul{
69+ margin-left: 0em;
70+ font-size: 100%;
71+ padding-left: 0;
72+}
73+
74+li {
75+ margin-left: 1em;
76+ font-size: 100%;
77+ padding-left: 0;
78+}
--- /dev/null
+++ b/help/sidemenu.html
@@ -0,0 +1,22 @@
1+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
2+<html><head>
3+<meta http-equiv="Content-Type" content="text/html; charset=Windows-31J">
4+<meta http-equiv="Content-Language" content="ja-JP">
5+<link href="sidemenu.css" rel="stylesheet" type="text/css" media="screen" >
6+<title>SeraphyScriptDialog Help</title>
7+<base target="main"/>
8+<body>
9+<ul><li>SeraphyScriptDialog<ul><li><a href='html/top.html'>概要</a><li><a href='html/top.html#projecthome'>プロジェクトホーム</a><li><a href='html/license.html'>ライセンスと使用許諾条件</a><li><a href='html/howtoinstall.html'>セットアップについて</a><li><a href='html/history.html'>更新履歴・歴史</a></ul>
10+<li>マニュアル<ul><li><a href='html/howtouse.html'>使い方</a><li>SeraphyScriptDialogオブジェクト<ul><li><a href='html/ScrDlgRootSynop.html'>概要</a><li>プロパティ<ul><li><a href='html/DataConvProp.html'>データ変換関連</a><li><a href='html/PreferencesProp.html'>設定ファイル関連</a></ul>
11+<li>メソッド<ul><li><a href='html/CommonDlgMethod.html'>コモンダイアログ関連</a><li><a href='html/ShellMethod.html'>シェル関連</a><li><a href='html/SystemMethod.html'>システム関連</a><li><a href='html/FileMethod.html'>ファイル関連</a><li><a href='html/EventMethod.html'>イベント関連</a><li><a href='html/DataConvMethod.html'>データ変換関連</a></ul>
12+</ul>
13+<li>UserFormオブジェクト<ul><li><a href='html/UserFormSynop.html'>概要</a><li><a href='html/UserFormProp.html'>プロパティ</a><li>メソッド<ul><li>コントロールの配置<ul><li><a href='html/ClearAllControls.html'>ClearAllControls</a><li><a href='html/DefineLabel.html'>ラベル</a><li><a href='html/DefineEdit.html'>エディットコントロール</a><li><a href='html/DefineEditButton.html'>ボタン付きエディットコントロール</a><li><a href='html/DefineFileEdit.html'>ファイル参照ボタン付きエディットコントロール</a><li><a href='html/DefineButton.html'>ボタン</a><li><a href='html/DefineCheckButton.html'>チェックボックス</a><li><a href='html/DefineRadioButton.html'>ラジオボタン</a><li><a href='html/DefineComboBox.html'>コンボボックス</a><li><a href='html/DefineDropdownList.html'>ドロップダウンリスト</a><li><a href='html/DefineListBox.html'>リストボックス</a></ul>
14+<li><a href='html/ExecuteForm.html'>モーダルダイアログ</a><li><a href='html/ComposeForm.html'>モードレスダイアログ</a></ul>
15+</ul>
16+<li>OutputWindowオブジェクト<ul><li><a href='html/OutputWindowSynop.html'>概要</a></ul>
17+<li>Listオブジェクト<ul><li><a href='html/ListObjSynop.html'>概要</a></ul>
18+</ul>
19+<li>技術資料<ul><li><a href='html/technote.html'>技術的な注意事項</a><li><a href='html/wsfref.html'>wsfによる定数の参照</a><li><a href='html/bugs.html'>既知のバグ</a></ul>
20+</ul>
21+</body>
22+</html>
旧リポジトリブラウザで表示