651f959d7553ee0256b1e0b37ffa83d64709511d
lrnassar
  Mon Mar 16 17:57:16 2026 -0700
Adding accessible labels to form controls across main CGI pages. Extends cheapcgi and hui libraries with aria-label support for track visibility dropdowns, and adds <label> elements to hgBlat, hgTables, hgPcr, and hgGateway form controls. Also adds Form Control Labels section to accessibility page. refs #37253

diff --git src/hg/inc/hui.h src/hg/inc/hui.h
index 4dae902247f..6eb630cc7e6 100644
--- src/hg/inc/hui.h
+++ src/hg/inc/hui.h
@@ -207,30 +207,38 @@
 
 enum trackVisibility hTvFromString(char *s);
 /* Given a string representation of track visibility, return as
  * equivalent enum. */
 
 enum trackVisibility hTvFromStringNoAbort(char *s);
 /* Given a string representation of track visibility, return as
  * equivalent enum. */
 
 char *hStringFromTv(enum trackVisibility vis);
 /* Given enum representation convert to string. */
 
 /* Standard width for visibility dropdowns */
 #define TV_DROPDOWN_STYLE "width: 70px"
 
+void hTvDropDownClassVisOnlyAndExtraWithLabel(char *varName, enum trackVisibility vis,
+                                     boolean canPack, char *class, char *visOnly,
+                                     struct slPair *events, char *label);
+/* Make track visibility drop down for varName with style class, optional aria-label,
+	and potentially limited to visOnly */
+#define hTvDropDownClassVisOnlyWithLabel(varName,vis,canPack,class,visOnly,label) \
+        hTvDropDownClassVisOnlyAndExtraWithLabel(varName,vis,canPack,class,visOnly,NULL,label)
+
 void hTvDropDownClassVisOnlyAndExtra(char *varName, enum trackVisibility vis,
                                      boolean canPack, char *class, char *visOnly, struct slPair *events);
 /* Make track visibility drop down for varName with style class,
 	and potentially limited to visOnly */
 #define hTvDropDownClassVisOnly(varName,vis,canPack,class,visOnly) \
         hTvDropDownClassVisOnlyAndExtra(varName,vis,canPack,class,visOnly,NULL)
 
 void hTvDropDownClassWithJavascript(char *varName, char *id, enum trackVisibility vis, boolean canPack,
                                     char *class, struct slPair *events);
 
 /* return a NULL-terminated array of char* with possible track visibilities */
 char** hTvGetVizArr(enum trackVisibility vis, boolean canPack, char* visOnly);
 
 /* Make track visibility drop down for varName with style class and javascript */
 #define hTvDropDownClass(varName,vis,canPack,class) \