Package net.xoetrope.xui.test

Source Code of net.xoetrope.xui.test.TestXTable

package net.xoetrope.xui.test;

import java.io.File;

import java.awt.Frame;

import junit.framework.TestCase;
import net.xoetrope.awt.XApplet;
import net.xoetrope.awt.XTable;
import net.xoetrope.builder.helper.XTableModelHelper;
import net.xoetrope.data.XDataSource;
import net.xoetrope.debug.DebugLogger;
import net.xoetrope.deprecated.xui.XResourceManager;
import net.xoetrope.xui.XProject;
import net.xoetrope.xui.XProjectManager;
import net.xoetrope.xui.data.XBaseModel;
import net.xoetrope.xui.data.XModel;

/**
* <p>Title: Xui</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) Xoetrope Ltd., 1998-2003</p>
* <p>Company: Xoetrope Ltd.</p>
* @author not attributable
* @version 1.0
*/

public class TestXTable extends TestCase
{
  private Frame frame;
  private XProject project;
 
  public TestXTable()
  {
    XApplet applet = new XApplet();
    project = XProjectManager.getCurrentProject( applet );
    project.getStyleManager().load( "appstyles.xml" );
  }

  public void testTable()
  {
    XTable table = new XTable();
//    String[] cols = {"col 1", "col 2", "col 3"};
//    table.addColumns( cols );
    table.setStyle("base/TableData");
    table.setHeaderStyle("base/TableHeading");
    table.setSelectedStyle( "base/TableSelection" );
//    table.setModel( createManualDatasource() );
    table.setModel( createDatasource() );
    table.setInteractiveTable( true );
    table.setSelectedRow( 2 );

    frame = new Frame( "XTable test" );
    frame.setLayout(null);
    frame.setSize( 640, 480 );
    table.setColWidth( 0, 150 );
    table.setBounds( 20, 80, 400, 200 );
    table.setBackground( java.awt.Color.white );
    frame.add(table);
    frame.setVisible(true);
    frame.show();

    assertTrue( table.getSelectedRow() == 2 );
  }

  public XModel createManualDatasource()
  {
    XBaseModel dset = (XBaseModel)XTableModelHelper.createDataSet( "events" );
    XBaseModel table = (XBaseModel)XTableModelHelper.createTable( dset, "items" );
    XBaseModel header = (XBaseModel)XTableModelHelper.addHeader( table );
    XTableModelHelper.addData( header, "event", "event" );
    XTableModelHelper.addData( header, "control", "control" );
    XTableModelHelper.addData( header, "value", "value" );
    XBaseModel rowdata = (XBaseModel)XTableModelHelper.addRow( table );
    XTableModelHelper.addData( rowdata, "event", "click" );
    XTableModelHelper.addData( rowdata, "Control", "btnSubmit" );
    XTableModelHelper.addData( rowdata, "Value", "Submit" );

    DebugLogger.dumpModel( XProjectManager.getModel() );

    return table;
//    return (XModel)XProjectManager.getModel().get( "base/events/items", null );
  }

  public XModel createDatasource()
  {
    XDataSource modelDataSource = new XDataSource( project );
    try {
      String fileName = "samptabledatasets.xml";
      File source = new File( fileName );
      if ( source.exists())
        modelDataSource.read( project.getBufferedReader( source, null ) );
      else
        modelDataSource.read( project.getBufferedReader( fileName, null ) );
    }
    catch ( Exception ex ) {
      ex.printStackTrace();
    }

    DebugLogger.dumpModel( project.getModel() );

    XModel model = (XModel)project.getModel().get( "base/componentlist/items" );

    XBaseModel trNode = new XBaseModel();
    trNode.setTagName( "tr" );

    model.append( trNode );
    XBaseModel makeNode = new XBaseModel();
    makeNode.setTagName( "td" );
    makeNode.setId( "make" );
    makeNode.set( "Val" );
    trNode.append( makeNode );

    XBaseModel tdNode = new XBaseModel();
    tdNode.setTagName( "td" );
    tdNode.setId( "model" );
    tdNode.set( "Cassidy" );
    trNode.append( tdNode );

    tdNode = new XBaseModel();
    tdNode.setTagName( "td" );
    tdNode.setId( "year" );
    tdNode.set( "1968" );
    trNode.append( tdNode );

    tdNode = new XBaseModel();
    tdNode.setTagName( "td" );
    tdNode.setId( "price" );
    tdNode.set( "23433" );
    trNode.append( tdNode );
//    XBaseModel.getInstance().


    return model;


  /*  FileInputStream fis = null;
    InputStreamReader isr = null;
    try {
      fis = new FileInputStream( "c:\\cvs\\Xui\\Resource\\configres\\datasets.xml" );
      isr = new InputStreamReader( fis );
    }
    catch ( Exception ex ) {
      ex.printStackTrace();
    }
    XDataSource dataSource = new XDataSource();
    dataSource.read( isr );

    XModel model = (XModel)XProjectManager.getModel().get( "componentlist/items", null );
    return model;
    */
  }

}
TOP

Related Classes of net.xoetrope.xui.test.TestXTable

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.