Develop and Download Open Source Software

Browse Subversion Repository

Diff of /trunk/teraterm/teraterm/vtterm.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3904 by doda, Sat May 22 06:57:02 2010 UTC revision 3916 by doda, Wed May 26 07:13:46 2010 UTC
# Line 122  static int NewKeyId, NewKeyLen; Line 122  static int NewKeyId, NewKeyLen;
122    
123  static _locale_t CLocale = NULL;  static _locale_t CLocale = NULL;
124    
125  void ResetSBuffers()  void ResetSBuffer(PStatusBuff sbuff)
126  {  {
127    SBuff1.CursorX = 0;    sbuff->CursorX = 0;
128    SBuff1.CursorY = 0;    sbuff->CursorY = 0;
129    SBuff1.Attr = DefCharAttr;    sbuff->Attr = DefCharAttr;
130    if (ts.Language==IdJapanese)    if (ts.Language==IdJapanese)
131    {    {
132      SBuff1.Gn[0] = IdASCII;      sbuff->Gn[0] = IdASCII;
133      SBuff1.Gn[1] = IdKatakana;      sbuff->Gn[1] = IdKatakana;
134      SBuff1.Gn[2] = IdKatakana;      sbuff->Gn[2] = IdKatakana;
135      SBuff1.Gn[3] = IdKanji;      sbuff->Gn[3] = IdKanji;
136      SBuff1.Glr[0] = 0;      sbuff->Glr[0] = 0;
137      if ((ts.KanjiCode==IdJIS) &&      if ((ts.KanjiCode==IdJIS) &&
138          (ts.JIS7Katakana==0))          (ts.JIS7Katakana==0))
139        SBuff1.Glr[1] = 2;  // 8-bit katakana        sbuff->Glr[1] = 2;  // 8-bit katakana
140      else      else
141        SBuff1.Glr[1] = 3;        sbuff->Glr[1] = 3;
142    }    }
143    else {    else {
144      SBuff1.Gn[0] = IdASCII;      sbuff->Gn[0] = IdASCII;
145      SBuff1.Gn[1] = IdSpecial;      sbuff->Gn[1] = IdSpecial;
146      SBuff1.Gn[2] = IdASCII;      sbuff->Gn[2] = IdASCII;
147      SBuff1.Gn[3] = IdASCII;      sbuff->Gn[3] = IdASCII;
148      SBuff1.Glr[0] = 0;      sbuff->Glr[0] = 0;
149      SBuff1.Glr[1] = 0;      sbuff->Glr[1] = 0;
150    }    }
151    SBuff1.AutoWrapMode = TRUE;    sbuff->AutoWrapMode = TRUE;
152    SBuff1.RelativeOrgMode = FALSE;    sbuff->RelativeOrgMode = FALSE;
153    }
154    
155    void ResetAllSBuffers()
156    {
157      ResetSBuffer(&SBuff1);
158    // copy SBuff1 to SBuff2    // copy SBuff1 to SBuff2
159    SBuff2 = SBuff1;    SBuff2 = SBuff1;
160    SBuff3 = SBuff1;    SBuff3 = SBuff1;
161  }  }
162    
163    void ResetCurSBuffer()
164    {
165        PStatusBuff Buff;
166    
167        if (AltScr) {
168            Buff = &SBuff3; // Alternate screen buffer
169        }
170        else {
171            Buff = &SBuff1; // Normal screen buffer
172        }
173        ResetSBuffer(Buff);
174        SBuff2 = *Buff;
175    }
176    
177  void ResetTerminal() /*reset variables but don't update screen */  void ResetTerminal() /*reset variables but don't update screen */
178  {  {
179    DispReset();    DispReset();
# Line 197  void ResetTerminal() /*reset variables b Line 216  void ResetTerminal() /*reset variables b
216    PrinterMode = FALSE;    PrinterMode = FALSE;
217    
218    // status buffers    // status buffers
219    ResetSBuffers();    ResetAllSBuffers();
220    
221    // Alternate Screen Buffer    // Alternate Screen Buffer
222    AltScr = FALSE;    AltScr = FALSE;
# Line 2337  void CSSetAttr()               // SGR Line 2356  void CSSetAttr()               // SGR
2356      BuffSetCurCharAttr(CharAttr);      BuffSetCurCharAttr(CharAttr);
2357    
2358      // status buffers      // status buffers
2359      ResetSBuffers();      ResetCurSBuffer();
2360    }    }
2361    
2362    void CSExc(BYTE b)    void CSExc(BYTE b)

Legend:
Removed from v.3904  
changed lines
  Added in v.3916

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26