- Cleanups suggested by jag
- Use the busy cursor when loading/sorting/filtering a directory Not part of the build. git-svn-id: svn://10.0.0.236/branches/OUTLINER_FILEPICKER_BRANCH@95345 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -76,7 +76,9 @@ function filepickerLoad() {
|
||||
if ((filePickerMode == nsIFilePicker.modeOpen) ||
|
||||
(filePickerMode == nsIFilePicker.modeSave)) {
|
||||
|
||||
window.setCursor("wait");
|
||||
outlinerView.setFilter(filterTypes[0]);
|
||||
window.setCursor("auto");
|
||||
|
||||
/* build filter popup */
|
||||
var filterPopup = document.createElement("menupopup");
|
||||
@@ -152,7 +154,9 @@ function filepickerLoad() {
|
||||
function onFilterChanged(target)
|
||||
{
|
||||
var filterTypes = target.getAttribute("filters");
|
||||
window.setCursor("wait");
|
||||
outlinerView.setFilter(filterTypes);
|
||||
window.setCursor("auto");
|
||||
}
|
||||
|
||||
function onOK()
|
||||
@@ -313,13 +317,13 @@ function convertColumnIDtoSortType(columnID) {
|
||||
|
||||
switch (columnID) {
|
||||
case "FilenameColumn":
|
||||
sortKey = sortType_name;
|
||||
sortKey = nsFileView.SORTTYPE_NAME;
|
||||
break;
|
||||
case "FileSizeColumn":
|
||||
sortKey = sortType_size;
|
||||
sortKey = nsFileView.SORTTYPE_SIZE;
|
||||
break;
|
||||
case "LastModifiedColumn":
|
||||
sortKey = sortType_date;
|
||||
sortKey = nsFileView.SORTTYPE_DATE;
|
||||
break;
|
||||
default:
|
||||
dump("unsupported sort column: " + columnID + "\n");
|
||||
@@ -332,12 +336,8 @@ function convertColumnIDtoSortType(columnID) {
|
||||
|
||||
function handleColumnClick(columnID) {
|
||||
var sortType = convertColumnIDtoSortType(columnID);
|
||||
if (outlinerView.sortType == sortType) {
|
||||
// reverse the current sort
|
||||
outlinerView.sort(outlinerView.sortType, !outlinerView.reverseSort, false);
|
||||
} else {
|
||||
outlinerView.sort(sortType, false, false);
|
||||
}
|
||||
var sortOrder = (outlinerView.sortType == sortType) ? !outlinerView.reverseSort : false;
|
||||
outlinerView.sort(sortType, sortOrder, false);
|
||||
|
||||
// set the sort indicator on the column we are sorted by
|
||||
var sortedColumn = document.getElementById(columnID);
|
||||
@@ -456,7 +456,9 @@ function goUp() {
|
||||
|
||||
function gotoDirectory(directory) {
|
||||
addToHistory(directory.unicodePath);
|
||||
window.setCursor("wait");
|
||||
outlinerView.setDirectory(directory.unicodePath);
|
||||
window.setCursor("auto");
|
||||
sfile = directory;
|
||||
}
|
||||
|
||||
|
||||
@@ -34,10 +34,6 @@ const nsAtomService_CONTRACTID = "@mozilla.org/atom-service;1";
|
||||
|
||||
var gDateService = null;
|
||||
|
||||
const sortType_name = 1;
|
||||
const sortType_size = 2;
|
||||
const sortType_date = 3;
|
||||
|
||||
function numMatchingChars(str1, str2) {
|
||||
for (var i = 0; ((i < Math.min(str1.length, str2.length)) && (str1[i] == str2[i])); i++);
|
||||
return i;
|
||||
@@ -97,6 +93,10 @@ function nsFileView() {
|
||||
|
||||
nsFileView.prototype = {
|
||||
|
||||
SORTTYPE_NAME: 1,
|
||||
SORTTYPE_SIZE: 2,
|
||||
SORTTYPE_DATE: 3,
|
||||
|
||||
/* readonly attribute long rowCount; */
|
||||
set rowCount(c) { throw "readonly property"; },
|
||||
get rowCount() { return this.mTotalRows; },
|
||||
@@ -301,7 +301,7 @@ nsFileView.prototype = {
|
||||
case 0:
|
||||
/* no sort has been set yet */
|
||||
return;
|
||||
case sortType_name:
|
||||
case nsFileView.SORTTYPE_NAME:
|
||||
for (i = 0; i < this.mDirList.length; i++) {
|
||||
this.mDirList[i].cachedName = this.mDirList[i].file.unicodeLeafName;
|
||||
}
|
||||
@@ -310,7 +310,7 @@ nsFileView.prototype = {
|
||||
}
|
||||
compareFunc = sortFilename;
|
||||
break;
|
||||
case sortType_size:
|
||||
case nsFileView.SORTTYPE_SIZE:
|
||||
for (i = 0; i < this.mDirList.length; i++) {
|
||||
this.mDirList[i].cachedSize = this.mDirList[i].file.fileSize;
|
||||
}
|
||||
@@ -319,7 +319,7 @@ nsFileView.prototype = {
|
||||
}
|
||||
compareFunc = sortSize;
|
||||
break;
|
||||
case sortType_date:
|
||||
case nsFileView.SORTTYPE_DATE:
|
||||
for (i = 0; i < this.mDirList.length; i++) {
|
||||
this.mDirList[i].cachedDate = this.mDirList[i].file.lastModificationDate;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user