Package com.projity.pm.graphic.spreadsheet.common

Examples of com.projity.pm.graphic.spreadsheet.common.CommonSpreadSheetModel


    addKeyListener(new KeyAdapter() { // TODO need to fix focus problems elsewhere for this to always work
      public void keyPressed(KeyEvent e) {
        int row = getSelectedRow();
        if (row < 0)
          return;
        CommonSpreadSheetModel model = (CommonSpreadSheetModel) getModel();
        if (e.getKeyCode() == KeyEvent.VK_INSERT)
          executeAction(MenuActionConstants.ACTION_NEW);
        else if (e.getKeyCode() == KeyEvent.VK_DELETE)
          executeAction(MenuActionConstants.ACTION_DELETE);
        else if (e.getKeyCode() == KeyEvent.VK_F3)
View Full Code Here


      setValue(null);
      component=this;
    }
    else{
      component=(JLabel)super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);
        CommonSpreadSheetModel model=(CommonSpreadSheetModel)table.getModel();
        FontManager.setComponentFont(model.getCellProperties(model.getNode(row)),component);
    }
   
    if (value!=null&& value instanceof Duration){
      Duration duration=(Duration)value;
      component.setText(duration+"");
View Full Code Here

/**
*
*/
public class CellUtility {
  public static void setAppearance(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column, JComponent component){
    CommonSpreadSheetModel model = (CommonSpreadSheetModel) table.getModel();
    GraphicNode node = model.getNode(row);
    CellFormat cellFormat=model.getCellProperties(node);
    if (isSelected){
      component.setForeground(/*table.getSelectionForeground()*/Color.WHITE);
      component.setBackground(/*Color.BLACK*/GraphicManager.getInstance().getLafManager().getSelectedBackgroundColor());
    }else{

      Color foreground=cellFormat.getForegroundObject();
      component.setForeground((foreground==null)?table.getForeground():foreground);
      Color background=cellFormat.getBackgroundObject();
      component.setBackground((background==null)?table.getBackground():background);
    }
    //component.setFont(table.getFont());
    if (hasFocus){
      component.setBorder( /*UIManager.getBorder("Table.focusCellHighlightBorder")*/new LineBorder(Color.BLACK) );
      if (table.isCellEditable(row, column)) {
        Color foreground=cellFormat.getForegroundObject();
        component.setForeground((foreground==null)?UIManager.getColor("Table.focusCellForeground"):foreground );
        Color background=cellFormat.getBackgroundObject();
        component.setBackground((background==null)?(Environment.isMac()?Colors.NOT_TOO_DARK_GRAY:UIManager.getColor("Table.focusCellBackground")):background );
      }
    }else{
      component.setBorder(new EmptyBorder(1, 1, 1, 1));
//      if (!model.isRowEditable(row))
//        component.setForeground(Color.GRAY);
      if (!model.isCellEditable(row,column+1)){
        component.setForeground(Color.GRAY);
      }
    }
  }
View Full Code Here

      setValue(null);
      component=this;
    }
    else{
      component=(JLabel)super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);
      CommonSpreadSheetModel model=(CommonSpreadSheetModel)table.getModel();
        FontManager.setComponentFont(model.getCellProperties(model.getNode(row)),component);
    }
       
   
    if (value!=null){
      if (compact) component.setText(FieldConverter.toString(value, value.getClass(), FieldConverter.COMPACT_CONVERTER_CONTEXT));
View Full Code Here

      nodeToString((Node)i.next(),sb,spreadsheet,fields);
    }
    return sb.toString();
  }
  public static void nodeToString(Node node,StringBuffer sb,SpreadSheet spreadsheet,List fields){
    CommonSpreadSheetModel model=(CommonSpreadSheetModel)spreadsheet.getModel();
    Object value;
    Field field;
    Iterator fieldsIterator=fields.iterator();
    boolean first=true;
    //String s=null;
    while(fieldsIterator.hasNext()){
      field=(Field)fieldsIterator.next();
      value=field.getValue(node,model.getCache().getWalkersModel(),model.getFieldContext());
      if (first) first=false;
      else sb.append('\t');
      sb.append((value==null)?"":value.toString());
      //s=sb.toString();
      //System.out.println("s="+s);
View Full Code Here

    if (st.hasMoreTokens()){
      if (SpreadSheet.TASK_CATEGORY.equals(category)) node=NodeFactory.getInstance().createTask((Project)factory);
      else if (SpreadSheet.RESOURCE_CATEGORY.equals(category)) node=NodeFactory.getInstance().createResource((ResourcePool)factory);
      else return null;
     
      CommonSpreadSheetModel model=(CommonSpreadSheetModel)spreadsheet.getModel();
      String valueS;
      Field field;
      Iterator fieldsIterator=fields.iterator();
      while(st.hasMoreTokens()&&fieldsIterator.hasNext()){
        valueS=st.nextToken();
        if (delim.equals(valueS)) valueS="";
        else if (st.hasMoreTokens()) st.nextToken();
        field=(Field)fieldsIterator.next();
        try {
          field.setValue(node,model.getCache().getWalkersModel(),spreadsheet,valueS,model.getFieldContext());
        } catch (FieldParseException e) {}
      }
    }
    return node;
  }
View Full Code Here

    while(st.hasMoreTokens()/*&&row<=maxRow*/) //maxRow useless, maxRow increased automatically
      pasteStringLine(st.nextToken(),spreadsheet,row++,col0);
  }
  public static void pasteStringLine(String s,SpreadSheet spreadsheet,int row0, int col0){
    String valueS;
    CommonSpreadSheetModel model=(CommonSpreadSheetModel)spreadsheet.getModel();
    String delim="\t";
    StringTokenizer st=new StringTokenizer(s,delim,true);
    int col=col0,maxCol=spreadsheet.getColumnCount()-1;
    FieldContext fieldContext=model.getFieldContext();
    boolean round=fieldContext.isRound();
    fieldContext.setRound(true);
    while(st.hasMoreTokens()&&col<=maxCol){
      valueS=st.nextToken();
      if (delim.equals(valueS)) valueS="";
      else if (st.hasMoreTokens()) st.nextToken();
      try{
        model.setValueAt(valueS,row0,++col);
      }catch(Exception e){}
    }
    fieldContext.setRound(round);
  }
