19 package org.sleuthkit.autopsy.texttranslation.ui;
21 import java.awt.BorderLayout;
22 import java.awt.Color;
23 import java.awt.Component;
24 import java.beans.PropertyChangeEvent;
25 import java.beans.PropertyChangeListener;
26 import java.util.logging.Level;
27 import javax.swing.JLabel;
28 import org.openide.util.NbBundle.Messages;
47 @Messages({
"TranslationOptionsPanel.translationDisabled.text=Translation disabled"})
50 controller = theController;
74 @Messages({
"TranslationOptionsPanel.textTranslatorsUnavailable.text=Unable to get selected text translator, translation is disabled.",
75 "TranslationOptionsPanel.noTextTranslatorSelected.text=No text translator selected, translation is disabled.",
76 "TranslationOptionsPanel.noTextTranslators.text=No text translators exist, translation is disabled."})
82 panel.addPropertyChangeListener(
new PropertyChangeListener() {
84 public void propertyChange(PropertyChangeEvent evt) {
90 logger.log(Level.WARNING,
"Unable to get TextExtractor named: " +
translatorComboBox.getSelectedItem().toString(), ex);
91 JLabel label =
new JLabel(Bundle.TranslationOptionsPanel_textTranslatorsUnavailable_text());
92 label.setForeground(Color.RED);
97 translationServicePanel.add(
new JLabel(Bundle.TranslationOptionsPanel_noTextTranslators_text()), BorderLayout.PAGE_START);
99 translationServicePanel.add(
new JLabel(Bundle.TranslationOptionsPanel_noTextTranslatorSelected_text()), BorderLayout.PAGE_START);
111 if (currentSelection == null) {
112 currentSelection = Bundle.TranslationOptionsPanel_translationDisabled_text();
123 UserPreferences.setTextTranslatorName(currentSelection);
125 TextTranslationService.getInstance().updateSelectedTranslator();
126 if (currentSelection != null && !currentSelection.equals(Bundle.TranslationOptionsPanel_translationDisabled_text())) {
128 TextTranslationService.getInstance().getTranslatorByName(currentSelection).saveSettings();
129 }
catch (NoServiceProviderException ex) {
130 logger.log(Level.WARNING,
"Unable to save settings for TextTranslator named: " + currentSelection, ex);
141 @SuppressWarnings(
"unchecked")
151 public void actionPerformed(java.awt.event.ActionEvent evt) {
162 javax.swing.GroupLayout layout =
new javax.swing.GroupLayout(
this);
163 this.setLayout(layout);
164 layout.setHorizontalGroup(
165 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
166 .addGroup(layout.createSequentialGroup()
168 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
169 .addComponent(
translationServicePanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
170 .addGroup(layout.createSequentialGroup()
173 .addComponent(
translatorComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, 214, javax.swing.GroupLayout.PREFERRED_SIZE)
174 .addGap(0, 0, Short.MAX_VALUE))
178 layout.setVerticalGroup(
179 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
180 .addGroup(layout.createSequentialGroup()
183 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
184 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
185 .addComponent(
translatorComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
187 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
188 .addComponent(
translationServicePanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
javax.swing.JComboBox< String > translatorComboBox
TextTranslator getTranslatorByName(String translatorName)
static String getTextTranslatorName()
javax.swing.JLabel translationOptionsDescription
javax.swing.JLabel translationServiceLabel
final TranslationOptionsPanelController controller
static TextTranslationService getInstance()
Collection<?extends TextTranslator > getTranslators()
static final Logger logger
static final long serialVersionUID
synchronized static Logger getLogger(String name)
void loadSelectedPanelSettings()
TranslationOptionsPanel(TranslationOptionsPanelController theController)
javax.swing.JPanel translationServicePanel
void translatorComboBoxActionPerformed(java.awt.event.ActionEvent evt)