/// <summary> /// <ja>設定ファイルからインポート</ja> /// </summary> public ExtendPasteOptions Import(ExtendPasteOptions src) { _useAction = ConvertItem(src._useAction); _highlightKeyword = ConvertItem(src._highlightKeyword); _showConfirmCheck = ConvertItem(src._showConfirmCheck); _afterSpecifiedTimePaste = ConvertItem(src._afterSpecifiedTimePaste); _pasteTime = ConvertItem(src._pasteTime); _ChangeDialogSize = ConvertItem(src._ChangeDialogSize); return(this); }
/// <summary> /// <ja>プラグイン実行</ja> /// </summary> public CommandResult InternalExecute(ICommandTarget target, params IAdaptable[] args) { IPoderosaView view; ITerminalSession session; // ビュー/セッション取得 if (!GetViewAndSession(target, out view, out session)) { return(CommandResult.Ignored); } // クリップボードデータ取得 var clipboardData = Clipboard.GetDataObject(); if (!clipboardData.GetDataPresent("Text")) { return(CommandResult.Ignored); } string data = (string)clipboardData.GetData("Text"); if (data == null) { return(CommandResult.Ignored); } // オプション取得 ExtendPasteOptions opt = ExtendPastePlugin.Instance.ExtendPasteOptionSupplier.OriginalOptions; // 改行存在チェック bool newLineFlg = ((data.IndexOfAny(new char[] { '\r', '\n' }) >= 0) || (data.Contains(Environment.NewLine))) ? true : false; // セッション名取得 //ITerminalSession sessionName = (ITerminalSession)view.Document.OwnerSession.GetAdapter(typeof(ITerminalSession)); // 確認ダイアログ表示 if (((opt.UseAction == UseAction.NewLine) && (newLineFlg)) || (opt.UseAction == UseAction.Always)) { IPoderosaForm poderosaForm = view.ParentForm; ExtendPasteDialog Form = new ExtendPasteDialog(data, newLineFlg, session.Caption); if (Form.ShowDialog(poderosaForm.AsForm()) != DialogResult.OK) { return(CommandResult.Ignored); } } // クリップボードデータ送信 StringReader reader = new StringReader(data); TerminalTransmission output = session.TerminalTransmission; output.SendTextStream(reader, data[data.Length - 1] == '\n', true); return(CommandResult.Succeeded); }
/// <summary> /// <ja>初期化</ja> /// </summary> public void InitializePreference(IPreferenceBuilder builder, IPreferenceFolder folder) { _originalFolder = folder; _originalOptions = new ExtendPasteOptions(_originalFolder); _originalOptions.DefineItems(builder); }
/// <summary> /// <ja>設定ファイルからインポート</ja> /// </summary> public ExtendPasteOptions Import(ExtendPasteOptions src) { _useAction = ConvertItem(src._useAction); _highlightKeyword = ConvertItem(src._highlightKeyword); _showConfirmCheck = ConvertItem(src._showConfirmCheck); _afterSpecifiedTimePaste = ConvertItem(src._afterSpecifiedTimePaste); _pasteTime = ConvertItem(src._pasteTime); _ChangeDialogSize = ConvertItem(src._ChangeDialogSize); return this; }