DCFileChooser fileChooser, Provider<OpenAnalysisJobActionListener> openAnalysisJobActionListenerProvider) {
super();
_windowContext = windowContext;
_configuration = configuration;
_centerPanel = new DCPanel();
_centerPanel.setLayout(new VerticalLayout(0));
_fileChooser = fileChooser;
_fileChooser.addPropertyChangeListener(this);
_openJobButton = getOpenJobButton();
_openAnalysisJobActionListenerProvider = openAnalysisJobActionListenerProvider;
setPreferredSize(220, 10);
setBorder(new EmptyBorder(0, 10, 0, 0));
setLayout(new BorderLayout());
setVisible(false);
final JLabel iconLabel = new JLabel(ImageManager.getInstance().getImageIcon("images/window/app-icon.png"));
final JLabel headerLabel = new JLabel("DataCleaner analysis job:");
headerLabel.setFont(WidgetUtils.FONT_HEADER1);
final DCPanel northPanel = new DCPanel();
northPanel.setLayout(new VerticalLayout(0));
northPanel.add(iconLabel);
northPanel.add(Box.createVerticalStrut(10));
northPanel.add(headerLabel);
northPanel.add(Box.createVerticalStrut(10));
northPanel.add(_centerPanel);
northPanel.add(Box.createVerticalStrut(10));
final DCPanel southPanel = new DCPanel();
southPanel.setLayout(new VerticalLayout(0));
northPanel.add(Box.createVerticalStrut(4));
southPanel.add(_openJobButton);
southPanel.add(Box.createVerticalStrut(4));
southPanel.add(getOpenAsTemplateButton());