mirror of
https://github.com/OMGeeky/ATCS.git
synced 2025-12-27 14:58:55 +01:00
reformat all code
This commit is contained in:
@@ -1,29 +1,5 @@
|
||||
package com.gpl.rpg.atcontentstudio.ui;
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.ComponentAdapter;
|
||||
import java.awt.event.ComponentEvent;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.beans.PropertyChangeEvent;
|
||||
import java.beans.PropertyChangeListener;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JList;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuBar;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JSeparator;
|
||||
import javax.swing.JSplitPane;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.UIManager;
|
||||
import javax.swing.UIManager.LookAndFeelInfo;
|
||||
import javax.swing.UnsupportedLookAndFeelException;
|
||||
|
||||
import com.gpl.rpg.atcontentstudio.ATContentStudio;
|
||||
import com.gpl.rpg.atcontentstudio.ConfigCache;
|
||||
import com.gpl.rpg.atcontentstudio.model.GameDataElement;
|
||||
@@ -36,223 +12,230 @@ import com.gpl.rpg.atcontentstudio.model.saves.SavedGame;
|
||||
import com.gpl.rpg.atcontentstudio.model.sprites.Spritesheet;
|
||||
import com.gpl.rpg.atcontentstudio.model.tools.writermode.WriterModeData;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.UIManager.LookAndFeelInfo;
|
||||
import java.awt.*;
|
||||
import java.awt.event.*;
|
||||
import java.beans.PropertyChangeEvent;
|
||||
import java.beans.PropertyChangeListener;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class StudioFrame extends JFrame {
|
||||
|
||||
private static final long serialVersionUID = -3391514100319186661L;
|
||||
|
||||
|
||||
final ProjectsTree projectTree;
|
||||
final EditorsArea editors;
|
||||
|
||||
final WorkspaceActions actions = new WorkspaceActions();
|
||||
|
||||
public StudioFrame(String name) {
|
||||
super(name);
|
||||
setIconImage(DefaultIcons.getMainIconImage());
|
||||
|
||||
final JSplitPane topDown = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
|
||||
final JSplitPane leftRight = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
JList notifs = new NotificationsPane();
|
||||
projectTree = new ProjectsTree();
|
||||
editors = new EditorsArea();
|
||||
|
||||
setJMenuBar(new JMenuBar());
|
||||
buildMenu();
|
||||
|
||||
JScrollPane treeScroller = new JScrollPane(projectTree);
|
||||
treeScroller.getVerticalScrollBar().setUnitIncrement(16);
|
||||
leftRight.setLeftComponent(treeScroller);
|
||||
leftRight.setRightComponent(editors);
|
||||
leftRight.setName("StudioFrame.leftRight");
|
||||
topDown.setTopComponent(leftRight);
|
||||
JScrollPane notifScroller = new JScrollPane(notifs);
|
||||
notifScroller.getVerticalScrollBar().setUnitIncrement(16);
|
||||
topDown.setBottomComponent(notifScroller);
|
||||
topDown.setName("StudioFrame.topDown");
|
||||
|
||||
getContentPane().setLayout(new BorderLayout());
|
||||
getContentPane().add(topDown, BorderLayout.CENTER);
|
||||
|
||||
addComponentListener(new ComponentAdapter() {
|
||||
@Override
|
||||
public void componentResized(ComponentEvent e) {
|
||||
Workspace.activeWorkspace.preferences.windowSize = StudioFrame.this.getSize();
|
||||
}
|
||||
});
|
||||
|
||||
pack();
|
||||
if (Workspace.activeWorkspace.preferences.windowSize != null) {
|
||||
setSize(Workspace.activeWorkspace.preferences.windowSize);
|
||||
} else {
|
||||
setSize(800, 600);
|
||||
}
|
||||
|
||||
if (Workspace.activeWorkspace.preferences.splittersPositions.get(topDown.getName()) != null) {
|
||||
topDown.setDividerLocation(Workspace.activeWorkspace.preferences.splittersPositions.get(topDown.getName()));
|
||||
} else {
|
||||
topDown.setDividerLocation(0.2);
|
||||
}
|
||||
topDown.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, new PropertyChangeListener() {
|
||||
@Override
|
||||
public void propertyChange(PropertyChangeEvent evt) {
|
||||
Workspace.activeWorkspace.preferences.splittersPositions.put(topDown.getName(), topDown.getDividerLocation());
|
||||
}
|
||||
});
|
||||
if (Workspace.activeWorkspace.preferences.splittersPositions.get(leftRight.getName()) != null) {
|
||||
leftRight.setDividerLocation(Workspace.activeWorkspace.preferences.splittersPositions.get(leftRight.getName()));
|
||||
} else {
|
||||
leftRight.setDividerLocation(0.3);
|
||||
}
|
||||
leftRight.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, new PropertyChangeListener() {
|
||||
@Override
|
||||
public void propertyChange(PropertyChangeEvent evt) {
|
||||
Workspace.activeWorkspace.preferences.splittersPositions.put(leftRight.getName(), leftRight.getDividerLocation());
|
||||
}
|
||||
});
|
||||
|
||||
showAbout();
|
||||
|
||||
addWindowListener(new WindowAdapter() {
|
||||
@Override
|
||||
public void windowClosing(WindowEvent e) {
|
||||
Workspace.saveActive();
|
||||
actions.exitATCS.actionPerformed(null);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void buildMenu() {
|
||||
JMenu fileMenu = new JMenu("File");
|
||||
fileMenu.add(new JMenuItem(actions.createProject));
|
||||
fileMenu.add(new JMenuItem(actions.openProject));
|
||||
fileMenu.add(new JMenuItem(actions.closeProject));
|
||||
fileMenu.add(new JMenuItem(actions.deleteProject));
|
||||
fileMenu.add(new JSeparator());
|
||||
fileMenu.add(new JMenuItem(actions.editWorkspaceSettings));
|
||||
fileMenu.add(new JSeparator());
|
||||
fileMenu.add(new JMenuItem(actions.exitATCS));
|
||||
getJMenuBar().add(fileMenu);
|
||||
|
||||
JMenu projectMenu = new JMenu("Project");
|
||||
projectMenu.add(new JMenuItem(actions.saveElement));
|
||||
projectMenu.add(new JMenuItem(actions.deleteSelected));
|
||||
projectMenu.add(new JSeparator());
|
||||
projectMenu.add(new JMenuItem(actions.createGDE));
|
||||
projectMenu.add(new JMenuItem(actions.importJSON));
|
||||
projectMenu.add(new JMenuItem(actions.createMap));
|
||||
projectMenu.add(new JMenuItem(actions.createWorldmap));
|
||||
projectMenu.add(new JMenuItem(actions.loadSave));
|
||||
getJMenuBar().add(projectMenu);
|
||||
|
||||
JMenu toolsMenu = new JMenu("Tools");
|
||||
toolsMenu.add(new JMenuItem(actions.compareItems));
|
||||
toolsMenu.add(new JMenuItem(actions.compareNPCs));
|
||||
toolsMenu.add(new JSeparator());
|
||||
toolsMenu.add(new JMenuItem(actions.runBeanShell));
|
||||
toolsMenu.add(new JSeparator());
|
||||
toolsMenu.add(new JMenuItem(actions.exportProject));
|
||||
getJMenuBar().add(toolsMenu);
|
||||
|
||||
JMenu viewMenu = new JMenu("View");
|
||||
JMenu changeLaF = new JMenu("Change Look and Feel");
|
||||
for (final LookAndFeelInfo i : UIManager.getInstalledLookAndFeels()) {
|
||||
final JMenuItem lafItem = new JMenuItem("Switch to "+i.getName());
|
||||
changeLaF.add(lafItem);
|
||||
lafItem.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
try {
|
||||
UIManager.setLookAndFeel(i.getClassName());
|
||||
ATContentStudio.scaleUIFont();
|
||||
SwingUtilities.updateComponentTreeUI(ATContentStudio.frame);
|
||||
ConfigCache.setFavoriteLaFClassName(i.getClassName());
|
||||
} catch (ClassNotFoundException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (InstantiationException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (IllegalAccessException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (UnsupportedLookAndFeelException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
viewMenu.add(changeLaF);
|
||||
viewMenu.add(new JSeparator());
|
||||
viewMenu.add(new JMenuItem(actions.showAbout));
|
||||
getJMenuBar().add(viewMenu);
|
||||
}
|
||||
|
||||
public void openEditor(JSONElement node) {
|
||||
node.link();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(Spritesheet node) {
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(TMXMap node) {
|
||||
node.parse();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(WriterModeData node) {
|
||||
node.link();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
|
||||
public void openEditor(GameDataElement node) {
|
||||
if (node instanceof JSONElement) {
|
||||
openEditor((JSONElement) node);
|
||||
} else if (node instanceof Spritesheet) {
|
||||
openEditor((Spritesheet) node);
|
||||
} else if (node instanceof TMXMap) {
|
||||
openEditor((TMXMap) node);
|
||||
} else if (node instanceof WorldmapSegment) {
|
||||
openEditor((WorldmapSegment) node);
|
||||
} else if (node instanceof WriterModeData) {
|
||||
openEditor((WriterModeData) node);
|
||||
}
|
||||
}
|
||||
|
||||
public void openEditor(SavedGame save) {
|
||||
editors.openEditor(save);
|
||||
}
|
||||
|
||||
public void openEditor(WorldmapSegment node) {
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void closeEditor(ProjectTreeNode node) {
|
||||
editors.closeEditor(node);
|
||||
}
|
||||
|
||||
public void selectInTree(ProjectTreeNode node) {
|
||||
projectTree.setSelectedNode(node);
|
||||
}
|
||||
|
||||
public void editorChanged(Editor e) {
|
||||
editors.editorTabChanged(e);
|
||||
}
|
||||
|
||||
public void editorChanged(ProjectTreeNode node) {
|
||||
editors.editorTabChanged(node);
|
||||
}
|
||||
|
||||
public void nodeChanged(ProjectTreeNode node) {
|
||||
node.childrenChanged(new ArrayList<ProjectTreeNode>());
|
||||
ATContentStudio.frame.editorChanged(node);
|
||||
}
|
||||
|
||||
public void showAbout() {
|
||||
editors.showAbout();
|
||||
}
|
||||
private static final long serialVersionUID = -3391514100319186661L;
|
||||
|
||||
|
||||
final ProjectsTree projectTree;
|
||||
final EditorsArea editors;
|
||||
|
||||
final WorkspaceActions actions = new WorkspaceActions();
|
||||
|
||||
public StudioFrame(String name) {
|
||||
super(name);
|
||||
setIconImage(DefaultIcons.getMainIconImage());
|
||||
|
||||
final JSplitPane topDown = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
|
||||
final JSplitPane leftRight = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
JList notifs = new NotificationsPane();
|
||||
projectTree = new ProjectsTree();
|
||||
editors = new EditorsArea();
|
||||
|
||||
setJMenuBar(new JMenuBar());
|
||||
buildMenu();
|
||||
|
||||
JScrollPane treeScroller = new JScrollPane(projectTree);
|
||||
treeScroller.getVerticalScrollBar().setUnitIncrement(16);
|
||||
leftRight.setLeftComponent(treeScroller);
|
||||
leftRight.setRightComponent(editors);
|
||||
leftRight.setName("StudioFrame.leftRight");
|
||||
topDown.setTopComponent(leftRight);
|
||||
JScrollPane notifScroller = new JScrollPane(notifs);
|
||||
notifScroller.getVerticalScrollBar().setUnitIncrement(16);
|
||||
topDown.setBottomComponent(notifScroller);
|
||||
topDown.setName("StudioFrame.topDown");
|
||||
|
||||
getContentPane().setLayout(new BorderLayout());
|
||||
getContentPane().add(topDown, BorderLayout.CENTER);
|
||||
|
||||
addComponentListener(new ComponentAdapter() {
|
||||
@Override
|
||||
public void componentResized(ComponentEvent e) {
|
||||
Workspace.activeWorkspace.preferences.windowSize = StudioFrame.this.getSize();
|
||||
}
|
||||
});
|
||||
|
||||
pack();
|
||||
if (Workspace.activeWorkspace.preferences.windowSize != null) {
|
||||
setSize(Workspace.activeWorkspace.preferences.windowSize);
|
||||
} else {
|
||||
setSize(800, 600);
|
||||
}
|
||||
|
||||
if (Workspace.activeWorkspace.preferences.splittersPositions.get(topDown.getName()) != null) {
|
||||
topDown.setDividerLocation(Workspace.activeWorkspace.preferences.splittersPositions.get(topDown.getName()));
|
||||
} else {
|
||||
topDown.setDividerLocation(0.2);
|
||||
}
|
||||
topDown.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, new PropertyChangeListener() {
|
||||
@Override
|
||||
public void propertyChange(PropertyChangeEvent evt) {
|
||||
Workspace.activeWorkspace.preferences.splittersPositions.put(topDown.getName(), topDown.getDividerLocation());
|
||||
}
|
||||
});
|
||||
if (Workspace.activeWorkspace.preferences.splittersPositions.get(leftRight.getName()) != null) {
|
||||
leftRight.setDividerLocation(Workspace.activeWorkspace.preferences.splittersPositions.get(leftRight.getName()));
|
||||
} else {
|
||||
leftRight.setDividerLocation(0.3);
|
||||
}
|
||||
leftRight.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, new PropertyChangeListener() {
|
||||
@Override
|
||||
public void propertyChange(PropertyChangeEvent evt) {
|
||||
Workspace.activeWorkspace.preferences.splittersPositions.put(leftRight.getName(), leftRight.getDividerLocation());
|
||||
}
|
||||
});
|
||||
|
||||
showAbout();
|
||||
|
||||
addWindowListener(new WindowAdapter() {
|
||||
@Override
|
||||
public void windowClosing(WindowEvent e) {
|
||||
Workspace.saveActive();
|
||||
actions.exitATCS.actionPerformed(null);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void buildMenu() {
|
||||
JMenu fileMenu = new JMenu("File");
|
||||
fileMenu.add(new JMenuItem(actions.createProject));
|
||||
fileMenu.add(new JMenuItem(actions.openProject));
|
||||
fileMenu.add(new JMenuItem(actions.closeProject));
|
||||
fileMenu.add(new JMenuItem(actions.deleteProject));
|
||||
fileMenu.add(new JSeparator());
|
||||
fileMenu.add(new JMenuItem(actions.editWorkspaceSettings));
|
||||
fileMenu.add(new JSeparator());
|
||||
fileMenu.add(new JMenuItem(actions.exitATCS));
|
||||
getJMenuBar().add(fileMenu);
|
||||
|
||||
JMenu projectMenu = new JMenu("Project");
|
||||
projectMenu.add(new JMenuItem(actions.saveElement));
|
||||
projectMenu.add(new JMenuItem(actions.deleteSelected));
|
||||
projectMenu.add(new JSeparator());
|
||||
projectMenu.add(new JMenuItem(actions.createGDE));
|
||||
projectMenu.add(new JMenuItem(actions.importJSON));
|
||||
projectMenu.add(new JMenuItem(actions.createMap));
|
||||
projectMenu.add(new JMenuItem(actions.createWorldmap));
|
||||
projectMenu.add(new JMenuItem(actions.loadSave));
|
||||
getJMenuBar().add(projectMenu);
|
||||
|
||||
JMenu toolsMenu = new JMenu("Tools");
|
||||
toolsMenu.add(new JMenuItem(actions.compareItems));
|
||||
toolsMenu.add(new JMenuItem(actions.compareNPCs));
|
||||
toolsMenu.add(new JSeparator());
|
||||
toolsMenu.add(new JMenuItem(actions.runBeanShell));
|
||||
toolsMenu.add(new JSeparator());
|
||||
toolsMenu.add(new JMenuItem(actions.exportProject));
|
||||
getJMenuBar().add(toolsMenu);
|
||||
|
||||
JMenu viewMenu = new JMenu("View");
|
||||
JMenu changeLaF = new JMenu("Change Look and Feel");
|
||||
for (final LookAndFeelInfo i : UIManager.getInstalledLookAndFeels()) {
|
||||
final JMenuItem lafItem = new JMenuItem("Switch to " + i.getName());
|
||||
changeLaF.add(lafItem);
|
||||
lafItem.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
try {
|
||||
UIManager.setLookAndFeel(i.getClassName());
|
||||
ATContentStudio.scaleUIFont();
|
||||
SwingUtilities.updateComponentTreeUI(ATContentStudio.frame);
|
||||
ConfigCache.setFavoriteLaFClassName(i.getClassName());
|
||||
} catch (ClassNotFoundException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (InstantiationException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (IllegalAccessException e1) {
|
||||
e1.printStackTrace();
|
||||
} catch (UnsupportedLookAndFeelException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
viewMenu.add(changeLaF);
|
||||
viewMenu.add(new JSeparator());
|
||||
viewMenu.add(new JMenuItem(actions.showAbout));
|
||||
getJMenuBar().add(viewMenu);
|
||||
}
|
||||
|
||||
public void openEditor(JSONElement node) {
|
||||
node.link();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(Spritesheet node) {
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(TMXMap node) {
|
||||
node.parse();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void openEditor(WriterModeData node) {
|
||||
node.link();
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
|
||||
public void openEditor(GameDataElement node) {
|
||||
if (node instanceof JSONElement) {
|
||||
openEditor((JSONElement) node);
|
||||
} else if (node instanceof Spritesheet) {
|
||||
openEditor((Spritesheet) node);
|
||||
} else if (node instanceof TMXMap) {
|
||||
openEditor((TMXMap) node);
|
||||
} else if (node instanceof WorldmapSegment) {
|
||||
openEditor((WorldmapSegment) node);
|
||||
} else if (node instanceof WriterModeData) {
|
||||
openEditor((WriterModeData) node);
|
||||
}
|
||||
}
|
||||
|
||||
public void openEditor(SavedGame save) {
|
||||
editors.openEditor(save);
|
||||
}
|
||||
|
||||
public void openEditor(WorldmapSegment node) {
|
||||
editors.openEditor(node);
|
||||
}
|
||||
|
||||
public void closeEditor(ProjectTreeNode node) {
|
||||
editors.closeEditor(node);
|
||||
}
|
||||
|
||||
public void selectInTree(ProjectTreeNode node) {
|
||||
projectTree.setSelectedNode(node);
|
||||
}
|
||||
|
||||
public void editorChanged(Editor e) {
|
||||
editors.editorTabChanged(e);
|
||||
}
|
||||
|
||||
public void editorChanged(ProjectTreeNode node) {
|
||||
editors.editorTabChanged(node);
|
||||
}
|
||||
|
||||
public void nodeChanged(ProjectTreeNode node) {
|
||||
node.childrenChanged(new ArrayList<ProjectTreeNode>());
|
||||
ATContentStudio.frame.editorChanged(node);
|
||||
}
|
||||
|
||||
public void showAbout() {
|
||||
editors.showAbout();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user