Ignore:
Timestamp:
May 8, 2013, 12:25:39 PM (12 years ago)
Author:
alloc
Message:

AEI2.11:

Location:
java/installer2/src/net/oni2/aeinstaller/gui
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • java/installer2/src/net/oni2/aeinstaller/gui/MainWin.java

    r859 r860  
    225225                }
    226226
     227                PackageManager.loadFromCacheFile(Paths.getPacManCacheFilename());
     228
    227229                if (hasUpdated || !Paths.getPacManCacheFilename().exists()) {
    228230                        PackageManager.getInstance().init();
    229231                        PackageManager.getInstance().saveToCacheFile(
    230232                                        Paths.getPacManCacheFilename());
    231                 } else
    232                         PackageManager.loadFromCacheFile(Paths.getPacManCacheFilename());
     233                }
    233234                tblMods.reloadData();
    234235                initModTypeBox();
     
    390391
    391392        @SuppressWarnings("unused")
     393        private void showNewPackages() {
     394                PackageManager pm = PackageManager.getInstance();
     395                if ((pm.getNewModsOnDepot().size() >= pm.getModsValidAndNotCore()
     396                                .size())
     397                                || (pm.getNewToolsOnDepot().size() >= pm.getTools().size()))
     398                        return;
     399                if (SettingsManager.getInstance().get("notifynewpackages", true)) {
     400                        if (pm.getNewModsOnDepot().size() > 0
     401                                        || pm.getNewToolsOnDepot().size() > 0) {
     402                                TreeSet<Package> mods = new TreeSet<Package>(pm
     403                                                .getNewModsOnDepot().values());
     404                                TreeSet<Package> tools = new TreeSet<Package>(pm
     405                                                .getNewToolsOnDepot().values());
     406                                StringBuffer modsString = new StringBuffer();
     407                                StringBuffer toolsString = new StringBuffer();
     408                                for (final Package m : mods) {
     409                                        modsString.append("<li>" + m.getName() + "</li>");
     410                                }
     411                                for (final Package m : tools) {
     412                                        toolsString.append("<li>" + m.getName() + "</li>");
     413                                }
     414                                // Build info dialog content
     415                                String message = "<html>"
     416                                                + bundle.getString("newPackages.text") + "</html>";
     417                                if (modsString.length() > 0) {
     418                                        modsString.insert(0, "Mods:<ul>");
     419                                        modsString.append("</ul>");
     420                                        message = message.replaceAll("%1", modsString.toString());
     421                                } else {
     422                                        message = message.replaceAll("%1", "");
     423                                }
     424                                if (toolsString.length() > 0) {
     425                                        toolsString.insert(0, "Tools:<ul>");
     426                                        toolsString.append("</ul>");
     427                                        message = message.replaceAll("%2", toolsString.toString());
     428                                } else {
     429                                        message = message.replaceAll("%2", "");
     430                                }
     431
     432                                JPanel pan = new JPanel(new BorderLayout(0, 25));
     433                                JLabel lblTxt = new JLabel(message);
     434                                pan.add(lblTxt, BorderLayout.CENTER);
     435                                JCheckBox checkFutureUpdates = new JCheckBox(
     436                                                bundle.getString("checkNewPackagesOnStartup.text"));
     437                                checkFutureUpdates.setSelected(SettingsManager.getInstance()
     438                                                .get("notifynewpackages", true));
     439                                checkFutureUpdates.addItemListener(new ItemListener() {
     440                                        @Override
     441                                        public void itemStateChanged(ItemEvent evt) {
     442                                                SettingsManager.getInstance().put("notifynewpackages",
     443                                                                evt.getStateChange() == ItemEvent.SELECTED);
     444                                        }
     445                                });
     446                                pan.add(checkFutureUpdates, BorderLayout.SOUTH);
     447
     448                                JOptionPane.showMessageDialog(this, pan,
     449                                                bundle.getString("newPackages.title"),
     450                                                JOptionPane.INFORMATION_MESSAGE);
     451                        }
     452                }
     453        }
     454
     455        @SuppressWarnings("unused")
    392456        private void focus() {
    393457                SwingUtilities.invokeLater(new Runnable() {
     
    507571                });
    508572        }
    509        
     573
    510574        @SuppressWarnings("unused")
    511575        private void refreshLocalMods() {
  • java/installer2/src/net/oni2/aeinstaller/gui/MainWin.yml

    r859 r860  
    66  locationRelativeTo: null
    77  defaultCloseOperation: doNothingOnClose
    8   onWindowOpened: [execDepotUpdate,checkCorePackages,infoCorePackages,checkInitialize,initialize,checkUpdates,doUpdate,refreshToolsMenu,focus]
     8  onWindowOpened: [execDepotUpdate,checkCorePackages,infoCorePackages,checkInitialize,initialize,checkUpdates,doUpdate,refreshToolsMenu,showNewPackages,focus]
    99  onWindowClosing: [saveLocalData,exit]
    1010  iconImage: img.ae
  • java/installer2/src/net/oni2/aeinstaller/gui/settings/SettingsDialog.java

    r856 r860  
    3939
    4040        private JCheckBox chkNotifyOnStart;
     41        private JCheckBox chkNotifyNewPackagesOnStart;
    4142        private JCheckBox chkNotifyDepsAfterInstall;
    4243        private JCheckBox chkCopyIntro;
     
    8182
    8283                chkNotifyOnStart.setSelected(set.get("notifyupdates", true));
     84                chkNotifyNewPackagesOnStart.setSelected(set.get("notifynewpackages",
     85                                true));
    8386                chkNotifyDepsAfterInstall.setSelected(set.get("notifyDepsAfterInstall",
    8487                                false));
     
    137140
    138141                set.put("notifyupdates", chkNotifyOnStart.isSelected());
     142                set.put("notifynewpackages", chkNotifyNewPackagesOnStart.isSelected());
    139143                set.put("notifyDepsAfterInstall",
    140144                                chkNotifyDepsAfterInstall.isSelected());
  • java/installer2/src/net/oni2/aeinstaller/gui/settings/SettingsDialog.yml

    r856 r860  
    1212    - JPanel(name=panCommon, groupTitle=panCommon):
    1313      - JCheckBox(name=chkNotifyOnStart, horizontalTextPosition=LEADING, text=lblNotifyOnStart)
     14      - JCheckBox(name=chkNotifyNewPackagesOnStart, horizontalTextPosition=LEADING, text=lblNotifyNewPackagesOnStart)
    1415      - JCheckBox(name=chkNotifyDepsAfterInstall, horizontalTextPosition=LEADING, text=lblNotifyDepsAfterInstall, toolTipText=lblNotifyDepsAfterInstall.tooltip)
    1516      - JCheckBox(name=chkCopyIntro, horizontalTextPosition=LEADING, text=lblCopyIntro)
     
    1718      - MigLayout: |
    1819           [grow]
    19            >chkNotifyOnStart           [pref]
    20            >chkNotifyDepsAfterInstall  [pref]
    21            >chkCopyIntro               [pref]
    22            >chkCopyOutro               [pref]
     20           >chkNotifyOnStart             [pref]
     21           >chkNotifyNewPackagesOnStart  [pref]
     22           >chkNotifyDepsAfterInstall    [pref]
     23           >chkCopyIntro                 [pref]
     24           >chkCopyOutro                 [pref]
    2325    - JPanel(name=panProxy, groupTitle=panProxy):
    2426      - JLabel(name=empty)
Note: See TracChangeset for help on using the changeset viewer.