Changeset 640


Ignore:
Timestamp:
Jan 20, 2013, 7:02:43 PM (12 years ago)
Author:
alloc
Message:

AEI2 0.97:

  • Finished toolmanager
Location:
AE/installer2/src/net/oni2/aeinstaller
Files:
1 added
1 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • AE/installer2/src/net/oni2/aeinstaller/AEInstaller.properties

    r639 r640  
    11appname=AE Installer 2
    2 appversion=0.96
     2appversion=0.97
  • AE/installer2/src/net/oni2/aeinstaller/AEInstaller2.java

    r637 r640  
    4040        private static ResourceBundle basicBundle = ResourceBundle
    4141                        .getBundle("net.oni2.aeinstaller.AEInstaller");
    42         private static ResourceBundle startupBundle = ResourceBundle
    43                         .getBundle("net.oni2.aeinstaller.localization.Startup");
     42        private static ResourceBundle globalBundle = ResourceBundle
     43                        .getBundle("net.oni2.aeinstaller.localization.Global");
    4444
    4545        private static Application app = null;
     
    9393                SwingJavaBuilder.getConfig().addResourceBundle(imagesBundle);
    9494                SwingJavaBuilder.getConfig().addResourceBundle(basicBundle);
    95                 SwingJavaBuilder.getConfig().addResourceBundle(startupBundle);
     95                SwingJavaBuilder.getConfig().addResourceBundle(globalBundle);
    9696                SwingJavaBuilder.getConfig().setMarkInvalidResourceBundleKeys(true);
    9797                SwingJavaBuilder.getConfig().addType("JToolBarSeparator",
     
    164164                                        dlUrl = "http://www.go-mono.com/mono-downloads/download.html";
    165165                        }
    166                         hll.setText(startupBundle
     166                        hll.setText(globalBundle
    167167                                        .getString("dotNetMissing.text")
    168168                                        .replaceAll(
     
    170170                                                        String.format("<a href=\"%s\">%s</a>", dlUrl, dlUrl)));
    171171                        JOptionPane.showMessageDialog(null, hll,
    172                                         startupBundle.getString("dotNetMissing.title"),
     172                                        globalBundle.getString("dotNetMissing.title"),
    173173                                        JOptionPane.ERROR_MESSAGE);
    174174                        return;
     
    177177                if (!Installer.verifyRunningDirectory()) {
    178178                        JOptionPane.showMessageDialog(null,
    179                                         startupBundle.getString("invalidPath.text"),
    180                                         startupBundle.getString("invalidPath.title"),
     179                                        globalBundle.getString("invalidPath.text"),
     180                                        globalBundle.getString("invalidPath.title"),
    181181                                        JOptionPane.ERROR_MESSAGE);
    182182                        if (!Settings.isDebug()) {
     
    188188                if (offline) {
    189189                        JOptionPane.showMessageDialog(null,
    190                                         startupBundle.getString("offlineMode.text"),
    191                                         startupBundle.getString("offlineMode.title"),
     190                                        globalBundle.getString("offlineMode.text"),
     191                                        globalBundle.getString("offlineMode.title"),
    192192                                        JOptionPane.INFORMATION_MESSAGE);
    193193                }
  • AE/installer2/src/net/oni2/aeinstaller/backend/mods/Mod.java

    r639 r640  
    1919import net.oni2.aeinstaller.backend.depot.model.NodeMod;
    2020import net.oni2.aeinstaller.backend.depot.model.TaxonomyTerm;
     21import net.oni2.aeinstaller.backend.oni.Installer;
    2122
    2223/**
     
    205206         */
    206207        public boolean isInstalled() {
    207                 return ModManager.getInstance().isModInstalled(this);
     208                if (tool)
     209                        return Installer.getInstalledTools().contains(packageNumber);
     210                else
     211                        return ModManager.getInstance().isModInstalled(this);
    208212        }
    209213
  • AE/installer2/src/net/oni2/aeinstaller/backend/mods/ModManager.java

    r637 r640  
    126126                                m.getTypes().add(localType);
    127127                        }
    128                         mods.put(m.getPackageNumber(), m);
     128                        if (m.isTool())
     129                                tools.put(m.getPackageNumber(), m);
     130                        else
     131                                mods.put(m.getPackageNumber(), m);
    129132                }
    130133
  • AE/installer2/src/net/oni2/aeinstaller/gui/MainWin.java

    r639 r640  
    122122                                + SwingJavaBuilder.getConfig().getResource("appversion"));
    123123
    124                 setSize(getWidth()+150, getHeight());
     124                setSize(getWidth() + 150, getHeight());
    125125                contents.setDividerLocation(500);
    126126                contents.setResizeWeight(0.4);
     
    384384                toolsMenuItems.clear();
    385385                for (Mod m : ModManager.getInstance().getInstalledTools()) {
    386                         if (m.getExeFile() != null && m.getExeFile().exists()) {
     386                        File exe = m.getExeFile();
     387                        if (exe != null && exe.exists()) {
    387388                                JMenuItem item = new JMenuItem();
    388389                                final Vector<String> params = new Vector<String>();
    389                                 params.add(m.getExeFile().getPath());
     390                                if (exe.getName().toLowerCase().endsWith(".jar")) {
     391                                        File jre = null;
     392                                        if (Settings.getPlatform() == Platform.WIN)
     393                                                jre = new File(System.getProperties().getProperty(
     394                                                                "java.home"), "bin/javaw.exe");
     395                                        else
     396                                                jre = new File(System.getProperties().getProperty(
     397                                                                "java.home"), "bin/java");
     398                                        params.add(jre.getPath());
     399                                        params.add("-jar");
     400                                }
     401                                params.add(exe.getPath());
    390402                                final File wd = m.getWorkingDir();
    391403                                Icon ico = null;
  • AE/installer2/src/net/oni2/aeinstaller/gui/toolmanager/ToolManager.java

    r637 r640  
    66import java.util.ResourceBundle;
    77import java.util.TreeMap;
     8import java.util.TreeSet;
    89
    910import javax.swing.AbstractAction;
     
    2324import javax.swing.event.ListSelectionListener;
    2425
     26import net.oni2.aeinstaller.backend.Settings;
    2527import net.oni2.aeinstaller.backend.SizeFormatter;
    2628import net.oni2.aeinstaller.backend.mods.Mod;
     
    2830import net.oni2.aeinstaller.backend.oni.Installer;
    2931import net.oni2.aeinstaller.gui.HTMLLinkLabel;
     32import net.oni2.aeinstaller.gui.downloadwindow.Downloader;
    3033
    3134import org.javabuilders.BuildResult;
     
    4548
    4649        private JSplitPane contents;
    47        
     50
    4851        private JList lstTools;
    4952
     53        private JLabel lblTitleVal;
    5054        private JLabel lblSubmitterVal;
    5155        private JLabel lblCreatorVal;
     
    101105        @SuppressWarnings("unused")
    102106        private void install() {
    103                 // TODO: care for offline mode
    104                 JOptionPane.showMessageDialog(this, "install", "todo",
    105                                 JOptionPane.INFORMATION_MESSAGE);
    106         }
     107                Object o = lstTools.getSelectedValue();
     108                if (o instanceof Mod) {
     109                        Mod theMod = (Mod) o;
    107110
    108         @SuppressWarnings("unused")
    109         private void installDone() {
     111                        if (theMod.isInstalled()) {
     112                                TreeSet<Mod> tools = new TreeSet<Mod>();
     113                                tools.add(theMod);
     114                                Installer.uninstallTools(tools);
     115                        } else {
     116                                if (!theMod.isLocalAvailable()) {
     117                                        if (Settings.getInstance().isOfflineMode()) {
     118                                                JOptionPane.showMessageDialog(this,
     119                                                                bundle.getString("offlineMode.text"),
     120                                                                bundle.getString("offlineMode.title"),
     121                                                                JOptionPane.WARNING_MESSAGE);
     122                                                return;
     123                                        }
     124
     125                                        TreeSet<Mod> toDownload = new TreeSet<Mod>();
     126                                        toDownload.add(theMod);
     127
     128                                        Downloader dl = new Downloader(toDownload);
     129                                        try {
     130                                                dl.setVisible(true);
     131                                                if (!dl.isFinished())
     132                                                        return;
     133                                        } finally {
     134                                                dl.dispose();
     135                                        }
     136                                }
     137
     138                                TreeSet<Mod> tools = new TreeSet<Mod>();
     139                                tools.add(theMod);
     140                                Installer.installTools(tools);
     141                        }
     142                }
     143                valueChanged(null);
    110144        }
    111145
    112146        @Override
    113147        public void valueChanged(ListSelectionEvent evt) {
     148                lblTitleVal.setText("");
    114149                lblSubmitterVal.setText("");
    115150                lblCreatorVal.setText("");
     
    123158                if (lstTools.getSelectedValue() instanceof Mod) {
    124159                        Mod m = (Mod) lstTools.getSelectedValue();
    125                         lblSubmitterVal.setText(m.getName());
     160                        lblTitleVal.setText(m.getName());
     161                        lblSubmitterVal.setText(m.getSubmitter());
    126162                        lblCreatorVal.setText(m.getCreator());
    127163                        lblDescriptionVal.setText(m.getDescription());
     
    130166                        lblDownloadSizeVal.setText(SizeFormatter.format(m.getZipSize(), 3));
    131167                        btnInstall.setEnabled(true);
    132                         if (Installer.getInstalledTools().contains(m.getPackageNumber())) {
     168                        if (m.isInstalled()) {
    133169                                btnInstall.setText(bundle.getString("btnInstall.un.text"));
    134170                                btnInstall.setToolTipText(bundle
  • AE/installer2/src/net/oni2/aeinstaller/gui/toolmanager/ToolManager.yml

    r626 r640  
    1616                 scrollTools   [grow]
    1717        - JPanel(name=panInfo):
     18            - JLabel(name=lblTitle, text=lblTitle.text)
     19            - JLabel(name=lblTitleVal)
    1820            - JLabel(name=lblSubmitter, text=lblSubmitter.text)
    1921            - JLabel(name=lblSubmitterVal)
     
    2931            - JLabel(name=lblDownloadSize, text=lblDownloadSize.text)
    3032            - JLabel(name=lblDownloadSizeVal)
    31             - JButton(name=btnInstall, icon=img.install, text=btnInstall.text, toolTipText=btnInstall.tooltip, enabled=false, onAction=[install,installDone])
     33            - JButton(name=btnInstall, icon=img.install, text=btnInstall.text, toolTipText=btnInstall.tooltip, enabled=false, onAction=[install])
    3234            - MigLayout: |
    3335                 [min]             [grow]
     36                 >lblTitle         lblTitleVal         [min]
    3437                 >lblSubmitter     lblSubmitterVal     [min]
    3538                 >lblCreator       lblCreatorVal       [min]
  • AE/installer2/src/net/oni2/aeinstaller/localization/MainWin.properties

    r639 r640  
    5757installDone.text=You can now play AE Oni.
    5858
    59 offlineMode.title=Offline mode
    60 offlineMode.text=AEI is running in offline mode.\nNo updates or downloads of new mods are possible.\nPlease restart AEI when you have internet connection to update or download new packages.
    6159updatesAvailable.title=Updates available
    6260updatesAvailable.text=The following mods and tools have newer versions on the Depot.<br>Check the packages you want to be updated.
  • AE/installer2/src/net/oni2/aeinstaller/localization/ToolManager.properties

    r637 r640  
    66btnInstall.un.tooltip=Uninstall this tool
    77
     8lblTitle.text=Name:
    89lblSubmitter.text=Submitter:
    910lblCreator.text=Creator:
Note: See TracChangeset for help on using the changeset viewer.