public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _terminalEmulatorPlugin = (ITerminalEmulatorService)pm.FindPlugin("org.poderosa.terminalemulator", typeof(ITerminalEmulatorService)); Debug.Assert(_terminalEmulatorPlugin != null); TerminalUICommand.Register(_coreServices.CommandManager); TerminalUIMenuGroup uimenu = new TerminalUIMenuGroup(); LogMenuGroup logmenu = new LogMenuGroup(); //Console Menu IExtensionPoint consolemenu = pm.FindExtensionPoint("org.poderosa.menu.console"); consolemenu.RegisterExtension(uimenu); consolemenu.RegisterExtension(logmenu); IExtensionPoint contextmenu = pm.FindExtensionPoint("org.poderosa.terminalemulator.contextMenu"); contextmenu.RegisterExtension(uimenu); contextmenu.RegisterExtension(logmenu); IExtensionPoint documentContextMenu = pm.FindExtensionPoint("org.poderosa.terminalemulator.documentContextMenu"); documentContextMenu.RegisterExtension(uimenu); documentContextMenu.RegisterExtension(logmenu); IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); toolmenu.RegisterExtension(new ShellSchemeEditMenuGroup()); }
public static void Register(IPluginManager pm, ICommandManager cm) { StringResource sr = TEnv.Strings; ICommandCategory filecat = cm.CommandCategories.File; GeneralCommandImpl open = new GeneralCommandImpl("org.poderosa.sessions.openShortcutFile", sr, "Command.OpenShortcutFile", filecat, new ExecuteDelegate(OpenShortcutFile)); GeneralCommandImpl save = new GeneralCommandImpl("org.poderosa.sessions.saveShortcutFile", sr, "Command.SaveShortcutFile", filecat, new ExecuteDelegate(SaveShortcutFile), delegate(ICommandTarget target) { return(TerminalCommandTarget.AsTerminal(target) != null); }); cm.Register(open); cm.Register(save); IExtensionPoint filemenu = pm.FindExtensionPoint("org.poderosa.menu.file"); filemenu.RegisterExtension(new PoderosaMenuGroupImpl(new IPoderosaMenu[] { new PoderosaMenuItemImpl(open, sr, "Menu.OpenShortcutFile"), new PoderosaMenuItemImpl(save, sr, "Menu.SaveShortcutFile") }).SetPosition(PositionType.NextTo, CygwinPlugin.Instance.CygwinMenuGroupTemp)); ShortcutFileToolBarComponent tb = new ShortcutFileToolBarComponent(open, save); pm.FindExtensionPoint("org.poderosa.core.window.toolbar").RegisterExtension(tb); TerminalSessionsPlugin.Instance.SessionManager.AddActiveDocumentChangeListener(tb); }
/// <summary> /// Constructor /// </summary> /// <param name="poderosa">an instance of PoderosaWorld</param> public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _poderosaWorld = poderosa; _adapterManager = poderosa.AdapterManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _stringResource = new StringResource("Poderosa.Pipe.strings", typeof(PipePlugin).Assembly); poderosa.Culture.AddChangeListener(_stringResource); _terminalSessionsService = poderosa.PluginManager.FindPlugin("org.poderosa.terminalsessions", typeof(ITerminalSessionsService)) as ITerminalSessionsService; _terminalEmulatorService = poderosa.PluginManager.FindPlugin("org.poderosa.terminalemulator", typeof(ITerminalEmulatorService)) as ITerminalEmulatorService; _serializeService = poderosa.PluginManager.FindPlugin("org.poderosa.core.serializing", typeof(ISerializeService)) as ISerializeService; IExtensionPoint extSer = _coreServices.SerializerExtensionPoint; extSer.RegisterExtension(new PipeTerminalParameterSerializer()); extSer.RegisterExtension(new PipeTerminalSettingsSerializer()); _openPipeCommand = new OpenPipeCommand(); IPluginManager pm = poderosa.PluginManager; pm.FindExtensionPoint("org.poderosa.menu.file").RegisterExtension(new PipeMenuGroup(_openPipeCommand)); // Toolbar button has not been added yet //pm.FindExtensionPoint("org.poderosa.core.window.toolbar").RegisterExtension(new PipeToolBarComponent()); pm.FindExtensionPoint("org.poderosa.termianlsessions.terminalConnectionFactory").RegisterExtension(new PipeConnectionFactory()); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); Instance = this; IPluginManager pm = poderosa.PluginManager; _optionSupplier = new MRUOptionsSupplier(); _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _coreServices.PreferenceExtensionPoint.RegisterExtension(_optionSupplier); _protocolService = (IProtocolService)pm.FindPlugin("org.poderosa.protocols", typeof(IProtocolService)); _terminalSessionsService = (ITerminalSessionsService)pm.FindPlugin("org.poderosa.terminalsessions", typeof(ITerminalSessionsService)); //接続成功時にリスト更新 _mruList = new MRUList(this, pm); _coreServices.SessionManager.AddSessionListener(_mruList); pm.FindExtensionPoint("org.poderosa.menu.file").RegisterExtension(_mruList); pm.FindExtensionPoint("org.poderosa.terminalsessions.telnetSSHLoginDialogInitializer").RegisterExtension(_mruList); pm.FindExtensionPoint("org.poderosa.terminalsessions.loginDialogUISupport").RegisterExtension(_mruList); pm.FindExtensionPoint("org.poderosa.terminalsessions.terminalParameterStore").RegisterExtension(_mruList); _mruCommand = new OpenMRUCommand(); }
/// <summary> /// <ja>初期化</ja> /// </summary> public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; // 文字列リソース読み込み _stringResource = new StringResource("Poderosa.ExtendPaste.strings", typeof(ExtendPastePlugin).Assembly); ExtendPastePlugin.Instance.PoderosaWorld.Culture.AddChangeListener(_stringResource); // コマンド登録 IPluginManager pm = poderosa.PluginManager; IExtensionPoint extp_cmd = pm.FindExtensionPoint("org.poderosa.terminalsessions.pasteCommand"); extp_cmd.RegisterExtension(new ExtendPasteCommand()); // オプションパネル登録 IExtensionPoint extp_opt = pm.FindExtensionPoint("org.poderosa.optionpanel"); extp_opt.RegisterExtension(new ExtendPastePanelExtension()); // オプションクラス登録 _optionSupplier = new ExtendPasteOptionsSupplier(); _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _coreServices.PreferenceExtensionPoint.RegisterExtension(_optionSupplier); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); Instance = this; IPluginManager pm = poderosa.PluginManager; pm.FindExtensionPoint("org.poderosa.protocols.resultEventHandler").RegisterExtension(this); pm.FindExtensionPoint(ProtocolsPluginConstants.HOSTKEYCHECKER_EXTENSION).RegisterExtension(this); _acceptsHostKey = true; }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); TEnv.ReloadStringResource(); _terminalViewFactory = new TerminalViewFactory(); pm.FindExtensionPoint(WindowManagerConstants.VIEW_FACTORY_ID).RegisterExtension(_terminalViewFactory); //このViewFactoryはデフォ foreach (IViewManagerFactory mf in pm.FindExtensionPoint(WindowManagerConstants.MAINWINDOWCONTENT_ID).GetExtensions()) { mf.DefaultViewFactory = _terminalViewFactory; } //ログインダイアログのサポート用 pm.CreateExtensionPoint("org.poderosa.terminalsessions.telnetSSHLoginDialogInitializer", typeof(ITelnetSSHLoginDialogInitializer), this); pm.CreateExtensionPoint("org.poderosa.terminalsessions.loginDialogUISupport", typeof(ILoginDialogUISupport), this); pm.CreateExtensionPoint("org.poderosa.terminalsessions.terminalParameterStore", typeof(ITerminalSessionParameterStore), this); IExtensionPoint factory_point = pm.CreateExtensionPoint(TERMINAL_CONNECTION_FACTORY_ID, typeof(ITerminalConnectionFactory), this); _pasteCommandExt = pm.CreateExtensionPoint("org.poderosa.terminalsessions.pasteCommand", typeof(IPoderosaCommand), this); _terminalSessionsOptionSupplier = new TerminalSessionOptionsSupplier(); _coreServices.PreferenceExtensionPoint.RegisterExtension(_terminalSessionsOptionSupplier); //Add conversion for TerminalPane _paneBridgeAdapter = new PaneBridgeAdapter(); poderosa.AdapterManager.RegisterFactory(_paneBridgeAdapter); _startCommand = new StartCommand(factory_point); _reproduceCommand = new ReproduceCommand(); _coreServices.CommandManager.Register(_reproduceCommand); ReproduceMenuGroup rmg = new ReproduceMenuGroup(); IExtensionPoint consolemenu = pm.FindExtensionPoint("org.poderosa.menu.console"); consolemenu.RegisterExtension(rmg); IExtensionPoint contextmenu = pm.FindExtensionPoint("org.poderosa.terminalemulator.contextMenu"); contextmenu.RegisterExtension(rmg); IExtensionPoint documentContext = pm.FindExtensionPoint("org.poderosa.terminalemulator.documentContextMenu"); documentContext.RegisterExtension(rmg); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _stringResource = new StringResource("Poderosa.Macro.strings", typeof(MacroPlugin).Assembly); _instance.PoderosaWorld.Culture.AddChangeListener(_stringResource); IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _macroManager = new MacroManager(); _macroListCommand = new MacroListCommand(); _coreServices.CommandManager.Register(_macroListCommand); pm.FindExtensionPoint("org.poderosa.menu.tool").RegisterExtension(new MacroMenuGroup()); _coreServices.PreferenceExtensionPoint.RegisterExtension(_macroManager); ISessionManager sessionManager = poderosa.PluginManager.FindPlugin("org.poderosa.core.sessions", typeof(ISessionManager)) as ISessionManager; if (sessionManager != null) { sessionManager.AddSessionListener(_sessionBinder); } }
public MRUItemSerializer(IPluginManager pm) { _instance = this; _serializeService = (ISerializeService)pm.FindPlugin("org.poderosa.core.serializing", typeof(ISerializeService)); pm.FindExtensionPoint("org.poderosa.core.serializeElement").RegisterExtension(this); Debug.Assert(_serializeService != null); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; #if UNITTEST StartMode = StartMode.Slave; #else //NOTE Preferenceから取得するなどすべきか StartMode = StartMode.StandAlone; #endif //Coreアセンブリ内のプラグインを代表してここでAdapterFactoryをセット new CoreServices(poderosa); TabBar.Init(); IPluginManager pm = poderosa.PluginManager; pm.FindExtensionPoint("org.poderosa.root").RegisterExtension(this); pm.CreateExtensionPoint(WindowManagerConstants.MAINWINDOWCONTENT_ID, typeof(IViewManagerFactory), this); pm.CreateExtensionPoint(WindowManagerConstants.VIEW_FACTORY_ID, typeof(IViewFactory), this); pm.CreateExtensionPoint(WindowManagerConstants.VIEWFORMATEVENTHANDLER_ID, typeof(IViewFormatEventHandler), this); pm.CreateExtensionPoint(WindowManagerConstants.TOOLBARCOMPONENT_ID, typeof(IToolBarComponent), this); pm.CreateExtensionPoint(WindowManagerConstants.MAINWINDOWEVENTHANDLER_ID, typeof(IMainWindowEventHandler), this); pm.CreateExtensionPoint(WindowManagerConstants.FILEDROPHANDLER_ID, typeof(IFileDropHandler), this); AboutBoxUtil.DefineExtensionPoint(pm); _preferences = new WindowPreference(); pm.FindExtensionPoint(PreferencePlugin.EXTENSIONPOINT_NAME) .RegisterExtension(_preferences); pm.FindExtensionPoint(WindowManagerConstants.MAINWINDOWCONTENT_ID) .RegisterExtension(new DefaultViewManagerFactory()); _windows = new List <MainWindow>(); _popupWindows = new List <PopupViewContainer>(); _menu = new MainWindowMenu(); _selectionService = new SelectionService(this); _viewFactoryManager = new ViewFactoryManager(); CommandManagerPlugin.Instance.AddKeyBindChangeListener(this); poderosa.Culture.AddChangeListener(this); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; IPluginManager pm = poderosa.PluginManager; ICoreServices cs = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _commandManager = cs.CommandManager; Debug.Assert(_commandManager != null); SSHUtilCommand.Register(_commandManager); SSHUtilMenuGroup sshmenu = new SSHUtilMenuGroup(); IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); toolmenu.RegisterExtension(sshmenu); _keyAgent = new KeyAgent(); cs.PreferenceExtensionPoint.RegisterExtension(_keyAgent); pm.FindExtensionPoint(ProtocolsPluginConstants.RESULTEVENTHANDLER_EXTENSION).RegisterExtension(_keyAgent); }
public static void Register(IPluginManager pm, ICommandManager cm) { StringResource sr = TEnv.Strings; ICommandCategory filecat = cm.CommandCategories.File; GeneralCommandImpl open = new GeneralCommandImpl("org.poderosa.sessions.openShortcutFile", sr, "Command.OpenShortcutFile", filecat, new ExecuteDelegate(OpenShortcutFile)); GeneralCommandImpl save = new GeneralCommandImpl("org.poderosa.sessions.saveShortcutFile", sr, "Command.SaveShortcutFile", filecat, new ExecuteDelegate(SaveShortcutFile), delegate(ICommandTarget target) { return TerminalCommandTarget.AsTerminal(target) != null; }); cm.Register(open); cm.Register(save); IExtensionPoint filemenu = pm.FindExtensionPoint("org.poderosa.menu.file"); filemenu.RegisterExtension(new PoderosaMenuGroupImpl(new IPoderosaMenu[] { new PoderosaMenuItemImpl(open, sr, "Menu.OpenShortcutFile"), new PoderosaMenuItemImpl(save, sr, "Menu.SaveShortcutFile") }).SetPosition(PositionType.NextTo, CygwinPlugin.Instance.CygwinMenuGroupTemp)); ShortcutFileToolBarComponent tb = new ShortcutFileToolBarComponent(open, save); pm.FindExtensionPoint("org.poderosa.core.window.toolbar").RegisterExtension(tb); TerminalSessionsPlugin.Instance.SessionManager.AddActiveDocumentChangeListener(tb); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; IPluginManager pm = poderosa.PluginManager; _commandManager = (ICommandManager)pm.FindPlugin("org.poderosa.core.commands", typeof(ICommandManager)); _loginDialogCommand = new LoginDialogCommand(); _commandManager.Register(_loginDialogCommand); IExtensionPoint ep = pm.FindExtensionPoint("org.poderosa.menu.file"); _loginMenuGroup = new LoginMenuGroup(); ep.RegisterExtension(_loginMenuGroup); IExtensionPoint toolbar = pm.FindExtensionPoint("org.poderosa.core.window.toolbar"); _loginToolBarComponent = new LoginToolBarComponent(); toolbar.RegisterExtension(_loginToolBarComponent); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _stringResource = new StringResource("Poderosa.SerialPort.strings", typeof(SerialPortPlugin).Assembly); poderosa.Culture.AddChangeListener(_stringResource); IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); IExtensionPoint pt = _coreServices.SerializerExtensionPoint; pt.RegisterExtension(new SerialTerminalParamSerializer()); pt.RegisterExtension(new SerialTerminalSettingsSerializer()); _openSerialPortCommand = new OpenSerialPortCommand(); _coreServices.CommandManager.Register(_openSerialPortCommand); pm.FindExtensionPoint("org.poderosa.menu.file").RegisterExtension(new SerialPortMenuGroup()); pm.FindExtensionPoint("org.poderosa.core.window.toolbar").RegisterExtension(new SerialPortToolBarComponent()); pm.FindExtensionPoint("org.poderosa.termianlsessions.terminalConnectionFactory").RegisterExtension(new SerialConnectionFactory()); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; ICoreServices cs = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); poderosa.Culture.AddChangeListener(UsabilityPlugin.Strings); IPluginManager pm = poderosa.PluginManager; _commandManager = cs.CommandManager; Debug.Assert(_commandManager != null); _windowManager = cs.WindowManager; Debug.Assert(_windowManager != null); //Guevara AboutBox pm.FindExtensionPoint("org.poderosa.window.aboutbox").RegisterExtension(new GuevaraAboutBoxFactory()); //SSH KnownHost _sshKnownHosts = new SSHKnownHosts(); cs.PreferenceExtensionPoint.RegisterExtension(_sshKnownHosts); pm.FindExtensionPoint(ProtocolsPluginConstants.HOSTKEYCHECKER_EXTENSION).RegisterExtension(_sshKnownHosts); }
/// <summary> /// コンストラクタ /// </summary> public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; // 文字列リソース読み込み _stringResource = new Poderosa.StringResource("Contrib.ConnectProfile.strings", typeof(ConnectProfilePlugin).Assembly); ConnectProfilePlugin.Instance.PoderosaWorld.Culture.AddChangeListener(_stringResource); // コマンド登録 IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _terminalEmulatorPlugin = (ITerminalEmulatorService)pm.FindPlugin("org.poderosa.terminalemulator", typeof(ITerminalEmulatorService)); ConnectProfileCommand.Register(_coreServices.CommandManager); // メニューリスト作成 ConnectProfileMenuGroup menulist = new ConnectProfileMenuGroup(); ConnectProfileContextMenuGroup contextmenulist = new ConnectProfileContextMenuGroup(); // メニュー登録 IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); toolmenu.RegisterExtension(menulist); // コンテキストメニュー登録 IExtensionPoint contextmenu = pm.FindExtensionPoint("org.poderosa.terminalemulator.contextMenu"); contextmenu.RegisterExtension(contextmenulist); // 設定ファイル連携 _connectProfileOptionSupplier = new ConnectProfileOptionsSupplier(); _coreServices.PreferenceExtensionPoint.RegisterExtension(_connectProfileOptionSupplier); // 接続プロファイル _profiles = new ConnectProfileList(); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _stringResource = new StringResource("Poderosa.XZModem.strings", typeof(XZModemPlugin).Assembly); poderosa.Culture.AddChangeListener(_stringResource); IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _terminalEmulatorService = (ITerminalEmulatorService)pm.FindPlugin("org.poderosa.terminalemulator", typeof(ITerminalEmulatorService)); _startXZModemCommand = new StartXZModemCommand(); _coreServices.CommandManager.Register(_startXZModemCommand); IExtensionPoint consolemenu = pm.FindExtensionPoint(TerminalEmulatorConstants.TERMINALSPECIAL_EXTENSIONPOINT); consolemenu.RegisterExtension(new XZModemMenuGroup()); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _protocolOptionsSupplier = new ProtocolOptionsSupplier(); _poderosaLog = ((IPoderosaApplication)poderosa.GetAdapter(typeof(IPoderosaApplication))).PoderosaLog; _netCategory = new PoderosaLogCategoryImpl("Network"); IPluginManager pm = poderosa.PluginManager; RegisterTerminalParameterSerializers(pm.FindExtensionPoint("org.poderosa.core.serializeElement")); _connectionResultEventHandler = pm.CreateExtensionPoint(ProtocolsPluginConstants.RESULTEVENTHANDLER_EXTENSION, typeof(IConnectionResultEventHandler), this); pm.CreateExtensionPoint(ProtocolsPluginConstants.HOSTKEYCHECKER_EXTENSION, typeof(ISSHHostKeyVerifier2), ProtocolsPlugin.Instance); PEnv.Init((ICoreServices)poderosa.GetAdapter(typeof(ICoreServices))); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _strings = new StringResource("Poderosa.PortForwardingCommand.strings", typeof(PortForwardingCommandPlugin).Assembly); poderosa.Culture.AddChangeListener(_strings); IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _execPortForwardingCommand = new ExecPortForwardingCommand(); _coreServices.CommandManager.Register(_execPortForwardingCommand); IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); toolmenu.RegisterExtension(new PoderosaMenuGroupImpl( new IPoderosaMenu[] { new PoderosaMenuItemImpl(_execPortForwardingCommand, _strings, "Menu.PortForwarding") }, false)); }
/// <summary> /// コンストラクタ /// </summary> public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; // 文字列リソース読み込み _stringResource = new Poderosa.StringResource("Contrib.BroadcastCommand.strings", typeof(BroadcastCommandPlugin).Assembly); BroadcastCommandPlugin.Instance.PoderosaWorld.Culture.AddChangeListener(_stringResource); // メニュー登録 IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); _broadcastCommandCommand = new BroadcastCommandCommand(); _coreServices.CommandManager.Register(_broadcastCommandCommand); IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); toolmenu.RegisterExtension(new PoderosaMenuGroupImpl(new IPoderosaMenu[] { new PoderosaMenuItemImpl(_broadcastCommandCommand, BroadcastCommandPlugin.Strings, "Menu.BroadcastCommand") }, false)); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; //GranadosをロードするパスをProtocolsの場所に #if !MONOLITHIC AppDomain.CurrentDomain.SetupInformation.PrivateBinPath += ";" + ProtocolUtil.ProtocolsPluginHomeDir; #endif _protocolOptionsSupplier = new ProtocolOptionsSupplier(); _passphraseCache = new PassphraseCache(); _poderosaLog = ((IPoderosaApplication)poderosa.GetAdapter(typeof(IPoderosaApplication))).PoderosaLog; _netCategory = new PoderosaLogCategoryImpl("Network"); IPluginManager pm = poderosa.PluginManager; RegisterTerminalParameterSerializers(pm.FindExtensionPoint("org.poderosa.core.serializeElement")); _connectionResultEventHandler = pm.CreateExtensionPoint(ProtocolsPluginConstants.RESULTEVENTHANDLER_EXTENSION, typeof(IConnectionResultEventHandler), this); pm.CreateExtensionPoint(ProtocolsPluginConstants.HOSTKEYCHECKER_EXTENSION, typeof(ISSHHostKeyVerifier), ProtocolsPlugin.Instance); PEnv.Init((ICoreServices)poderosa.GetAdapter(typeof(ICoreServices))); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _stringResource = new StringResource("Poderosa.Usability.strings", typeof(OptionDialogPlugin).Assembly); poderosa.Culture.AddChangeListener(this); IPluginManager pm = poderosa.PluginManager; _coreServices = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); IExtensionPoint panel_ext = pm.CreateExtensionPoint(OPTION_PANEL_ID, typeof(IOptionPanelExtension), this); ICommandCategory dialogs = _coreServices.CommandManager.CommandCategories.Dialogs; _optionDialogCommand = new GeneralCommandImpl("org.poderosa.optiondialog.open", _stringResource, "Command.OptionDialog", dialogs, new ExecuteDelegate(OptionDialogCommand.OpenOptionDialog)).SetDefaultShortcutKey(Keys.Alt | Keys.Control | Keys.T); _detailedPreferenceCommand = new GeneralCommandImpl("org.poderosa.preferenceeditor.open", _stringResource, "Command.PreferenceEditor", dialogs, new ExecuteDelegate(OptionDialogCommand.OpenPreferenceEditor)); IExtensionPoint toolmenu = pm.FindExtensionPoint("org.poderosa.menu.tool"); _optionDialogMenuGroup = new PoderosaMenuGroupImpl(new IPoderosaMenuItem[] { new PoderosaMenuItemImpl(_optionDialogCommand, _stringResource, "Menu.OptionDialog"), new PoderosaMenuItemImpl(_detailedPreferenceCommand, _stringResource, "Menu.PreferenceEditor") }).SetPosition(PositionType.Last, null); toolmenu.RegisterExtension(_optionDialogMenuGroup); //基本のオプションパネルを登録 panel_ext.RegisterExtension(new DisplayOptionPanelExtension()); panel_ext.RegisterExtension(new TerminalOptionPanelExtension()); panel_ext.RegisterExtension(new PeripheralOptionPanelExtension()); panel_ext.RegisterExtension(new CommandOptionPanelExtension()); panel_ext.RegisterExtension(new SSHOptionPanelExtension()); panel_ext.RegisterExtension(new ConnectionOptionPanelExtension()); panel_ext.RegisterExtension(new GenericOptionPanelExtension()); }
public override void InitializePlugin(IPoderosaWorld poderosa) { base.InitializePlugin(poderosa); _instance = this; _optionSupplier = new TerminalOptionsSupplier(); _keepAlive = new KeepAlive(); _customKeySettings = new CustomKeySettings(); _shellSchemeCollection = new ShellSchemeCollection(); GEnv.Init(); IPluginManager pm = poderosa.PluginManager; ICoreServices cs = (ICoreServices)poderosa.GetAdapter(typeof(ICoreServices)); Debug.Assert(cs != null); cs.PreferenceExtensionPoint.RegisterExtension(_optionSupplier); cs.PreferenceExtensionPoint.RegisterExtension(_shellSchemeCollection); _coreServices = cs; //Serialize Service cs.SerializerExtensionPoint.RegisterExtension(new TerminalSettingsSerializer(pm)); _commandManager = cs.CommandManager; TerminalCommand.Register(_commandManager); TerminalSettingMenuGroup.Initialize(); //PromptChecker _promptCheckerWithTimer = new PromptCheckerWithTimer(); //Edit Menuに追加 IExtensionPoint editmenu = pm.FindExtensionPoint("org.poderosa.menu.edit"); editmenu.RegisterExtension(new AdvancedCopyPasteMenuGroup()); editmenu.RegisterExtension(new TerminalBufferMenuGroup()); editmenu.RegisterExtension(new SelectionMenuGroup()); //Console Menu : これは処置に困るところだが! IExtensionPoint consolemenu = pm.FindExtensionPoint("org.poderosa.menu.console"); consolemenu.RegisterExtension(new TerminalSettingMenuGroup()); consolemenu.RegisterExtension(new IntelliSenseMenuGroup()); //Context Menu _contextMenu = pm.CreateExtensionPoint(TerminalEmulatorConstants.TERMINAL_CONTEXT_MENU_EXTENSIONPOINT, typeof(IPoderosaMenuGroup), this); _contextMenu.RegisterExtension(new BasicCopyPasteMenuGroup()); _contextMenu.RegisterExtension(new TerminalSettingMenuGroup()); _contextMenu.RegisterExtension(new IntelliSenseMenuGroup()); //タブのコンテキストメニュー _documentContextMenu = pm.CreateExtensionPoint(TerminalEmulatorConstants.DOCUMENT_CONTEXT_MENU_EXTENSIONPOINT, typeof(IPoderosaMenuGroup), this); _documentContextMenu.RegisterExtension(new PoderosaMenuGroupImpl(new PoderosaMenuItemImpl( cs.CommandManager.Find("org.poderosa.core.session.closedocument"), GEnv.Strings, "Menu.DocumentClose"))); //ToolBar IExtensionPoint toolbar = pm.FindExtensionPoint("org.poderosa.core.window.toolbar"); TerminalToolBar terminaltoolbar = new TerminalToolBar(); toolbar.RegisterExtension(terminaltoolbar); GetSessionManager().AddActiveDocumentChangeListener(terminaltoolbar); //その他 Extension _intelliSenseExtension = pm.CreateExtensionPoint(TerminalEmulatorConstants.INTELLISENSE_CANDIDATE_EXTENSIONPOINT, typeof(IIntelliSenseCandidateExtension), this); _autoLogFileFormatter = pm.CreateExtensionPoint(TerminalEmulatorConstants.LOG_FILENAME_FORMATTER_EXTENSIONPOINT, typeof(IAutoLogFileFormatter), this); _dynamicCaptionFormatter = pm.CreateExtensionPoint(TerminalEmulatorConstants.DYNAMIC_CAPTION_FORMATTER_EXTENSIONPOINT, typeof(IDynamicCaptionFormatter), this); //Command Popup CommandResultSession.Init(poderosa); PopupStyleCommandResultRecognizer.CreateExtensionPointAndDefaultCommands(pm); // Preferences for PromptRecognizer cs.PreferenceExtensionPoint.RegisterExtension(PromptRecognizerPreferences.Instance); // Preferences for XTerm cs.PreferenceExtensionPoint.RegisterExtension(XTermPreferences.Instance); }