X-Git-Url: https://git.pterodactylus.net/?p=jSite2.git;a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Fjsite%2Fgui%2FFileManager.java;h=1d81bd88746cd152cbc09cf375acf29b1bed5510;hp=766677f813fb545db54e03ed95dace71ff4e4e3f;hb=2293cd9e21873f7ce21a1046cb66052c55543a45;hpb=522c0536b53194d2bb61f76bc65fe9d143057f4e diff --git a/src/net/pterodactylus/jsite/gui/FileManager.java b/src/net/pterodactylus/jsite/gui/FileManager.java index 766677f..1d81bd8 100644 --- a/src/net/pterodactylus/jsite/gui/FileManager.java +++ b/src/net/pterodactylus/jsite/gui/FileManager.java @@ -59,9 +59,11 @@ import javax.swing.JPanel; import javax.swing.JPopupMenu; import javax.swing.JScrollPane; import javax.swing.JSeparator; +import javax.swing.JSplitPane; import javax.swing.JTextField; import javax.swing.JTree; import javax.swing.SwingConstants; +import javax.swing.border.EmptyBorder; import javax.swing.event.TreeModelEvent; import javax.swing.event.TreeModelListener; import javax.swing.event.TreeSelectionEvent; @@ -84,7 +86,7 @@ import net.pterodactylus.util.swing.SwingUtils; /** * Manages physical and virtual files in a project. - * + * * @author David ‘Bombe’ Roden <bombe@freenetproject.org> */ public class FileManager extends JDialog implements I18nable, TreeSelectionListener, MouseListener { @@ -202,7 +204,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Creates a new file manager. - * + * * @param swingInterface * The Swing interface * @param project @@ -360,6 +362,8 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe project.removeFileOverride(projectFile); } } + fileTree.setShowsRootHandles(false); + fileTree.repaint(); } }; overrideInsertDefaultAction.setEnabled(false); @@ -469,15 +473,17 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Creates the main panel with the file tree and the file properties. - * + * * @return The mail panel */ private Component createFileManagerPanel() { - JPanel fileManagerPanel = new JPanel(new BorderLayout(12, 12)); + JSplitPane fileManagerPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true); + fileManagerPanel.setBorder(null); /* file tree panel */ JPanel fileTreePanel = new JPanel(new BorderLayout(12, 12)); - fileManagerPanel.add(fileTreePanel, BorderLayout.LINE_START); + fileTreePanel.setBorder(new EmptyBorder(0, 0, 0, 12)); + fileManagerPanel.setLeftComponent(fileTreePanel); fileTree = new JTree(fileTreeModel); fileTree.setShowsRootHandles(false); @@ -494,7 +500,8 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /* the right panel */ JPanel rightPanel = new JPanel(new BorderLayout(12, 12)); - fileManagerPanel.add(rightPanel, BorderLayout.CENTER); + rightPanel.setBorder(new EmptyBorder(0, 12, 0, 0)); + fileManagerPanel.setRightComponent(rightPanel); /* properties panel */ JPanel propertiesPanel = new JPanel(new GridBagLayout()); @@ -573,7 +580,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Creates the button panel. - * + * * @return The button panel */ private Component createButtonPanel() { @@ -615,7 +622,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Checks whether the given mouse event is a popup trigger and occured over * a file. If so, the context menu is shown. - * + * * @param mouseEvent * The mouse event to check */ @@ -645,7 +652,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Finds whether the {@link ProjectFile} given by * projectFileWrapper is hidden. - * + * * @param projectFileWrapper * The wrapped project file * @return true if the file is hidden and should not be @@ -731,7 +738,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Returns all currently selected {@link ProjectFileWrapper}s. - * + * * @param filesOnly * true to return only selected files, * false to include directories @@ -755,7 +762,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Sets the given action’s enabled state to the given enabled state if the * action’s current enabled state is not the given enabled state. - * + * * @param action * The action to set the enabled state on * @param enabled @@ -770,7 +777,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Sets the given button’s selected state to the given selected state if the * button’s current selected state is not the given selected state. - * + * * @param button * The button to set the selected state on * @param selected @@ -786,7 +793,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe * Returns the extension of the given filename. If the file name does not * have an extension, the name of the file (without any path components) is * returned. - * + * * @param fileName * The name of the file * @return The extension of the file @@ -799,7 +806,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Repopulates the content type combo box with all content types, putting * the most probably ones to the front of the list. - * + * * @param fileName * The name of the file */ @@ -945,7 +952,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Tree cell renderer that takes care of certain display properties for * project-specific stuff. - * + * * @author David ‘Bombe’ Roden <bombe@freenetproject.org> */ private class FileCellRenderer extends DefaultTreeCellRenderer { @@ -1014,7 +1021,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * TreeModel that is based on {@link Project#getBaseFile()}. - * + * * @author David ‘Bombe’ Roden <bombe@freenetproject.org> */ private class ProjectFileTreeModel implements TreeModel, PropertyChangeListener { @@ -1058,7 +1065,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Notifies all listeners that a node has changed. - * + * * @param changedProjectFileWrapper * The wrapper around the changed project file */ @@ -1080,7 +1087,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Notifies all listeners that the tree structure has changed * significantly. - * + * * @see TreeModelListener#treeStructureChanged(TreeModelEvent) * @param newRootNode */ @@ -1096,7 +1103,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Sets the new base project file. This causes the model to reload. - * + * * @param baseProjectFile * The new base project file */ @@ -1117,7 +1124,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Creates {@link ProjectFileWrapper}s for all files below the given * project file. - * + * * @param projectFile * The base project file for all project files to create * wrappers for @@ -1245,7 +1252,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Wrapper around a {@link ProjectFile} that overwrites * {@link Object#toString()} to return the project file’s name. - * + * * @author David ‘Bombe’ Roden <bombe@freenetproject.org> */ private static class ProjectFileWrapper { @@ -1258,7 +1265,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Creates a new wrapper around a project file. - * + * * @param projectFile * The project file to wrap */ @@ -1268,7 +1275,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Returns the wrapped project file. - * + * * @return The wrapped project file */ public ProjectFile getProjectFile() { @@ -1278,7 +1285,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * Sets the name override. If the name override is not null * it will be shown insted of the project file’s name. - * + * * @param nameOverride * The name override */ @@ -1299,7 +1306,7 @@ public class FileManager extends JDialog implements I18nable, TreeSelectionListe /** * A cell renderer for combo boxes that converts the string “--” to a * separator. - * + * * @author David ‘Bombe’ Roden <bombe@freenetproject.org> */ private class MimeTypeComboBoxRenderer extends DefaultListCellRenderer {