use of net.technicpack.ui.listitems.LanguageItem in project LauncherV3 by TechnicPack.
the class InstallerFrame method setupStandardInstall.
private void setupStandardInstall(JPanel panel) {
panel.setLayout(new GridBagLayout());
JLabel standardSpiel = new JLabel("<html><body align=\"left\" style='margin-right:10px;'>" + resources.getString("launcher.installer.standardspiel") + "</body></html>");
standardSpiel.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
standardSpiel.setForeground(LauncherFrame.COLOR_WHITE_TEXT);
standardSpiel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
panel.add(standardSpiel, new GridBagConstraints(0, 0, 3, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(9, 0, 0, 3), 0, 0));
panel.add(Box.createGlue(), new GridBagConstraints(0, 1, 3, 1, 1.0, 0.7, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
standardDefaultDirectory = new JCheckBox(resources.getString("launcher.installer.default"));
standardDefaultDirectory.setOpaque(false);
standardDefaultDirectory.setHorizontalAlignment(SwingConstants.RIGHT);
standardDefaultDirectory.setBorder(BorderFactory.createEmptyBorder());
standardDefaultDirectory.setIconTextGap(0);
standardDefaultDirectory.setSelectedIcon(resources.getIcon("checkbox_closed.png"));
standardDefaultDirectory.setIcon(resources.getIcon("checkbox_open.png"));
standardDefaultDirectory.setFocusPainted(false);
standardDefaultDirectory.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
standardDefaultDirectory.setForeground(LauncherFrame.COLOR_WHITE_TEXT);
standardDefaultDirectory.setIconTextGap(6);
standardDefaultDirectory.setSelected(settings.isPortable() || settings.getTechnicRoot().getAbsolutePath().equals(OperatingSystem.getOperatingSystem().getUserDirectoryForApp("technic").getAbsolutePath()));
standardDefaultDirectory.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
useDefaultDirectoryChanged();
}
});
panel.add(standardDefaultDirectory, new GridBagConstraints(0, 2, 3, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 24, 12, 0), 0, 0));
JLabel installFolderLabel = new JLabel(resources.getString("launcher.installer.folder"));
installFolderLabel.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
installFolderLabel.setForeground(LauncherFrame.COLOR_WHITE_TEXT);
panel.add(installFolderLabel, new GridBagConstraints(0, 3, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 24, 0, 8), 0, 0));
String installDir = OperatingSystem.getOperatingSystem().getUserDirectoryForApp("technic").getAbsolutePath();
if (!settings.isPortable())
installDir = settings.getTechnicRoot().getAbsolutePath();
standardInstallDir = new JTextField(installDir);
standardInstallDir.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
standardInstallDir.setBackground(LauncherFrame.COLOR_FORMELEMENT_INTERNAL);
standardInstallDir.setHighlighter(null);
standardInstallDir.setEditable(false);
standardInstallDir.setCursor(null);
panel.add(standardInstallDir, new GridBagConstraints(1, 3, 1, 1, 1, 0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 5, 0, 5), 0, 16));
standardSelectButton = new RoundedButton(resources.getString("launcher.installer.select"));
standardSelectButton.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
standardSelectButton.setContentAreaFilled(false);
standardSelectButton.setHoverForeground(LauncherFrame.COLOR_BLUE);
standardSelectButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
selectStandard();
}
});
panel.add(standardSelectButton, new GridBagConstraints(2, 3, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 5, 0, 16), 0, 0));
useDefaultDirectoryChanged();
panel.add(Box.createGlue(), new GridBagConstraints(0, 4, 3, 1, 1.0, 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
String defaultLocaleText = resources.getString("launcheroptions.language.default");
if (!resources.isDefaultLocaleSupported()) {
defaultLocaleText = defaultLocaleText.concat(" (" + resources.getString("launcheroptions.language.unavailable") + ")");
}
standardLanguages = new JComboBox();
standardLanguages.addItem(new LanguageItem(ResourceLoader.DEFAULT_LOCALE, defaultLocaleText, resources));
for (int i = 0; i < LauncherMain.supportedLanguages.length; i++) {
standardLanguages.addItem(new LanguageItem(resources.getCodeFromLocale(LauncherMain.supportedLanguages[i]), LauncherMain.supportedLanguages[i].getDisplayName(LauncherMain.supportedLanguages[i]), resources.getVariant(LauncherMain.supportedLanguages[i])));
}
if (!settings.getLanguageCode().equalsIgnoreCase(ResourceLoader.DEFAULT_LOCALE)) {
Locale loc = resources.getLocaleFromCode(settings.getLanguageCode());
for (int i = 0; i < LauncherMain.supportedLanguages.length; i++) {
if (loc.equals(LauncherMain.supportedLanguages[i])) {
standardLanguages.setSelectedIndex(i + 1);
break;
}
}
}
standardLanguages.setBorder(new RoundBorder(LauncherFrame.COLOR_SCROLL_THUMB, 1, 10));
standardLanguages.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 14));
standardLanguages.setUI(new LanguageCellUI(resources, new RoundedBorderFormatter(new LineBorder(Color.black, 1)), LauncherFrame.COLOR_SCROLL_TRACK, LauncherFrame.COLOR_SCROLL_THUMB));
standardLanguages.setForeground(LauncherFrame.COLOR_WHITE_TEXT);
standardLanguages.setBackground(LauncherFrame.COLOR_SELECTOR_BACK);
standardLanguages.setRenderer(new LanguageCellRenderer(resources, "globe.png", LauncherFrame.COLOR_SELECTOR_BACK, LauncherFrame.COLOR_WHITE_TEXT));
standardLanguages.setEditable(false);
standardLanguages.setFocusable(false);
standardLanguages.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
standardLanguageChanged();
}
});
panel.add(standardLanguages, new GridBagConstraints(0, 5, 1, 0, 0, 0, GridBagConstraints.SOUTHWEST, GridBagConstraints.NONE, new Insets(0, 8, 8, 0), 0, 0));
RoundedButton install = new RoundedButton(resources.getString("launcher.installer.install"));
install.setFont(resources.getFont(ResourceLoader.FONT_OPENSANS, 16));
install.setContentAreaFilled(false);
install.setForeground(LauncherFrame.COLOR_BUTTON_BLUE);
install.setHoverForeground(LauncherFrame.COLOR_BLUE);
install.setBorder(BorderFactory.createEmptyBorder(5, 17, 10, 17));
install.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
standardInstall();
}
});
panel.add(install, new GridBagConstraints(1, 5, 2, 1, 0, 0, GridBagConstraints.EAST, GridBagConstraints.VERTICAL, new Insets(0, 0, 8, 8), 0, 0));
}
Aggregations