org.knime.base.node.preproc.groupby
Class GroupByNodeDialog

java.lang.Object
  extended by org.knime.core.node.NodeDialogPane
      extended by org.knime.base.node.preproc.groupby.GroupByNodeDialog
Direct Known Subclasses:
Pivot2NodeDialog

public class GroupByNodeDialog
extends NodeDialogPane

The node dialog of the group by node.

Author:
Tobias Koetter, University of Konstanz

Field Summary
static int DEFAULT_HEIGHT
          The height of the default component.
static int DEFAULT_WIDTH
          The width of the default component.
 
Constructor Summary
GroupByNodeDialog()
          Constructor for class GroupByNodeDialog.
 
Method Summary
protected  void addPanel(JPanel p, String title)
          Add additional panel (i.e.
protected  void columnsChanged()
          Synchronizes the available aggregation column list and the selected group columns.
protected  void excludeColumns(List<String> columns)
          Synchronizes the available aggregation column list and the selected columns.
protected  void inMemoryChanged()
          Call this method if the process in memory flag has changed.
protected  void loadSettingsFrom(NodeSettingsRO settings, PortObjectSpec[] specs)
          Invoked before the dialog window is opened.
protected  void saveSettingsTo(NodeSettingsWO settings)
          Invoked when the settings need to be applied.
 
Methods inherited from class org.knime.core.node.NodeDialogPane
addFlowVariablesTab, addJobMgrTab, addTab, addTabAt, closeOnESC, createFlowVariableModel, createFlowVariableModel, createFlowVariableModel, finishEditingAndSaveSettingsTo, getAvailableFlowVariables, getCredentialsNames, getCredentialsProvider, getPanel, getTab, getTabIndex, internalLoadSettingsFrom, isWriteProtected, loadSettingsFrom, loadSettingsFrom, onCancel, onClose, onOpen, removeTab, renameTab, saveSettingsTo, setEnabled, setSelected
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_WIDTH

public static final int DEFAULT_WIDTH
The width of the default component.

See Also:
Constant Field Values

DEFAULT_HEIGHT

public static final int DEFAULT_HEIGHT
The height of the default component.

See Also:
Constant Field Values
Constructor Detail

GroupByNodeDialog

public GroupByNodeDialog()
Constructor for class GroupByNodeDialog.

Method Detail

addPanel

protected final void addPanel(JPanel p,
                              String title)
Add additional panel (i.e. for pivoting) to this dialog.

Parameters:
p - the panel to add to tabs
title - the title for the new tab

inMemoryChanged

protected void inMemoryChanged()
Call this method if the process in memory flag has changed.


columnsChanged

protected final void columnsChanged()
Synchronizes the available aggregation column list and the selected group columns.


excludeColumns

protected void excludeColumns(List<String> columns)
Synchronizes the available aggregation column list and the selected columns.

Parameters:
columns - the column that are changed and need to be excluded from the aggregation list

loadSettingsFrom

protected void loadSettingsFrom(NodeSettingsRO settings,
                                PortObjectSpec[] specs)
                         throws NotConfigurableException
Invoked before the dialog window is opened. The settings object passed, contains the current settings of the corresponding node model. The model and the dialog must agree on a mutual contract on how settings are stored in the spec. I.e. they must able to read each other's settings.

The implementation must be able to handle invalid or incomplete settings as the model may not have any reasonable values yet (for example when the dialog is opened for the first time). When an empty/invalid settings object is passed the dialog should set default values in its components.

Overrides:
loadSettingsFrom in class NodeDialogPane
Parameters:
settings - The settings to load into the dialog. Could be an empty object or contain invalid settings. But will never be null.
specs - The input data table specs. Items of the array could be null if no spec is available from the corresponding input port (i.e. not connected or upstream node does not produce an output spec). If a port is of type BufferedDataTable.TYPE and no spec is available the framework will replace null by an empty DataTableSpec (no columns) unless the port is marked as optional.
Throws:
NotConfigurableException - if the dialog cannot be opened because of real invalid settings or if any preconditions are not fulfilled, e.g. no predecessor node, no nominal column in input table, etc.
See Also:
NodeModel.loadSettingsFrom(NodeSettingsRO)

saveSettingsTo

protected void saveSettingsTo(NodeSettingsWO settings)
                       throws InvalidSettingsException
Invoked when the settings need to be applied. The implementation should write the current user settings from its components into the passed object. It should not check consistency or completeness of the settings - this is part of the model's load method. The only situation this method would throw an exception is when a component contains an invalid value that can't be stored in the settings object.
The settings must be written in a way the model is able to load in, i.e. with the model's keys.

Specified by:
saveSettingsTo in class NodeDialogPane
Parameters:
settings - The settings object to write into.
Throws:
InvalidSettingsException - If the settings are not applicable to the model.
See Also:
NodeModel.loadSettingsFrom(NodeSettingsRO)


Copyright, 2003 - 2012. All rights reserved.
University of Konstanz, Germany.
Chair for Bioinformatics and Information Mining, Prof. Dr. Michael R. Berthold.
You may not modify, publish, transmit, transfer or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part, except as otherwise expressly permitted in writing by the copyright owner or as specified in the license file distributed with this product.