f2466fa926a779364d5d603f8b7680ebe932b0bc
tdreszer
Thu Nov 18 11:41:57 2010 -0800
Moved rightClick slected vis check icon to front to have text of all options line up
diff --git src/hg/js/hgTracks.js src/hg/js/hgTracks.js
index afbb922..1256431 100644
--- src/hg/js/hgTracks.js
+++ src/hg/js/hgTracks.js
@@ -1712,72 +1712,72 @@
}
function makeImgTag(img)
{
// Return img tag with explicit dimensions for img (dimensions are currently hardwired).
// This fixes the "weird shadow problem when first loading the right-click menu" seen in FireFox 3.X,
// which occurred b/c FF doesn't actually fetch the image until the menu is being shown.
return "
";
}
function loadContextMenu(img)
{
var menu = img.contextMenu(
function() {
var menu = [];
- var selectedImg = "
";
+ var selectedImg = makeImgTag("greenChecksm.png");
+ var blankImg = makeImgTag("invisible16.png");
var done = false;
if(selectedMenuItem && selectedMenuItem.id != null) {
var href = selectedMenuItem.href;
var isHgc, isGene;
if(href) {
isGene = href.match("hgGene");
isHgc = href.match("hgc");
}
var id = selectedMenuItem.id;
var rec = trackDbJson[id];
// XXXX what if select is not available (b/c trackControlsOnMain is off)?
// Move functionality to a hidden variable?
var select = $("select[name=" + id + "]");
var cur = select.val();
if(cur) {
select.children().each(function(index, o) {
var title = $(this).val();
- var str = title;
- if(title == cur) {
- str += selectedImg;
- }
+ var str =blankImg + " " + title;
+ if(title == cur)
+ str = selectedImg + " " + title;
var o = new Object();
o[str] = {onclick: function (menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, title); return true;}};
menu.push(o);
});
done = true;
} else {
if(rec) {
// XXXX check current state from a hidden variable.
var visibilityStrs = new Array("hide", "dense", "squish", "pack", "full");
for (i in visibilityStrs) {
// XXXX use maxVisibility and change hgTracks so it can hide subtracks
var o = new Object();
- var str = visibilityStrs[i];
- if(rec.canPack || (str != "pack" && str != "squish")) {
+ var str = blankImg + " " + visibilityStrs[i];
+ if(rec.canPack || (visibilityStrs[i] != "pack" && visibilityStrs[i] != "squish")) {
if(rec.localVisibility) {
- if(rec.localVisibility == str) {
- str += selectedImg;
+ if(visibilityStrs[i] == rec.localVisibility) {
+ str = selectedImg + " " + visibilityStrs[i];
}
- } else if(str == visibilityStrsOrder[rec.visibility]) {
- str += selectedImg;
+ } else if(visibilityStrs[i] == visibilityStrsOrder[rec.visibility]) {
+ str = selectedImg + " " + visibilityStrs[i];
}
o[str] = {onclick: makeContextMenuHitCallback(visibilityStrs[i])};
menu.push(o);
}
}
done = true;
}
}
if(done) {
var o = new Object();
var any = false;
if(isGene || isHgc) {
var title = selectedMenuItem.title || "feature";
o[makeImgTag("magnify.png") + " Zoom to " + title] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "selectWholeGene"); return true; }};
o[makeImgTag("dnaIcon.png") + " Get DNA for " + title] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "getDna"); return true; }};
@@ -1829,36 +1829,36 @@
}
//menu.push({"view image": {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "viewImg"); return true; }}});
}
if(selectedMenuItem && rec && rec["configureBy"] != 'none') {
// Add cfg options at just shy of end...
var o = new Object();
if(tdbIsLeaf(rec)) {
o[makeImgTag("wrench.png") + " Configure " + rec.shortLabel] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "hgTrackUi_popup"); return true; }};
if(rec.parentTrack != undefined)
o[makeImgTag("folderWrench.png") + " Configure " + rec.parentLabel + " track set..."] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "hgTrackUi_follow"); return true; }};
} else
o[makeImgTag("folderWrench.png") + " Configure " + rec.shortLabel + " track set..."] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "hgTrackUi_follow"); return true; }};
menu.push($.contextMenu.separator);
menu.push(o);
- menu.push($.contextMenu.separator);
}
// Add view image at end
var o = new Object();
o[makeImgTag("eye.png") + " View image"] = {onclick: function(menuItemClicked, menuObject) { contextMenuHit(menuItemClicked, menuObject, "viewImg"); return true; }};
+ menu.push($.contextMenu.separator);
menu.push(o);
return menu;
},
{
beforeShow: function(e) {
// console.log(mapItems[selectedMenuItem]);
selectedMenuItem = findMapItem(e);
// XXXX? blockUseMap = true;
},
hideCallback: function() {
// this doesn't work
warn("hideCallback");
}
});