Monotone-Parent: 3f4219a57994d48948bd4148cb90b8d4c2c820df

Monotone-Revision: 21947601e8d55a07243cb36a9943a7ddc4148e06

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2006-12-20T22:55:54
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2006-12-20 22:55:54 +00:00
parent 526c4e0934
commit 215a463847
4 changed files with 32 additions and 43 deletions

View File

@ -15,16 +15,14 @@ HTMLTableElement.prototype.selectRowsMatchingClass = function(className) {
var nodes = tbody.childNodes;
for (var i = 0; i < nodes.length; i++) {
var node = nodes.item(i);
if (node instanceof HTMLElement) {
var classStr = '' + node.getAttribute("class");
if (classStr.indexOf(className, 0) >= 0)
selectNode(node);
}
if (node instanceof HTMLElement
&& node.hasClassName(className))
node.select();
}
}
HTMLTableElement.prototype.deselectAll = function() {
var nodes = this.getSelectedRows();
for (var i = 0; i < nodes.length; i++)
deselectNode(nodes[i]);
nodes[i].deselect();
}

View File

@ -394,8 +394,8 @@ function onMailboxTreeItemClick(element)
var mailbox = element.parentNode.getAttribute("dataname");
if (topNode.selectedEntry)
deselectNode(topNode.selectedEntry);
selectNode(element);
topNode.selectedEntry.deselect();
element.select();
topNode.selectedEntry = element;
openMailbox(mailbox);
@ -478,7 +478,7 @@ function messageListCallback(http)
var selected = http.callbackData;
if (selected) {
var row = $('row_' + selected);
selectNode(row);
row.select();
}
configureMessageListEvents();
configureSortableTableHeaders();
@ -496,10 +496,10 @@ function onMessageContextMenu(event)
var topNode = $('messageList');
var selectedNodes = topNode.getSelectedRows();
for (var i = 0; i < selectedNodes.length; i++)
deselectNode (selectedNodes[i]);
selectedNodes[i].deselect();
topNode.menuSelectedRows = selectedNodes;
topNode.menuSelectedEntry = this;
selectNode(this);
this.select();
}
function onMessageContextMenuHide(event)
@ -507,13 +507,13 @@ function onMessageContextMenuHide(event)
var topNode = $('messageList');
if (topNode.menuSelectedEntry) {
deselectNode(topNode.menuSelectedEntry);
topNode.menuSelectedEntry.deselect();
topNode.menuSelectedEntry = null;
}
if (topNode.menuSelectedRows) {
var nodes = topNode.menuSelectedRows;
for (var i = 0; i < nodes.length; i++)
selectNode(nodes[i]);
nodes[i].select();
topNode.menuSelectedRows = null;
}
}
@ -538,11 +538,11 @@ function onFolderMenuClick(event, element, menutype)
var topNode = $('d');
if (topNode.selectedEntry)
deselectNode(topNode.selectedEntry);
topNode.selectedEntry.deselect();
if (topNode.menuSelectedEntry)
deselectNode(topNode.menuSelectedEntry);
topNode.menuSelectedEntry.deselect();
topNode.menuSelectedEntry = element;
selectNode(element);
element.select();
}
function onFolderMenuHide(event)
@ -550,11 +550,11 @@ function onFolderMenuHide(event)
var topNode = $('d');
if (topNode.menuSelectedEntry) {
deselectNode(topNode.menuSelectedEntry);
topNode.menuSelectedEntry.deselect();
topNode.menuSelectedEntry = null;
}
if (topNode.selectedEntry)
selectNode(topNode.selectedEntry);
topNode.selectedEntry.select();
}
function deleteCachedMessage(messageId) {
@ -807,8 +807,8 @@ function initMailboxSelection(mailboxName)
if (i < treeNodes.length) {
var links = document.getElementsByClassName("node", treeNodes[i]);
if (tree.selectedEntry)
deselectNode(tree.selectedEntry);
selectNode(links[0]);
tree.selectedEntry.deselect();
links[0].select();
tree.selectedEntry = links[0];
expandUpperTree(links[0]);
}

View File

@ -199,9 +199,9 @@ function onDaySelect(node)
// log ("table.selected: " + table.selected);
if (document.selectedDate)
deselectNode(document.selectedDate);
document.selectedDate.deselect();
selectNode(td);
td.select();
document.selectedDate = td;
changeCalendarDisplay( { "day": day } );
@ -297,7 +297,7 @@ function tasksListCallback(http)
if (http.callbackData) {
var selectedNodesId = http.callbackData;
for (var i = 0; i < selectedNodesId.length; i++)
selectNode($(selectedNodesId[i]));
$(selectedNodesId[i]).select();
}
}
else
@ -322,8 +322,8 @@ function restoreCurrentDaySelection(div)
if (day && day == currentDay) {
var td = elements[i].getParentWithTagName("td");
if (document.selectedDate)
deselectNode(document.selectedDate);
selectNode(td);
document.selectedDate.deselect();
td.select();
document.selectedDate = td;
}
}
@ -531,10 +531,10 @@ function onAppointmentContextMenu(event, element)
var selectedNodes = topNode.getSelectedRows();
topNode.menuSelectedRows = selectedNodes;
for (var i = 0; i < selectedNodes.length; i++)
deselectNode (selectedNodes[i]);
selectedNodes[i].deselect();
topNode.menuSelectedEntry = element;
selectNode(element);
element.select();
}
function onAppointmentContextMenuHide(event)
@ -542,14 +542,14 @@ function onAppointmentContextMenuHide(event)
var topNode = $("appointmentsList");
if (topNode.menuSelectedEntry) {
deselectNode(topNode.menuSelectedEntry);
topNode.menuSelectedEntry.deselect();
topNode.menuSelectedEntry = null;
}
if (topNode.menuSelectedRows) {
var nodeIds = topNode.menuSelectedRows;
for (var i = 0; i < nodeIds.length; i++) {
var node = $(nodeIds[i]);
selectNode (node);
node.select();
}
topNode.menuSelectedRows = null;
}
@ -730,7 +730,7 @@ function onCalendarSelectAppointment() {
if (row) {
var div = row.parentNode.parentNode.parentNode;
div.scrollTop = row.offsetTop - (div.offsetHeight / 2);
selectNode(row);
row.select();
}
}

View File

@ -335,20 +335,11 @@ function triggerOpenerCallback() {
/* selection mechanism */
function selectNode(node) {
node.addClassName('_selected');
}
function deselectNode(node) {
// log ("deselecting a node: '" + node.tagName + "'");
node.removeClassName('_selected');
}
function deselectAll(parent) {
for (var i = 0; i < parent.childNodes.length; i++) {
var node = parent.childNodes.item(i);
if (node.nodeType == 1)
deselectNode(node);
node.deselect();
}
}
@ -376,13 +367,13 @@ function onRowClick(event) {
&& (acceptMultiSelect(node.parentNode)
|| acceptMultiSelect(node.parentNode.parentNode))) {
if (isNodeSelected(node) == true) {
deselectNode(node);
node.deselect();
} else {
selectNode(node);
node.select();
}
} else {
deselectAll(node.parentNode);
selectNode(node);
node.select();
}
if (startSelection != node.parentNode.getSelectedNodes()) {