Skip to content

Commit

Permalink
Merge pull request #36 from atdl4j/origin/feature/4.0.1
Browse files Browse the repository at this point in the history
Correct reported issues:
  • Loading branch information
TyAshley committed Apr 20, 2023
2 parents 96d6a5f + 40472fe commit 9a76f8b
Show file tree
Hide file tree
Showing 8 changed files with 165 additions and 69 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<modelVersion>4.0.0</modelVersion>

<groupId>org.atdl4j</groupId>
<version>4.0.0</version>
<version>4.0.1-SNAPSHOT</version>
<artifactId>atdl4j-ui</artifactId>
<packaging>jar</packaging>
<name>atdl4j-ui</name>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
*/
public interface Atdl4jInputAndFilterDataPanel
{
public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions);
public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler );

public Atdl4jOptions getAtdl4jOptions();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import org.atdl4j.config.InputAndFilterData;
import org.atdl4j.ui.app.Atdl4jInputAndFilterDataPanel;
import org.atdl4j.ui.app.Atdl4jInputAndFilterDataPanelListener;
import org.atdl4j.ui.app.Atdl4jUserMessageHandler;

/**
* Represents the base, non-GUI system-specific Atdl4jOptions and InputAndFilterData GUI component.
Expand Down Expand Up @@ -57,13 +58,16 @@ public abstract class AbstractAtdl4jInputAndFilterDataPanel

Atdl4jOptions atdl4jOptions;
Object parentOrShell; // SWT: Shell, Swing: JFrame, JDialog, etc
private Atdl4jUserMessageHandler atdl4jUserMessageHandler;

private List<Atdl4jInputAndFilterDataPanelListener> listenerList = new ArrayList<>();

protected void init( Object aParentOrShell, Atdl4jOptions aAtdl4jOptions )
protected void init( Object aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler )
{
setAtdl4jOptions( aAtdl4jOptions );
setParentOrShell( aParentOrShell );

setAtdl4jUserMessageHandler( aAtdl4jUserMessageHandler );
}

/**
Expand Down Expand Up @@ -118,5 +122,13 @@ protected void fireInputAndFilterDataSpecifiedEvent( InputAndFilterData aInputAn
}
}

public Atdl4jUserMessageHandler getAtdl4jUserMessageHandler() {
return atdl4jUserMessageHandler;
}

public void setAtdl4jUserMessageHandler(Atdl4jUserMessageHandler atdl4jUserMessageHandler) {
this.atdl4jUserMessageHandler = atdl4jUserMessageHandler;
}


}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import org.atdl4j.config.Atdl4jOptions;
import org.atdl4j.config.StrategyFilterInputData;
import org.atdl4j.data.Atdl4jConstants;
import org.atdl4j.ui.app.Atdl4jUserMessageHandler;
import org.atdl4j.ui.app.impl.AbstractAtdl4jInputAndFilterDataPanel;

/**
Expand Down Expand Up @@ -52,17 +53,17 @@ public class SwingAtdl4jInputAndFilterDataPanel
* @see org.atdl4j.ui.app.Atdl4jInputAndFilterDataPanel#buildAtdl4jInputAndFilterDataPanel(java.lang.Object, org.atdl4j.config.Atdl4jOptions)
*/
@Override
public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions)
public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler )
{
return buildAtdl4jInputAndFilterDataPanel( (JDialog) aParentOrShell, aAtdl4jOptions);
return buildAtdl4jInputAndFilterDataPanel( (JDialog) aParentOrShell, aAtdl4jOptions, aAtdl4jUserMessageHandler);
}

