diff --git a/src/net/azib/ipscan/feeders/RandomFeeder.java b/src/net/azib/ipscan/feeders/RandomFeeder.java index 2370f515..4e739280 100755 --- a/src/net/azib/ipscan/feeders/RandomFeeder.java +++ b/src/net/azib/ipscan/feeders/RandomFeeder.java @@ -103,7 +103,7 @@ public class RandomFeeder implements Feeder { */ public String getInfo() { try { - return InetAddress.getByAddress(prototypeBytes).getHostAddress() + " / " + InetAddress.getByAddress(maskBytes).getHostAddress() + ": " + addressCount; + return addressCount + ": " + InetAddress.getByAddress(prototypeBytes).getHostAddress() + " / " + InetAddress.getByAddress(maskBytes).getHostAddress(); } catch (UnknownHostException e) { assert false : e; diff --git a/src/net/azib/ipscan/gui/feeders/RandomFeederGUI.java b/src/net/azib/ipscan/gui/feeders/RandomFeederGUI.java index 075ee027..c49558d4 100755 --- a/src/net/azib/ipscan/gui/feeders/RandomFeederGUI.java +++ b/src/net/azib/ipscan/gui/feeders/RandomFeederGUI.java @@ -18,6 +18,8 @@ import net.azib.ipscan.feeders.RandomFeeder; import net.azib.ipscan.gui.actions.FeederActions; import org.eclipse.swt.SWT; +import org.eclipse.swt.events.TraverseEvent; +import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.FormAttachment; import org.eclipse.swt.layout.FormData; @@ -146,6 +148,15 @@ public class RandomFeederGUI extends AbstractFeederGUI { formData.top = new FormAttachment(ipUpButton, 0, SWT.CENTER); formData.right = new FormAttachment(ipMaskCombo, 0, SWT.RIGHT); countSpinner.setLayoutData(formData); + countSpinner.addTraverseListener(new TraverseListener() { + public void keyTraversed(TraverseEvent e) { + // this due to a bug either in SWT or GTK: + // spinner getText() returns the new value only if + // it has lost the focus first + ipPrototypeText.forceFocus(); + countSpinner.forceFocus(); + } + }); // do this stuff asynchronously (to show GUI faster) getDisplay().asyncExec(new Runnable() { diff --git a/test/net/azib/ipscan/exporters/ExportProcessorTest.java b/test/net/azib/ipscan/exporters/ExportProcessorTest.java index 9b014d75..f56673e9 100755 --- a/test/net/azib/ipscan/exporters/ExportProcessorTest.java +++ b/test/net/azib/ipscan/exporters/ExportProcessorTest.java @@ -100,6 +100,7 @@ public class ExportProcessorTest { private Feeder createMockFeeder(String feederInfo) { Feeder feeder = createMock(Feeder.class); expect(feeder.getInfo()).andReturn(feederInfo); + expect(feeder.getLabel()).andReturn("feeder.range"); replay(feeder); return feeder; } diff --git a/test/net/azib/ipscan/feeders/RandomFeederTest.java b/test/net/azib/ipscan/feeders/RandomFeederTest.java index 3b95e2f5..e9bec09f 100755 --- a/test/net/azib/ipscan/feeders/RandomFeederTest.java +++ b/test/net/azib/ipscan/feeders/RandomFeederTest.java @@ -137,8 +137,8 @@ public class RandomFeederTest { public void testGetInfo() { RandomFeeder randomFeeder = new RandomFeeder(); randomFeeder.initialize("100.11.12.13", "100.11.12.15", 3); - assertEquals("100.11.12.13 / 100.11.12.15: 3", randomFeeder.getInfo()); + assertEquals("3: 100.11.12.13 / 100.11.12.15", randomFeeder.getInfo()); randomFeeder.initialize("0.0.0.0", "255.255.255.255", 129876); - assertEquals("0.0.0.0 / 255.255.255.255: 129876", randomFeeder.getInfo()); + assertEquals("129876: 0.0.0.0 / 255.255.255.255", randomFeeder.getInfo()); } }