Index: vector/v.distance/main.c
===================================================================
--- vector/v.distance/main.c	(revision 38316)
+++ vector/v.distance/main.c	(working copy)
@@ -150,7 +150,7 @@
     to_field_opt->key = "to_layer";
     to_field_opt->label = _("Layer number (to)");
     to_field_opt->guisection = _("To");
-
+    
     out_opt = G_define_standard_option(G_OPT_V_OUTPUT);
     out_opt->key = "output";
     out_opt->required = NO;
@@ -206,6 +206,7 @@
     to_column_opt->description =
 	_("Column name of nearest feature (used with upload=to_attr)");
     to_column_opt->guisection = _("To");
+    to_field_opt->guidependency = G_store(to_column_opt->key);
 
     table_opt = G_define_standard_option(G_OPT_DB_TABLE);
     table_opt->gisprompt = "new_dbtable,dbtable,dbtable";
Index: lib/gis/parser.c
===================================================================
--- lib/gis/parser.c	(revision 38316)
+++ lib/gis/parser.c	(working copy)
@@ -233,7 +233,7 @@
  * format: <i>key=value</i>. Options identified as REQUIRED must be
  * specified by user on command line. The option string can either
  * specify a range of values (e.g. "10-100") or a list of acceptable
- * values (e.g. "red,orange,yellow").  Unless the option string is
+ * values (e.g. "red,orange,yellow"). Unless the option string is
  * NULL, user provided input will be evaluated agaist this string.
  *
  * \return pointer to an Option struct
@@ -269,7 +269,8 @@
     opt->description = NULL;
     opt->descriptions = NULL;
     opt->guisection = NULL;
-
+    opt->guidependency = NULL;
+    
     st->current_option = opt;
     st->n_opts++;
 
@@ -1444,6 +1445,11 @@
 		print_escaped_for_xml(stdout, opt->guisection);
 		fprintf(stdout, "\n\t\t</guisection>\n");
 	    }
+	    if (opt->guidependency) {
+		fprintf(stdout, "\t\t<guidependency>\n\t\t\t");
+		print_escaped_for_xml(stdout, opt->guidependency);
+		fprintf(stdout, "\n\t\t</guidependency>\n");
+	    }
 	    /* TODO:
 	     * - key_desc?
 	     * - there surely are some more. which ones?
Index: include/gis.h
===================================================================
--- include/gis.h	(revision 38316)
+++ include/gis.h	(working copy)
@@ -319,6 +319,9 @@
     struct Option *next_opt;	/* Pointer to next option struct    */
     const char *gisprompt;	/* Interactive prompt guidance      */
     const char *guisection;	/* GUI Layout guidance: ';' delimited heirarchical tree position */
+    const char *guidependency;  /* GUI dependency, list of options
+				   (separated by commas) to be updated
+				   if the value is chanched */
     int (*checker) ();		/* Routine to check answer or NULL  */
     int count;
 };

