Theme Editor: support saving file; added inspector

This commit is contained in:
Karl Tauber
2020-07-07 16:17:31 +02:00
parent 6f71e4ada0
commit ac8225d8fb
3 changed files with 19 additions and 1 deletions

View File

@@ -20,6 +20,7 @@ plugins {
dependencies {
implementation( project( ":flatlaf-core" ) )
implementation( project( ":flatlaf-extras" ) )
implementation( "com.fifesoft:rsyntaxtextarea:3.1.1" )
}

View File

@@ -94,7 +94,15 @@ class FlatThemeEditorPane
return font.deriveFont( (float) newFontSize );
}
public void load( FileLocation loc ) throws IOException {
void load( FileLocation loc ) throws IOException {
textArea.load( loc, StandardCharsets.ISO_8859_1 );
}
void save() {
try {
textArea.save();
} catch( IOException ex ) {
ex.printStackTrace(); // TODO
}
}
}

View File

@@ -17,11 +17,13 @@
package com.formdev.flatlaf.themeeditor;
import java.awt.*;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.IOException;
import javax.swing.*;
import org.fife.ui.rsyntaxtextarea.FileLocation;
import com.formdev.flatlaf.FlatLightLaf;
import com.formdev.flatlaf.extras.FlatInspector;
import com.formdev.flatlaf.util.UIScale;
/**
@@ -39,6 +41,7 @@ public class FlatThemeFileEditor
SwingUtilities.invokeLater( () -> {
FlatLightLaf.install();
FlatInspector.install( "ctrl alt shift X" );
FlatThemeFileEditor frame = new FlatThemeFileEditor();
@@ -48,6 +51,12 @@ public class FlatThemeFileEditor
ex.printStackTrace();
}
int menuShortcutKeyMask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
((JComponent)frame.getContentPane()).registerKeyboardAction(
e -> frame.themeEditorArea.save(),
KeyStroke.getKeyStroke( KeyEvent.VK_S, menuShortcutKeyMask ),
JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT );
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
frame.setSize( Math.min( UIScale.scale( 800 ), screenSize.width ),
screenSize.height - UIScale.scale( 100 ) );