public JDialog buildAtdl4jInputAndFilterDataPanel(JDialog aParentOrShell, Atdl4jOptions aAtdl4jOptions)
public JDialog buildAtdl4jInputAndFilterDataPanel(JDialog aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler )
{
parentDialog = (JDialog) aParentOrShell;

// -- Delegate back to AbstractAtdl4jInputAndFilterDataPanel --
init( aParentOrShell, aAtdl4jOptions );
init( aParentOrShell, aAtdl4jOptions, aAtdl4jUserMessageHandler );

// -- Build the Swing.JPanel from Atdl4jCompositePanel --
buildCoreAtdl4jSettingsPanel( aParentOrShell );
Expand Down Expand Up @@ -198,7 +199,8 @@ public boolean extractAtdl4jOptionsFromScreen()
if ( ( tempStrategyFilterInputData.getCountry_CountryCode() != null ) &&
( tempStrategyFilterInputData.getRegion_name() == null ) )
{
throw new IllegalArgumentException("Region is required when Country is specified.");
getAtdl4jUserMessageHandler().displayMessage( "Error", "Region is required when Country is specified." );
return false;
}

tempStrategyFilterInputData.setMarket_MICCode(getDropDownItemSelected(strategyFilterMICCodeCombo));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ private JDialog createAtdl4jInputAndFilterDataPanelDialog()
tempDialog.setTitle( "atdl4j Input and Filter Data / Configuration Settings" );
tempDialog.setModal(true);

getAtdl4jInputAndFilterDataPanel().buildAtdl4jInputAndFilterDataPanel(tempDialog, getAtdl4jOptions());
getAtdl4jInputAndFilterDataPanel().buildAtdl4jInputAndFilterDataPanel(tempDialog, getAtdl4jOptions(), getAtdl4jUserMessageHandler());

JPanel footerPanel = new JPanel();
tempDialog.getContentPane().add(footerPanel, BorderLayout.SOUTH);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,11 @@
import java.util.Arrays;
import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.atdl4j.config.Atdl4jConfig;
import org.atdl4j.config.Atdl4jOptions;
import org.atdl4j.config.StrategyFilterInputData;
import org.atdl4j.data.Atdl4jConstants;
import org.atdl4j.ui.app.Atdl4jUserMessageHandler;
import org.atdl4j.ui.app.impl.AbstractAtdl4jInputAndFilterDataPanel;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
Expand All @@ -23,6 +22,8 @@
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
* Represents the SWT-specific Atdl4jOptions and InputAndFilterData GUI component.
Expand Down Expand Up @@ -65,17 +66,17 @@ public class SWTAtdl4jInputAndFilterDataPanel
private Text textIncrementPolicyLotSize;
private Text textIncrementPolicyTick;

public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions)
public Object buildAtdl4jInputAndFilterDataPanel(Object aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler )
{
return buildAtdl4jInputAndFilterDataPanel( (Composite) aParentOrShell, aAtdl4jOptions );
return buildAtdl4jInputAndFilterDataPanel( (Composite) aParentOrShell, aAtdl4jOptions, aAtdl4jUserMessageHandler );
}

public Composite buildAtdl4jInputAndFilterDataPanel(Composite aParentOrShell, Atdl4jOptions aAtdl4jOptions)
public Composite buildAtdl4jInputAndFilterDataPanel(Composite aParentOrShell, Atdl4jOptions aAtdl4jOptions, Atdl4jUserMessageHandler aAtdl4jUserMessageHandler )
{
parentComposite = aParentOrShell;

// -- Delegate back to AbstractAtdl4jInputAndFilterDataPanel --
init( aParentOrShell, aAtdl4jOptions );
init( aParentOrShell, aAtdl4jOptions, aAtdl4jUserMessageHandler );

// -- Build the SWT.Composite from Atdl4jCompositePanel --
buildCoreAtdl4jSettingsPanel( aParentOrShell );
Expand Down Expand Up @@ -353,7 +354,8 @@ public boolean extractAtdl4jOptionsFromScreen()
if ( ( tempStrategyFilterInputData.getCountry_CountryCode() != null ) &&
( tempStrategyFilterInputData.getRegion_name() == null ) )
{
throw new IllegalArgumentException("Region is required when Country is specified.");
getAtdl4jUserMessageHandler().displayMessage( "Error", "Region is required when Country is specified." );
return false;
}

tempStrategyFilterInputData.setMarket_MICCode( getDropDownItemSelected( dropDownListStrategyFilterMICCode ) );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ private Shell createAtdl4jInputAndFilterDataPanelShell()
tempAtdl4jInputAndFilterDataPanelShell.setText( "atdl4j Input and Filter Data / Configuration Settings" );
tempAtdl4jInputAndFilterDataPanelShell.setLayout( new GridLayout() );

getAtdl4jInputAndFilterDataPanel().buildAtdl4jInputAndFilterDataPanel( tempAtdl4jInputAndFilterDataPanelShell, getAtdl4jOptions() );
getAtdl4jInputAndFilterDataPanel().buildAtdl4jInputAndFilterDataPanel( tempAtdl4jInputAndFilterDataPanelShell, getAtdl4jOptions(), getAtdl4jUserMessageHandler() );

Composite tempFooter = new Composite( tempAtdl4jInputAndFilterDataPanelShell, SWT.NONE );
tempFooter.setLayout( new FillLayout( SWT.HORIZONTAL ) );
Expand Down

0 comments on commit 9a76f8b

Please sign in to comment.