Kaydet (Commit) 556a61a2 authored tarafından August Sodora's avatar August Sodora Kaydeden (comit) Michael Meeks

Added Frac function to calc formulas and BASIC standard library

üst 71f4a57b
......@@ -2531,6 +2531,26 @@ RTLFUNC(FormatDateTime)
rPar.Get(0)->PutString( aRetStr );
}
RTLFUNC(Frac)
{
(void)pBasic;
(void)bWrite;
sal_uInt16 nParCount = rPar.Count();
if( nParCount != 2)
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
SbxVariable *pSbxVariable = rPar.Get(1);
double dVal = pSbxVariable->GetDouble();
if(dVal >= 0)
rPar.Get(0)->PutDouble(dVal - ::rtl::math::approxFloor(dVal));
else
rPar.Get(0)->PutDouble(dVal - ::rtl::math::approxCeil(dVal));
}
RTLFUNC(Round)
{
(void)pBasic;
......
......@@ -250,6 +250,7 @@ extern RTLFUNC(Format);
extern RTLFUNC(GetAttr);
extern RTLFUNC(Randomize); // JSM
extern RTLFUNC(Round);
extern RTLFUNC(Frac);
extern RTLFUNC(Rnd);
extern RTLFUNC(Shell);
extern RTLFUNC(VarType);
......
......@@ -295,6 +295,8 @@ static Methods aMethods[] = {
{ "FormatDateTime", SbxSTRING, 2 | _FUNCTION | _COMPATONLY, RTLNAME(FormatDateTime),0 },
{ "Date", SbxDATE, 0,NULL,0 },
{ "NamedFormat", SbxINTEGER, _OPT, NULL,0 },
{ "Frac", SbxDOUBLE, 1 | _FUNCTION, RTLNAME(Frac),0 },
{ "number", SbxDOUBLE, 0,NULL,0 },
{ "FRAMEANCHORCHAR", SbxINTEGER, _CPROP, RTLNAME(FRAMEANCHORCHAR),0 },
{ "FRAMEANCHORPAGE", SbxINTEGER, _CPROP, RTLNAME(FRAMEANCHORPAGE),0 },
{ "FRAMEANCHORPARA", SbxINTEGER, _CPROP, RTLNAME(FRAMEANCHORPARA),0 },
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment