public NumericFunctionPanel(final Controller controller) {
		super(controller.program.getFrame());
		setResizable(false);
		setTitle(Tools.getLocalizedString("DEGITAL_FORM_TITLE"));
		setBounds(100, 100, 398, 300);
		contentPanel = new JPanel();
		getContentPane().setLayout(new BorderLayout());
		contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
		getContentPane().add(contentPanel, BorderLayout.CENTER);



		textField_1 = new JTextField();
		contentPanel.setLayout(null);
		textField_1.setBounds(100, 137, 244, 22);
		contentPanel.add(textField_1);

		textField = new JTextField();
		textField.setBounds(100, 183, 244, 22);
		contentPanel.add(textField);

		final JLabel indicationLabel = new JLabel(Tools.getLocalizedString("DEGITAL_FORM_INDICATION")
				                                 + "15}");
		indicationLabel.setBounds(28, 80, 210, 30);
		indicationLabel.setFont(new Font("Arial", Font.PLAIN, 13));
		contentPanel.add(indicationLabel);

		JLabel labelSetOnes = new JLabel("1");
		labelSetOnes.setBounds(62, 137, 10, 22);
		labelSetOnes.setFont(new Font("Franklin Gothic Book", Font.BOLD, 16));
		contentPanel.add(labelSetOnes);

		JLabel labelSetZeros = new JLabel("0");
		labelSetZeros.setBounds(62, 183, 10, 22);
		labelSetZeros.setFont(new Font("Franklin Gothic Book", Font.BOLD, 16));
		contentPanel.add(labelSetZeros);

		nbrVarComboBox = new JComboBox<Integer>();
		nbrVarComboBox.addItemListener(new ItemListener() {
			public void itemStateChanged(ItemEvent arg0) {
				int x = Integer.valueOf(nbrVarComboBox.getSelectedItem().toString());
				x = (int) Math.pow(2, x);
				indicationLabel.setText(Tools.getLocalizedString("DEGITAL_FORM_INDICATION") +
						              String.valueOf(x-1)+"}");
			}
		});
		nbrVarComboBox.setFont(new Font("Tahoma", Font.BOLD, 11));
		nbrVarComboBox.setModel(new DefaultComboBoxModel<Integer>(new Integer[] {1, 2, 3, 4, 5, 6, 7, 8}));
		nbrVarComboBox.setSelectedIndex(3);
		nbrVarComboBox.setBounds(269, 37, 39, 20);
		contentPanel.add(nbrVarComboBox);

		JLabel nbrVarLabel = new JLabel((Tools.getLocalizedString("NUMBER_OF_VARIABLES")));
		nbrVarLabel.setFont(new Font("Times New Roman", Font.BOLD, 12));
		nbrVarLabel.setBounds(95, 37, 164, 20);
		contentPanel.add(nbrVarLabel);

		JPanel buttonPane = new JPanel();
		buttonPane.setLayout(new FlowLayout(FlowLayout.CENTER));
		getContentPane().add(buttonPane, BorderLayout.SOUTH);

			JButton cancelButton = new JButton((Tools.getLocalizedString("ButtonCancel")));
			cancelButton.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent arg0) {
						dispose();
					}});
			JButton okButton = new JButton("OK");
			okButton.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent arg0) {
					int nrVar=Integer.valueOf(nbrVarComboBox.getSelectedItem().toString());
					controller.simplifyNumericFunction(getSets0(),getSets1(),nrVar,getVarOrder() );
					dispose();
					}});
			okButton.setActionCommand("OK");
			buttonPane.add(okButton);
			getRootPane().setDefaultButton(okButton);
			cancelButton.setActionCommand("Cancel");
			buttonPane.add(cancelButton);
			this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
			this.setVisible(true);
		}