package demo45; import javax.swing.*; import org.openswing.swing.client.*; import java.awt.*; import org.openswing.swing.table.columns.client.*; import org.openswing.swing.lookup.client.LookupController; import java.sql.*; import java.awt.event.*; import org.openswing.swing.table.java.*; import org.openswing.swing.mdi.client.InternalFrame; import org.openswing.swing.mdi.client.MDIFrame; import org.openswing.swing.util.client.ClientSettings; /** * <p>Title: OpenSwing Framework</p> * <p>Description: Grid Frame for tasks.</p> * <p>Copyright: Copyright (C) 2006 Mauro Carniel</p> * <p> </p> * @author Mauro Carniel * @version 1.0 */ public class UserRolesFrame extends InternalFrame { private Connection conn = null; GridControl usersGrid = new GridControl(); GridControl userRolesGrid = new GridControl(); JPanel topPanel = new JPanel(); JPanel bottomPanel = new JPanel(); BorderLayout borderLayout1 = new BorderLayout(); BorderLayout borderLayout2 = new BorderLayout(); JPanel usersButtonsPanel = new JPanel(); JPanel userRolesButtonsPanel = new JPanel(); FlowLayout flowLayout1 = new FlowLayout(); FlowLayout flowLayout2 = new FlowLayout(); TextColumn colUsername = new TextColumn(); TextColumn colPassword = new TextColumn(); TextColumn colDescription = new TextColumn(); ComboColumn colRoleId = new ComboColumn(); InsertButton insertButton = new InsertButton(); ReloadButton reloadButton = new ReloadButton(); EditButton editButton = new EditButton(); SaveButton saveButton = new SaveButton(); DeleteButton deleteButton = new DeleteButton(); InsertButton insert2Button = new InsertButton(); ReloadButton reload2Button = new ReloadButton(); SaveButton save2Button = new SaveButton(); DeleteButton delete2Button = new DeleteButton(); JSplitPane splitPane = new JSplitPane(); public UserRolesFrame(Connection conn,UserRolesController controller) { this.conn = conn; try { jbInit(); setSize(580,500); userRolesGrid.setController(controller); userRolesGrid.setGridDataLocator(controller); userRolesGrid.setAutoLoadData(false); UsersController usersController = new UsersController(conn,this); usersGrid.setController(usersController); usersGrid.setGridDataLocator(usersController); MDIFrame.add(this); setTitle(ClientSettings.getInstance().getResources().getResource("users")); } catch(Exception e) { e.printStackTrace(); } } public void reloadData() { usersGrid.reloadData(); } private void jbInit() throws Exception { colRoleId.setDomainId("ROLES"); colRoleId.setColumnName("roleId"); colRoleId.setEditableOnInsert(true); colRoleId.setPreferredWidth(400); usersButtonsPanel.setLayout(flowLayout1); flowLayout1.setAlignment(FlowLayout.LEFT); usersGrid.setDeleteButton(deleteButton); usersGrid.setEditButton(editButton); usersGrid.setInsertButton(insertButton); usersGrid.setReloadButton(reloadButton); usersGrid.setSaveButton(saveButton); usersGrid.setValueObjectClassName("demo45.UserVO"); userRolesGrid.setValueObjectClassName("demo45.UserRoleVO"); userRolesGrid.setDeleteButton(delete2Button); userRolesGrid.setInsertButton(insert2Button); userRolesGrid.setReloadButton(reload2Button); userRolesGrid.setSaveButton(save2Button); userRolesButtonsPanel.setLayout(flowLayout2); flowLayout2.setAlignment(FlowLayout.LEFT); userRolesGrid.setDeleteButton(delete2Button); userRolesGrid.setInsertButton(insert2Button); userRolesGrid.setReloadButton(reload2Button); userRolesGrid.setSaveButton(save2Button); colUsername.setColumnFilterable(true); colUsername.setColumnName("username"); colUsername.setColumnSortable(true); colUsername.setEditableOnInsert(true); colUsername.setMaxCharacters(5); colUsername.setTrimText(true); colUsername.setUpperCase(true); colDescription.setColumnName("description"); colDescription.setColumnRequired(false); colDescription.setEditableOnEdit(true); colDescription.setEditableOnInsert(true); colDescription.setPreferredWidth(350); colPassword.setColumnName("password"); colPassword.setEditableOnEdit(true); colPassword.setEditableOnInsert(true); colPassword.setPreferredWidth(120); colPassword.setEncryptText(true); splitPane.setOrientation(JSplitPane.VERTICAL_SPLIT); splitPane.setDividerLocation(300); splitPane.add(topPanel,JSplitPane.TOP); splitPane.add(bottomPanel,JSplitPane.BOTTOM); topPanel.setLayout(borderLayout1); bottomPanel.setLayout(borderLayout2); topPanel.add(usersButtonsPanel, BorderLayout.NORTH); topPanel.add(usersGrid, BorderLayout.CENTER); usersButtonsPanel.add(insertButton, null); usersButtonsPanel.add(editButton, null); usersButtonsPanel.add(reloadButton, null); usersButtonsPanel.add(saveButton, null); usersButtonsPanel.add(deleteButton, null); usersGrid.getColumnContainer().add(colUsername, null); usersGrid.getColumnContainer().add(colPassword, null); usersGrid.getColumnContainer().add(colDescription, null); bottomPanel.add(userRolesButtonsPanel, BorderLayout.NORTH); bottomPanel.add(userRolesGrid, BorderLayout.CENTER); userRolesButtonsPanel.add(insert2Button, null); userRolesButtonsPanel.add(reload2Button, null); userRolesButtonsPanel.add(save2Button, null); userRolesButtonsPanel.add(delete2Button, null); userRolesGrid.getColumnContainer().add(colRoleId, null); this.getContentPane().add(splitPane,BorderLayout.CENTER); } public GridControl getUserRolesGrid() { return userRolesGrid; } public GridControl getUsersGrid() { return usersGrid; } public void setButtonsEnabled(boolean enabled) { delete2Button.setEnabled(enabled); insert2Button.setEnabled(enabled); reload2Button.setEnabled(enabled); if (!enabled) save2Button.setEnabled(false); } }