Ejemplo n.º 1
0
 public XTerm(ConnectionTag tag, ICharDecoder decoder)
     : base(tag, decoder)
 {
     _wrapAroundMode = true;
     _tabStops = new bool[tag.Connection.TerminalWidth];
     InitTabStops();
 }
Ejemplo n.º 2
0
        public AbstractTerminal(TerminalInitializeInfo info)
        {
            //TerminalEmulatorPlugin.Instance.LaterInitialize();
            _session = info.Session;

            // //_invalidateParam = new InvalidateParam();
            _document = new TerminalDocument(info.InitialWidth, info.InitialHeight);
            //_document.SetOwner(_session.ISession);
            _afterExitLockActions = new List <AfterExitLockDelegate>();

            _decoder      = new ISO2022CharDecoder(this, EncodingProfile.Get(info.Session.TerminalSettings.Encoding));
            _terminalMode = TerminalMode.Normal;
            _logService   = new LogService(info.TerminalParameter, _session.TerminalSettings, _session.TerminalOptions);
            //_promptRecognizer = new PromptRecognizer(this);

            //if (info.Session.TerminalSettings.LogSettings != null)
            //{
            //    _logService.ApplyLogSettings(_session.TerminalSettings.LogSettings, false);
            //}

            //event handlers
            ITerminalSettings ts = info.Session.TerminalSettings;

            ts.ChangeEncoding  += delegate(EncodingType t) { this.Reset(); };
            _document.DebugFlag = ts.DebugFlag;

            _document.LineFeedRule = GetTerminalSettings().LineFeedRule; //(Telnet.LineFeedRule)
            //ToDo: Set Encoding
            //_document.Encoding = Encoding.GetEncoding("iso-2022-jp")
        }
Ejemplo n.º 3
0
        public VT100Terminal(ConnectionTag tag, ICharDecoder decoder) : base(tag, decoder)
        {
            _insertMode           = false;
            _scrollRegionRelative = false;
            bool sfu = tag.Connection.Param is SFUTerminalParam;

            _homePositionOnCSIJ2 = sfu;
        }
Ejemplo n.º 4
0
 public VT100Terminal(ConnectionTag tag, ICharDecoder decoder)
     : base(tag, decoder)
 {
     _insertMode = false;
     _scrollRegionRelative = false;
     bool sfu = tag.Connection.Param is SFUTerminalParam;
     _homePositionOnCSIJ2 = sfu;
 }
Ejemplo n.º 5
0
 //これはメインスレッドから呼び出すこと
 public virtual void FullReset()
 {
     lock (_tag.Document) {
         ChangeMode(TerminalMode.Normal);
         _tag.Document.ClearScrollingRegion();
         ResetInternal();
         _decoder = new JapaneseCharDecoder(_tag.Connection);
     }
 }
Ejemplo n.º 6
0
 //‚±‚ê‚̓ƒCƒ“ƒXƒŒƒbƒh‚©‚çŒÄ‚яo‚·‚±‚Æ
 public virtual void FullReset()
 {
     lock (_document) {
         ChangeMode(TerminalMode.Normal);
         _document.ClearScrollingRegion();
         ResetInternal();
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
     }
 }
Ejemplo n.º 7
0
 /// <summary>
 /// 操作の対象になるドキュメントと文字のエンコーディングを指定して構築
 /// </summary>
 public AbstractTerminal(ConnectionTag tag, ICharDecoder decoder)
 {
     _tag               = tag;
     _decoder           = decoder;
     _terminalMode      = TerminalMode.Normal;
     _currentdecoration = TextDecoration.Default;
     _manipulator       = new GLineManipulator(80);
     _bufferForMacro    = new StringBuilder();
     _signalForMacro    = new AutoResetEvent(false);
 }
Ejemplo n.º 8
0
 private void CleanupCommon()
 {
     if (!_cleanup)
     {
         _cleanup = true;
         _logService.Close(_document.CurrentLine);
         _document = null;
         _decoder  = null;
     }
 }
Ejemplo n.º 9
0
 /// <summary>
 /// ����̑ΏۂɂȂ�h�L�������g�ƕ����̃G���R�[�f�B���O��w�肵�č\�z
 /// </summary>
 public AbstractTerminal(ConnectionTag tag, ICharDecoder decoder)
 {
     _tag = tag;
     _decoder = decoder;
     _terminalMode = TerminalMode.Normal;
     _currentdecoration = TextDecoration.Default;
     _manipulator = new GLineManipulator(80);
     _bufferForMacro = new StringBuilder();
     _signalForMacro = new AutoResetEvent(false);
 }
