Sorry, had top much to do!
So maybe this is helpful:
__makeTourTree : function()
{
var clazz = this;
var tree = new
qx.ui.treevirtual.TreeVirtual([this.tr("Vehicle"), this.tr("Time"),
this.tr("Journey Time"), this.tr("Reference"), this.tr("Transfer"),
this.tr("Postalcode"), this.tr("City"), this.tr("Street")]);
tree.set({
width : 100,
height: 50
});
tree.setAlwaysShowOpenCloseSymbol(true);
// Obtain the resize behavior object to manipulate
var resizeBehavior =
tree.getTableColumnModel().getBehavior();
// Ensure that the tree column remains sufficiently
wide
resizeBehavior.set(2, { width:50});
resizeBehavior.set(4, { width:30});
var dataModel = tree.getDataModel();
var renderer = new
qx.ui.table.cellrenderer.Image(16, 16);
tree.getTableColumnModel().setDataCellRenderer(4,
renderer);
//tree.setDataRowRenderer(new
asa.dispoRowRenderer());
var tcm = tree.getTableColumnModel();
//tcm.setDataCellRenderer(1, new
asa.dispoCellRenderer());
//tcm.setColumnWidth(2, 30);
//# setze die Zeilenhöhe
tree.setRowHeight(20);
//# mach spalte time editierbar
dataModel.setColumnEditable(1, true);
clazz.setColumnRenderer(tree, [1]);
tree.setContextMenu(clazz.__makeTransferContextMenu(tree));
//# Initialisiere Drop Funktion
tree.setDroppable(true);
tree.setDraggable(true);
tree.addListener("dataEdited",
clazz.onTourCellEdited, clazz);
tree.addListener("drop", function(e) {
if (e.supportsType("vehicle"))
{
var data = e.getData("vehicle");
var branch =
clazz.addTourBranch(tree, data);
tree.setFocusedCell(0,
branch.nodeId, true);
clazz.__rpc_saveTour(branch,
data.vhc_id, clazz.filterDate);
}
else if (e.supportsType("transfer"))
{
var data = e.getData("transfer");
var branch =
clazz.setTourTransfer(tree, data);
if (branch == null)
{
return;
}
//# Sortiere die Nodes nach
pickuptime aufsteigend
clazz.sortByColumn(tree, 1);
//# setze Transfer als getourt
var transferRowId = data.rowId;
var vehicle = branch.vehicle;
var driver = branch.columnData[3];
var tou_id = branch.tou_id;
var trn_id = data.trn_id;
clazz.setTour(transferRowId,
vehicle, driver, tou_id, trn_id);
}
else if (e.supportsType("driver"))
{
var data = e.getData("driver");
var branch =
clazz.setTourDriver(tree, data);
var driver = data.drv_forname + " "
+ data.drv_familyname;
var tou_id = branch.tou_id;
clazz.__rpc_saveTourDriver(tou_id,
data.drv_id);
clazz.updateDriver(tou_id, driver);
}
else if (e.supportsType("movetransfer"))
{
var data =
e.getData("movetransfer");
clazz.moveTransfer(tree, data);
}
});
tree.addListener("dragover", function(e)
{
if (e.supportsType("transfer") &&
tree.getFocusedRow() == null) {
e.preventDefault();
}
if (e.supportsType("driver") &&
tree.getFocusedRow() == null) {
e.preventDefault();
}
if (e.supportsType("movetransfer")) {
if (
clazz.getSelectedRowData(tree).length == 0)
{
e.preventDefault();
return;
}
var node =
clazz.getSelectedRowData(tree)[0][0];
if (node.type == 2)
{
e.preventDefault();
return;
}
}
});
tree.addListener("dragstart", function(e) {
e.addAction("move");
e.addType("movetransfer");
});
tree.addListener("droprequest", function(e)
{
var action = e.getCurrentAction();
var type = e.getCurrentType();
var result =
clazz.getSelectedRowData(tree)[0];
result =
dataModel.getNodeFromRow(result.rowId);
e.addData(type, result);
});
return tree;
},
__makeTransferTable : function()
{
var clazz = this;
var tableModel = new qx.ui.table.model.Simple();
tableModel.setColumns([this.tr("Time"),
this.tr("Vehicle"), this.tr("Driver"), this.tr("Order No."),
this.tr("Reference"), this.tr("Transfer"), this.tr("Postalcode"),
this.tr("City"), this.tr("Street"), this.tr("Passengers"),
this.tr("Person"), this.tr("Destination"), this.tr("Fly Date"), this.tr("Fly
Time"), this.tr("Fly No."), this.tr("Comments")],
["trn_pickup_time", "trn_vehicle", "trn_driver",
"trn_ord_id", "trn_ref_code", "trn_transfertype", "trn_postalcode",
"trn_city", "trn_street", "trn_passangers", "trn_person", "trn_destination",
"trn_fly_date", "trn_fly_time", "trn_fly_no", "trn_comment_dispo"]);
// Instantiate a table
var table = new qx.ui.table.Table(tableModel);
table.set
({
decorator : "main",
statusBarVisible : false,
width: 100,
height: 50
});
var tcm = table.getTableColumnModel();
//# Initialisiere Drag funtion
table.setDraggable(true);
table.setDroppable(true);
table.addListener("dragstart", function(e) {
e.addAction("copy");
e.addType("transfer");
});
table.addListener("droprequest", function(e)
{
var action = e.getCurrentAction();
var type = e.getCurrentType();
var result =
clazz.getSelectedRowData(table)[0];
e.addData(type, result);
});
table.addListener("drop", function(e) {
if (e.supportsType("movetransfer"))
{
var data =
e.getData("movetransfer");
//clazz.tourTree.getDataModel().prune(data.nodeId, true);
//clazz.tourTree.getDataModel().setData();
clazz.__rpc_removeTransferFromTour(data.trn_id);
}
});
table.addListener("dragover", function(e)
{
if (e.supportsType("movetransfer")) {
if (
clazz.getSelectedRowData(clazz.tourTree).length == 0)
{
e.preventDefault();
return;
}
var node =
clazz.getSelectedRowData(clazz.tourTree)[0][0];
if (node.type == 2)
{
e.preventDefault();
return;
}
}
else
{
e.preventDefault();
}
});
var tcm = table.getTableColumnModel();
tcm.setColumnWidth(5, 30);
var renderer = new
qx.ui.table.cellrenderer.Image(16, 16);
table.getTableColumnModel().setDataCellRenderer(5,
renderer);
return table;
},
Regards Sak
-----Ursprüngliche Nachricht-----
Von: Martin_GER [mailto:[email protected]]
Gesendet: Dienstag, 12. Oktober 2010 11:30
An: [email protected]
Betreff: Re: [qooxdoo-devel] Drag&Drop only by LIST
Hello,
due to the huge response to my question, I come to the conclusion that the
Drag&Drop function not often is used.
I assume that the funktionen was made just for "LIST".
Does anyone know whether the functions will be further developed.
--
View this message in context:
http://qooxdoo.678.n2.nabble.com/Drag-Drop-only-by-LIST-tp5622346p5625982.ht
ml
Sent from the qooxdoo mailing list archive at Nabble.com.
----------------------------------------------------------------------------
--
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3.
Spend less time writing and rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3.
Spend less time writing and rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel