package demo3; import java.util.*; import org.openswing.swing.internationalization.java.EnglishOnlyResourceFactory; import org.openswing.swing.domains.java.*; import java.sql.*; import org.openswing.swing.util.client.*; import org.openswing.swing.internationalization.java.*; import org.openswing.swing.table.profiles.client.FileGridProfileManager; import org.openswing.swing.client.GenericButton; import org.openswing.swing.util.java.Consts; import javax.swing.SwingConstants; import javax.swing.UIManager; import java.awt.Color; /** * <p>Title: OpenSwing Demo</p> * <p>Description: Used to start application from main method: * it creates an editable grid frame.</p> * <p>Copyright: Copyright (C) 2006 Mauro Carniel</p> * <p> </p> * @author Mauro Carniel * @version 1.0 */ public class ClientApplication { Connection conn = null; public ClientApplication() { // try { // ClientSettings.LOOK_AND_FEEL_CLASS_NAME = "com.jtattoo.plaf.aluminium.AluminiumLookAndFeel"; // "com.jtattoo.plaf.aero.McWinLookAndFeel"; // Properties props = new Properties(); // props.put("backgroundColor", "238 238 238"); // props.put("logoString", "JAllInOne"); // String color = "220 220 220"; // props.put("disabledBackgroundColor", color); // props.put("systemTextFont", "Verdana PLAIN 11"); // props.put("controlTextFont", "Verdana PLAIN 11"); // props.put("menuTextFont", "Verdana PLAIN 11"); // props.put("userTextFont", "Verdana PLAIN 11"); // props.put("subTextFont", "Verdana PLAIN 11"); // Class.forName(ClientSettings.LOOK_AND_FEEL_CLASS_NAME).getMethod( // "setCurrentTheme", new Class[] {Properties.class}).invoke(null, // new Object[] {props}); // UIManager.setLookAndFeel(ClientSettings.LOOK_AND_FEEL_CLASS_NAME); // // } // catch (Throwable ex1) { // ex1.printStackTrace(); // } Hashtable domains = new Hashtable(); Properties props = new Properties(); props.setProperty("this text will be translated","This text will be translated"); props.setProperty("date","Date"); props.setProperty("combobox","Combobox"); props.setProperty("opened","Opened"); props.setProperty("suspended","Suspended"); props.setProperty("delivered","Delivered"); props.setProperty("closed","Closed"); props.setProperty("radio button","Radio Button"); props.setProperty("stringValue","Text"); props.setProperty("dateValue","Date"); props.setProperty("checkValue","CheckBox"); props.setProperty("radioButtonValue","RadioButton"); props.setProperty("comboValue","ComboBox"); props.setProperty("currencyValue","Currency"); props.setProperty("numericValue","Number"); props.setProperty("lookupValue","Lookup Code"); props.setProperty("descrLookupValue","Lookup Description"); props.setProperty("button","Button"); props.setProperty("formattedTextValue","Formatted Text"); props.setProperty("intValue","Integer Value"); props.setProperty("multiLineTextValue","Multi Line Text Value"); props.setProperty("year","Year"); props.setProperty("spinnerValue","Spinner Value"); props.setProperty("...","..."); ClientSettings clientSettings = new ClientSettings( new EnglishOnlyResourceFactory("�",props,true), domains ); ClientSettings.FILTER_PANEL_ON_GRID = true; Domain orderStateDomain = new Domain("ORDERSTATE"); orderStateDomain.addDomainPair(new Integer(0),"opened"); orderStateDomain.addDomainPair(new Integer(1),"suspended"); orderStateDomain.addDomainPair(new Integer(2),"delivered"); orderStateDomain.addDomainPair(new Integer(3),"closed"); domains.put( orderStateDomain.getDomainId(), orderStateDomain ); ClientSettings.ALLOW_OR_OPERATOR = false; ClientSettings.INCLUDE_IN_OPERATOR = false; ClientSettings.GRID_PROFILE_MANAGER = new FileGridProfileManager(); ClientSettings.SELECT_DATA_IN_EDITABLE_GRID = true; // ClientSettings.BUTTON_BEHAVIOR=Consts.BUTTON_IMAGE_AND_TEXT; // ClientSettings.BUTTON_HORIZONTAL_TEXT_POSITION=SwingConstants.LEADING; createConnection(); new GridFrameController(conn); } public static void main(String[] argv) { new ClientApplication(); } /** * Create the database connection (using Hypersonic DB - in memory) and initialize tables... */ private void createConnection() { try { Class.forName("org.hsqldb.jdbcDriver"); conn = DriverManager.getConnection("jdbc:hsqldb:mem:"+"a"+Math.random(),"sa",""); PreparedStatement stmt = null; try { stmt = conn.prepareStatement("create table DEMO3(TEXT VARCHAR,FORMATTED_TEXT NUMERIC(12),DECNUM DECIMAL(10,2),CURRNUM DECIMAL(10,2),THEDATE DATE,COMBO NUMERIC(1),CHECK_BOX CHAR(1),RADIO CHAR(1),CODE VARCHAR,INT_VALUE NUMERIC(6),ML_TEXT VARCHAR,YEAR NUMERIC,PRIMARY KEY(TEXT))"); // stmt = conn.prepareStatement("create table DEMO3(TEXT VARCHAR,FORMATTED_TEXT VARCHAR(20),DECNUM DECIMAL(10,2),CURRNUM DECIMAL(10,2),THEDATE DATE,COMBO NUMERIC(1),CHECK_BOX CHAR(1),RADIO CHAR(1),CODE VARCHAR,INT_VALUE NUMERIC(6),ML_TEXT VARCHAR,YEAR NUMERIC,PRIMARY KEY(TEXT))"); stmt.execute(); stmt.close(); stmt = conn.prepareStatement("create table DEMO3_LOOKUP(CODE VARCHAR,DESCRCODE VARCHAR,PRIMARY KEY(CODE))"); stmt.execute(); for(int i=1;i<900;i++) { stmt.close(); stmt = conn.prepareStatement("insert into DEMO3 values('ABC"+i+"',"+((i+1)%9)+"23224444,"+12+i+0.33+","+1234+i+0.560+",?,3,'Y','Y','A"+i+"',"+i+",'ABC"+i+"\nDEF"+i+"',2010)"); stmt.setObject(1,new java.sql.Date(System.currentTimeMillis()+86400000*i)); stmt.execute(); } stmt = conn.prepareStatement("insert into DEMO3 values('ABC"+0+"',"+((0+1)%9)+"23224444,"+12+","+1234+0+0.560+",?,3,'Y','Y','A"+0+"',"+0+",'ABC"+0+"\nDEF"+0+"',2010)"); stmt.setObject(1,new java.sql.Date(System.currentTimeMillis())); stmt.execute(); for(int i=0;i<900;i++) { stmt.close(); stmt = conn.prepareStatement("insert into DEMO3_LOOKUP values('A"+i+"','ABCDEF"+String.valueOf(i)+"')"); stmt.execute(); } } catch (SQLException ex1) { ex1.printStackTrace(); } finally { try { stmt.close(); } catch (SQLException ex2) { } } conn.commit(); } catch (Exception ex) { ex.printStackTrace(); } } }