home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / tcl / tkstep0.3b3 / tkstep0 / tkstep / tkEntry.c.diff < prev    next >
Encoding:
Text File  |  1996-07-08  |  6.7 KB  |  167 lines

  1. --- ../tk4.1/generic/tkEntry.c    Wed Mar 27 14:53:26 1996
  2. +++ tkEntry.c    Mon Jul  8 19:24:11 1996
  3. @@ -13,6 +13,12 @@
  4.   *
  5.   * SCCS: @(#) tkEntry.c 1.101 96/03/21 13:55:45
  6.   */
  7. +/*
  8. + * TkSTEP modifications Copyright
  9. + * by Alfredo K. Kojima 
  10. + */ 
  11. +
  12. +
  13.  
  14.  #include "default.h"
  15.  #include "tkPort.h"
  16. @@ -48,7 +54,7 @@
  17.       */
  18.  
  19.      Tk_3DBorder normalBorder;    /* Used for drawing border around whole
  20. -                 * window, plus used for background. */
  21. +                 * window, nor more used for background */    
  22.      int borderWidth;        /* Width of 3-D border around window. */
  23.      int relief;            /* 3-D effect: TK_RELIEF_RAISED, etc. */
  24.      XFontStruct *fontPtr;    /* Information about text font, or NULL. */
  25. @@ -73,7 +79,7 @@
  26.      int highlightWidth;        /* Width in pixels of highlight to draw
  27.                   * around widget when it has the focus.
  28.                   * <= 0 means don't draw a highlight. */
  29. -    XColor *highlightBgColorPtr;
  30. +    XColor *highlightBgColorPtr; 
  31.                  /* Color for drawing traversal highlight
  32.                   * area when highlight is off. */
  33.      XColor *highlightColorPtr;    /* Color for drawing traversal highlight. */
  34. @@ -169,6 +175,20 @@
  35.  #define XPAD 1
  36.  #define YPAD 1
  37.  
  38. +#define MAX_INTENSITY 65535
  39. +
  40. +
  41. +/*
  42. + * If you want to make Tk ignore attribute settings that may be violating
  43. + * NEXTSTEP(tm) styles leave DISABLE_FORCE_STEP undef'ed, otherwise define it
  44. + * somewhere
  45. + */
  46. +#ifndef DISABLE_FORCE_STEP
  47. +#  define DISABLE_CHANGE    TK_CONFIG_DONT_CHANGE_DEFAULT
  48. +#else
  49. +#  define DISABLE_CHANGE    0
  50. +#endif
  51. +
  52.  /*
  53.   * Information used for argv parsing.
  54.   */
  55. @@ -176,16 +196,16 @@
  56.  static Tk_ConfigSpec configSpecs[] = {
  57.      {TK_CONFIG_BORDER, "-background", "background", "Background",
  58.      DEF_ENTRY_BG_COLOR, Tk_Offset(Entry, normalBorder),
  59. -    TK_CONFIG_COLOR_ONLY},
  60. +    TK_CONFIG_COLOR_ONLY | DISABLE_CHANGE},
  61.      {TK_CONFIG_BORDER, "-background", "background", "Background",
  62.      DEF_ENTRY_BG_MONO, Tk_Offset(Entry, normalBorder),
  63. -    TK_CONFIG_MONO_ONLY},
  64. +    TK_CONFIG_MONO_ONLY | DISABLE_CHANGE},
  65.      {TK_CONFIG_SYNONYM, "-bd", "borderWidth", (char *) NULL,
  66.      (char *) NULL, 0, 0},
  67.      {TK_CONFIG_SYNONYM, "-bg", "background", (char *) NULL,
  68.      (char *) NULL, 0, 0},
  69.      {TK_CONFIG_PIXELS, "-borderwidth", "borderWidth", "BorderWidth",
  70. -    DEF_ENTRY_BORDER_WIDTH, Tk_Offset(Entry, borderWidth), 0},
  71. +    DEF_ENTRY_BORDER_WIDTH, Tk_Offset(Entry, borderWidth), DISABLE_CHANGE},
  72.      {TK_CONFIG_ACTIVE_CURSOR, "-cursor", "cursor", "Cursor",
  73.      DEF_ENTRY_CURSOR, Tk_Offset(Entry, cursor), TK_CONFIG_NULL_OK},
  74.      {TK_CONFIG_BOOLEAN, "-exportselection", "exportSelection",
  75. @@ -196,23 +216,26 @@
  76.      {TK_CONFIG_FONT, "-font", "font", "Font",
  77.      DEF_ENTRY_FONT, Tk_Offset(Entry, fontPtr), 0},
  78.      {TK_CONFIG_COLOR, "-foreground", "foreground", "Foreground",
  79. -    DEF_ENTRY_FG, Tk_Offset(Entry, fgColorPtr), 0},
  80. +    DEF_ENTRY_FG, Tk_Offset(Entry, fgColorPtr), DISABLE_CHANGE},
  81.      {TK_CONFIG_COLOR, "-highlightbackground", "highlightBackground",
  82.      "HighlightBackground", DEF_ENTRY_HIGHLIGHT_BG,
  83. -    Tk_Offset(Entry, highlightBgColorPtr), 0},
  84. +    Tk_Offset(Entry, highlightBgColorPtr), DISABLE_CHANGE},
  85.      {TK_CONFIG_COLOR, "-highlightcolor", "highlightColor", "HighlightColor",
  86. -    DEF_ENTRY_HIGHLIGHT, Tk_Offset(Entry, highlightColorPtr), 0},
  87. +    DEF_ENTRY_HIGHLIGHT, Tk_Offset(Entry, highlightColorPtr), 
  88. +    DISABLE_CHANGE},
  89.      {TK_CONFIG_PIXELS, "-highlightthickness", "highlightThickness",
  90.      "HighlightThickness",
  91. -    DEF_ENTRY_HIGHLIGHT_WIDTH, Tk_Offset(Entry, highlightWidth), 0},
  92. +    DEF_ENTRY_HIGHLIGHT_WIDTH, Tk_Offset(Entry, highlightWidth), 
  93. +        DISABLE_CHANGE},
  94.      {TK_CONFIG_BORDER, "-insertbackground", "insertBackground", "Foreground",
  95. -    DEF_ENTRY_INSERT_BG, Tk_Offset(Entry, insertBorder), 0},
  96. +    DEF_ENTRY_INSERT_BG, Tk_Offset(Entry, insertBorder),
  97. +        DISABLE_CHANGE},
  98.      {TK_CONFIG_PIXELS, "-insertborderwidth", "insertBorderWidth", "BorderWidth",
  99.      DEF_ENTRY_INSERT_BD_COLOR, Tk_Offset(Entry, insertBorderWidth),
  100. -    TK_CONFIG_COLOR_ONLY},
  101. +    TK_CONFIG_COLOR_ONLY|DISABLE_CHANGE},
  102.      {TK_CONFIG_PIXELS, "-insertborderwidth", "insertBorderWidth", "BorderWidth",
  103.      DEF_ENTRY_INSERT_BD_MONO, Tk_Offset(Entry, insertBorderWidth),
  104. -    TK_CONFIG_MONO_ONLY},
  105. +    TK_CONFIG_MONO_ONLY|DISABLE_CHANGE},
  106.      {TK_CONFIG_INT, "-insertofftime", "insertOffTime", "OffTime",
  107.      DEF_ENTRY_INSERT_OFF_TIME, Tk_Offset(Entry, insertOffTime), 0},
  108.      {TK_CONFIG_INT, "-insertontime", "insertOnTime", "OnTime",
  109. @@ -222,25 +245,25 @@
  110.      {TK_CONFIG_JUSTIFY, "-justify", "justify", "Justify",
  111.      DEF_ENTRY_JUSTIFY, Tk_Offset(Entry, justify), 0},
  112.      {TK_CONFIG_RELIEF, "-relief", "relief", "Relief",
  113. -    DEF_ENTRY_RELIEF, Tk_Offset(Entry, relief), 0},
  114. +    DEF_ENTRY_RELIEF, Tk_Offset(Entry, relief), DISABLE_CHANGE},
  115.      {TK_CONFIG_BORDER, "-selectbackground", "selectBackground", "Foreground",
  116.      DEF_ENTRY_SELECT_COLOR, Tk_Offset(Entry, selBorder),
  117. -    TK_CONFIG_COLOR_ONLY},
  118. +    TK_CONFIG_COLOR_ONLY | DISABLE_CHANGE},
  119.      {TK_CONFIG_BORDER, "-selectbackground", "selectBackground", "Foreground",
  120.      DEF_ENTRY_SELECT_MONO, Tk_Offset(Entry, selBorder),
  121. -    TK_CONFIG_MONO_ONLY},
  122. +    TK_CONFIG_MONO_ONLY | DISABLE_CHANGE},
  123.      {TK_CONFIG_PIXELS, "-selectborderwidth", "selectBorderWidth", "BorderWidth",
  124.      DEF_ENTRY_SELECT_BD_COLOR, Tk_Offset(Entry, selBorderWidth),
  125. -    TK_CONFIG_COLOR_ONLY},
  126. +    TK_CONFIG_COLOR_ONLY | DISABLE_CHANGE},
  127.      {TK_CONFIG_PIXELS, "-selectborderwidth", "selectBorderWidth", "BorderWidth",
  128.      DEF_ENTRY_SELECT_BD_MONO, Tk_Offset(Entry, selBorderWidth),
  129. -    TK_CONFIG_MONO_ONLY},
  130. +    TK_CONFIG_MONO_ONLY | DISABLE_CHANGE},
  131.      {TK_CONFIG_COLOR, "-selectforeground", "selectForeground", "Background",
  132.      DEF_ENTRY_SELECT_FG_COLOR, Tk_Offset(Entry, selFgColorPtr),
  133. -    TK_CONFIG_COLOR_ONLY},
  134. +    TK_CONFIG_COLOR_ONLY | DISABLE_CHANGE},
  135.      {TK_CONFIG_COLOR, "-selectforeground", "selectForeground", "Background",
  136.      DEF_ENTRY_SELECT_FG_MONO, Tk_Offset(Entry, selFgColorPtr),
  137. -    TK_CONFIG_MONO_ONLY},
  138. +    TK_CONFIG_MONO_ONLY | DISABLE_CHANGE},
  139.      {TK_CONFIG_STRING, "-show", "show", "Show",
  140.      DEF_ENTRY_SHOW, Tk_Offset(Entry, showChar), TK_CONFIG_NULL_OK},
  141.      {TK_CONFIG_UID, "-state", "state", "State",
  142. @@ -880,6 +903,9 @@
  143.      }
  144.  
  145.      oldExport = entryPtr->exportSelection;
  146. +    if (Tk_StrictMotif(entryPtr->tkwin)) {
  147. +    flags|=TK_CONFIG_CHECK_MY_FLAG;
  148. +    }        
  149.      if (Tk_ConfigureWidget(interp, entryPtr->tkwin, configSpecs,
  150.          argc, argv, (char *) entryPtr, flags) != TCL_OK) {
  151.      return TCL_ERROR;
  152. @@ -1046,9 +1072,13 @@
  153.       * layers are:  normal background, selection background, and
  154.       * insertion cursor background.
  155.       */
  156. -
  157. +/*
  158.      Tk_Fill3DRectangle(tkwin, pixmap, entryPtr->normalBorder,
  159.          0, 0, Tk_Width(tkwin), Tk_Height(tkwin), 0, TK_RELIEF_FLAT);
  160. + */
  161. +    XFillRectangle(entryPtr->display, pixmap, 
  162. +    Tk_3DBorderGC(entryPtr->tkwin, entryPtr->normalBorder, TK_3D_LIGHT_GC),
  163. +    0,0, Tk_Width(tkwin), Tk_Height(tkwin));
  164.      if (entryPtr->displayString == NULL) {
  165.      displayString = entryPtr->string;
  166.      } else {
  167.