version 1.2, 2003/12/10 12:24:41
|
version 1.3, 2003/12/11 11:36:55
|
Line 104 public class FM2SQL extends JFrame imple
|
Line 104 public class FM2SQL extends JFrame imple
|
public FM2SQL() throws Exception |
public FM2SQL() throws Exception |
{ |
{ |
|
|
initializeGUI();if(true)return; |
initializeGUI(); |
Image local = getToolkit().getImage(getClass().getResource("icons/fm.jpg")); |
|
if (local != null); |
|
setIconImage(local); |
|
bean = new DBBean(); |
|
destBean = new DBBean(); |
|
box2 = new JComboBox(); |
|
box3 = new JComboBox(new String[] { "jdbc:fmpro:http://141.14.237.74:8050", "jdbc:fmpro:http://localhost", "jdbc:postgresql://foxridge/test" }); |
|
box3.setEditable(true); |
|
box4 = new JComboBox(new String[] {"jdbc:postgresql://foxridge/test","jdbc:postgresql://erebos/test1" }); |
|
box4.setEditable(true); |
|
box4.addActionListener(this); |
|
table = new TableComponent(); |
|
box = new JComboBox(tables); |
|
box.addActionListener(this); |
|
box2.addActionListener(this); |
|
box3.addActionListener(this); |
|
|
|
contentPanel = new JPanel(); |
|
contentPanel.setLayout(new BoxLayout(contentPanel, BoxLayout.Y_AXIS)); |
|
topPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 5, 5)); |
|
topPanel.add(Box.createRigidArea(new Dimension(10, 0))); |
|
topPanel.add(new JLabel("FileMaker DB ")); |
|
topPanel.add(new JLabel("PostgresSQL ")); |
|
//tListDest.setMinimumSize(new Dimension(120, 250)); |
|
//tListDest.setMaximumSize(new Dimension(230, 250)); |
|
//tListDest.setPreferredSize(new Dimension(230, 250)); |
|
|
|
box3.setMinimumSize(new Dimension(200, 20)); |
|
box3.setMaximumSize(new Dimension(320, 20)); |
|
box3.setPreferredSize(new Dimension(320, 20)); |
|
box4.setMinimumSize(new Dimension(200, 20)); |
|
box4.setMaximumSize(new Dimension(320, 20)); |
|
box4.setPreferredSize(new Dimension(330, 20)); |
|
|
|
tC = new TableComponent(); |
|
tC.sizeToFit(450, 250); |
|
tC.tableModel.addTableModelListener(this); |
|
JPanel dataBasePanel = new JPanel(); |
|
dataBasePanel.setLayout(new BoxLayout(dataBasePanel,BoxLayout.LINE_AXIS)); |
|
dataBasePanel.add(Box.createRigidArea(new Dimension(10, 0))); |
|
dataBasePanel.add(new JLabel("Choose src database: ")); |
|
dataBasePanel.add(box3); |
|
dataBasePanel.add(Box.createRigidArea(new Dimension(10, 0))); |
|
dataBasePanel.add(new JLabel("Choose dest database : ")); |
|
dataBasePanel.add(Box.createRigidArea(new Dimension(5, 0))); |
|
|
|
dataBasePanel.add(box4); |
|
dataBasePanel.add(Box.createRigidArea(new Dimension(10, 0))); |
|
listPanel = new JPanel(); |
|
listPanel.setLayout(new java.awt.GridBagLayout()); |
|
java.awt.GridBagConstraints gbc = new java.awt.GridBagConstraints(); |
|
JScrollPane pane = new JScrollPane(tList); |
|
tC.tableScroller.setPreferredSize(new Dimension(450, 265)); |
|
tC.table.revalidate(); |
|
tC.setMinimumSize(tC.tableScroller.getPreferredSize()); |
|
tC.setMaximumSize(tC.tableScroller.getPreferredSize()); |
|
|
|
//gbc.gridx=GridBagConstraints.RELATIVE; |
|
gbc.gridx = 0; |
|
gbc.weightx = 1.0; |
|
gbc.weighty = 0.0; |
|
gbc.gridwidth = 2; |
|
gbc.gridheight = 1; |
|
gbc.anchor = GridBagConstraints.NORTHWEST; |
|
listPanel.add(new JLabel(" select Tables to Convert ", JLabel.LEFT), gbc); |
|
gbc.gridx = 2; |
|
listPanel.add(new JLabel(" Tables in database ", JLabel.CENTER), gbc); |
|
|
|
gbc.anchor = GridBagConstraints.WEST; |
|
gbc.gridy = 1; |
|
gbc.gridx = 0; |
|
gbc.gridwidth = 1; |
|
gbc.weightx = 0.0; |
|
listPanel.add(tC, gbc); |
|
JScrollPane paneDest = new JScrollPane(tListDest); |
|
showTables1 = new JButton("show Tables"); |
|
showTables1.setActionCommand("show Tables source"); |
|
gbc.anchor = GridBagConstraints.NORTH; |
|
gbc.weightx = 0.0; |
|
gbc.gridx = 1; |
|
listPanel.add(showTables1, gbc); |
|
paneDest.setPreferredSize(new Dimension(250, 265)); |
|
paneDest.setMinimumSize(paneDest.getPreferredSize()); |
|
paneDest.setMaximumSize(paneDest.getPreferredSize()); |
|
gbc.anchor = GridBagConstraints.WEST; |
|
gbc.gridy = 1; |
|
gbc.gridx = 2; |
|
gbc.weightx = 0.2; |
|
listPanel.add(paneDest, gbc); |
|
JPanel buttonPanel = new JPanel(); |
|
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.Y_AXIS)); |
|
convert = new JButton("Convert Tables"); |
|
showTables = new JButton("show Tables"); |
|
dropTables = new JButton("drop Tables"); |
|
// System.out.println(convert.getPreferredSize()); |
|
showTables.setMinimumSize(convert.getPreferredSize()); |
|
dropTables.setMinimumSize(convert.getPreferredSize()); |
|
showTables.setMaximumSize(convert.getPreferredSize()); |
|
dropTables.setMaximumSize(convert.getPreferredSize()); |
|
showTables.setPreferredSize(convert.getPreferredSize()); |
|
dropTables.setPreferredSize(convert.getPreferredSize()); |
|
|
|
showTables.addActionListener(fm); |
|
showTables1.addActionListener(fm); |
|
|
|
buttonPanel.add(showTables); |
|
buttonPanel.add(convert); |
|
convert.addActionListener(fm); |
|
dropTables.addActionListener(fm); |
|
buttonPanel.add(dropTables); |
|
gbc.gridx = 3; |
|
gbc.anchor = GridBagConstraints.NORTHWEST; |
|
gbc.gridy = 1; |
|
gbc.weightx = 1.0; |
|
listPanel.add(buttonPanel, gbc); |
|
contentPanel.add(dataBasePanel); |
|
contentPanel.add(listPanel); |
|
listPanel.setMaximumSize(new Dimension(getPreferredSize().width, 550)); |
|
listPanel.setMinimumSize(new Dimension(getPreferredSize().width, 150)); |
|
listPanel.setPreferredSize(new Dimension(getPreferredSize().width, 350)); |
|
|
|
getContentPane().add(contentPanel, "Center"); |
|
this.addWindowListener(new WindowAdapter() |
|
{ |
|
public void windowClosing(WindowEvent e) |
|
{ |
|
System.exit(0); |
|
} |
|
}); |
|
addComponentListener(new ComponentAdapter() |
|
{ |
|
public void componentResized(ComponentEvent e) |
|
{ |
|
|
|
if (oldWidth != getWidth() || oldHeight != getHeight()) |
|
{ |
|
table.sizeToFit(getWidth(), getHeight()); |
|
|
|
Dimension dim = table.table.getPreferredSize(); |
|
int size = contentPanel.getPreferredSize().height + new JScrollBar().getPreferredSize().height + new JMenuBar().getPreferredSize().height + 10; |
|
|
|
table.tableScroller.setPreferredSize(new Dimension(getWidth() - 15, getHeight() - size)); |
|
Dimension d2 = table.tableScroller.getPreferredSize(); |
|
|
|
oldWidth = getWidth(); |
|
oldHeight = getHeight(); |
|
|
|
table.setPreferredSize(new Dimension(d2.width + 15, d2.height + 5)); |
|
table.table.revalidate(); |
|
table.tableScroller.revalidate(); |
|
table.revalidate(); |
|
if (getHeight() > table.table.getPreferredSize().height + (2 * size)) |
|
setSize(getWidth(), table.table.getPreferredSize().height + 2 * size); |
|
// System.out.println("size" + size); |
|
} |
|
listPanel.setMaximumSize(new Dimension(getPreferredSize().width - 5, 550)); |
|
listPanel.setMinimumSize(new Dimension(getPreferredSize().width - 5, 200)); |
|
listPanel.setPreferredSize(new Dimension(getPreferredSize().width - 5, 370)); |
|
|
|
((JPanel) getContentPane()).revalidate(); |
|
repaint(); |
|
setTitle("Filemaker To Postgres Conversion Tool "); |
|
|
|
} |
|
}); |
|
|
|
setMenu(); |
|
//setSize(800, 600); |
|
pack(); |
|
setLocation((screenSize.width - getWidth()) / 2, (screenSize.height - getHeight()) / 2); |
|
//setVisible(true); |
|
validate(); |
|
|
|
// repaint(); |
|
|
|
} |
} |
public void initializeGUI() throws Exception |
public void initializeGUI() throws Exception |
{ |
{ |
Line 386 public class FM2SQL extends JFrame imple
|
Line 211 public class FM2SQL extends JFrame imple
|
|
|
gbc.gridx = 0; |
gbc.gridx = 0; |
gbc.gridy = 2; |
gbc.gridy = 2; |
topPanel.add(showTables1, gbc); |
// topPanel.add(showTables1, gbc); |
JPanel buttonPanel = new JPanel(); |
JPanel buttonPanel = new JPanel(); |
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS)); |
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS)); |
buttonPanel.setMinimumSize(new Dimension(200, 20)); |
buttonPanel.setMinimumSize(new Dimension(350, 30)); |
convert = new JButton("Convert Tables"); |
convert = new JButton("Convert Tables"); |
showTables = new JButton("show Tables"); |
showTables = new JButton("show Tables"); |
dropTables = new JButton("drop Tables"); |
dropTables = new JButton("drop Tables"); |
Line 410 public class FM2SQL extends JFrame imple
|
Line 235 public class FM2SQL extends JFrame imple
|
dropTables.addActionListener(fm); |
dropTables.addActionListener(fm); |
buttonPanel.add(dropTables); |
buttonPanel.add(dropTables); |
|
|
|
JPanel buttonPanelSrc = new JPanel(); |
|
buttonPanelSrc.setLayout(new BoxLayout(buttonPanelSrc, BoxLayout.X_AXIS)); |
|
buttonPanelSrc.setMinimumSize(new Dimension(200, 30)); |
|
buttonPanelSrc.add(showTables1); |
|
|
|
topPanel.add(buttonPanelSrc, gbc); |
topPanel2.add(buttonPanel, gbc); |
topPanel2.add(buttonPanel, gbc); |
|
|
// gbc.anchor = GridBagConstraints.WEST; |
// gbc.anchor = GridBagConstraints.WEST; |
// gbc.gridy = 1; |
// gbc.gridy = 1; |
// gbc.gridx = 2; |
// gbc.gridx = 2; |
Line 471 public class FM2SQL extends JFrame imple
|
Line 303 public class FM2SQL extends JFrame imple
|
// listPanel.setPreferredSize(new Dimension(getPreferredSize().width - 5, 370)); |
// listPanel.setPreferredSize(new Dimension(getPreferredSize().width - 5, 370)); |
tC.tableScroller.revalidate(); |
tC.tableScroller.revalidate(); |
Dimension dim = getSize(); |
Dimension dim = getSize(); |
tC.tableScroller.setMinimumSize(new Dimension(dim.width, dim.height - topPanel.getPreferredSize().height - 100)); |
tC.tableScroller.setMinimumSize(new Dimension(dim.width-400, dim.height - topPanel.getPreferredSize().height - 100)); |
tC.tableScroller.setMaximumSize(getSize()); |
tC.tableScroller.setMaximumSize(getSize()); |
paneDest.setMinimumSize(new Dimension(dim.width, dim.height - topPanel2.getPreferredSize().height - 100)); |
tC.tableScroller.setPreferredSize(tC.tableScroller.getMinimumSize()); |
|
|
|
paneDest.setMinimumSize(new Dimension(400, dim.height - topPanel2.getPreferredSize().height - 100)); |
paneDest.setMaximumSize(tC.tableScroller.getMaximumSize()); |
paneDest.setMaximumSize(tC.tableScroller.getMaximumSize()); |
|
paneDest.setPreferredSize(new Dimension(400, dim.height - topPanel2.getPreferredSize().height - 100)); |
|
|
paneDest.validate(); |
paneDest.validate(); |
// tC.tableScroller.setPreferredSize(getSize()); |
// tC.tableScroller.setPreferredSize(getSize()); |
tC.sizeToFit(getWidth(), getHeight()); |
tC.sizeToFit(getWidth(), getHeight()); |
Line 937 public class FM2SQL extends JFrame imple
|
Line 773 public class FM2SQL extends JFrame imple
|
fillTable(); |
fillTable(); |
Vector tables=database.bean.getTableNames(); |
Vector tables=database.bean.getTableNames(); |
Collections.sort(tables,String.CASE_INSENSITIVE_ORDER); |
Collections.sort(tables,String.CASE_INSENSITIVE_ORDER); |
|
int[] indices = new int[database.tables.size()]; |
for (int i =0;i<database.tables.size();++i) |
for (int i =0;i<database.tables.size();++i) |
{ |
{ |
String table = (String) database.tables.get(i); |
String table = (String) database.tables.get(i); |
Line 947 public class FM2SQL extends JFrame imple
|
Line 784 public class FM2SQL extends JFrame imple
|
String create =database.creates.get(i).toString(); |
String create =database.creates.get(i).toString(); |
tC.tableModel.setValueAt(new TableComponent.SQLCommand(create.equals("") ? create:" "+create),index,3); |
tC.tableModel.setValueAt(new TableComponent.SQLCommand(create.equals("") ? create:" "+create),index,3); |
Object comboBox=tC.tableModel.getValueAt(index,1); |
Object comboBox=tC.tableModel.getValueAt(index,1); |
//@TODO load old selection Status |
indices[i] = index; |
if(comboBox!=null) ((JComboBox)comboBox).setSelectedItem(database.layouts.get(i)); |
if(comboBox!=null) ((JComboBox)comboBox).setSelectedItem(database.layouts.get(i)); |
tC.tableModel.fireTableDataChanged(); |
tC.tableModel.fireTableDataChanged(); |
noDBUpdate = false; |
noDBUpdate = false; |
noUserUpdate = false; |
noUserUpdate = false; |
|
|
} |
} |
|
// add Selections |
|
ListSelectionModel lm = tC.table.getSelectionModel(); |
|
for(int i=0;i<indices.length;++i) |
|
lm.addSelectionInterval(indices[i],indices[i]); |
|
|
destBean.getConnection(); |
destBean.getConnection(); |
|
|
DefaultListModel model = new DefaultListModel(); |
DefaultListModel model = new DefaultListModel(); |