046ba5f4b21431e27abce7e7dea1c3fb8204dcfd
angie
  Mon Apr 25 16:56:29 2011 -0700
Feature #3476 (zap-to-edge arrows for OMIM tracks): toggle "Left Edge"and "Right Edge" default labels when display is in reverse mode.

diff --git src/hg/hgTracks/bedTrack.c src/hg/hgTracks/bedTrack.c
index 78d5061..081420d 100644
--- src/hg/hgTracks/bedTrack.c
+++ src/hg/hgTracks/bedTrack.c
@@ -602,33 +602,35 @@
 /* Free the beds in a track group that has
    beds as its items. */
 {
 bedFreeList(((struct bed **)(&tg->items)));
 }
 
 void simpleBedNextPrevEdge(struct track *tg, struct hvGfx *hvg, void *item, int x, int y, int w,
 			   int h, boolean next)
 /* Like linkedFeaturesNextPrevItem, but for simple bed which has no block structure so
  * this simply zaps us to the right/left edge of the feature.  Arrows have already been
  * drawn; here we figure out coords and draw a mapBox. */
 {
 struct bed4 *bed = item;
 char *mouseOverText = NULL;
 if (next)
-    mouseOverText = trackDbSettingClosestToHomeOrDefault(tg->tdb, "nextExonText", "Right Edge");
+    mouseOverText = trackDbSettingClosestToHomeOrDefault(tg->tdb, "nextExonText",
+							 revCmplDisp ? "Left Edge" : "Right Edge");
 else
-    mouseOverText = trackDbSettingClosestToHomeOrDefault(tg->tdb, "prevExonText", "Left Edge");
+    mouseOverText = trackDbSettingClosestToHomeOrDefault(tg->tdb, "prevExonText",
+							 revCmplDisp ? "Right Edge" : "Left Edge");
 int winSize = winEnd - winStart;
 int bufferToEdge = 0.05 * winSize;
 int newWinStart, newWinEnd;
 if (next)
     {
     newWinEnd = bed->chromEnd + bufferToEdge;
     newWinStart = newWinEnd - winSize;
     }
 else
     {
     newWinStart = bed->chromStart - bufferToEdge;
     newWinEnd = newWinStart + winSize;
     }
 mapBoxJumpTo(hvg, x, y, w, h, tg, chromName, newWinStart, newWinEnd, mouseOverText);
 }