diff --git a/Ingest/nbproject/genfiles.properties b/Ingest/nbproject/genfiles.properties index 9c775c30c6..b71862b59b 100644 --- a/Ingest/nbproject/genfiles.properties +++ b/Ingest/nbproject/genfiles.properties @@ -1,8 +1,8 @@ -build.xml.data.CRC32=8af55c54 +build.xml.data.CRC32=41cda326 build.xml.script.CRC32=7d5a04db build.xml.stylesheet.CRC32=a56c6a5b@1.46.2 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=8af55c54 +nbproject/build-impl.xml.data.CRC32=41cda326 nbproject/build-impl.xml.script.CRC32=8b2da6d1 nbproject/build-impl.xml.stylesheet.CRC32=238281d1@1.46.2 diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageMainPanel.java b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageMainPanel.java index 88a34a498f..49f76a220b 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageMainPanel.java +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageMainPanel.java @@ -62,18 +62,14 @@ public class IngestMessageMainPanel extends JLayeredPane { @Override public void componentShown(ComponentEvent e) { + //doResize(); } @Override public void componentResized(ComponentEvent e) { //we need to handle resizing ourselves due to absence of layout manager //in layered layout - Dimension dim = getSize(); - messagePanel.setPreferredSize(dim); - detailsPanel.setPreferredSize(dim); - messagePanel.setBounds(0, 0, dim.width, dim.height); - detailsPanel.setBounds(0, 0, dim.width, dim.height); - revalidate(); + doResize(); } }); @@ -85,6 +81,15 @@ public class IngestMessageMainPanel extends JLayeredPane { this.setOpaque(true); } + void doResize() { + Dimension dim = getSize(); + messagePanel.setPreferredSize(dim); + detailsPanel.setPreferredSize(dim); + messagePanel.setBounds(0, 0, dim.width, dim.height); + detailsPanel.setBounds(0, 0, dim.width, dim.height); + revalidate(); + } + IngestMessagePanel getMessagePanel() { return messagePanel; } diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.form b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.form index da46813c77..03943716b1 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.form +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.form @@ -60,7 +60,7 @@ - + diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.java b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.java index 84412f9624..8f52371825 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.java +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessagePanel.java @@ -22,6 +22,7 @@ import java.awt.Color; import java.awt.Component; import java.awt.Dimension; import java.awt.Font; +import java.awt.Graphics; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; import java.util.ArrayList; @@ -54,6 +55,7 @@ class IngestMessagePanel extends javax.swing.JPanel { private static Font notVisitedFont = new Font("Arial", Font.BOLD, 11); private static Color ERROR_COLOR = new Color(255, 90, 90); private int lastRowSelected = -1; + private boolean resized = false; private enum COLUMN { @@ -113,7 +115,7 @@ class IngestMessagePanel extends javax.swing.JPanel { messageTable.setBackground(new java.awt.Color(221, 221, 235)); messageTable.setFont(new java.awt.Font("Arial", 0, 10)); // NOI18N messageTable.setModel(tableModel); - messageTable.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_LAST_COLUMN); + messageTable.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); messageTable.setAutoscrolls(false); messageTable.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); messageTable.setGridColor(new java.awt.Color(204, 204, 204)); @@ -192,7 +194,6 @@ class IngestMessagePanel extends javax.swing.JPanel { jScrollPane1.setWheelScrollingEnabled(true); messageTable.setAutoscrolls(false); - //messageTable.setTableHeader(null); messageTable.setShowHorizontalLines(false); messageTable.setShowVerticalLines(false); @@ -204,43 +205,45 @@ class IngestMessagePanel extends javax.swing.JPanel { //column.setCellRenderer(new MessageTableRenderer()); column.setCellRenderer(renderer); } - setTableSize(messageTable.getSize().width); - + messageTable.setCellSelectionEnabled(false); messageTable.setColumnSelectionAllowed(false); messageTable.setRowSelectionAllowed(true); messageTable.getSelectionModel().addListSelectionListener(new MessageVisitedSelection()); + } @Override public void setPreferredSize(Dimension dmnsn) { super.setPreferredSize(dmnsn); - final int width = messageTable.getSize().width; - setTableSize(width); - + setTableSize(messageTable.getParent().getSize()); } + - @Override - public void setSize(Dimension dmnsn) { - super.setSize(dmnsn); - final int width = messageTable.getSize().width; - setTableSize(width); - - } - - private void setTableSize(int width) { - for (int i = 0; i < 3; i++) { + void setTableSize(Dimension d) { + for (int i = 0; i < 3; ++i) { TableColumn column = messageTable.getColumnModel().getColumn(i); if (i == 0) { - column.setPreferredWidth(((int) (width * 0.66))); + column.setPreferredWidth(((int) (d.width * 0.23))); } else if (i == 1) { - column.setPreferredWidth(((int) (width * 0.10))); + column.setPreferredWidth(((int) (d.width * 0.10))); } else { - column.setPreferredWidth(((int) (width * 0.23))); + column.setPreferredWidth(((int) (d.width * 0.66))); } } } + @Override + public void paint(Graphics g) { + super.paint(g); + //workaround to force initial resize when window fully initialized + if (resized == false) { + mainPanel.doResize(); + resized = true; + } + } + + public void addMessage(IngestMessage m) { final int origMsgGroups = tableModel.getNumberUnreadGroups(); tableModel.addMessage(m); @@ -331,13 +334,13 @@ class IngestMessagePanel extends javax.swing.JPanel { switch (column) { case 0: - colName = "Subject"; + colName = "Module"; break; case 1: colName = "Num"; break; case 2: - colName = "Module"; + colName = "Subject"; break; default: ; @@ -353,12 +356,6 @@ class IngestMessagePanel extends javax.swing.JPanel { switch (columnIndex) { case 0: - ret = (Object) entry.messageGroup.getSubject(); - break; - case 1: - ret = (Object) entry.messageGroup.getCount(); - break; - case 2: Object service = entry.messageGroup.getSource(); if (service == null) { ret = ""; @@ -366,6 +363,12 @@ class IngestMessagePanel extends javax.swing.JPanel { ret = (Object) entry.messageGroup.getSource().getName(); } break; + case 1: + ret = (Object) entry.messageGroup.getCount(); + break; + case 2: + ret = (Object) entry.messageGroup.getSubject(); + break; default: logger.log(Level.SEVERE, "Invalid table column index: " + columnIndex); break; @@ -571,10 +574,11 @@ class IngestMessagePanel extends javax.swing.JPanel { IngestMessage first = messages.get(0); //make sure uniqness agrees + /* if (!message.getSource().equals(first.getSource()) || !message.getUniqueKey().equals(first.getUniqueKey())) { throw new IllegalArgumentException("Tried to add a message to a wrong message group."); - } + } */ messages.add(message); ++count; @@ -586,10 +590,11 @@ class IngestMessagePanel extends javax.swing.JPanel { IngestMessage first = messages.get(0); IngestMessage firstG = group.messages.get(0); //make sure uniqness agrees + /* if (!firstG.getSource().equals(first.getSource()) || !firstG.getUniqueKey().equals(first.getUniqueKey())) { throw new IllegalArgumentException("Tried to add a message to a wrong message group."); - } + } */ for (IngestMessage m : group.getMessages()) { messages.add(m); @@ -694,7 +699,7 @@ class IngestMessagePanel extends javax.swing.JPanel { final Component cell = super.getTableCellRendererComponent( table, value, false, false, row, column); - if (column == 0) { + if (column == 2) { String val = (String) table.getModel().getValueAt(row, column); setToolTipText(val); //setText(val); diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageTopComponent.java b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageTopComponent.java index 7559a080e3..d7981eff9e 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageTopComponent.java +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/IngestMessageTopComponent.java @@ -98,10 +98,12 @@ public final class IngestMessageTopComponent extends TopComponent implements Ing @Override public void componentOpened() { //logger.log(Level.INFO, "OPENED"); + super.componentOpened(); //create manager instance if (manager == null) { manager = IngestManager.getDefault(); } + } @Override @@ -136,7 +138,7 @@ public final class IngestMessageTopComponent extends TopComponent implements Ing } mode.dockInto(this); this.open(); - } + } } @Override @@ -149,8 +151,7 @@ public final class IngestMessageTopComponent extends TopComponent implements Ing @Override protected void componentActivated() { //logger.log(Level.INFO, "ACTIVATED"); - super.componentActivated(); - + super.componentActivated(); } @Override diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/Installer.java b/Ingest/src/org/sleuthkit/autopsy/ingest/Installer.java index 38dfc83423..754069dd30 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/Installer.java +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/Installer.java @@ -35,9 +35,12 @@ public class Installer extends ModuleInstall { logger.log(Level.INFO, "Initializing ingest manager"); final IngestManager manager = IngestManager.getDefault(); WindowManager.getDefault().invokeWhenUIReady(new Runnable() { + @Override public void run() { manager.initUI(); + //force ingest inbox closed, even if previous state was open + //IngestMessageTopComponent.findInstance().close(); } }); @@ -45,7 +48,9 @@ public class Installer extends ModuleInstall { @Override public boolean closing() { - + //force ingest inbox closed on exit and save state as such + IngestMessageTopComponent.findInstance().close(); + return true; } } diff --git a/Ingest/src/org/sleuthkit/autopsy/ingest/floatingLeftBottomWsmode.xml b/Ingest/src/org/sleuthkit/autopsy/ingest/floatingLeftBottomWsmode.xml index 6909c42876..dcc47dc5cc 100644 --- a/Ingest/src/org/sleuthkit/autopsy/ingest/floatingLeftBottomWsmode.xml +++ b/Ingest/src/org/sleuthkit/autopsy/ingest/floatingLeftBottomWsmode.xml @@ -12,7 +12,7 @@ - +