MT4でカスタムメニュー, モーダルダイアログの追加。
公開日 : 2007-09-11 21:25:27
カスタムメニューとカスタムダイアログを登録してみた。Dialogのところでargsが設定できないっぽいのはちょっと...だけど、別のモードを作ってパラメタ設定してから $appと一緒に別の関数に渡してやればいいのであまり気にしていない (でもダイアログでも args設定できて欲しいと思った)。
というか、以下のページに載っていたそのまんまやってみただけだけど、SNAPZ Pro Xが楽しいので何となくのっけてみてます。
こういった標準的に用意されている拡張方法に沿って開発すると一貫したUIっちゅうもんが保てるのだね。
ちなみにメニューは左からcreate(新規作成), manage(一覧), design(デザイン), prefs(設定/ブログ), tools(ツール/システム)という名前になっている。orderのところでどんな数字を指定するかで表示順を設定できるのだが、このあたりは /Lib/MT/App/CMS.pm を見てください、ということで。
sub init_registry {
my $plugin = shift;
$plugin->registry({
applications => {
cms => {
menus => {
'create:example_dialog' => {
label => 'Dialog Sample',
dialog => 'select_dialog',
order => 99,
permission => 'publish_post',
view => "blog",
},
'manage:example_menu' => {
label => 'Menu Sample',
mode => 'select_menu',
order => 999,
args => { foo => 'bar',
bar => 'buzz' },
permission => 'publish_post',
},
},
methods => {
select_dialog =>
'MT::Plugin::Menu::select_dialog',
select_menu =>
'MT::Plugin::Menu::select_menu',
},
},
},
});
}
一応サンプルもあげておきますね。