Ejemplo n.º 10
0
        public void Reset()
        {
            var currentEncodingSetting = GetTerminalSettings().Encoding;

            if (_encodingProfile.Type != currentEncodingSetting)
            {
                _encodingProfile      = EncodingProfile.Create(currentEncodingSetting);
                _decoder              = new ISO2022CharDecoder(this, _encodingProfile);
                _unicodeCharConverter = _encodingProfile.CreateUnicodeCharConverter();
            }
        }
Ejemplo n.º 11
0
 //これはメインスレッドから呼び出すこと
 public virtual void FullReset()
 {
     lock (_document) {
         ChangeMode(TerminalMode.Normal);
         _document.ClearScrollingRegion();
         ResetInternal();
         _encodingProfile      = EncodingProfile.Create(GetTerminalSettings().Encoding);
         _decoder              = new ISO2022CharDecoder(this, _encodingProfile);
         _unicodeCharConverter = _encodingProfile.CreateUnicodeCharConverter();
     }
 }
Ejemplo n.º 12
0
 public void Reset()
 {
     //Encodingが同じ時は簡単に済ませることができる
     if (_decoder.Encoding.Type == _tag.Connection.Param.Encoding)
     {
         _decoder.Reset(_decoder.Encoding);
     }
     else
     {
         _decoder = new JapaneseCharDecoder(_tag.Connection);
     }
 }
Ejemplo n.º 13
0
 public void Reset()
 {
     //Encoding‚ª“¯‚¶Žž‚ÍŠÈ’P‚ɍς܂¹‚邱‚Æ‚ª‚Å‚«‚é
     if (_decoder.CurrentEncoding.Type == GetTerminalSettings().Encoding)
     {
         _decoder.Reset(_decoder.CurrentEncoding);
     }
     else
     {
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
     }
 }
Ejemplo n.º 14
0
 public void Reset()
 {
     //Encodingが同じ時は簡単に済ませることができる
     if (_decoder.CurrentEncoding.Type == GetTerminalSettings().Encoding)
     {
         _decoder.Reset(_decoder.CurrentEncoding);
     }
     else
     {
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
     }
 }
Ejemplo n.º 15
0
        public AbstractTerminal(TerminalInitializeInfo info)
        {
            TerminalEmulatorPlugin.Instance.LaterInitialize();

            _session = info.Session;

            //_invalidateParam = new InvalidateParam();
            _document = new TerminalDocument(info.InitialWidth, info.InitialHeight);
            _document.SetOwner(_session.ISession);
            _afterExitLockActions = new List <AfterExitLockDelegate>();

            _encodingProfile         = EncodingProfile.Create(info.Session.TerminalSettings.Encoding);
            _decoder                 = new ISO2022CharDecoder(this, _encodingProfile);
            _unicodeCharConverter    = _encodingProfile.CreateUnicodeCharConverter();
            _terminalMode            = TerminalMode.Normal;
            _currentdecoration       = TextDecoration.Default;
            _manipulator             = new GLineManipulator();
            _scrollBarValues         = new ScrollBarValues();
            _logService              = new LogService(info.TerminalParameter, _session.TerminalSettings);
            _promptRecognizer        = new PromptRecognizer(this);
            _intelliSense            = new IntelliSense(this);
            _commandResultRecognizer = new PopupStyleCommandResultRecognizer(this);

            if (info.Session.TerminalSettings.LogSettings != null)
            {
                _logService.ApplyLogSettings(_session.TerminalSettings.LogSettings, false);
            }

            //event handlers
            ITerminalSettings ts = info.Session.TerminalSettings;

            ts.ChangeEncoding += delegate(EncodingType t) {
                this.Reset();
            };
            ts.ChangeRenderProfile += delegate(RenderProfile prof) {
                TerminalControl tc = _session.TerminalControl;
                if (tc != null)
                {
                    tc.ApplyRenderProfile(prof);
                }
            };
        }
