public MainWindowMenu() { _idToMenu = new TypedSequentialTable<string, MainMenuItem>(); _fileMenu = CreateMainMenu("Menu.File", "org.poderosa.menu.file"); _editMenu = CreateMainMenu("Menu.Edit", "org.poderosa.menu.edit"); _consoleMenu = CreateMainMenu("Menu.Console", "org.poderosa.menu.console"); _toolMenu = CreateMainMenu("Menu.Tool", "org.poderosa.menu.tool"); _windowMenu = CreateMainMenu("Menu.Window", "org.poderosa.menu.window"); _pluginMenu = CreateMainMenu("Menu.Plugin", "org.poderosa.menu.plugin"); _helpMenu = CreateMainMenu("Menu.Help", "org.poderosa.menu.help"); _splitMenuGroup = new SplitMenuGroup(); #if !UNITTEST _windowMenu.ExtensionPoint.RegisterExtension(_splitMenuGroup); _windowMenu.ExtensionPoint.RegisterExtension(new CloseAllMenuGroup(_splitMenuGroup)); _windowMenu.ExtensionPoint.RegisterExtension(new SetTabRowCountMenuGroup(_splitMenuGroup)); _windowMenu.ExtensionPoint.RegisterExtension(new DocActivationMenuGroup()); _fileMenu.ExtensionPoint.RegisterExtension(new NewWindowMenuGroup()); _fileMenu.ExtensionPoint.RegisterExtension(new QuitMenuGroup()); _editMenu.ExtensionPoint.RegisterExtension(new CopyGroup()); _editMenu.ExtensionPoint.RegisterExtension(new PasteGroup()); _consoleMenu.ExtensionPoint.RegisterExtension(new CloseDocumentGroup()); _pluginMenu.ExtensionPoint.RegisterExtension(new DefaultPluginMenuGroup()); _helpMenu.ExtensionPoint.RegisterExtension(new DefaultHelpMenuGroup()); #endif }
public static ToolStripMenuItem CreateMenuItem(MainMenuItem item, ICommandTarget target) { item.Create(); ToolStripMenuItem ui_menu = new ToolStripMenuItem(); ui_menu.DropDownOpening += new EventHandler(OnRootPopupMenu); ui_menu.Text = item.Text; ui_menu.Tag = new MenuItemTag(null, item, target); ui_menu.Enabled = true; //メニュー項目を遅延作成させるためDropDownOpeningイベントを使ったが、このイベントは //「子メニュー項目がなく、キーボードでメニューが選択されたとき」には発生しない。結果、キーボードでのメニュー選択に支障が出る。 //一応ダミー項目をセットするなどで回避できそうだが、面倒なのでここで一回自前でイベントを出して OnRootPopupMenu(ui_menu, null); return ui_menu; }
private MainMenuItem CreateMainMenu(string text_id, string extension_point_name) { StringResource str = CoreUtil.Strings; MainMenuItem item = new MainMenuItem(text_id, extension_point_name, _idToMenu.Count); _idToMenu.Add(extension_point_name, item); return item; }
public static ToolStripMenuItem CreateMenuItem(MainMenuItem item, ICommandTarget target) { item.Create(); ToolStripMenuItem ui_menu = new ToolStripMenuItem(); ui_menu.DropDownOpening += new EventHandler(OnRootPopupMenu); ui_menu.Text = item.Text; ui_menu.Tag = new MenuItemTag(null, item, target); ui_menu.Enabled = true; //���j���[���ڂ�x���쐬�����邽��DropDownOpening�C�x���g��g�������A���̃C�x���g�� //�u�q���j���[���ڂ��Ȃ��A�L�[�{�[�h�Ń��j���[���I����ꂽ�Ƃ��v�ɂ͔������Ȃ��B���ʁA�L�[�{�[�h�ł̃��j���[�I��Ɏx�Ⴊ�o��B //�ꉞ�_�~�[���ڂ�Z�b�g����Ȃǂʼn��ł����������A�ʓ|�Ȃ̂ł����ň�O�ŃC�x���g��o���� OnRootPopupMenu(ui_menu, null); return ui_menu; }