public override void OnChange(ICommandTarget target, int selectedIndex, object selectedItem) { ListItem <IShellScheme> item = selectedItem as ListItem <IShellScheme>; if (item != null) { IShellScheme scheme = item.Value; ITerminalControlHost session = TerminalCommandTarget.AsOpenTerminal(target); ITerminalSettings ts = session.TerminalSettings; ts.BeginUpdate(); ts.ShellScheme = scheme; ts.EndUpdate(); } }
private static CommandResult CmdToggleLocalEcho(ICommandTarget target) { ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); if (ts == null) { return(CommandResult.Failed); } ITerminalSettings settings = ts.TerminalSettings; settings.BeginUpdate(); settings.LocalEcho = !settings.LocalEcho; settings.EndUpdate(); return(CommandResult.Succeeded); }
private static CommandResult CmdEncoding(ICommandTarget target, EncodingType encoding) { ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); if (ts == null) { return(CommandResult.Failed); } ITerminalSettings settings = ts.TerminalSettings; settings.BeginUpdate(); settings.Encoding = encoding; settings.EndUpdate(); return(CommandResult.Succeeded); }
private static CommandResult CmdNewLine(ICommandTarget target, NewLine nl) { ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); if (ts == null) { return(CommandResult.Failed); } ITerminalSettings settings = ts.TerminalSettings; settings.BeginUpdate(); settings.TransmitNL = nl; settings.EndUpdate(); return(CommandResult.Succeeded); }
private static CommandResult ToggleIntelliSense(ICommandTarget target) { ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); if (ts == null) { return(CommandResult.Failed); } ITerminalSettings settings = ts.TerminalSettings; settings.BeginUpdate(); settings.EnabledCharTriggerIntelliSense = !settings.EnabledCharTriggerIntelliSense; settings.EndUpdate(); return(CommandResult.Succeeded); }
private static string GetSelectedText(ICommandTarget target, TextFormatOption opt) { CharacterDocumentViewer c = TerminalCommandTarget.AsCharacterDocumentViewer(target); if (c == null) { return(null); } ITextSelection s = c.ITextSelection; if (s.IsEmpty || !c.EnabledEx) { return(null); } return(s.GetSelectedText(opt)); }
public override int GetSelectedIndex(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); EncodingType val = session.TerminalSettings.Encoding; EnumListItem <EncodingType>[] items = (EnumListItem <EncodingType>[])_items; if (items != null) { for (int i = 0; i < items.Length; i++) { if (items[i].Value == val) { return(i); } } } return(-1); }
public override int GetSelectedIndex(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); NewLine val = session.TerminalSettings.TransmitNL; //TODO intへのキャストは乱暴だな EnumListItem <NewLine>[] items = (EnumListItem <NewLine>[])_items; if (items != null) { for (int i = 0; i < items.Length; i++) { if (items[i].Value == val) { return(i); } } } return(-1); }
public CommandResult InternalExecute(ICommandTarget target, params IAdaptable[] args) { IShellScheme ss = (IShellScheme)args[0].GetAdapter(typeof(IShellScheme)); Debug.Assert(ss != null); ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); if (ts == null) { return(CommandResult.Failed); } ITerminalSettings settings = ts.TerminalSettings; settings.BeginUpdate(); settings.ShellScheme = ss; settings.EndUpdate(); return(CommandResult.Succeeded); }
private static CommandResult CmdCopyToFile(ICommandTarget target) { string text = GetSelectedText(target, TextFormatOption.Default); if (text == null) { return(CommandResult.Ignored); } IPoderosaMainWindow window = TerminalCommandTarget.AsTerminal(target).OwnerWindow; SaveFileDialog dlg = new SaveFileDialog(); //dlg.InitialDirectory = GApp.Options.DefaultFileDir; dlg.Title = GEnv.Strings.GetString("Util.DestinationToSave"); dlg.Filter = "All Files(*.*)|*.*"; if (dlg.ShowDialog(window.AsForm()) == DialogResult.OK) { StreamWriter wr = null; try { wr = new StreamWriter(new FileStream(dlg.FileName, FileMode.Create), Encoding.Default); wr.Write(text); return(CommandResult.Succeeded); } catch (Exception ex) { window.Warning(ex.Message); return(CommandResult.Failed); } finally { if (wr != null) { wr.Close(); } } } else { return(CommandResult.Cancelled); } }
private static CommandResult CmdClearBuffer(ICommandTarget target) { TerminalDocument doc = TerminalCommandTarget.AsTerminalDocument(target); if (doc == null) { return(CommandResult.Ignored); } ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); TerminalControl tc = TerminalCommandTarget.AsTerminalControl(target); lock (doc) { doc.Clear(); session.Terminal.AdjustTransientScrollBar(); if (tc != null) { tc.ITextSelection.Clear(); tc.Invalidate(); } } return(CommandResult.Succeeded); }
public override int GetSelectedIndex(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); return((int)session.TerminalSettings.Encoding); }
public bool IsEnabled(ICommandTarget target) { ITerminalControlHost ts = TerminalCommandTarget.AsOpenTerminal(target); return(ts != null); }
public override bool IsChecked(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); return(session.TerminalSettings.LocalEcho); }
public override bool IsChecked(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsOpenTerminal(target); return(session.TerminalSettings.EnabledCharTriggerIntelliSense); }
public override bool IsEnabled(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsOpenTerminal(target); return(session != null); }
public override int GetSelectedIndex(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsOpenTerminal(target); return(TerminalEmulatorPlugin.Instance.ShellSchemeCollection.IndexOf(session.TerminalSettings.ShellScheme)); }
public override bool IsEnabled(ICommandTarget target) { return(TerminalCommandTarget.AsOpenTerminal(target) != null); }
public override int GetSelectedIndex(ICommandTarget target) { ITerminalControlHost session = TerminalCommandTarget.AsTerminal(target); return((int)session.TerminalSettings.TransmitNL); //TODO intへのキャストは乱暴だな }