Package org.zkoss.zss.ui.impl

Examples of org.zkoss.zss.ui.impl.HeaderPositionHelper$HeaderPositionInfoComparator


 
  private String getSheetDefaultRules(){
   
    Sheet sheet = getSelectedSheet();

    HeaderPositionHelper colHelper = this.getColumnPositionHelper(sheet);
    HeaderPositionHelper rowHelper = this.getRowPositionHelper(sheet);
    MergeMatrixHelper mmhelper = this.getMergeMatrixHelper(sheet);
   
   
    boolean hiderow = isHiderowhead();
    boolean hidecol = isHidecolumnhead();
   
    int th = hidecol?1:this.getTopheadheight();
    int lw = hiderow?1:this.getLeftheadwidth();
    int cp = this._cellpadding;//
    int rh = this.getRowheight();
    int cw = this.getColumnwidth();
    int lh = 20;// default line height;
   
    if(lh>rh){
      lh = rh;
    }
   
    String sheetid = getUuid();
    String name ="#"+sheetid;
   
    int cellwidth;//default
    int cellheight;//default
    Execution exe = Executions.getCurrent();
   
    boolean isGecko = exe.isGecko();
    boolean isIE = exe.isExplorer();
    //boolean isIE7 = exe.isExplorer7();
   
    if(isGecko){//firefox
      cellwidth = cw;
      cellheight = rh;
    }else {
      cellwidth = cw - 2*cp - 1;// 1 is border width
      cellheight = rh - 1;// 1 is border width
    }
   
    int celltextwidth =cw - 2*cp - 1;// 1 is border width
   
    StringBuffer sb = new StringBuffer();
   
    //zcss.setRule(name+" .zsdata",["padding-top","padding-left"],[th+"px",lw+"px"],true,sid);
    sb.append(name).append(" .zsdata{\n");
    sb.append("padding-top:").append(th).append("px;\n");
    sb.append("padding-left:").append(lw).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zsrow","height",rh+"px",true,sid);
    sb.append(name).append(" .zsrow{\n");
    sb.append("height:").append(rh).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zscell",["padding","height","width","line-height"],["0px "+cp+"px 0px "+cp+"px",cellheight+"px",cellwidth+"px",lh+"px"],true,sid);   
    sb.append(name).append(" .zscell{\n");
    sb.append("padding:").append("0px "+cp+"px 0px "+cp+"px;\n");
    sb.append("height:").append(cellheight).append("px;\n");
    sb.append("width:").append(cellwidth).append("px;\n");
    //sb.append("line-height:").append(lh).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zscelltxt",["width","height"],[celltextwidth+"px",cellheight+"px"],true,sid);
    sb.append(name).append(" .zscelltxt{\n");
    sb.append("width:").append(celltextwidth).append("px;\n");
    sb.append("height:").append(cellheight).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zstop",["left","height","line-height"],[lw+"px",(th-2)+"px",lh+"px"],true,sid);
   
    int toph = th-1;
    int topheadh = (isGecko)?toph:toph-1;
    int cornertoph = th-1;
    //int topblocktop = toph;
    int fzr = getRowfreeze();
    int fzc = getColumnfreeze();
   
    if(fzr>-1){
      toph = toph + rowHelper.getStartPixel(fzr+1);
    }
   
    sb.append(name).append(" .zstop{\n");
    sb.append("left:").append(lw).append("px;\n");
    sb.append("height:").append(fzr>-1?toph-1:toph).append("px;\n");
    //sb.append("line-height:").append(toph).append("px;\n");
    sb.append("}\n");
   
   
    sb.append(name).append(" .zstopi{\n");
    sb.append("height:").append(toph).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zstophead{\n");
    sb.append("height:").append(topheadh).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zscornertop{\n");
    sb.append("left:").append(lw).append("px;\n");
    sb.append("height:").append(cornertoph).append("px;\n");
    sb.append("}\n");
   
   
    //relative, so needn't set top position.
    /*sb.append(name).append(" .zstopblock{\n");
    sb.append("top:").append(topblocktop).append("px;\n");
    sb.append("}\n");*/
   
   
   
    //zcss.setRule(name+" .zstopcell",["padding","height","width","line-height"],["0px "+cp+"px 0px "+cp+"px",th+"px",cellwidth+"px",lh+"px"],true,sid);
    sb.append(name).append(" .zstopcell{\n");
    sb.append("padding:").append("0px "+cp+"px 0px "+cp+"px;\n");
    sb.append("height:").append(topheadh).append("px;\n");
    sb.append("width:").append(cellwidth).append("px;\n");
    sb.append("line-height:").append(topheadh).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zstopcelltxt","width", celltextwidth +"px",true,sid);
    sb.append(name).append(" .zstopcelltxt{\n");
    sb.append("width:").append(celltextwidth).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zsleft",["top","width"],[th+"px",(lw-2)+"px"],true,sid);
   
   
    int leftw = lw-1;
    int leftheadw = leftw;
    int leftblockleft = leftw;
   
    if(fzc>-1){
      leftw = leftw + colHelper.getStartPixel(fzc+1);
    }
   
    sb.append(name).append(" .zsleft{\n");
    sb.append("top:").append(th).append("px;\n");
    sb.append("width:").append(fzc>-1?leftw-1:leftw).append("px;\n");
    sb.append("}\n");
   
   
    sb.append(name).append(" .zslefti{\n");
    sb.append("width:").append(leftw).append("px;\n");
    sb.append("}\n");
   
   
    sb.append(name).append(" .zslefthead{\n");
    sb.append("width:").append(leftheadw).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zsleftblock{\n");
    sb.append("left:").append(leftblockleft).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zscornerleft{\n");
    sb.append("top:").append(th).append("px;\n");
    sb.append("width:").append(leftheadw).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zsleftcell",["height","line-height"],[(rh-1)+"px",(rh)+"px"],true,sid);//for middle the text, i use row leight instead of lh
    sb.append(name).append(" .zsleftcell{\n");
    sb.append("height:").append(rh-1).append("px;\n");
    sb.append("line-height:").append(rh-1).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zscorner",["width","height"],[(lw-2)+"px",(th-2)+"px"],true,sid);
   
   
    sb.append(name).append(" .zscorner{\n");
    sb.append("width:").append(fzc>-1?leftw:leftw+1).append("px;\n");
    sb.append("height:").append(fzr>-1?toph:toph+1).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zscorneri{\n");
    sb.append("width:").append(lw-2).append("px;\n");
    sb.append("height:").append(th-2).append("px;\n");
    sb.append("}\n");
   
    sb.append(name).append(" .zscornerblock{\n");
    sb.append("left:").append(lw).append("px;\n");
    sb.append("top:").append(th).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zshboun","height",th+"px",true,sid);
    sb.append(name).append(" .zshboun{\n");
    sb.append("height:").append(th).append("px;\n");
    sb.append("}\n");
   
   
   
    //zcss.setRule(name+" .zshboun","height",th+"px",true,sid);
    sb.append(name).append(" .zshboun{\n");
    sb.append("height:").append(th).append("px;\n");
    sb.append("}\n");
   
    //zcss.setRule(name+" .zshbouni","height",th+"px",true,sid);
    sb.append(name).append(" .zshbouni{\n");
    sb.append("height:").append(th).append("px;\n");
    sb.append("}\n");
   
   
    sb.append(name).append(" .zsfztop{\n");
    sb.append("border-bottom-style:").append(fzr>-1?"solid":"none").append(";");
    sb.append("}\n");
    sb.append(name).append(" .zsfzcorner{\n");
    sb.append("border-bottom-style:").append(fzr>-1?"solid":"none").append(";");
    sb.append("}\n");
   
    sb.append(name).append(" .zsfzleft{\n");
    sb.append("border-right-style:").append(fzc>-1?"solid":"none").append(";");
    sb.append("}\n");
    sb.append(name).append(" .zsfzcorner{\n");
    sb.append("border-right-style:").append(fzc>-1?"solid":"none").append(";");
    sb.append("}\n");
   
    //TODO transparent border mode
   
    boolean transparentBorder = false;
   
    if(transparentBorder){
      sb.append(name).append(" .zscell {");
      sb.append("border-right-color: transparent;");
      sb.append("border-bottom-color: transparent;");
      if(isIE){/**for IE6**/
        String color_to_transparent = "tomato";
        sb.append("_border-color:"+color_to_transparent+";");
        sb.append("_filter:chroma(color="+color_to_transparent+");");
      }
      sb.append("}\n");
    }
   
   
    int cs[][] = colHelper.getCostomizedSize();
    for(int i=0;i<cs.length;i++){
      int index = cs[i][0];
      int width = cs[i][1];
      int cid = cs[i][2];
     
      celltextwidth = width - 2*cp - 1;// 1 is border width
     
      //bug 1989680
      if(celltextwidth<0) celltextwidth = 0;
     
      if(!isGecko){
        cellwidth = celltextwidth;
      }else{
        cellwidth = width;
      }
     
      if(width<=0){
        sb.append(name).append(" .zsw").append(cid).append("{\n");
        sb.append("display:none;\n");
        sb.append("}\n");
       
      }else{
        sb.append(name).append(" .zsw").append(cid).append("{\n");
        sb.append("width:").append(cellwidth).append("px;\n");
        sb.append("}\n");
       
        sb.append(name).append(" .zswi").append(cid).append("{\n");
        sb.append("width:").append(celltextwidth).append("px;\n");
        sb.append("}\n");
      }
    }
   
   
    cs = rowHelper.getCostomizedSize();
    for(int i=0;i<cs.length;i++){
      int index = cs[i][0];
      int height = cs[i][1];
      int cid = cs[i][2];
      cellheight = height;
View Full Code Here


 
 
  private int getDataPanelWidth(){
    int col = getMaxcolumns();
   
    HeaderPositionHelper colHelper = getColumnPositionHelper(getSelectedSheet());

    return colHelper.getStartPixel(col);
  }
View Full Code Here

    return colHelper.getStartPixel(col);
  }
  private int getDataPanelHeight(){
    int row = getMaxrows();
   
    HeaderPositionHelper rowHelper = getRowPositionHelper(getSelectedSheet());
   
    return rowHelper.getStartPixel(row);
  }
View Full Code Here

        sheet = getSelectedSheet();
      } else {
        sheet = Utils.getSheetByUuid(_book, sheetId);
      }
      // update helper size first before sheet.setColumnWidth, or it will fire a SSDataEvent
      HeaderPositionHelper helper = Spreadsheet.this.getColumnPositionHelper(sheet);
      helper.setInfoValues(column, newsize, id, hidden);

      final Range rng = Ranges.range(sheet, -1, column).getColumns();
      rng.setHidden(hidden);
      if (!hidden) {
        rng.setColumnWidth(Utils.pxToFileChar256(newsize, ((Book)sheet.getWorkbook()).getDefaultCharWidth()));
View Full Code Here

      rng.setHidden(hidden);
      if (!hidden) {
        rng.setRowHeight(Utils.pxToPoint(newsize));
      }
      //row.setHeight((short)Utils.pxToTwip(newsize));
      HeaderPositionHelper helper = Spreadsheet.this.getRowPositionHelper(sheet);
      helper.setInfoValues(rownum, newsize, id, hidden);
    }
View Full Code Here

      if (getSelectedSheetId().equals(sheetId)) {
        sheet = getSelectedSheet();
      } else {
        sheet = Utils.getSheetByUuid(_book, sheetId);
      }
      HeaderPositionHelper helper = Spreadsheet.this.getColumnPositionHelper(sheet);
      return helper;
    }
View Full Code Here

      if (getSelectedSheetId().equals(sheetId)) {
        sheet = getSelectedSheet();
      } else {
        sheet = Utils.getSheetByUuid(_book, sheetId);
      }
      HeaderPositionHelper helper = Spreadsheet.this
          .getRowPositionHelper(sheet);
      return helper;
    }
View Full Code Here

    private JSONObject getColumnHeaderAttrs(Worksheet sheet, int col) {
      JSONObject attrs = new JSONObject();
//      attrs.put("i", col);//getHeaderAttrs method has provide index info
      attrs.put("t", Spreadsheet.this.getColumntitle(col));

      HeaderPositionHelper colHelper = Spreadsheet.this.getColumnPositionHelper(sheet);
      HeaderPositionInfo info = colHelper.getInfo(col);
      if (info != null) {
        attrs.put("p", info.id);
//        if (info.size != defaultSize) {
//          attrs.put("s", info.size);
//        }
View Full Code Here

    private JSONObject getRowHeaderAttrs(Worksheet sheet, int row) {
      JSONObject attrs = new JSONObject();
//      attrs.put("i", row);//getHeaderAttrs method has provide index info
      attrs.put("t", Spreadsheet.this.getRowtitle(row));

      HeaderPositionHelper rowHelper = Spreadsheet.this.getRowPositionHelper(sheet);
      HeaderPositionInfo info = rowHelper.getInfo(row);
      if (info != null) {
        attrs.put("p", info.id);
//        if (info.hidden)
//          attrs.put("h", 1);
      }
View Full Code Here

     *   <li>hidden: default is false</li>
     * </ul>
     */
    public JSONObject getRowAttrs(int row) {
      Worksheet sheet = getSelectedSheet();
      HeaderPositionHelper helper = Spreadsheet.this.getRowPositionHelper(sheet);
      JSONObject attrs = new JSONObject();
      //row num
      attrs.put("r", row);
     
      HeaderPositionInfo info = helper.getInfo(row);
      if (info != null) {
        attrs.put("h", info.id);
        if (info.hidden) {
          attrs.put("hd", "t"); //t stand for true
        }
View Full Code Here

TOP

Related Classes of org.zkoss.zss.ui.impl.HeaderPositionHelper$HeaderPositionInfoComparator

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.