/* put in 'DOM READY' handler */
function show_CS_search_menu()
{  
   //this.src = '/img/gear_picked.png'; 
//   gear_menu.current_row = this.row_number;
   gear_menu.gear_button_id = this.id;
   gear_menu.cue_key = this.cue_key;
   // don't let the user add this track to a bin if
   //  he isn't supposed to see it
   gear_menu.clearContent();

   cs_now = g_cue_sheets[g_cue_sheet_now];
   tracks_insert  = new Array();
   tracks_replace = new Array();

   // scary JS scoping problems strike again - must use 'j', not 'i'

   // special case insert at top
   o = new Object();
   o.onclick = new Object();
   o.onclick.fn = insert_CS_track_shim;
   o.onclick.obj = new Object();
   o.onclick.obj.cue_key = this.cue_key;
   o.onclick.obj.track_num = -1;
   o.text = "(first)";
   tracks_insert.push(o);

   for (j = 0; j < cs_now.tracks.length; j++)
   {  
      t = cs_now.tracks[j];
      o = new Object();
      o.onclick = new Object();
      o.onclick.fn = replace_CS_track_shim;
      o.onclick.obj = new Object();
      o.onclick.obj.cue_key = this.cue_key;
      o.onclick.obj.track_num = j;
      o.text = (j + 1) + ":" + t.descrip;
      tracks_replace.push(o);

      o = new Object();
      o.onclick = new Object();
      o.onclick.fn = insert_CS_track_shim;
      o.onclick.obj = new Object();
      o.onclick.obj.cue_key = this.cue_key;
      o.onclick.obj.track_num = j;
      o.text = (j + 1) + ":" + t.descrip;
      tracks_insert.push(o);
   }

   gear_menu.addItems([
      { text: "Insert after cue", 
         submenu: { id: 'submenu1',
         itemdata: tracks_insert
         }
      }]);

   gear_menu.addItems([
      { text: "Replace cue", 
         submenu: { id: 'submenu2',
         itemdata: tracks_replace 
         }
      }]);

   gear_menu.render(document.getElementById("all_divs"));
// this is NOT optional!
   gear_menu.cfg.setProperty('context', [this.id, 'tr','br']); 
   gear_menu.show();
}

function insert_CS_track_shim(p_sType, p_aArgs, p_oVals)
{  add_CS_track(p_oVals.cue_key, p_oVals.track_num);
}

function replace_CS_track_shim(p_sType, p_aArgs, p_oVals)
{  replace_CS_track(p_oVals.cue_key, p_oVals.track_num);
}


