System File Chooser: introduced class SystemFileChooser as replacement for JFileChooser

This commit is contained in:
Karl Tauber
2025-01-06 18:01:50 +01:00
parent 9453d55abd
commit 91e8d04a9f
16 changed files with 1721 additions and 12 deletions

View File

@@ -49,6 +49,7 @@ import com.formdev.flatlaf.extras.FlatSVGUtils;
import com.formdev.flatlaf.util.ColorFunctions;
import com.formdev.flatlaf.util.FontUtils;
import com.formdev.flatlaf.util.LoggingFacade;
import com.formdev.flatlaf.util.SystemFileChooser;
import com.formdev.flatlaf.util.SystemInfo;
import net.miginfocom.layout.ConstraintParser;
import net.miginfocom.layout.LC;
@@ -172,6 +173,16 @@ class DemoFrame
chooser.showSaveDialog( this );
}
private void openSystemActionPerformed() {
SystemFileChooser chooser = new SystemFileChooser();
chooser.showOpenDialog( this );
}
private void saveAsSystemActionPerformed() {
SystemFileChooser chooser = new SystemFileChooser();
chooser.showSaveDialog( this );
}
private void exitActionPerformed() {
dispose();
}
@@ -496,6 +507,8 @@ class DemoFrame
JMenuItem newMenuItem = new JMenuItem();
JMenuItem openMenuItem = new JMenuItem();
JMenuItem saveAsMenuItem = new JMenuItem();
JMenuItem openSystemMenuItem = new JMenuItem();
JMenuItem saveAsSystemMenuItem = new JMenuItem();
JMenuItem closeMenuItem = new JMenuItem();
exitMenuItem = new JMenuItem();
JMenu editMenu = new JMenu();
@@ -596,6 +609,17 @@ class DemoFrame
fileMenu.add(saveAsMenuItem);
fileMenu.addSeparator();
//---- openSystemMenuItem ----
openSystemMenuItem.setText("Open (System)...");
openSystemMenuItem.addActionListener(e -> openSystemActionPerformed());
fileMenu.add(openSystemMenuItem);
//---- saveAsSystemMenuItem ----
saveAsSystemMenuItem.setText("Save As (System)...");
saveAsSystemMenuItem.addActionListener(e -> saveAsSystemActionPerformed());
fileMenu.add(saveAsSystemMenuItem);
fileMenu.addSeparator();
//---- closeMenuItem ----
closeMenuItem.setText("Close");
closeMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));

View File

@@ -1,4 +1,4 @@
JFDML JFormDesigner: "8.2.1.0.348" Java: "21.0.1" encoding: "UTF-8"
JFDML JFormDesigner: "8.3" encoding: "UTF-8"
new FormModel {
contentType: "form/swing"
@@ -182,6 +182,19 @@ new FormModel {
"mnemonic": 83
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "saveAsActionPerformed", false ) )
} )
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
name: "separator9"
} )
add( new FormComponent( "javax.swing.JMenuItem" ) {
name: "openSystemMenuItem"
"text": "Open (System)..."
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "openSystemActionPerformed", false ) )
} )
add( new FormComponent( "javax.swing.JMenuItem" ) {
name: "saveAsSystemMenuItem"
"text": "Save As (System)..."
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "saveAsSystemActionPerformed", false ) )
} )
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
name: "separator2"
} )