From 79b4e2e6483ceff7975069d15289b03d8cce726e Mon Sep 17 00:00:00 2001 From: Nick Davis Date: Fri, 21 Feb 2014 17:47:05 -0500 Subject: [PATCH] Pulled static strings into Bundle.properties. First half of classes completed. --- .../autopsy/corecomponents/Bundle.properties | 32 +++++++++++++++++++ .../DataContentViewerArtifact.java | 10 +++--- .../corecomponents/DataContentViewerHex.java | 24 ++++++++------ .../DataContentViewerMedia.java | 6 ++-- .../DataContentViewerString.java | 29 +++++++++++------ .../corecomponents/DataResultPanel.java | 8 +++-- .../corecomponents/DataResultViewerTable.java | 17 ++++++---- .../DataResultViewerThumbnail.java | 20 +++++++++--- .../autopsy/corecomponents/FXVideoPanel.java | 11 ++++--- 9 files changed, 114 insertions(+), 43 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties index 1cefe19010..e1189cfa69 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties @@ -112,3 +112,35 @@ GeneralPanel.useGMTTimeRB.text=Use GMT GeneralPanel.jLabel3.text=Hide known files in the Directory Listing when: GeneralPanel.viewsHideKnownCB.text=Selecting under Views GeneralPanel.dataSourcesHideKnownCB.text=Selecting under Data Sources +DataContentViewerArtifact.waitText=Retrieving and preparing data, please wait... +DataContentViewerArtifact.errorText=Error retrieving result +DataContentViewerArtifact.title=Results +DataContentViewerArtifact.toolTip=Displays Results associated with the file +DataContentViewerHex.goToPageTextField.msgDlg=Please enter a valid page number between 1 and {0} +DataContentViewerHex.goToPageTextField.err=Invalid page number +DataContentViewerHex.setDataView.errorText=(offset {0}-{1} could not be read) +DataContentViewerHex.title=Hex +DataContentViewerHex.toolTip=Displays the binary contents of a file as hexidecimal, with bytes that are displayable as ASCII characters on the right. +DataContentViewerMedia.title=Media +DataContentViewerMedia.toolTip=Displays supported multimedia files (images, videos, audio) +DataContentViewerString.goToPageTextField.msgDlg=Please enter a valid page number between 1 and {0} +DataContentViewerString.goToPageTextField.err=Invalid page number +DataContentViewerString.setDataView.errorText=(offset {0}-{1} could not be read) +DataContentViewerString.setDataView.errorNoText=(offset {0}-{1} contains no text) +DataContentViewerString.title=Strings +DataContentViewerString.toolTip=Displays ASCII and Unicode strings extracted from the file. +DataResultPanel.dummyNodeDisplayName=Please Wait... +DataResultViewerTable.firstColLbl=Name +DataResultViewerTable.illegalArgExc.noChildFromParent=Couldn't get a child Node from the given parent. +DataResultViewerTable.illegalArgExc.childWithoutPropertySet=Child Node doesn't have the regular PropertySet. +DataResultViewerTable.title=Table +DataResultViewerTable.dummyNodeDisplayName=Please Wait... +DataResultViewerThumbnail.title=Thumbnail +DataResultViewerThumbnail.goToPageTextField.msgDlg=Please enter a valid page number between 1 and {0} +DataResultViewerThumbnail.goToPageTextField.err=Invalid page number +DataResultViewerThumbnail.genThumbs=Generating Thumbnails... +DataResultViewerThumbnail.pageNumbers.curOfTotal={0} of {1} +FXVideoPanel.mediaPane.infoLabel=Playback of deleted videos is not supported, use an external player. +FXVideoPanel.progress.bufferingFile=Buffering {0} +FXVideoPanel.progressLabel.buffering=Buffering... +FXVideoPanel.media.unsupportedFormat=Unsupported Format. diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java index f979f74688..4cc0e394a6 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java @@ -27,6 +27,8 @@ import java.util.ArrayList; import java.util.List; import java.util.concurrent.ExecutionException; import java.util.logging.Level; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import javax.swing.JMenuItem; import javax.swing.JTextPane; @@ -53,8 +55,8 @@ import org.sleuthkit.datamodel.TskCoreException; public class DataContentViewerArtifact extends javax.swing.JPanel implements DataContentViewer{ private final static Logger logger = Logger.getLogger(DataContentViewerArtifact.class.getName()); - private final static String WAIT_TEXT = "Retrieving and preparing data, please wait..."; - private final static String ERROR_TEXT = "Error retrieving result"; + private final static String WAIT_TEXT = NbBundle.getMessage(DataContentViewerArtifact.class, "DataContentViewerArtifact.waitText"); + private final static String ERROR_TEXT = NbBundle.getMessage(DataContentViewerArtifact.class, "DataContentViewerArtifact.errorText"); private Node currentNode; // @@@ Remove this when the redundant setNode() calls problem is fixed. private int currentPage = 1; private final Object lock = new Object(); @@ -288,12 +290,12 @@ public class DataContentViewerArtifact extends javax.swing.JPanel implements Dat @Override public String getTitle() { - return "Results"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerArtifact.title"); } @Override public String getToolTip() { - return "Displays Results associated with the file"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerArtifact.toolTip"); } @Override diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java index 0e28a337f8..fbf63346fb 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java @@ -23,6 +23,8 @@ import java.awt.Cursor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.logging.Level; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import javax.swing.JMenuItem; import javax.swing.JOptionPane; @@ -257,8 +259,13 @@ public class DataContentViewerHex extends javax.swing.JPanel implements DataCont pageNumber = totalPages + 1; } if (pageNumber > totalPages || pageNumber < 1) { - JOptionPane.showMessageDialog(this, "Please enter a valid page number between 1 and " + totalPages, - "Invalid page number", JOptionPane.WARNING_MESSAGE); + JOptionPane.showMessageDialog(this, + NbBundle.getMessage(this.getClass(), + "DataContentViewerHex.goToPageTextField.msgDlg", + totalPages), + NbBundle.getMessage(this.getClass(), + "DataContentViewerHex.goToPageTextField.err"), + JOptionPane.WARNING_MESSAGE); return; } setDataView(pageNumber); @@ -309,16 +316,16 @@ public class DataContentViewerHex extends javax.swing.JPanel implements DataCont try { bytesRead = dataSource.read(data, offset, pageLength); // read the data } catch (TskException ex) { - errorText = "(offset " + offset + "-" + (offset + pageLength) - + " could not be read)"; + errorText = NbBundle.getMessage(this.getClass(), "DataContentViewerHex.setDataView.errorText", offset, + offset + pageLength); logger.log(Level.WARNING, "Error while trying to show the hex content.", ex); } } // set the data on the bottom and show it if (bytesRead <= 0) { - errorText = "(offset " + offset + "-" + (offset + pageLength) - + " could not be read)"; + errorText = NbBundle.getMessage(this.getClass(), "DataContentViewerHex.setDataView.errorText", offset, + offset + pageLength); } @@ -378,13 +385,12 @@ public class DataContentViewerHex extends javax.swing.JPanel implements DataCont @Override public String getTitle() { - return "Hex"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerHex.title"); } @Override public String getToolTip() { - return "Displays the binary contents of a file as hexidecimal, with " - + "bytes that are displayable as ASCII characters on the right."; + return NbBundle.getMessage(this.getClass(), "DataContentViewerHex.toolTip"); } @Override diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java index 7bd6c0d1cd..d7a2c63814 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java @@ -24,6 +24,8 @@ import java.awt.Dimension; import java.util.Arrays; import java.util.logging.Level; import javax.imageio.ImageIO; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import org.openide.nodes.Node; import org.openide.util.lookup.ServiceProvider; @@ -164,12 +166,12 @@ public class DataContentViewerMedia extends javax.swing.JPanel implements DataCo @Override public String getTitle() { - return "Media"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerMedia.title"); } @Override public String getToolTip() { - return "Displays supported multimedia files (images, videos, audio)"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerMedia.toolTip"); } @Override diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java index 5223f61920..98dc842a1d 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java @@ -24,6 +24,8 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.List; import java.util.logging.Level; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import javax.swing.JMenuItem; import javax.swing.JOptionPane; @@ -286,8 +288,13 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC pageNumber = maxPage + 1; } if (pageNumber > maxPage || pageNumber < 1) { - JOptionPane.showMessageDialog(this, "Please enter a valid page number between 1 and " + maxPage, - "Invalid page number", JOptionPane.WARNING_MESSAGE); + JOptionPane.showMessageDialog(this, + NbBundle.getMessage(this.getClass(), + "DataContentViewerString.goToPageTextField.msgDlg", + maxPage), + NbBundle.getMessage(this.getClass(), + "DataContentViewerString.goToPageTextField.err"), + JOptionPane.WARNING_MESSAGE); return; } currentOffset = (pageNumber - 1) * pageLength; @@ -346,8 +353,9 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC try { bytesRead = dataSource.read(data, offset, pageLength); // read the data } catch (TskException ex) { - text = "(offset " + currentOffset + "-" + (currentOffset + pageLength) - + " could not be read)"; + text = NbBundle.getMessage(this.getClass(), + "DataContentViewerString.setDataView.errorText", currentOffset, + currentOffset + pageLength); logger.log(Level.WARNING, "Error while trying to show the String content.", ex); } } @@ -359,12 +367,13 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC StringExtractResult res = stringExtract.extract(data, bytesRead, 0); text = res.getText(); if (text.trim().isEmpty()) { - text = "(offset " + currentOffset + "-" + (currentOffset + pageLength) - + " contains no text)"; + text = NbBundle.getMessage(this.getClass(), + "DataContentViewerString.setDataView.errorNoText", currentOffset, + currentOffset + pageLength); } } else { - text = "(offset " + currentOffset + "-" + (currentOffset + pageLength) - + " could not be read)"; + text = NbBundle.getMessage(this.getClass(), "DataContentViewerString.setDataView.errorText", currentOffset, + currentOffset + pageLength); } // disable or enable the next button @@ -459,12 +468,12 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC @Override public String getTitle() { - return "Strings"; + return NbBundle.getMessage(this.getClass(), "DataContentViewerString.title"); } @Override public String getToolTip() { - return "Displays ASCII and Unicode strings extracted from the file."; + return NbBundle.getMessage(this.getClass(), "DataContentViewerString.toolTip"); } @Override diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultPanel.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultPanel.java index eb5ecf409b..9bd06d8718 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultPanel.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultPanel.java @@ -36,6 +36,7 @@ import org.openide.nodes.NodeListener; import org.openide.nodes.NodeMemberEvent; import org.openide.nodes.NodeReorderEvent; import org.openide.util.Lookup; +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.corecomponentinterfaces.DataContent; import org.sleuthkit.autopsy.corecomponentinterfaces.DataResult; @@ -67,8 +68,9 @@ public class DataResultPanel extends javax.swing.JPanel implements DataResult, C private final DummyNodeListener dummyNodeListener = new DummyNodeListener(); private static final Logger logger = Logger.getLogger(DataResultPanel.class.getName() ); - private boolean listeningToTabbedPane = false; - + private boolean listeningToTabbedPane = false; + private static final String DUMMY_NODE_DISPLAY_NAME = NbBundle.getMessage(DataResultPanel.class, + "DataResultPanel.dummyNodeDisplayName"); /** * Creates new DataResultPanel * Default constructor, needed mostly for the palette/UI builder @@ -619,7 +621,7 @@ public class DataResultPanel extends javax.swing.JPanel implements DataResult, C } private class DummyNodeListener implements NodeListener { - private static final String DUMMY_NODE_DISPLAY_NAME = "Please Wait..."; + private volatile boolean load = true; public void reset() { diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java index 6cde1ad2a2..958a0da2ca 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java @@ -29,6 +29,8 @@ import java.util.LinkedHashSet; import java.util.List; import java.util.Set; import java.util.logging.Level; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import javax.swing.JTable; import javax.swing.ListSelectionModel; @@ -57,10 +59,11 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; //@ServiceProvider(service = DataResultViewer.class) public class DataResultViewerTable extends AbstractDataResultViewer { - private String firstColumnLabel = "Name"; + private String firstColumnLabel = NbBundle.getMessage(DataResultViewerTable.class, "DataResultViewerTable.firstColLbl"); private Set propertiesAcc = new LinkedHashSet<>(); private static final Logger logger = Logger.getLogger(DataResultViewerTable.class.getName()); private final DummyNodeListener dummyNodeListener = new DummyNodeListener(); + private static final String DUMMY_NODE_DISPLAY_NAME = NbBundle.getMessage(DataResultViewerTable.class, "DataResultViewerTable.dummyNodeDisplayName"); /** * Creates a DataResultViewerTable object that is compatible with node @@ -154,7 +157,8 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; Node firstChild = parent.getChildren().getNodeAt(0); if (firstChild == null) { - throw new IllegalArgumentException("Couldn't get a child Node from the given parent."); + throw new IllegalArgumentException( + NbBundle.getMessage(this.getClass(), "DataResultViewerTable.illegalArgExc.noChildFromParent")); } else { for (PropertySet ps : firstChild.getPropertySets()) { if (ps.getName().equals(Sheet.PROPERTIES)) { @@ -162,7 +166,8 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; } } - throw new IllegalArgumentException("Child Node doesn't have the regular PropertySet."); + throw new IllegalArgumentException( + NbBundle.getMessage(this.getClass(), "DataResultViewerTable.illegalArgExc.childWithoutPropertySet")); } } @@ -180,7 +185,8 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; Property[] properties = null; if (firstChild == null) { - throw new IllegalArgumentException("Couldn't get a child Node from the given parent."); + throw new IllegalArgumentException( + NbBundle.getMessage(this.getClass(), "DataResultViewerTable.illegalArgExc.noChildFromParent")); } else { Set allProperties = new LinkedHashSet(); while (firstChild != null) { @@ -406,7 +412,7 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; @Override public String getTitle() { - return "Table"; + return NbBundle.getMessage(this.getClass(), "DataResultViewerTable.title"); } @Override @@ -477,7 +483,6 @@ import org.sleuthkit.autopsy.corecomponentinterfaces.DataResultViewer; } private class DummyNodeListener implements NodeListener { - private static final String DUMMY_NODE_DISPLAY_NAME = "Please Wait..."; private volatile boolean load = true; public void reset() { diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerThumbnail.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerThumbnail.java index bdbe02a4f1..a98298223e 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerThumbnail.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerThumbnail.java @@ -26,6 +26,8 @@ import java.beans.PropertyChangeListener; import java.util.Arrays; import java.util.logging.Level; import javax.swing.JOptionPane; + +import org.openide.util.NbBundle; import org.sleuthkit.autopsy.coreutils.Logger; import javax.swing.ListSelectionModel; import javax.swing.SwingWorker; @@ -327,7 +329,7 @@ import org.sleuthkit.datamodel.TskCoreException; @Override public String getTitle() { - return "Thumbnail"; + return NbBundle.getMessage(this.getClass(), "DataResultViewerThumbnail.title"); } @Override @@ -380,8 +382,13 @@ import org.sleuthkit.datamodel.TskCoreException; } if (newPage > totalPages || newPage < 1) { - JOptionPane.showMessageDialog(this, "Please enter a valid page number between 1 and " + totalPages, - "Invalid page number", JOptionPane.WARNING_MESSAGE); + JOptionPane.showMessageDialog(this, + NbBundle.getMessage(this.getClass(), + "DataResultViewerThumbnail.goToPageTextField.msgDlg", + totalPages), + NbBundle.getMessage(this.getClass(), + "DataResultViewerThumbnail.goToPageTextField.err"), + JOptionPane.WARNING_MESSAGE); return; } @@ -407,7 +414,8 @@ import org.sleuthkit.datamodel.TskCoreException; pagePrevButton.setEnabled(false); pageNextButton.setEnabled(false); goToPageField.setEnabled(false); - progress = ProgressHandleFactory.createHandle("Generating Thumbnails..."); + progress = ProgressHandleFactory.createHandle( + NbBundle.getMessage(this.getClass(), "DataResultViewerThumbnail.genThumbs")); progress.start(); progress.switchToIndeterminate(); Node root = em.getRootContext(); @@ -435,7 +443,9 @@ import org.sleuthkit.datamodel.TskCoreException; pageNumLabel.setText(""); imagesRangeLabel.setText(""); } else { - pageNumLabel.setText(Integer.toString(curPage) + " of " + Integer.toString(totalPages)); + pageNumLabel.setText( + NbBundle.getMessage(this.getClass(), "DataResultViewerThumbnail.pageNumbers.curOfTotal", + Integer.toString(curPage), Integer.toString(totalPages))); final int imagesFrom = (curPage - 1) * ThumbnailViewChildren.IMAGES_PER_PAGE + 1; final int imagesTo = curPageImages + (curPage - 1) * ThumbnailViewChildren.IMAGES_PER_PAGE; imagesRangeLabel.setText(imagesFrom + "-" + imagesTo); diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/FXVideoPanel.java b/Core/src/org/sleuthkit/autopsy/corecomponents/FXVideoPanel.java index 584b140934..12156aad2c 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/FXVideoPanel.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/FXVideoPanel.java @@ -62,6 +62,7 @@ import javax.swing.SwingWorker; import org.netbeans.api.progress.ProgressHandle; import org.netbeans.api.progress.ProgressHandleFactory; import org.openide.util.Cancellable; +import org.openide.util.NbBundle; import org.openide.util.lookup.ServiceProvider; import org.openide.util.lookup.ServiceProviders; import org.sleuthkit.autopsy.casemodule.Case; @@ -139,7 +140,7 @@ public class FXVideoPanel extends MediaViewVideoPanel { currentFile = file; final boolean deleted = file.isDirNameFlagSet(TskData.TSK_FS_NAME_FLAG_ENUM.UNALLOC); if (deleted) { - mediaPane.setInfoLabelText("Playback of deleted videos is not supported, use an external player."); + mediaPane.setInfoLabelText(NbBundle.getMessage(this.getClass(), "FXVideoPanel.mediaPane.infoLabel")); removeAll(); return; } @@ -242,13 +243,15 @@ public class FXVideoPanel extends MediaViewVideoPanel { @Override protected Object doInBackground() throws Exception { success = false; - progress = ProgressHandleFactory.createHandle("Buffering " + sFile.getName(), new Cancellable() { + progress = ProgressHandleFactory.createHandle( + NbBundle.getMessage(this.getClass(), "FXVideoPanel.progress.bufferingFile", sFile.getName()), + new Cancellable() { @Override public boolean cancel() { return ExtractMedia.this.cancel(true); } }); - mediaPane.setProgressLabelText("Buffering... "); + mediaPane.setProgressLabelText(NbBundle.getMessage(this.getClass(), "FXVideoPanel.progressLabel.buffering")); progress.start(); progress.switchToDeterminate(100); try { @@ -394,7 +397,7 @@ public class FXVideoPanel extends MediaViewVideoPanel { mediaView.setMediaPlayer(mediaPlayer); } catch (MediaException ex) { this.setProgressLabelText(""); - this.setInfoLabelText("Unsupported Format."); + this.setInfoLabelText(NbBundle.getMessage(this.getClass(), "FXVideoPanel.media.unsupportedFormat")); } }