--- /dev/null
+/*
+ * Local file opener panel
+ *
+ * License : The MIT License
+ * Copyright(c) 2020 olyutorskii
+ */
+
+package jp.sfjp.jindolf.view;
+
+import java.awt.LayoutManager;
+import javax.swing.BorderFactory;
+import javax.swing.BoxLayout;
+import javax.swing.JButton;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+
+/**
+ * ローカルなアーカイブXMlファイルの読み込みを指示するためのGUI。
+ */
+final class LocalOpener extends JPanel{
+
+ private JButton openXml = new JButton("アーカイブXMLを開く...");
+
+ private JPanel dandd = new JPanel();
+
+ LocalOpener(){
+ super();
+
+ this.openXml.addActionListener((ev) -> {
+ readXml();
+ });
+
+ this.dandd.setBorder(BorderFactory.createEtchedBorder());
+ this.dandd.add(new JLabel("<html>Drag&Drop<br/>here</html>"));
+
+ LayoutManager layout = new BoxLayout(this, BoxLayout.Y_AXIS);
+ setLayout(layout);
+
+ add(this.openXml);
+ add(this.dandd);
+
+ return;
+ }
+
+ private void readXml(){
+
+ }
+
+}
import javax.swing.JProgressBar;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
+import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.JToolBar;
import javax.swing.JTree;
* プログレスバーとフッタメッセージの管理を行う。
*/
@SuppressWarnings("serial")
-public class TopView extends JPanel{
+public final class TopView extends JPanel{
private static final String INITCARD = "INITCARD";
private static final String LANDCARD = "LANDINFO";
private final JComponent cards;
private final CardLayout cardLayout = new CardLayout();
+ private final JTabbedPane villageSelector =
+ new JTabbedPane(JTabbedPane.BOTTOM);
private final LandsTree landsTreeView = new LandsTree();
+ private final LocalOpener localOpener = new LocalOpener();
private final LandInfoPanel landInfo = new LandInfoPanel();
super();
this.cards = createCards();
- JComponent split = createSplitPane(this.landsTreeView, this.cards);
+
+ this.villageSelector.addTab("サーバ", this.landsTreeView);
+ this.villageSelector.addTab("ローカル", this.localOpener);
+
+ JComponent split = createSplitPane(this.villageSelector, this.cards);
JComponent statusBar = createStatusBar();
BorderLayout layout = new BorderLayout();