LCOV - code coverage report
Current view: top level - lotuswordpro/source/filter/xfilter - xfutil.cxx (source / functions) Hit Total Coverage
Test: commit 0e63ca4fde4e446f346e35849c756a30ca294aab Lines: 44 197 22.3 %
Date: 2014-04-11 Functions: 9 17 52.9 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*************************************************************************
       3             :  *
       4             :  *  The Contents of this file are made available subject to the terms of
       5             :  *  either of the following licenses
       6             :  *
       7             :  *         - GNU Lesser General Public License Version 2.1
       8             :  *         - Sun Industry Standards Source License Version 1.1
       9             :  *
      10             :  *  Sun Microsystems Inc., October, 2000
      11             :  *
      12             :  *  GNU Lesser General Public License Version 2.1
      13             :  *  =============================================
      14             :  *  Copyright 2000 by Sun Microsystems, Inc.
      15             :  *  901 San Antonio Road, Palo Alto, CA 94303, USA
      16             :  *
      17             :  *  This library is free software; you can redistribute it and/or
      18             :  *  modify it under the terms of the GNU Lesser General Public
      19             :  *  License version 2.1, as published by the Free Software Foundation.
      20             :  *
      21             :  *  This library is distributed in the hope that it will be useful,
      22             :  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
      23             :  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      24             :  *  Lesser General Public License for more details.
      25             :  *
      26             :  *  You should have received a copy of the GNU Lesser General Public
      27             :  *  License along with this library; if not, write to the Free Software
      28             :  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
      29             :  *  MA  02111-1307  USA
      30             :  *
      31             :  *
      32             :  *  Sun Industry Standards Source License Version 1.1
      33             :  *  =================================================
      34             :  *  The contents of this file are subject to the Sun Industry Standards
      35             :  *  Source License Version 1.1 (the "License"); You may not use this file
      36             :  *  except in compliance with the License. You may obtain a copy of the
      37             :  *  License at http://www.openoffice.org/license.html.
      38             :  *
      39             :  *  Software provided under this License is provided on an "AS IS" basis,
      40             :  *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
      41             :  *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
      42             :  *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
      43             :  *  See the License for the specific provisions governing your rights and
      44             :  *  obligations concerning the Software.
      45             :  *
      46             :  *  The Initial Developer of the Original Code is: IBM Corporation
      47             :  *
      48             :  *  Copyright: 2008 by IBM Corporation
      49             :  *
      50             :  *  All Rights Reserved.
      51             :  *
      52             :  *  Contributor(s): _______________________________________
      53             :  *
      54             :  *
      55             :  ************************************************************************/
      56             : /*************************************************************************
      57             :  * @file
      58             :  * Util functions for xml filter.
      59             :  ************************************************************************/
      60             : #include <stdio.h>
      61             : #include "xfutil.hxx"
      62             : #include "xfparagraph.hxx"
      63             : #include "xfcontentcontainer.hxx"
      64             : #include <rtl/ustrbuf.hxx>
      65             : #include <sstream>
      66             : 
      67           0 : OUString   DateTimeToOUString(XFDateTime& dt)
      68             : {
      69           0 :     OUString aResult = OUString::number(dt.nYear) + "-" + OUString::number(dt.nMonth) + "-" + OUString::number(dt.nDay) +
      70           0 :         "T" + OUString::number(dt.nHour) + ":" + OUString::number(dt.nMinute) + ":" + OUString::number(dt.nSecond) + "." +
      71           0 :         OUString::number(dt.nMillSecond);
      72             : 
      73           0 :     return aResult;
      74             : }
      75             : 
      76           0 : OUString   GetTableColName(sal_Int32 col)
      77             : {
      78           0 :     int     remain = 0;
      79             :     char    ch;
      80           0 :     std::string strOut;
      81             : 
      82           0 :     if( col <= 26 )
      83             :     {
      84           0 :         ch = 'A' + col -1;
      85           0 :         strOut += ch;
      86           0 :         return OUString::createFromAscii(strOut.c_str());
      87             :     }
      88             : 
      89           0 :     while( col>26 )
      90             :     {
      91           0 :         remain = col%26;
      92           0 :         col = col/26;
      93           0 :         ch = 'A' + remain -1;
      94           0 :         strOut += ch;
      95             :     }
      96             : 
      97           0 :     ch = 'A' + remain -1;
      98           0 :     strOut += ch;
      99           0 :     return OUString::createFromAscii(strOut.c_str());
     100             : }
     101             : 
     102             : //tool functions:
     103           1 : OUString   GetUnderlineName(enumXFUnderline type)
     104             : {
     105           1 :     switch(type)
     106             :     {
     107             :     case enumXFUnderlineNone:
     108           0 :         return OUString("none");
     109             :         break;
     110             :     case enumXFUnderlineSingle:
     111           1 :         return OUString("single");
     112             :         break;
     113             :     case enumXFUnderlineDouble:
     114           0 :         return OUString("double");
     115             :         break;
     116             :     case enumXFUnderlineDotted:
     117           0 :         return OUString("dotted");
     118             :         break;
     119             :     case enumXFUnderlineDash:
     120           0 :         return OUString("dash");
     121             :         break;
     122             :     case enumXFUnderlineLongDash:
     123           0 :         return OUString("long-dash");
     124             :         break;
     125             :     case enumXFUnderlineDotDash:
     126           0 :         return OUString("dot-dash");
     127             :         break;
     128             :     case enumXFUnderlineDotDotDash:
     129           0 :         return OUString("dot-dot-dash");
     130             :         break;
     131             :     case enumXFUnderlineWave:
     132           0 :         return OUString("wave");
     133             :         break;
     134             :     case enumXFUnderlineBold:
     135           0 :         return OUString("bold");
     136             :         break;
     137             :     case enumXFUnderlineBoldDotted:
     138           0 :         return OUString("bold-dotted");
     139             :         break;
     140             :     case enumXFUnderlineBoldDash:
     141           0 :         return OUString("bold-dash");
     142             :         break;
     143             :     case enumXFUnderlineBoldLongDash:
     144           0 :         return OUString("bold-long-dash");
     145             :         break;
     146             :     case enumXFUnderlineBoldDotDash:
     147           0 :         return OUString("bold-dot-dash");
     148             :         break;
     149             :     case enumXFUnderlineBoldDotDotDash:
     150           0 :         return OUString("bold-dot-dot-dash");
     151             :         break;
     152             :     case enumXFUnderlineBoldWave:
     153           0 :         return OUString("bold-wave");
     154             :         break;
     155             :     case enumXFUnderlineDoubleWave:
     156           0 :         return OUString("double-wave");
     157             :         break;
     158             :     case enumXFUnderlineSmallWave:
     159           0 :         return OUString("samll-wave");
     160             :         break;
     161             :     }
     162           0 :     return OUString("");
     163             : }
     164             : 
     165           0 : OUString   GetReliefName(enumXFRelief type)
     166             : {
     167           0 :     switch(type)
     168             :     {
     169             :         case enumXFReliefEngraved:
     170           0 :             return OUString("engraved");
     171             :             break;
     172             :         case enumXFReliefEmbossed:
     173           0 :             return OUString("embossed");
     174             :             break;
     175             :         default:
     176           0 :             break;
     177             :     }
     178           0 :     return OUString("");
     179             : }
     180             : 
     181           1 : OUString   GetCrossoutName(enumXFCrossout type)
     182             : {
     183           1 :     switch(type)
     184             :     {
     185             :     case enumXFCrossoutSignel:
     186           1 :         return OUString("single-line");
     187             :         break;
     188             :     case enumXFCrossoutDouble:
     189           0 :         return OUString("double-line");
     190             :         break;
     191             :     case enumXFCrossoutThick:
     192           0 :         return OUString("thick-line");
     193             :         break;
     194             :     case enumXFCrossoutSlash:
     195           0 :         return OUString("slash");
     196             :         break;
     197             :     case enumXFCrossoutX:
     198           0 :         return OUString("X");
     199             :         break;
     200             :     default:
     201           0 :         break;
     202             :     }
     203           0 :     return OUString("");
     204             : }
     205             : 
     206           0 : OUString   GetTransformName(enumXFTransform type)
     207             : {
     208           0 :     switch(type) {
     209             :     case enumXFTransformUpper:
     210           0 :         return OUString("uppercase");
     211             :         break;
     212             :     case enumXFTransformLower:
     213           0 :         return OUString("lowercase");
     214             :         break;
     215             :     case enumXFTransformCapitalize:
     216           0 :         return OUString("capitalize");
     217             :         break;
     218             :     case enumXFTransformSmallCaps:
     219           0 :         return OUString("small-caps");
     220             :         break;
     221             :     default:
     222           0 :         break;
     223             :     }
     224           0 :     return OUString("");
     225             : }
     226             : 
     227           0 : OUString   GetEmphasizeName(enumXFEmphasize type)
     228             : {
     229           0 :     switch(type) {
     230             :     case enumXFEmphasizeDot:
     231           0 :         return OUString("dot");
     232             :         break;
     233             :     case enumXFEmphasizeCircle:
     234           0 :         return OUString("circle");
     235             :         break;
     236             :     case enumXFEmphasizeDisc:
     237           0 :         return OUString("disc");
     238             :         break;
     239             :     case enumXFEmphasizeAccent:
     240           0 :         return OUString("accent");
     241             :         break;
     242             :     default:
     243           0 :         break;
     244             :     }
     245           0 :     return OUString("");
     246             : }
     247             : 
     248          19 : OUString   GetTextDirName(enumXFTextDir dir)
     249             : {
     250          19 :     switch(dir)
     251             :     {
     252             :     case enumXFTextDirLR:
     253           0 :         return OUString("lr");
     254             :         break;
     255             :     case enumXFTextDirLR_TB:
     256          19 :         return OUString("lr-tb");
     257             :         break;
     258             :     case enumXFTextDirPage:
     259           0 :         return OUString("page");
     260             :         break;
     261             :     case enumXFTextDirRL:
     262           0 :         return OUString("rl");
     263             :         break;
     264             :     case enumXFTextDirRL_TB:
     265           0 :         return OUString("rl-tb");
     266             :         break;
     267             :     case enumXFTextDirTB:
     268           0 :         return OUString("tb");
     269             :         break;
     270             :     case enumXFTextDirTB_LR:
     271           0 :         return OUString("tb-lr");
     272             :         break;
     273             :     case enumXFTextDirTB_RL:
     274           0 :         return OUString("tb-rl");
     275             :         break;
     276             :     default:
     277           0 :         break;
     278             :     }
     279           0 :     return OUString("");
     280             : }
     281             : 
     282          17 : OUString   GetFrameXPos(enumXFFrameXPos pos)
     283             : {
     284          17 :     switch(pos)
     285             :     {
     286             :     case enumXFFrameXPosLeft:
     287           0 :         return OUString("left");
     288             :         break;
     289             :     case enumXFFrameXPosRight:
     290           0 :         return OUString("right");
     291             :         break;
     292             :     case enumXFFrameXPosCenter:
     293           2 :         return OUString("center");
     294             :         break;
     295             :     case enumXFFrameXPosFromLeft:
     296          15 :         return OUString("from-left");
     297             :         break;
     298             :     default:
     299           0 :         break;
     300             :     }
     301           0 :     return OUString("");
     302             : }
     303             : 
     304          17 : OUString   GetFrameXRel(enumXFFrameXRel rel)
     305             : {
     306          17 :     switch(rel)
     307             :     {
     308             :     case enumXFFrameXRelPage:
     309           5 :         return OUString("page");
     310             :         break;
     311             :     case enumXFFrameXRelPageContent:
     312           0 :         return OUString("page-content");
     313             :         break;
     314             :     case enumXFFrameXRelPageEndMargin:
     315           0 :         return OUString("page-end-margin");
     316             :         break;
     317             :     case enumXFFrameXRelPageStartMargin:
     318           0 :         return OUString("page-start-margin");
     319             :         break;
     320             :     case enumXFFrameXRelPara:
     321           0 :         return OUString("paragraph");
     322             :         break;
     323             :     case enumXFFrameXRelParaContent:
     324           8 :         return OUString("paragraph-content");
     325             :         break;
     326             :     case enumXFFrameXRelParaEndMargin:
     327           0 :         return OUString("paragraph-end-margin");
     328             :         break;
     329             :     case enumXFFrameXRelParaStartMargin:
     330           0 :         return OUString("paragraph-start-margin");
     331             :         break;
     332             :     case enumXFFrameXRelChar:
     333           0 :         return OUString("char");
     334             :         break;
     335             :     case enumXFFrameXRelFrame:
     336           4 :         return OUString("frame");
     337             :         break;
     338             :     case enumXFFrameXRelFrameContent:
     339           0 :         return OUString("frame-content");
     340             :         break;
     341             :     case enumXFFrameXRelFrameEndMargin:
     342           0 :         return OUString("frame-end-margin");
     343             :         break;
     344             :     case enumXFFrameXRelFrameStartMargin:
     345           0 :         return OUString("frame-start-margin");
     346             :         break;
     347             :     default:
     348           0 :         break;
     349             :     }
     350           0 :     return OUString("");
     351             : }
     352             : 
     353          17 : OUString   GetFrameYPos(enumXFFrameYPos pos)
     354             : {
     355          17 :     switch(pos)
     356             :     {
     357             :     case enumXFFrameYPosTop:
     358           0 :         return OUString("top");
     359             :     case enumXFFrameYPosMiddle:
     360           2 :         return OUString("middle");
     361             :     case enumXFFrameYPosBottom:
     362           8 :         return OUString("bottom");
     363             :     case enumXFFrameYPosFromTop:
     364           3 :         return OUString("from-top");
     365             :     case enumXFFrameYPosBelow:
     366           4 :         return OUString("below");
     367             :     }
     368           0 :     return OUString("");
     369             : }
     370             : 
     371          17 : OUString   GetFrameYRel(enumXFFrameYRel rel)
     372             : {
     373          17 :     switch(rel)
     374             :     {
     375             :     case enumXFFrameYRelBaseLine:
     376           0 :         return OUString("baseline");
     377             :     case enumXFFrameYRelChar:
     378           4 :         return OUString("char");
     379             :     case enumXFFrameYRelFrame:
     380           4 :         return OUString("frame");
     381             :     case enumXFFrameYRelFrameContent:
     382           0 :         return OUString("frame-content");
     383             :     case enumXFFrameYRelLine:
     384           0 :         return OUString("line");
     385             :     case enumXFFrameYRelPage:
     386           0 :         return OUString("page");
     387             :     case enumXFFrameYRelPageContent:
     388           0 :         return OUString("page-content");
     389             :     case enumXFFrameYRelPara:
     390           1 :         return OUString("paragraph");
     391             :     case enumXFFrameYRelParaContent:
     392           8 :         return OUString("paragraph-content");
     393             :     case enumXFFrameYRelText:
     394           0 :         return OUString("text");
     395             :     }
     396           0 :     return OUString("");
     397             : }
     398             : 
     399         171 : OUString   GetAlignName(enumXFAlignType align)
     400             : {
     401         171 :     if( align == enumXFAlignStart )
     402         134 :         return OUString("start");
     403          37 :     else if( align == enumXFAlignCenter )
     404          11 :         return OUString("center");
     405          26 :     else if( align == enumXFAlignEnd )
     406           4 :         return OUString("end");
     407          22 :     else if( align == enumXFAlignJustify )
     408           0 :         return OUString("justify");
     409          22 :     else if( align == enumXFAlignBottom )
     410           0 :         return OUString("bottom");
     411          22 :     else if( align == enumXFAlignTop )
     412          22 :         return OUString("top");
     413           0 :     else if( align == enumXFAlignMiddle )
     414           0 :         return OUString("middle");
     415           0 :     else if( align == enumXFALignMargins )
     416           0 :         return OUString("margins");
     417             : 
     418           0 :     return OUString("");
     419             : }
     420             : 
     421           0 : OUString   GetDrawKind(enumXFDrawKind kind)
     422             : {
     423           0 :     if( kind == enumXFDrawKindFull )
     424           0 :         return OUString("full");
     425           0 :     else if( kind == enumXFDrawKindSection )
     426           0 :         return OUString("section");
     427           0 :     else if( kind == enumXFDrawKindCut )
     428           0 :         return OUString("cut");
     429             :     else    //( kind == enumXFDrawKindArc )
     430           0 :         return OUString("arc");
     431             : }
     432             : 
     433           0 : OUString   GetPageUsageName(enumXFPageUsage usage)
     434             : {
     435           0 :     OUString sRet;
     436           0 :     switch(usage)
     437             :     {
     438             :     case enumXFPageUsageAll:
     439           0 :         sRet = "all";
     440           0 :         break;
     441             :     case enumXFPageUsageLeft:
     442           0 :         sRet = "left";
     443           0 :         break;
     444             :     case enumXFPageUsageRight:
     445           0 :         sRet = "right";
     446           0 :         break;
     447             :     case enumXFPageUsageMirror:
     448           0 :         sRet = "mirrored";
     449           0 :         break;
     450             :     default:
     451           0 :         sRet = "mirrored";
     452           0 :         break;
     453             :     }
     454           0 :     return sRet;
     455             : }
     456             : 
     457           0 : OUString   GetValueType(enumXFValueType type)
     458             : {
     459           0 :     OUString sRet;
     460           0 :     switch(type)
     461             :     {
     462             :     case enumXFValueTypeBoolean:
     463           0 :         sRet = "boolean";
     464           0 :         break;
     465             :     case enumXFValueTypeCurrency:
     466           0 :         sRet = "currency";
     467           0 :         break;
     468             :     case enumXFValueTypeDate:
     469           0 :         sRet = "date";
     470           0 :         break;
     471             :     case enumXFValueTypeFloat:
     472           0 :         sRet = "float";
     473           0 :         break;
     474             :     case enumXFValueTypePercentage:
     475           0 :         sRet = "percentage";
     476           0 :         break;
     477             :     case enumXFValueTypeString:
     478           0 :         sRet = "string";
     479           0 :         break;
     480             :     case enumXFValueTypeTime:
     481           0 :         sRet = "time";
     482           0 :         break;
     483             :     default:
     484           0 :         sRet = "mirrored";
     485           0 :         break;
     486             :     }
     487           0 :     return sRet;
     488             : }
     489             : 
     490           4 : OUString   GetColorMode(enumXFColorMode mode)
     491             : {
     492           4 :     switch(mode)
     493             :     {
     494             :     case enumXFColorStandard:
     495           4 :         return OUString("standard");
     496             :     case enumXFColorGreyscale:
     497           0 :         return OUString("greyscale");
     498             :     case enumXFColorWatermark:
     499           0 :         return OUString("watermark");
     500             :     case enumXFColorMono:
     501           0 :         return OUString("mono");
     502             :     }
     503           0 :     return OUString("");
     504             : }
     505             : 
     506             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10