📄 editorplugin.java
字号:
/* Light And Shadow. A Persistent Universe based on Robert Jordan's Wheel of Time Books. * Copyright (C) 2001-2003 WOTLAS Team * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */package wotlas.editor;import wotlas.client.screen.plugin.*;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.io.File;import wotlas.utils.*;import wotlas.libs.aswing.*;import wotlas.libs.persistence.*;import wotlas.libs.graphics2D.*;import wotlas.common.*;import wotlas.utils.Debug;import wotlas.common.universe.*;import wotlas.common.environment.*;import wotlas.client.*;import wotlas.client.screen.*;import wotlas.libs.graphics2D.drawable.*;import javax.swing.event.*;import javax.swing.JTree;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.event.TreeSelectionListener;import javax.swing.event.TreeSelectionEvent;import javax.swing.tree.TreeSelectionModel;/** Plug In to add editor tools * * @author Aldiss, Fred McMaster, Diego */public class EditorPlugIn extends JPanelPlugIn { /** extension to store files of editor */ public static final String GRAPHIC_DATA_EXPORTED_EXT = ".background"; /*------------------------------------------------------------------------------------*/ transient static private String MAP_EXIT_START_MSG = "<html><b>Write a name in Name field then <p>" +"click the Add button to start adding a Map Exit.....</b></html>"; transient static public boolean selectedIsFree = TileMap.TILE_NOT_FREE; transient static public int selectedGroup = 0; transient static public int selectedGroupImgNr = 0; transient static private GraphicsDirector gDirector; transient static public DefaultMutableTreeNode treeOfTileMapNode; transient static private int indexMapsExitsForExitPan = 0; transient static private int indexMapsForExitPan = 0; transient static private int ExitToLoad = 0; transient static public EditorPlugIn itSelf;// transient static public DefaultMutableTreeNode area = null; /** 'New' map button. */ transient private AButton newMapButton; /** 'Save' map button. */ transient private AButton saveMapButton; /** Center panel where the macros are set... */ transient private JPanel centerPanel; transient private DefaultListModel listModel1,listModel2,listModel3 ,listMapsForExitPan,listMapsExitsForExitPan,listExitMod; transient static int addExitStatus = 0; transient static private Point tmp1,tmp2; /** Creates new form EditorPlugIn2 */ public EditorPlugIn() { super(); itSelf = this; // treeOfTileMapNode = new DefaultMutableTreeNode("World : Tile Maps"); initComponents(); LoadTree(); init(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents jLabel14 = new javax.swing.JLabel(); TitlePan = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); MainTabb = new javax.swing.JTabbedPane(); TileMapsPan = new javax.swing.JPanel(); TileMapTabb = new javax.swing.JTabbedPane(); LoadTileMap = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); BigTree = new JTree( treeOfTileMapNode ); jPanel3 = new javax.swing.JPanel(); buttonNew = new javax.swing.JButton(); jLabel26 = new javax.swing.JLabel(); SaveTileMap = new javax.swing.JPanel(); jPanel28 = new javax.swing.JPanel(); buttonSave = new javax.swing.JButton(); buttonRefresh = new javax.swing.JButton(); jPanel4 = new javax.swing.JPanel(); jPanel30 = new javax.swing.JPanel(); jLabel16 = new javax.swing.JLabel(); DataAreaName = new javax.swing.JTextField(); jPanel12 = new javax.swing.JPanel(); jLabel2 = new javax.swing.JLabel(); DataID = new javax.swing.JTextField(); jPanel13 = new javax.swing.JPanel(); jLabel3 = new javax.swing.JLabel(); DataFullName = new javax.swing.JTextField(); jPanel14 = new javax.swing.JPanel(); jLabel4 = new javax.swing.JLabel(); DataShortName = new javax.swing.JTextField(); jPanel15 = new javax.swing.JPanel(); jLabel5 = new javax.swing.JLabel(); DataInsertionPoint = new javax.swing.JTextField(); jPanel21 = new javax.swing.JPanel(); jLabel6 = new javax.swing.JLabel(); DataSmallImage = new javax.swing.JTextField(); jPanel18 = new javax.swing.JPanel(); jLabel7 = new javax.swing.JLabel(); DataMusicName = new javax.swing.JTextField(); jPanel20 = new javax.swing.JPanel(); jLabel8 = new javax.swing.JLabel(); DataGroupOfGraphics = GetNewGOGList(); jPanel19 = new javax.swing.JPanel(); jLabel9 = new javax.swing.JLabel(); DataLength = new javax.swing.JTextField(); jPanel22 = new javax.swing.JPanel(); jLabel10 = new javax.swing.JLabel(); DataHeight = new javax.swing.JTextField(); jPanel16 = new javax.swing.JPanel(); jLabel11 = new javax.swing.JLabel(); DataMapSize = new javax.swing.JList(); jPanel17 = new javax.swing.JPanel(); jLabel12 = new javax.swing.JLabel(); DataBasicSetId = new javax.swing.JTextField(); jPanel11 = new javax.swing.JPanel(); jLabel13 = new javax.swing.JLabel(); DataBasicSetIdNr = new javax.swing.JTextField(); jPanel2 = new javax.swing.JPanel(); jLabel22 = new javax.swing.JLabel(); GraphicsPan = new javax.swing.JPanel(); jTabbedPane4 = new javax.swing.JTabbedPane(); jPanel5 = new javax.swing.JPanel(); jPanel7 = new javax.swing.JPanel(); jScrollPane4 = new javax.swing.JScrollPane(); jList1 = GetNewGOGList(); jPanel8 = new javax.swing.JPanel(); jPanel10 = new javax.swing.JPanel(); jSplitPane1 = new javax.swing.JSplitPane(); jSplitPane1.setDividerLocation(100); jScrollPane2 = new javax.swing.JScrollPane(); OneGroupList = OneGroupList(); jScrollPane3 = new javax.swing.JScrollPane(); HisTileList = HisTileList(); SelectedBrushPan = new javax.swing.JPanel(); jLabel15 = new javax.swing.JLabel(); Preview = new javax.swing.JLabel(); TileNotFree = new javax.swing.JCheckBox(); InfoOnBrushPan = new javax.swing.JPanel(); jLabel20 = new javax.swing.JLabel(); MapExitsPan = new javax.swing.JPanel(); jPanel36 = new javax.swing.JPanel(); jSplitPane2 = new javax.swing.JSplitPane(); jListExits = GetExitList(); jPanel6 = new javax.swing.JPanel(); jLabel17 = new javax.swing.JLabel(); StartPointText = new javax.swing.JTextField(); jLabel18 = new javax.swing.JLabel(); EndPointText = new javax.swing.JTextField(); jLabel19 = new javax.swing.JLabel(); DestinationText = new javax.swing.JTextField(); jLabel23 = new javax.swing.JLabel(); ExitName = new javax.swing.JTextField(); jPanel34 = new javax.swing.JPanel(); ListOfTileMapsForExit = initListMapsForExitPan(); ListOfMapExitsForExit = initListMapsExitsForExitPan(); jLabel24 = new javax.swing.JLabel(); jLabel25 = new javax.swing.JLabel(); AddExit = new javax.swing.JButton(); SaveExit = new javax.swing.JButton(); AbortExit = new javax.swing.JButton(); DeleteExit = new javax.swing.JButton(); SuspendExit = new javax.swing.JButton(); CompleteExit = new javax.swing.JButton(); ResumeExit = new javax.swing.JButton(); jPanel1 = new javax.swing.JPanel(); HelpOnMapExit = new javax.swing.JLabel(); SchedulePan = new javax.swing.JPanel(); jPanel38 = new javax.swing.JPanel(); jButton3 = new javax.swing.JButton(); jButton4 = new javax.swing.JButton(); jPanel9 = new javax.swing.JPanel(); jLabel21 = new javax.swing.JLabel(); jPanel23 = new javax.swing.JPanel(); jSplitPane3 = new javax.swing.JSplitPane(); jPanel32 = new javax.swing.JPanel(); jList2 = new javax.swing.JList(); ImporExportPan = new javax.swing.JPanel(); jPanel29 = new javax.swing.JPanel(); jPanel24 = new javax.swing.JPanel(); jLabel27 = new javax.swing.JLabel(); jPanel25 = new javax.swing.JPanel(); ExportBackground = new javax.swing.JButton(); ImportBackground = new javax.swing.JButton(); jPanel26 = new javax.swing.JPanel(); jLabel28 = new javax.swing.JLabel(); jPanel27 = new javax.swing.JPanel(); ExportAll = new javax.swing.JButton(); ImportAll = new javax.swing.JButton(); jLabel14.setText("jLabel14"); setLayout(new java.awt.BorderLayout()); TitlePan.setBackground(new java.awt.Color(255, 255, 255)); jLabel1.setText("Editor Tools"); TitlePan.add(jLabel1); add(TitlePan, java.awt.BorderLayout.NORTH); MainTabb.setName(""); TileMapsPan.setLayout(new java.awt.BorderLayout()); TileMapTabb.setTabLayoutPolicy(javax.swing.JTabbedPane.SCROLL_TAB_LAYOUT); TileMapTabb.setTabPlacement(javax.swing.JTabbedPane.LEFT); LoadTileMap.setLayout(new java.awt.BorderLayout()); jScrollPane1.setViewportView(BigTree); LoadTileMap.add(jScrollPane1, java.awt.BorderLayout.CENTER); buttonNew.setText("New"); buttonNew.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonNewActionPerformed(evt); } }); jPanel3.add(buttonNew); jLabel26.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLabel26.setText("<html><b>To load Maps, simply click on <p> the name of the one you want <p> to load</b></html>\""); jLabel26.setMaximumSize(new java.awt.Dimension(364, 50)); jLabel26.setMinimumSize(new java.awt.Dimension(364, 50)); jLabel26.setPreferredSize(new java.awt.Dimension(200, 50)); jPanel3.add(jLabel26); LoadTileMap.add(jPanel3, java.awt.BorderLayout.SOUTH); TileMapTabb.addTab("Load/New", LoadTileMap); SaveTileMap.setLayout(new java.awt.BorderLayout()); buttonSave.setText("Save"); buttonSave.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonSaveActionPerformed(evt); } }); jPanel28.add(buttonSave); buttonRefresh.setText("Refresh"); buttonRefresh.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { buttonRefreshActionPerformed(evt); } }); jPanel28.add(buttonRefresh); SaveTileMap.add(jPanel28, java.awt.BorderLayout.SOUTH); jLabel16.setText("Area Name"); jPanel30.add(jLabel16); DataAreaName.setColumns(8); DataAreaName.setText("jTextField1"); jPanel30.add(DataAreaName); jPanel4.add(jPanel30); jLabel2.setForeground(new java.awt.Color(0, 153, 51)); jLabel2.setText("Id"); jPanel12.add(jLabel2); DataID.setColumns(3); DataID.setEditable(false); DataID.setText("jTextField1"); jPanel12.add(DataID); jPanel4.add(jPanel12); jLabel3.setText("Full Name");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -