4632N/A * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. 4632N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4632N/A * This code is free software; you can redistribute it and/or modify it 4632N/A * under the terms of the GNU General Public License version 2 only, as 4632N/A * published by the Free Software Foundation. Oracle designates this 4632N/A * particular file as subject to the "Classpath" exception as provided 4632N/A * by Oracle in the LICENSE file that accompanied this code. 4632N/A * This code is distributed in the hope that it will be useful, but WITHOUT 4632N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 4632N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 4632N/A * version 2 for more details (a copy is included in the LICENSE file that 4632N/A * You should have received a copy of the GNU General Public License version 4632N/A * 2 along with this work; if not, write to the Free Software Foundation, 4632N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 4632N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 4632N/A * or visit www.oracle.com if you need additional information or have any 4632N/A * NavServices-like implementation of a file Table 4632N/A * Some of it came from BasicDirectoryModel 4632N/A // private boolean fSortAscending = true; 4632N/A // Save dialog lists can't be multi select, because all we're selecting is the next folder to open 4632N/A // PENDING(jeff) pick the size more sensibly 4632N/A // SAK: Part of fix for 3168263. The fileCache contains 4632N/A // SortableFiles, so when finding a file in the list we need to 4632N/A // first create a sortable file. 4632N/A // AbstractListModel interface 4632N/A // AbstractTableModel interface 4632N/A // PENDING(jeff) - implement 4632N/A // PENDING(jeff) - implement 4632N/A // Liberated from the 1.1 SortDemo 4632N/A // This is a generic version of C.A.R Hoare's Quick Sort 4632N/A // algorithm. This will handle arrays that are already 4632N/A // sorted, and arrays with duplicate keys.<BR> 4632N/A // If you think of a one dimensional array as going from 4632N/A // the lowest index on the left to the highest index on the right 4632N/A // then the parameters to this function are lowest index or 4632N/A // left and highest index or right. The first time you call 4632N/A // this function it will be with the parameters 0, a.length - 1. 4632N/A // @param a an integer array 4632N/A // @param lo0 left boundary of array partition 4632N/A // @param hi0 right boundary of array partition 4632N/A // Arbitrarily establishing partition element as the midpoint of 4632N/A // loop through the array until indices cross 4632N/A // find the first element that is greater than or equal to 4632N/A // the partition element starting from the left Index. 4632N/A // Nasty to have to cast here. Would it be quicker 4632N/A // to copy the vectors into arrays and sort the arrays? 4632N/A // find an element that is smaller than or equal to 4632N/A // the partition element starting from the right Index. 4632N/A // if the indexes have not crossed, swap 4632N/A // If the right index has not reached the left side of array 4632N/A // must now sort the left partition. 4632N/A // If the left index has not reached the right side of array 4632N/A // must now sort the right partition. 4632N/A // for speed in sorting, displaying 4632N/A super(
"Aqua L&F File Loading Thread");
4632N/A // Return all files to the file chooser. The UI will disable or enable 4632N/A // the file name if the current filter approves. 4632N/A // Don't separate directories from files 4632N/A // interrupted, cancel all runnables