summaryrefslogtreecommitdiffstats
path: root/generic/tkOldConfig.c
diff options
context:
space:
mode:
Diffstat (limited to 'generic/tkOldConfig.c')
-rw-r--r--generic/tkOldConfig.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/generic/tkOldConfig.c b/generic/tkOldConfig.c
index 9ee2a14..135e83c 100644
--- a/generic/tkOldConfig.c
+++ b/generic/tkOldConfig.c
@@ -11,7 +11,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tkOldConfig.c,v 1.6 2000/03/07 00:09:08 ericm Exp $
+ * RCS: @(#) $Id: tkOldConfig.c,v 1.7 2000/05/10 00:09:39 ericm Exp $
*/
#include "tkPort.h"
@@ -486,6 +486,21 @@ DoConfig(interp, tkwin, specPtr, value, valueIsUid, widgRec)
if (Tk_GetRelief(interp, uid, (int *) ptr) != TCL_OK) {
return TCL_ERROR;
}
+
+ /*
+ * Not all widgets allow the link relief. If the given
+ * relief is "link" and this widget does not support it,
+ * display the "invalid relief" error message and return
+ * TCL_ERROR.
+ */
+
+ if ((*ptr == TK_RELIEF_LINK) && \
+ ((specPtr->specFlags & TK_CONFIG_LINK_OK) == 0)) {
+ Tcl_SetResult(interp, "invalid relief \"link\": must be "
+ "flat, groove, raised, ridge, solid, or sunken",
+ TCL_STATIC);
+ return TCL_ERROR;
+ }
break;
case TK_CONFIG_CURSOR:
case TK_CONFIG_ACTIVE_CURSOR: {