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 4981 by doda, Wed Aug 15 15:34:55 2012 UTC revision 4984 by doda, Tue Aug 21 04:41:14 2012 UTC
# Line 3072  void RequestStatusString(unsigned char * Line 3072  void RequestStatusString(unsigned char *
3072                  break;                  break;
3073          case 'm':       // SGR          case 'm':       // SGR
3074                  if (StrBuff[1] == 0) {                  if (StrBuff[1] == 0) {
3075                          RepStr[0] = '0';                          len = _snprintf_s_l(RepStr, sizeof(RepStr), _TRUNCATE, "0$r0", CLocale);
                         RepStr[1] = '$';  
                         RepStr[2] = 'r';  
                         len = 3;  
3076                          if (CharAttr.Attr & AttrBold) {                          if (CharAttr.Attr & AttrBold) {
3077                                  RepStr[len++] = '1';                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";1", CLocale);
                                 RepStr[len++] = ';';  
3078                          }                          }
3079                          if (CharAttr.Attr & AttrUnder) {                          if (CharAttr.Attr & AttrUnder) {
3080                                  RepStr[len++] = '4';                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";4", CLocale);
                                 RepStr[len++] = ';';  
3081                          }                          }
3082                          if (CharAttr.Attr & AttrBlink) {                          if (CharAttr.Attr & AttrBlink) {
3083                                  RepStr[len++] = '5';                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";5", CLocale);
                                 RepStr[len++] = ';';  
3084                          }                          }
3085                          if (CharAttr.Attr & AttrReverse) {                          if (CharAttr.Attr & AttrReverse) {
3086                                  RepStr[len++] = '7';                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";7", CLocale);
                                 RepStr[len++] = ';';  
3087                          }                          }
3088                          if (CharAttr.Attr2 & Attr2Fore) {                          if (CharAttr.Attr2 & Attr2Fore) {
3089                                  int color = CharAttr.Fore;                                  int color = CharAttr.Fore;
# Line 3099  void RequestStatusString(unsigned char * Line 3092  void RequestStatusString(unsigned char *
3092                                  }                                  }
3093    
3094                                  if (color <= 7) {                                  if (color <= 7) {
3095                                          RepStr[len++] = '3';                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";3%d", CLocale, color);
                                         RepStr[len++] = '0' + color;  
                                         RepStr[len++] = ';';  
3096                                  }                                  }
3097                                  else if (color <= 15) {                                  else if (color <= 15) {
3098                                          if (ts.ColorFlag & CF_AIXTERM16) {                                          if (ts.ColorFlag & CF_AIXTERM16) {
3099                                                  RepStr[len++] = '9';                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";9%d", CLocale, color-8);
                                                 RepStr[len++] = '0' + color - 8;  
                                                 RepStr[len++] = ';';  
3100                                          }                                          }
3101                                          else if (ts.ColorFlag & CF_XTERM256) {                                          else if (ts.ColorFlag & CF_XTERM256) {
3102                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, "38;5;%d;", CLocale, color);                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";38;5;%d", CLocale, color);
3103                                          }                                          }
3104                                          else if (ts.ColorFlag & CF_PCBOLD16) {                                          else if (ts.ColorFlag & CF_PCBOLD16) {
3105                                                  RepStr[len++] = '3';                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";3%d", CLocale, color-8);
                                                 RepStr[len++] = '0' + color - 8;  
                                                 RepStr[len++] = ';';  
3106                                          }                                          }
3107                                  }                                  }
3108                                  else if (ts.ColorFlag & CF_XTERM256) {                                  else if (ts.ColorFlag & CF_XTERM256) {
3109                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, "38;5;%d;", CLocale, color);                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";38;5;%d", CLocale, color);
3110                                  }                                  }
3111                          }                          }
3112                          if (CharAttr.Attr2 & Attr2Back) {                          if (CharAttr.Attr2 & Attr2Back) {
# Line 3128  void RequestStatusString(unsigned char * Line 3115  void RequestStatusString(unsigned char *
3115                                          color += 8;                                          color += 8;
3116                                  }                                  }
3117                                  if (color <= 7) {                                  if (color <= 7) {
3118                                          RepStr[len++] = '4';                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";4%d", CLocale, color);
                                         RepStr[len++] = '0' + color;  
                                         RepStr[len++] = ';';  
3119                                  }                                  }
3120                                  else if (color <= 15) {                                  else if (color <= 15) {
3121                                          if (ts.ColorFlag & CF_AIXTERM16) {                                          if (ts.ColorFlag & CF_AIXTERM16) {
3122                                                  RepStr[len++] = '1';                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";10%d", CLocale, color-8);
                                                 RepStr[len++] = '0';  
                                                 RepStr[len++] = '0' + color - 8;  
                                                 RepStr[len++] = ';';  
3123                                          }                                          }
3124                                          else if (ts.ColorFlag & CF_XTERM256) {                                          else if (ts.ColorFlag & CF_XTERM256) {
3125                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, "48;5;%d;", CLocale, color);                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";48;5;%d", CLocale, color);
3126                                          }                                          }
3127                                          else if (ts.ColorFlag & CF_PCBOLD16) {                                          else if (ts.ColorFlag & CF_PCBOLD16) {
3128                                                  RepStr[len++] = '4';                                                  len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";4%d", CLocale, color-8);
                                                 RepStr[len++] = '0' + color - 8;  
                                                 RepStr[len++] = ';';  
3129                                          }                                          }
3130                                  }                                  }
3131                                  else if (ts.ColorFlag & CF_XTERM256) {                                  else if (ts.ColorFlag & CF_XTERM256) {
3132                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, "48;5;%d;", CLocale, color);                                          len += _snprintf_s_l(&RepStr[len], sizeof(RepStr) - len, _TRUNCATE, ";48;5;%d", CLocale, color);
3133                                  }                                  }
3134                          }                          }
                         if (len == 3) {  
                                 RepStr[len++] = '0';  
                         }  
                         else {  
                                 len--;  
                         }  
3135                          RepStr[len++] = 'm';                          RepStr[len++] = 'm';
3136                          RepStr[len] = 0;                          RepStr[len] = 0;
3137                  }                  }

Legend:
Removed from v.4981  
changed lines
  Added in v.4984

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