package org.asciidoc.intellij.ui;
import com.intellij.openapi.ui.DialogWrapper;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
import java.awt.*;
public class CreateTableDialog extends DialogWrapper {
private SpinnerNumberModel columnCount = new SpinnerNumberModel(3, 1, 99, 1);
private SpinnerNumberModel rowCount = new SpinnerNumberModel(3, 1, 99, 1);
private JTextField title = new JTextField("", 5);
public CreateTableDialog() {
super(false);
setTitle("Create Table");
setResizable(false);
init();
}
@Nullable
@Override
protected JComponent createCenterPanel() {
JPanel panel = new JPanel(new GridLayout(3, 0));
JPanel addTitle = new JPanel(new BorderLayout());
addTitle.add(new JLabel("Title"), BorderLayout.LINE_START);
addTitle.add(new JPanel(), BorderLayout.CENTER); //Spacing between label and text field
addTitle.add(title, BorderLayout.LINE_END);
panel.add(addTitle);
JPanel columns = new JPanel(new BorderLayout());
columns.add(new JLabel("No of rows"), BorderLayout.CENTER);
JSpinner rows = new JSpinner(this.rowCount);
columns.add(rows, BorderLayout.LINE_END);
panel.add(columns);
JPanel rowPane = new JPanel(new BorderLayout());
rowPane.add(new JLabel("No of colums"), BorderLayout.CENTER);
JSpinner cols = new JSpinner(this.columnCount);
rowPane.add(cols, BorderLayout.LINE_END);
panel.add(rowPane);
return panel;
}
public int getRowCount() {
return rowCount.getNumber().intValue();
}
public int getColumnCount() {
return columnCount.getNumber().intValue();
}
public String getTitle() {
return title.getText();
}
}