Revision ba8a1aff src/gr/ebs/gss/client/SearchResults.java
b/src/gr/ebs/gss/client/SearchResults.java | ||
---|---|---|
255 | 255 |
if (startIndex >= folderFileCount) |
256 | 256 |
startIndex -= GSS.VISIBLE_FILE_COUNT; |
257 | 257 |
else |
258 |
update(); |
|
258 |
update(false);
|
|
259 | 259 |
} else if (sender == prevButton) { |
260 | 260 |
clearSelectedRows(); |
261 | 261 |
// Move back a page. |
... | ... | |
263 | 263 |
if (startIndex < 0) |
264 | 264 |
startIndex = 0; |
265 | 265 |
else |
266 |
update(); |
|
266 |
update(false);
|
|
267 | 267 |
} |
268 | 268 |
} |
269 | 269 |
|
... | ... | |
331 | 331 |
|
332 | 332 |
public void onClick(Widget sender) { |
333 | 333 |
sortFiles("name"); |
334 |
update(); |
|
335 |
|
|
336 | 334 |
} |
337 | 335 |
|
338 | 336 |
}); |
... | ... | |
341 | 339 |
|
342 | 340 |
public void onClick(Widget sender) { |
343 | 341 |
sortFiles("version"); |
344 |
update(); |
|
345 |
|
|
346 | 342 |
} |
347 | 343 |
|
348 | 344 |
}); |
... | ... | |
351 | 347 |
|
352 | 348 |
public void onClick(Widget sender) { |
353 | 349 |
sortFiles("size"); |
354 |
update(); |
|
355 |
|
|
356 | 350 |
} |
357 | 351 |
|
358 | 352 |
}); |
... | ... | |
361 | 355 |
|
362 | 356 |
public void onClick(Widget sender) { |
363 | 357 |
sortFiles("date"); |
364 |
update(); |
|
365 |
|
|
366 | 358 |
} |
367 | 359 |
|
368 | 360 |
}); |
... | ... | |
371 | 363 |
|
372 | 364 |
public void onClick(Widget sender) { |
373 | 365 |
sortFiles("owner"); |
374 |
update(); |
|
375 |
|
|
376 | 366 |
} |
377 | 367 |
|
378 | 368 |
}); |
... | ... | |
382 | 372 |
|
383 | 373 |
public void onClick(Widget sender) { |
384 | 374 |
sortFiles("path"); |
385 |
update(); |
|
386 |
|
|
387 | 375 |
} |
388 | 376 |
|
389 | 377 |
}); |
... | ... | |
483 | 471 |
/** |
484 | 472 |
* Update the display of the file list. |
485 | 473 |
*/ |
486 |
void update() { |
|
474 |
void update(boolean sort) {
|
|
487 | 475 |
int count = folderFileCount; |
488 | 476 |
int max = startIndex + GSS.VISIBLE_FILE_COUNT; |
489 | 477 |
if (max > count) |
490 | 478 |
max = count; |
491 | 479 |
folderTotalSize = 0; |
492 | 480 |
|
481 |
if (sort && files != null && files.size() != 0) { |
|
482 |
clearLabels(); |
|
483 |
clearSelectedRows(); |
|
484 |
|
|
485 |
Collections.sort(files, new Comparator<FileResource>() { |
|
486 |
|
|
487 |
public int compare(FileResource arg0, FileResource arg1) { |
|
488 |
if (sortingType) |
|
489 |
if (sortingProperty.equals("version")) { |
|
490 |
versionLabel.setHTML("Version " + images.desc().getHTML()); |
|
491 |
return arg0.getVersion().compareTo(arg1.getVersion()); |
|
492 |
} else if (sortingProperty.equals("owner")) { |
|
493 |
ownerLabel.setHTML("Owner " + images.desc().getHTML()); |
|
494 |
return arg0.getOwner().compareTo(arg1.getOwner()); |
|
495 |
} else if (sortingProperty.equals("date")) { |
|
496 |
dateLabel.setHTML("Last modified " + images.desc().getHTML()); |
|
497 |
return arg0.getModificationDate().compareTo(arg1.getModificationDate()); |
|
498 |
} else if (sortingProperty.equals("size")) { |
|
499 |
sizeLabel.setHTML("Size " + images.desc().getHTML()); |
|
500 |
return arg0.getContentLength().compareTo(arg1.getContentLength()); |
|
501 |
} else if (sortingProperty.equals("name")) { |
|
502 |
nameLabel.setHTML("Name " + images.desc().getHTML()); |
|
503 |
return arg0.getName().compareTo(arg1.getName()); |
|
504 |
} else if (sortingProperty.equals("path")) { |
|
505 |
pathLabel.setHTML("Path " + images.desc().getHTML()); |
|
506 |
return arg0.getUri().compareTo(arg1.getUri()); |
|
507 |
} else { |
|
508 |
nameLabel.setHTML("Name " + images.desc().getHTML()); |
|
509 |
return arg0.getName().compareTo(arg1.getName()); |
|
510 |
} |
|
511 |
else if (sortingProperty.equals("version")) { |
|
512 |
versionLabel.setHTML("Version " + images.asc().getHTML()); |
|
513 |
return arg1.getVersion().compareTo(arg0.getVersion()); |
|
514 |
} else if (sortingProperty.equals("owner")) { |
|
515 |
ownerLabel.setHTML("Owner " + images.asc().getHTML()); |
|
516 |
return arg1.getOwner().compareTo(arg0.getOwner()); |
|
517 |
} else if (sortingProperty.equals("date")) { |
|
518 |
dateLabel.setHTML("Last modified " + images.asc().getHTML()); |
|
519 |
return arg1.getModificationDate().compareTo(arg0.getModificationDate()); |
|
520 |
} else if (sortingProperty.equals("size")) { |
|
521 |
sizeLabel.setHTML("Size " + images.asc().getHTML()); |
|
522 |
return arg1.getContentLength().compareTo(arg0.getContentLength()); |
|
523 |
} else if (sortingProperty.equals("name")) { |
|
524 |
nameLabel.setHTML("Name " + images.asc().getHTML()); |
|
525 |
return arg1.getName().compareTo(arg0.getName()); |
|
526 |
} else if (sortingProperty.equals("path")) { |
|
527 |
pathLabel.setHTML("Path " + images.asc().getHTML()); |
|
528 |
return arg1.getUri().compareTo(arg0.getUri()); |
|
529 |
} else { |
|
530 |
nameLabel.setHTML("Name " + images.asc().getHTML()); |
|
531 |
return arg1.getName().compareTo(arg0.getName()); |
|
532 |
} |
|
533 |
} |
|
534 |
|
|
535 |
}); |
|
536 |
|
|
537 |
} |
|
493 | 538 |
// Show the selected files. |
494 | 539 |
int i = 1; |
495 | 540 |
for (; i < GSS.VISIBLE_FILE_COUNT + 1; ++i) { |
... | ... | |
580 | 625 |
public void updateFileCache(String query) { |
581 | 626 |
final GSS app = GSS.get(); |
582 | 627 |
clearSelectedRows(); |
583 |
sortingProperty = "name"; |
|
584 | 628 |
clearLabels(); |
585 |
nameLabel.setHTML("Name " + images.desc().getHTML()); |
|
586 |
sortingType = true; |
|
587 | 629 |
startIndex = 0; |
588 | 630 |
app.showLoadingIndicator(); |
589 | 631 |
if (query == null || query.trim().equals("")) { |
590 | 632 |
searchResults.setHTML("You must specify a query"); |
591 | 633 |
setFiles(new ArrayList()); |
592 |
update(); |
|
634 |
update(true);
|
|
593 | 635 |
app.hideLoadingIndicator(); |
594 | 636 |
} else{ |
595 | 637 |
searchResults.setHTML("Search results for " + query); |
... | ... | |
601 | 643 |
public void onComplete() { |
602 | 644 |
SearchResource s = getResult(); |
603 | 645 |
setFiles(s.getFiles()); |
604 |
update(); |
|
646 |
update(true);
|
|
605 | 647 |
} |
606 | 648 |
|
607 | 649 |
@Override |
... | ... | |
644 | 686 |
sortingProperty = sortProperty; |
645 | 687 |
sortingType = true; |
646 | 688 |
} |
647 |
clearLabels(); |
|
648 |
clearSelectedRows(); |
|
649 |
if (files == null || files.size() == 0) |
|
650 |
return; |
|
651 |
Collections.sort(files, new Comparator<FileResource>() { |
|
652 |
|
|
653 |
public int compare(FileResource arg0, FileResource arg1) { |
|
654 |
if (sortingType) |
|
655 |
if (sortProperty.equals("version")) { |
|
656 |
versionLabel.setHTML("Version " + images.desc().getHTML()); |
|
657 |
return arg0.getVersion().compareTo(arg1.getVersion()); |
|
658 |
} else if (sortProperty.equals("owner")) { |
|
659 |
ownerLabel.setHTML("Owner " + images.desc().getHTML()); |
|
660 |
return arg0.getOwner().compareTo(arg1.getOwner()); |
|
661 |
} else if (sortProperty.equals("date")) { |
|
662 |
dateLabel.setHTML("Last modified " + images.desc().getHTML()); |
|
663 |
return arg0.getModificationDate().compareTo(arg1.getModificationDate()); |
|
664 |
} else if (sortProperty.equals("size")) { |
|
665 |
sizeLabel.setHTML("Size " + images.desc().getHTML()); |
|
666 |
return arg0.getContentLength().compareTo(arg1.getContentLength()); |
|
667 |
} else if (sortProperty.equals("name")) { |
|
668 |
nameLabel.setHTML("Name " + images.desc().getHTML()); |
|
669 |
return arg0.getName().compareTo(arg1.getName()); |
|
670 |
} else if (sortProperty.equals("path")) { |
|
671 |
pathLabel.setHTML("Path " + images.desc().getHTML()); |
|
672 |
return arg0.getUri().compareTo(arg1.getUri()); |
|
673 |
} else { |
|
674 |
nameLabel.setHTML("Name " + images.desc().getHTML()); |
|
675 |
return arg0.getName().compareTo(arg1.getName()); |
|
676 |
} |
|
677 |
else if (sortProperty.equals("version")) { |
|
678 |
versionLabel.setHTML("Version " + images.asc().getHTML()); |
|
679 |
return arg1.getVersion().compareTo(arg0.getVersion()); |
|
680 |
} else if (sortProperty.equals("owner")) { |
|
681 |
ownerLabel.setHTML("Owner " + images.asc().getHTML()); |
|
682 |
return arg1.getOwner().compareTo(arg0.getOwner()); |
|
683 |
} else if (sortProperty.equals("date")) { |
|
684 |
dateLabel.setHTML("Last modified " + images.asc().getHTML()); |
|
685 |
return arg1.getModificationDate().compareTo(arg0.getModificationDate()); |
|
686 |
} else if (sortProperty.equals("size")) { |
|
687 |
sizeLabel.setHTML("Size " + images.asc().getHTML()); |
|
688 |
return arg1.getContentLength().compareTo(arg0.getContentLength()); |
|
689 |
} else if (sortProperty.equals("name")) { |
|
690 |
nameLabel.setHTML("Name " + images.asc().getHTML()); |
|
691 |
return arg1.getName().compareTo(arg0.getName()); |
|
692 |
} else if (sortProperty.equals("path")) { |
|
693 |
pathLabel.setHTML("Path " + images.asc().getHTML()); |
|
694 |
return arg1.getUri().compareTo(arg0.getUri()); |
|
695 |
} else { |
|
696 |
nameLabel.setHTML("Name " + images.asc().getHTML()); |
|
697 |
return arg1.getName().compareTo(arg0.getName()); |
|
698 |
} |
|
699 |
} |
|
700 |
|
|
701 |
}); |
|
689 |
update(true); |
|
702 | 690 |
} |
703 | 691 |
|
704 | 692 |
private void clearLabels() { |
Also available in: Unified diff