Hi Derell,

I would apply the widjet  " qx.ui.menu.Menu(); " only on the first column
(qx.ui.table.Table)

I used this code, but I can not make it work.

For example:

I would show the menu on
http://demo.qooxdoo.org/current/demobrowser/#table~Table_Events.html

only the first column (qx.ui.table.Table)

Thanks for your help.

Antonino

---------code-----------
function contextMenuHandlerEmpty (col, row, table, dataModel, contextMenu)
    {
      // Add our two choices
      var menuEntry;
      for (var i = 0; i <= 1; i++)
      {
        menuEntry = new qx.ui.menu.Button(i ? "On" : "Off");
        menuEntry.setUserData("value", i ? true : false)
        menuEntry.addListene("execute",
          function(e)
          {
            // Toggle the value
            dataModel.setValue(col, row, this.getUserData("value"));
          });
        contextMenu.add(menuEntry);
      }

      return true;

},

function createRandomRows(rowCount) {
  var rowData = [];
  var now = new Date().getTime();
  var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
  var nextId = 0;
  for (var row = 0; row < rowCount; row++) {
    var date = new Date(now + Math.random() * dateRange - dateRange / 2);
    rowData.push([ nextId++, Math.random() * 10000, date, (Math.random() >
0.5) ]);
  }
  return rowData;
}


// window
var win = new qx.ui.window.Window("Table").set({
  layout : new qx.ui.layout.Grow(),
  allowClose: false,
  allowMinimize: false,
  contentPadding: 0
});
this.getRoot().add(win);
win.moveTo(30, 40);
win.open();

// table model
var tableModel = new qx.ui.table.model.Simple();
tableModel.setColumns([ "ID", "A number", "A date", "Boolean" ]);
tableModel.setData(createRandomRows(1000));

// make second column editable
tableModel.setColumnEditable(1, true);

// table
var table = new qx.ui.table.Table(tableModel).set({
  decorator: null
})

var menu = new qx.ui.menu.Menu();
table.setContextMenuHandler(3,
contextMenuHandlerBoolean(1,1,table,tableModel,menu));    
win.add(table);

var tcm = table.getTableColumnModel();

// Display a checkbox in column 3
tcm.setDataCellRenderer(3, new qx.ui.table.cellrenderer.Boolean());

// use a different header renderer
tcm.setHeaderCellRenderer(2, new
qx.ui.table.headerrenderer.Icon("icon/16/apps/office-calendar.png", "A
date"));

-- 
View this message in context: 
http://n2.nabble.com/setContextMenuHandler-tp4819179p4825673.html
Sent from the qooxdoo mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to