アイコンモジュール作成方法(Ver9.35対応版)
目次−
動作環境−
ウィンドウ−
ツールバーデザイン−
アイコンモジュール作成方法
アイコンモジュールの自作は手間がかかりますが、現バージョンでは、
ツールバーデザインの定義ファイルによる指定で、文字列だけで簡単に作成することができます。
アイコンモジュールを作成するには、以下のWebページからアイコンモジュール開発キットをダウンロードして、ドキュメントとサンプルを入手することができます。
・秀まるおのホームページ > ソフトウェア > 秀丸エディタ
https://hide.maruo.co.jp/software/hidemaru.html
以下に概略を説明します。
■1.アイコンモジュールの構造
アイコンモジュールは、ビットマップリソースを含んだDLLファイルです。
ただし、ファイル名の拡張子は「.hmm」です。
アイコンモジュールは秀丸エディタからツールバーのビットマップを取り出して使うだけなので、DLLファイル自身を実際に呼び出した場合にどうであるかはまったく関係ありません。
したがって、リソース入りのDLLファイルを生成可能なツールがあれば、誰でも作ることが出来ます。
■2.ビットマップ
ツールバーのビットマップリソースが、DLLファイル中にID番号で500番で入っている必要があります。
VisualC++を使う場合、サンプルプログラムを参考にしてこのようなIDになるように作成してください。
ツールバーには、129個のボタン用絵柄が必要です。129個の絵柄を、横に一列にならべればいいです。
V4.10以降対応の場合は、145個のボタンが必要です。
V5.00以降対応の場合は、147個のボタンが必要です。
V6.00以降対応の場合は、149個のボタンが必要です。
V8.00以降対応の場合は、156個のボタンが必要です。
ビットマップのサイズは、絵柄のサイズに合わせて決めればいいです。秀丸側ではビットマップのサイズに合わせてツールバー自体のサイズを自動調整します。
ビットマップの色は、4bit(16色)、8bit(256色)、32bit(フルカラー,アルファチャンネル付き)のいずれかを入れてください。
32bitは、Windows XP以降でしか使用できません。
絵柄の並び順は以下の通りです。
ボタン番号 絵柄
0 新規作成
1 開く...
2 上書き保存
3 印刷...
4 やり直し
5 やり直しのやり直し
6 コピー
7 切り抜き
8 貼り付け
9 検索...
10 下候補
11 上候補
12 置換...
13 grepの実行...
14 現在行をマーク/マーク解除
15 ウィンドウ分割上下
16 秀丸ヘルプ
17 閉じて開く...
18 ファイルを閉じる
19 上書き保存(改行=LF)
20 名前を付けて保存
21 別ファイルへの追加保存
22 カーソル位置への読込み
23 保存して終了
24 終了
25 全保存終了
26 全終了
27 全保存
28 全保存(更新ファイルのみ)
29 破棄して終了
30 ファイル名変更...
31 対応する括弧に移動
32 ファイルの先頭に移動
33 ファイルの最後に移動
34 最後に編集した所に移動
35 指定行に移動
36 下の強調行
37 上の強調行
38 {に移動
39 }に移動
40 前のカーソル位置に移動
41 マーク一覧
42 すべてを選択
43 引用付きコピー
44 貼り付け+履歴戻し
45 クリップボード履歴...
46 BOX貼り付け
47 追加コピー
48 追加切り抜き
49 強調行の範囲選択
50 行の二重化
51 空行挿入
52 制御コード入力...
53 削除内容復元
54 CapsLockし忘れの是正
55 再変換(かな漢字変換し忘れの是正)
56 大文字 <-> 小文字の変換
57 TO UPPER CASE
58 to lower case
59 ハンカクに変換
60 全角ひらがなに変換
61 全角カタカナに変換
62 TAB -> 空白 変換
63 空白 -> TAB 変換
64 インデント
65 逆インデント
66 再読み込み
67 閲覧モード切り替え
68 検索開始位置へ戻る
69 検索文字列の取得
70 下の編集マーク
71 上の編集マーク
72 編集マークのクリア
73 秀丸を縦に並べる
74 秀丸を横に並べる
75 秀丸を重ねて表示
76 秀丸を並べて表示
77 全部最小化
78 分割ウィンドウ切り替え
79 同時スクロール...
80 他の秀丸と内容比較
81 デスクトップ保存...
82 デスクトップ復元
83 次の秀丸
84 前の秀丸
85 次の秀丸(最小化のも含む)
86 前の秀丸(最小化のも含む)
87〜94 メニュー1〜8
95〜104 マクロ1〜10
105 マクロ実行...
106 挿入/上書き切り替え
107 記録開始/記録終了
108 再生
109 記録の保存...
110 記録の読込み...
111 外部ヘルプ
112 外部ヘルプ2
113 外部ヘルプ3
114 MSDNライブラリ
115 タグジャンプ
116 ダイレクトタグジャンプ
117 バックタグジャンプ
118 強調表示の一覧...
119 tagsファイルの作成...
120 かな漢モードの切り替え
121 かな漢字への単語登録
122 フリーカーソルモード切り替え
123 文字コード表示
124 行番号表示/非表示
125 前の操作の繰り返し
126 マクロヘルプ
127 上書き禁止切り替え
128 プログラム実行...
129 エンコードの種類(V4.10以降)
130 ウィンドウ一覧のタブ(V4.10以降)
131 強調表示一覧の枠(V4.10以降)
132 このタブを最小化(V4.10以降)
133 戻る(V4.10以降)
134 進む(V4.10以降)
135 ソース(V4.10以降)
136 Webブラウズモード(V4.10以降)
137 ソース/Webブラウズモード切り替え(V4.10以降)
138 FTPで開く(V4.10以降)
139 FTPで名前を付けて保存(V4.10以降)
140 新規Webブラウズモード(V4.10以降)(旧「HTTPで開く」)
141 関連付けで開く(V4.10以降)
142 常に手前に表示(V4.10以降)
143 次のマーク(V4.10以降)
144 前のマーク(V4.10以降)
145 検索文字列の強調(V5.00以降)
146 縦書きモード(V5.00以降)
147 見出しバー(V6.00以降)
148 折りたたみ用の余白(V6.00以降)
149 段組モード(V8.00以降)
150 ウィンドウ幅で折り返し(V8.00以降)
151 固定幅で折り返し(V8.00以降)
152 最大幅で折り返し(V8.00以降)
153 ウィンドウ分割左右(V8.00以降)
154 ファイルマネージャ枠(V8.00以降)
155 アウトプット枠(V8.00以降)
■3.文字列リソース
以下の文字列リソースを定義しないといけません。
文字列ID 1番 ...
対応する秀丸エディタのバージョン。
V3.14以降対応の場合は"3.14"とする。
V4.10以降対応の場合は"4.10"とする。
V5.00以降対応の場合は"5.00"とする。
V6.00以降対応の場合は"6.00"とする。
V8.00以降対応の場合は"8.00"とする。
この文字列は、秀丸エディタの将来のバージョンで仕様が変
更になった場合にでも、可能な限り古いアイコンモジュールを
使えるようにするために用意されています。
文字列ID 2番 ...
ツールバーをフラットにするかどうか。
"0"にすると普通のボタンタイプまたは秀丸の指定に従います。
"1"にすると強制的にフラットになります。
文字列ID 3番 ...
ビットマップID 500番のビットマップに入っているボタン
の数。
V3.14以降対応の場合、ボタンの数は129個なので、"129"とする。
V4.10以降対応の場合、ボタンの数は145個なので、"145"とする。
V5.00以降対応の場合、ボタンの数は147個なので、"147"とする。
V6.00以降対応の場合、ボタンの数は149個なので、"149"とする。
V8.00以降対応の場合、ボタンの数は156個なので、"156"とする。
ボタンの数が129個未満を指定することもできます。
ボタンの数を少なくした場合、ボタンが無い部分は標準の
ボタンになります。
上記の文字列を省略した場合には、以下の値がデフォルトとなります。
ID 1番 ... "3.14"
ID 2番 ... "0"
ID 3番 ... "129"
■4.アイコン
V6.00以降では、アイコンリソースを入れておくことで、秀丸エディタ本体のアイコンと関連付けのアイコンを差し替えることができます。
秀丸エディタ本体のアイコンは、常駐秀丸エディタのタスクバー上のアイコンと、タブモードでのウィンドウ左上のアイコンに適用されます。
ショートカットのアイコンは変化しないので、ユーザーに手動で変更していただく必要があります。
関連付けのアイコンは、非タブモードでのウィンドウ左上のアイコンと、タブモードでのタブのアイコンに適用されます。
秀丸エディタ標準の関連付けがされているときに、それらが差し替えられます。
エクスプローラで見る通常の関連付けのアイコンは変化しません。
アイコンID
100番 秀丸エディタ本体ウィンドウのアイコン(32*32,16*16)
101番 新規作成時のアイコン(32*32,16*16)
102〜112番 標準の関連付け用アイコンを差し替えるアイコン(32*32,16*16)
(茶,水色,黄,赤,青,丸,TXT,C,CPP,H,空)
■5.省略可能版ビットマップ
V8.00以降対応のものを作る場合は、通常は156個分を一つのビットマップに入れなくてはいけないのですが、156個も作るのは大変なので、幾つかだけのボタンを飛び飛びに作って、それ以外は秀丸に任せることが可能です。
省略可能版を作るにはさらに以下のリソースを定義してください。
ビットマップID 500番〜 ...
飛び飛びに作成するビットマップ。
500番から順番に501番,502番…と複数定義できます。
ボタン一個あたりのサイズはボタンの数から自動的に決まり
ます。
ただし、ビットマップID 501番以降は、一個あたりのサイズ
は500番のものに従います。
ボタンの数などの情報は文字列ID 500番〜を定義してくださ
い。
最大で32個までが制限です。(531番まで)
文字列ID 4番 ...
モジュール内で定義されていないボタンのときどうするか。
"0"または"1"にすると標準のボタンになります。
"2"にすると、ボタンの絵柄を文字で表示します。
"3"にするとビットマップと文字を同時に表示します。
文字列ID 500番〜 ...
飛び飛びに作成するビットマップの情報。
500番から順番に501番,502番…と複数定義できます。
ビットマップID番号と文字列ID番号はそれぞれ対応していま
す。
文字列は"10,119,1"という感じでカンマ区切りで3つの数字
を書きます。以下のような意味です。
最初の数字
最初のボタンのボタン番号です。
次の数字
ボタンの数です。
文字列ID 500番だけは文字列ID 3番の数と同じ値になり
ます。
最後の数字
0 普通に表示
1 普通に表示
2 文字を表示
3 ビットマップと文字を同時に表示
例えば、メニュー1〜8とマクロ1〜10だけのボタンを自分の作ったボタンに置き換えるには、ボタン1個あたり25x14のビットマップを作成し、文字列は以下のようにします。
ID 1番 ... "3.14"
ID 2番 ... "0"
ID 3番 ... "8"
ID 4番 ... "1"
ID 500番 ... "87,8,0"
ID 501番 ... "95,10,0"
文字列を省略した場合には、以下の値がデフォルトとなります。
ID 4番 ... "0"
ID 500番 ... "0,129,0"
ID 501番〜 ... "0,0,0"