#18: add max recent files list setting (default is now 10)

This commit is contained in:
Gered 2017-01-28 11:36:53 -05:00
parent b26e0ecf5e
commit edacc0a359
2 changed files with 5 additions and 4 deletions

View file

@ -46,7 +46,6 @@ enum MenuItem implements ActionListener {
*/
private static EventListenerList listeners = new EventListenerList();
private static final int MAX_FILES = 5;
private static final int TRUNCATE = 30;
private boolean isEndOfGroup;
@ -136,8 +135,8 @@ enum MenuItem implements ActionListener {
}
recentFiles.add( 0, path );
if ( recentFiles.size() > MAX_FILES ) {
recentFiles.remove( MAX_FILES );
if ( recentFiles.size() > Settings.maxRecentFiles.get() ) {
recentFiles.remove( (int)Settings.maxRecentFiles.get() );
}
Settings.recentFiles.set( recentFiles );
populateRecentlyOpened();
@ -150,7 +149,7 @@ enum MenuItem implements ActionListener {
*/
static void populateRecentlyOpened() {
List<String> recentFiles = Settings.recentFiles.get();
for ( int i = MAX_FILES; i < recentFiles.size(); i++ ) {
for ( int i = Settings.maxRecentFiles.get(); i < recentFiles.size(); i++ ) {
recentFiles.remove( i - 1 );
}
OPEN_RECENT.menuItem.removeAll();

View file

@ -32,6 +32,7 @@ public class Settings {
public static final Property<Locale> language = new Property<>( "language" );
public static final Property<Locale> viewerLanguage = new Property<>( "viewerLanguage" );
public static final Property<List<String>> recentFiles = new Property<>( "recentFiles" );
public static final Property<Integer> maxRecentFiles = new Property<>( "maxRecentFiles" );
public static final Property<Point> coordinates = new Property<>( "coordinates" );
public static final Property<Dimension> dimension = new Property<>( "dimension" );
public static final Property<Compare> compareMethod = new Property<>( "compareMethod" );
@ -212,6 +213,7 @@ public class Settings {
setDefault( language.key, Locale.ENGLISH, force );
setDefault( viewerLanguage.key, Locale.ENGLISH, force );
setDefault( recentFiles.key, new ArrayList<String>(), force );
setDefault( maxRecentFiles.key, 10, force );
setDefault( coordinates.key, null, force );
setDefault( dimension.key, null, force );
setDefault( compareMethod.key, Compare.BEST_OVERALL_RUN, force );