View Full Code Here

//    CellUtility.setAppearance(table, value, isSelected, hasFocus, row,
//        column, textComponent);
    component.setOffline(false);
    CellUtility.setAppearance(table, value, isSelected, hasFocus, row,
        column, component);
    CommonSpreadSheetModel model = (CommonSpreadSheetModel) table.getModel();
    GraphicNode node = model.getNode(row);
    component.setText(value == null ? "" : value.toString());
    int level=model.getCache().getLevel(node);
    component.setLevel((node.isVoid())?(level+1):level);
    component.setLazy(node.isLazyParent());
    component.setFetched(node.isFetched());
    if (model.getCellProperties(node).isCompositeIcon()) {
      component.setCollapsed(node.isCollapsed());
    } else {
      component.setLeaf(node.isVoid());
    }
    FontManager.setComponentFont(model.getCellProperties(node),component);
    component.doLayout();
    return component;
  }
View Full Code Here

  public void valueChanged(ListSelectionEvent lse){
    if (lse.getValueIsAdjusting()) return; //it's not a final event
    SpreadSheetListSelectionModel listSelectionModel = (SpreadSheetListSelectionModel)lse.getSource();
    SpreadSheetSelectionModel selectionModel=listSelectionModel.getSelectionModel();
    CommonSpreadSheet spreadSheet=(CommonSpreadSheet)selectionModel.getTable();
    CommonSpreadSheetModel model=(CommonSpreadSheetModel)spreadSheet.getModel();
   
    int[] rows=spreadSheet.getSelectedRows();
    List nodes=new ArrayList(rows.length);
    Node currentNode = null;
    int selectedRow = spreadSheet.getSelectedRow();
    for (int i=0;i<rows.length;i++){
        nodes.add(model.getNode(rows[i]).getNode());
        if (selectedRow == rows[i])    // also set current row
          currentNode = model.getNode(rows[i]).getNode();
        //filter void nodes?
    }

    if (nodes.size()>0) spreadSheet.fireContentsChanged(spreadSheet,nodes,currentNode);
  }
View Full Code Here

TOP

Related Classes of com.projity.pm.graphic.spreadsheet.common.CommonSpreadSheetModel

Copyright © 2018 www.massapicom. 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.