Skip to content

Commit

Permalink
About action extracting
Browse files Browse the repository at this point in the history
  • Loading branch information
akryvtsun committed Aug 13, 2015
1 parent 907a61c commit c439e81
Show file tree
Hide file tree
Showing 7 changed files with 55 additions and 7 deletions.
1 change: 0 additions & 1 deletion src/net/azib/ipscan/config/ComponentRegistry.java
Expand Up @@ -113,7 +113,6 @@ public ComponentRegistry(java.util.List<Class> plugins) {
if (Platform.MAC_OS)
container.registerComponentImplementation(MacApplicationMenu.class);

container.registerComponentImplementation(AboutDialog.class);
container.registerComponentImplementation(PreferencesDialog.class);
container.registerComponentImplementation(SelectFetchersDialog.class);
container.registerComponentImplementation(DetailsWindow.class);
Expand Down
6 changes: 6 additions & 0 deletions src/net/azib/ipscan/gui/AboutDialog.java
Expand Up @@ -11,6 +11,8 @@
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.widgets.*;

import javax.inject.Inject;

import static net.azib.ipscan.config.Version.*;

/**
Expand All @@ -20,6 +22,10 @@
*/
public class AboutDialog extends AbstractModalDialog {

@Inject
public AboutDialog() {
}

@Override
protected void populateShell() {
shell.setText(Labels.getLabel("title.about"));
Expand Down
9 changes: 6 additions & 3 deletions src/net/azib/ipscan/gui/MacApplicationMenu.java
Expand Up @@ -10,18 +10,21 @@
import org.eclipse.swt.widgets.MenuItem;
import org.picocontainer.Startable;

import javax.inject.Inject;

/**
* Mac-specific application menu handler
* in order to conform better to Mac standards.
*/
public class MacApplicationMenu implements Startable {
private final AboutDialog aboutDialog;
@Inject
AboutDialog aboutDialog;

private final PreferencesDialog preferencesDialog;
private final SelectFetchersDialog selectFetchersDialog;
private final CheckVersion checkVersionListener;

public MacApplicationMenu(AboutDialog aboutDialog, PreferencesDialog preferencesDialog, SelectFetchersDialog selectFetchersDialog, CheckVersion checkVersionListener) {
this.aboutDialog = aboutDialog;
public MacApplicationMenu(PreferencesDialog preferencesDialog, SelectFetchersDialog selectFetchersDialog, CheckVersion checkVersionListener) {
this.preferencesDialog = preferencesDialog;
this.selectFetchersDialog = selectFetchersDialog;
this.checkVersionListener = checkVersionListener;
Expand Down
6 changes: 4 additions & 2 deletions src/net/azib/ipscan/gui/MainMenu.java
Expand Up @@ -20,13 +20,15 @@
import org.picocontainer.defaults.ConstructorInjectionComponentAdapter;
import org.picocontainer.defaults.DefaultPicoContainer;

import javax.inject.Inject;

/**
* MainMenu
*
* @author Anton Keks
*/
public class MainMenu implements Startable {

private MutablePicoContainer container;

public MainMenu(Shell shell, Menu mainMenu, CommandsMenu resultsContextMenu, StateMachine stateMachine, PicoContainer parentContainer) {
Expand Down Expand Up @@ -123,7 +125,7 @@ private void createMainMenuItems(Menu menu) {
initMenuItem(subMenu, null, null, null, null);
initMenuItem(subMenu, "menu.help.checkVersion", null, null, initListener(HelpMenuActions.CheckVersion.class));
initMenuItem(subMenu, null, null, null, null);
initMenuItem(subMenu, "menu.help.about", null, null, initListener(HelpMenuActions.About.class));
initMenuItem(subMenu, "menu.help.about", null, null, DaggerListenerComponent.create().getHelpMenuAboutListener());
}
}

Expand Down
4 changes: 3 additions & 1 deletion src/net/azib/ipscan/gui/actions/HelpMenuActions.java
Expand Up @@ -18,6 +18,8 @@
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.MessageBox;

import javax.inject.Inject;
import javax.inject.Named;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
Expand Down Expand Up @@ -56,8 +58,8 @@ public void handleEvent(Event event) {
public static final class About implements Listener {
private AboutDialog aboutDialog;

@Inject
public About(AboutDialog aboutDialog) {
super();
this.aboutDialog = aboutDialog;
}

Expand Down
19 changes: 19 additions & 0 deletions src/net/azib/ipscan/gui/actions/HelpMenuModule.java
@@ -0,0 +1,19 @@
package net.azib.ipscan.gui.actions;

import dagger.Module;
import dagger.Provides;
import org.eclipse.swt.widgets.Listener;

import javax.inject.Named;

/**
* Created by englishman on 8/12/15.
*/
@Module
public class HelpMenuModule {
@Provides
@Named("about")
Listener provideAbout(HelpMenuActions.About action) {
return action;
}
}
17 changes: 17 additions & 0 deletions src/net/azib/ipscan/gui/actions/ListenerComponent.java
@@ -0,0 +1,17 @@
package net.azib.ipscan.gui.actions;

import dagger.Component;
import dagger.Provides;
import org.eclipse.swt.widgets.Listener;

import javax.inject.Named;
import javax.inject.Qualifier;

/**
* Created by englishman on 8/12/15.
*/
@Component(modules = HelpMenuModule.class)
public interface ListenerComponent {
@Named("about")
Listener getHelpMenuAboutListener();
}

0 comments on commit c439e81

Please sign in to comment.