6a13f35fee8b9e5551d6d582814488c516ac5ab3
angie
  Mon Apr 23 09:06:25 2012 -0700
Feature #1652 (Variant Annotation Tool): First draft of UI: mostactions trigger an ajax call that sends a JSON description of the
query (and what changed); the response is a JSON description of one
or more page sections, with new HTML content to reflect the change.
There is a lot of code lifted verbatim from hgTables that I intend
to libify when the dust settles a bit (search for "verbatim").
Things that work: group -> track -> table selection; reordering
updates notion of which source is primary (needed for filters);
removed sections are reset, and newly displayed sections always appear
at bottom; all buttons do something, even if it's not yet useful.  :)
To do: query execution, position input, output format change handling,
output field selection, and filters.

diff --git src/inc/dystring.h src/inc/dystring.h
index c4d4c26..892fb7a 100644
--- src/inc/dystring.h
+++ src/inc/dystring.h
@@ -1,23 +1,25 @@
 /* dystring - dynamically resizing string.
  *
  * This file is copyright 2002 Jim Kent, but license is hereby
  * granted for all use - public, private or commercial. */
 
 #ifndef DYSTRING_H	/* Wrapper to avoid including this twice. */
 #define DYSTRING_H
 
+#include "common.h"
+
 struct dyString
 /* Dynamically resizable string that you can do formatted
  * output to. */
     {
     struct dyString *next;	/* Next in list. */
     char *string;		/* Current buffer. */
     int bufSize;		/* Size of buffer. */
     int stringSize;		/* Size of string. */
     };
 
 struct dyString *newDyString(int initialBufSize);
 /* Allocate dynamic string with initial buffer size.  (Pass zero for default) */
 
 #define dyStringNew newDyString