Ejemplo n.º 16
0
 public void Reset()
 {
     //Encoding���������͊ȒP�ɍς܂��邱�Ƃ��ł���
     if(_decoder.Encoding.Type==_tag.Connection.Param.Encoding)
         _decoder.Reset(_decoder.Encoding);
     else
         _decoder = new JapaneseCharDecoder(_tag.Connection);
 }
Ejemplo n.º 17
0
 public ContainerNumberValidator()
 {
     alphasymbolDecoder = new AlphasymbolDecoder();
     numberDecoder      = new NumberDecoder();
 }
Ejemplo n.º 18
0
 public void Reset()
 {
     //Encoding���������͊ȒP�ɍς܂��邱�Ƃ��ł���
     if (_decoder.CurrentEncoding.Type == GetTerminalSettings().Encoding)
         _decoder.Reset(_decoder.CurrentEncoding);
     else
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
 }
Ejemplo n.º 19
0
 //����̓��C���X���b�h����Ăяo������
 public virtual void FullReset()
 {
     lock (_document) {
         ChangeMode(TerminalMode.Normal);
         _document.ClearScrollingRegion();
         ResetInternal();
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
     }
 }
Ejemplo n.º 20
0
        public AbstractTerminal(TerminalInitializeInfo info)
        {
            TerminalEmulatorPlugin.Instance.LaterInitialize();

            _session = info.Session;

            //_invalidateParam = new InvalidateParam();
            _document = new TerminalDocument(info.InitialWidth, info.InitialHeight);
            _document.SetOwner(_session.ISession);
            _afterExitLockActions = new List<AfterExitLockDelegate>();

            _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(info.Session.TerminalSettings.Encoding));
            _terminalMode = TerminalMode.Normal;
            _currentdecoration = TextDecoration.Default;
            _manipulator = new GLineManipulator();
            _scrollBarValues = new ScrollBarValues();
            _logService = new LogService(info.TerminalParameter, _session.TerminalSettings);
            _promptRecognizer = new PromptRecognizer(this);
            _intelliSense = new IntelliSense(this);
            _commandResultRecognizer = new PopupStyleCommandResultRecognizer(this);

            if (info.Session.TerminalSettings.LogSettings != null)
                _logService.ApplyLogSettings(_session.TerminalSettings.LogSettings, false);

            //event handlers
            ITerminalSettings ts = info.Session.TerminalSettings;
            ts.ChangeEncoding += delegate(EncodingType t) {
                this.Reset();
            };
            ts.ChangeRenderProfile += delegate(RenderProfile prof) {
                TerminalControl tc = _session.TerminalControl;
                if (tc != null)
                    tc.ApplyRenderProfile(prof);
            };
        }
Ejemplo n.º 21
0
 public void Reset()
 {
     //Encodingが同じ時は簡単に済ませることができる
     if (_decoder.CurrentEncoding.Type == GetTerminalSettings().Encoding)
         _decoder.Reset(_decoder.CurrentEncoding);
     else
         _decoder = new ISO2022CharDecoder(this, EncodingProfile.Get(GetTerminalSettings().Encoding));
 }
Ejemplo n.º 22
0
 public EscapeSequenceTerminal(ConnectionTag tag, ICharDecoder decoder)
     : base(tag, decoder)
 {
     _escapeSequence = new StringBuilder();
     _processCharResult = ProcessCharResult.Processed;
 }
Ejemplo n.º 23
0
        protected ArrayList _savedScreen;         //別のバッファに以降したときにGLineを退避しておく

        public XTerm(ConnectionTag tag, ICharDecoder decoder) : base(tag, decoder)
        {
            _wrapAroundMode = true;
            _tabStops       = new bool[tag.Connection.TerminalWidth];
            InitTabStops();
        }
Ejemplo n.º 24
0
 public EscapeSequenceTerminal(ConnectionTag tag, ICharDecoder decoder) : base(tag, decoder)
 {
     _escapeSequence    = new StringBuilder();
     _processCharResult = ProcessCharResult.Processed;
 }
Ejemplo n.º 25
0
 //����̓��C���X���b�h����Ăяo������
 public virtual void FullReset()
 {
     lock(_tag.Document) {
         ChangeMode(TerminalMode.Normal);
         _tag.Document.ClearScrollingRegion();
         ResetInternal();
         _decoder = new JapaneseCharDecoder(_tag.Connection);
     }
 }