Lines Matching refs:p

79 static const sal_Unicode* lcl_ParseQuotedName( const sal_Unicode* p, String& rName )  in lcl_ParseQuotedName()  argument
82 if (*p != '\'') in lcl_ParseQuotedName()
83 return p; in lcl_ParseQuotedName()
85 const sal_Unicode* pStart = p; in lcl_ParseQuotedName()
87 for (++p; *p; ++p) in lcl_ParseQuotedName()
89 if (*p == '\'') in lcl_ParseQuotedName()
94 rName += *p; in lcl_ParseQuotedName()
101 return p; in lcl_ParseQuotedName()
103 rName += *p; in lcl_ParseQuotedName()
104 cPrev = *p; in lcl_ParseQuotedName()
111 sal_Unicode_strtol ( const sal_Unicode* p, in sal_Unicode_strtol() argument
117 if( *p == '-' ) in sal_Unicode_strtol()
120 p++; in sal_Unicode_strtol()
122 else if( *p == '+' ) in sal_Unicode_strtol()
123 p++; in sal_Unicode_strtol()
125 while (CharClass::isAsciiDigit( *p )) in sal_Unicode_strtol()
127 accum = accum * 10 + *p - '0'; in sal_Unicode_strtol()
134 p++; in sal_Unicode_strtol()
137 *pEnd = p; in sal_Unicode_strtol()
141 const sal_Unicode* lcl_eatWhiteSpace( const sal_Unicode* p ) in lcl_eatWhiteSpace() argument
143 if ( p ) in lcl_eatWhiteSpace()
145 while( *p == ' ' ) in lcl_eatWhiteSpace()
146 ++p; in lcl_eatWhiteSpace()
148 return p; in lcl_eatWhiteSpace()
228 const sal_Unicode *p = start; in lcl_XL_ParseSheetRef() local
233 const sal_Unicode* pCurrentStart = p; in lcl_XL_ParseSheetRef()
234 while (p < pMsoxlQuoteStop) in lcl_XL_ParseSheetRef()
236 if (*p == '\'') in lcl_XL_ParseSheetRef()
239 if (*++p == '\'') in lcl_XL_ParseSheetRef()
242 sal::static_int_cast<xub_StrLen>( p - pCurrentStart)); in lcl_XL_ParseSheetRef()
243 pCurrentStart = ++p; in lcl_XL_ParseSheetRef()
246 else if (*p == ':') in lcl_XL_ParseSheetRef()
251 ++p; in lcl_XL_ParseSheetRef()
253 if (pCurrentStart < p) in lcl_XL_ParseSheetRef()
254 aTabName.Append( pCurrentStart, sal::static_int_cast<xub_StrLen>( p - pCurrentStart)); in lcl_XL_ParseSheetRef()
257 if (p == pMsoxlQuoteStop) in lcl_XL_ParseSheetRef()
258 ++p; // position on ! of ...'!... in lcl_XL_ParseSheetRef()
259 if( *p != '!' && ( !allow_3d || *p != ':' ) ) in lcl_XL_ParseSheetRef()
260 return (!allow_3d && *p == ':') ? p : start; in lcl_XL_ParseSheetRef()
262 else if( *p == '\'') in lcl_XL_ParseSheetRef()
264 p = lcl_ParseQuotedName(p, aTabName); in lcl_XL_ParseSheetRef()
289 const sal_Unicode uc = *p; in lcl_XL_ParseSheetRef()
292 if( only_digits && p != start && in lcl_XL_ParseSheetRef()
295 p = start; in lcl_XL_ParseSheetRef()
299 p++; in lcl_XL_ParseSheetRef()
303 p++; in lcl_XL_ParseSheetRef()
309 p = start; in lcl_XL_ParseSheetRef()
312 p++; in lcl_XL_ParseSheetRef()
317 ++p; in lcl_XL_ParseSheetRef()
323 if( *p != '!' && ( !allow_3d || *p != ':' ) ) in lcl_XL_ParseSheetRef()
324 return (!allow_3d && *p == ':') ? p : start; in lcl_XL_ParseSheetRef()
326 aTabName.Append( start, sal::static_int_cast<xub_StrLen>( p - start ) ); in lcl_XL_ParseSheetRef()
330 return p; in lcl_XL_ParseSheetRef()
335 const sal_Unicode* p, in Parse_XL_Header() argument
344 const sal_Unicode* startTabs, *start = p; in Parse_XL_Header()
352 if (*p == '[') in Parse_XL_Header()
354 ++p; in Parse_XL_Header()
357 if (*p == '\'') in Parse_XL_Header()
359 p = lcl_ParseQuotedName(p, rExternDocName); in Parse_XL_Header()
360 if (!*p || *p != ']' || !rExternDocName.Len()) in Parse_XL_Header()
369 p = ScGlobal::UnicodeStrChr( start+1, ']' ); in Parse_XL_Header()
370 if( p == NULL ) in Parse_XL_Header()
372 rExternDocName.Append( start+1, sal::static_int_cast<xub_StrLen>( p-(start+1) ) ); in Parse_XL_Header()
374 ++p; in Parse_XL_Header()
412 else if (*p == '\'') in Parse_XL_Header()
419 p = lcl_ParseQuotedName(p, rExternDocName); in Parse_XL_Header()
420 if (!*p || *p != '!') in Parse_XL_Header()
439 pMsoxlQuoteStop = p - 1; // the ' quote char in Parse_XL_Header()
442 for (p = start; *p != '['; ++p) in Parse_XL_Header()
444 for ( ; *p != ']'; ++p) in Parse_XL_Header()
446 ++p; in Parse_XL_Header()
451 p = start; in Parse_XL_Header()
454 startTabs = p; in Parse_XL_Header()
455 p = lcl_XL_ParseSheetRef( p, rStartTabName, !bOnlyAcceptSingle, pMsoxlQuoteStop); in Parse_XL_Header()
456 if( NULL == p ) in Parse_XL_Header()
458 if (bOnlyAcceptSingle && *p == ':') in Parse_XL_Header()
460 if( p != startTabs ) in Parse_XL_Header()
463 if( *p == ':' ) // 3d ref in Parse_XL_Header()
465 p = lcl_XL_ParseSheetRef( p+1, rEndTabName, false, pMsoxlQuoteStop); in Parse_XL_Header()
466 if( p == NULL ) in Parse_XL_Header()
481 if( *p++ != '!' ) in Parse_XL_Header()
487 p = lcl_eatWhiteSpace( p ); in Parse_XL_Header()
532 return p; in Parse_XL_Header()
537 lcl_r1c1_get_col( const sal_Unicode* p, in lcl_r1c1_get_col() argument
545 if( p[0] == '\0' ) in lcl_r1c1_get_col()
548 p++; in lcl_r1c1_get_col()
549 if( (isRelative = (*p == '[') ) != false ) in lcl_r1c1_get_col()
550 p++; in lcl_r1c1_get_col()
551 n = sal_Unicode_strtol( p, &pEnd ); in lcl_r1c1_get_col()
555 if( p == pEnd ) // C is a relative ref with offset 0 in lcl_r1c1_get_col()
582 lcl_r1c1_get_row( const sal_Unicode* p, in lcl_r1c1_get_row() argument
590 if( p[0] == '\0' ) in lcl_r1c1_get_row()
593 p++; in lcl_r1c1_get_row()
594 if( (isRelative = (*p == '[') ) != false ) in lcl_r1c1_get_row()
595 p++; in lcl_r1c1_get_row()
596 n = sal_Unicode_strtol( p, &pEnd ); in lcl_r1c1_get_row()
600 if( p == pEnd ) // R is a relative ref with offset 0 in lcl_r1c1_get_row()
629 const sal_Unicode* p, in lcl_ScRange_Parse_XL_R1C1() argument
643 ByteString aStr(p, RTL_TEXTENCODING_UTF8); in lcl_ScRange_Parse_XL_R1C1()
648 p = r.Parse_XL_Header( p, pDoc, aExternDocName, aStartTabName, in lcl_ScRange_Parse_XL_R1C1()
655 if( NULL == p ) in lcl_ScRange_Parse_XL_R1C1()
658 if( *p == 'R' || *p == 'r' ) in lcl_ScRange_Parse_XL_R1C1()
660 if( NULL == (p = lcl_r1c1_get_row( p, rDetails, &r.aStart, &nFlags )) ) in lcl_ScRange_Parse_XL_R1C1()
663 if( *p != 'C' && *p != 'c' ) // full row R# in lcl_ScRange_Parse_XL_R1C1()
665 if( p[0] != ':' || (p[1] != 'R' && p[1] != 'r' ) || in lcl_ScRange_Parse_XL_R1C1()
666 NULL == (pTmp = lcl_r1c1_get_row( p+1, rDetails, &r.aEnd, &nFlags2 ))) in lcl_ScRange_Parse_XL_R1C1()
677 p = pTmp; in lcl_ScRange_Parse_XL_R1C1()
680 if (p && p[0] != 0) in lcl_ScRange_Parse_XL_R1C1()
696 else if( NULL == (p = lcl_r1c1_get_col( p, rDetails, &r.aStart, &nFlags ))) in lcl_ScRange_Parse_XL_R1C1()
699 if( p[0] != ':' || in lcl_ScRange_Parse_XL_R1C1()
700 (p[1] != 'R' && p[1] != 'r') || in lcl_ScRange_Parse_XL_R1C1()
701 NULL == (pTmp = lcl_r1c1_get_row( p+1, rDetails, &r.aEnd, &nFlags2 )) || in lcl_ScRange_Parse_XL_R1C1()
707 if (p && p[0] != 0) in lcl_ScRange_Parse_XL_R1C1()
716 p = pTmp; in lcl_ScRange_Parse_XL_R1C1()
720 if (p && p[0] != 0) in lcl_ScRange_Parse_XL_R1C1()
731 else if( *p == 'C' || *p == 'c' ) // full col C# in lcl_ScRange_Parse_XL_R1C1()
733 if( NULL == (p = lcl_r1c1_get_col( p, rDetails, &r.aStart, &nFlags ))) in lcl_ScRange_Parse_XL_R1C1()
736 if( p[0] != ':' || (p[1] != 'C' && p[1] != 'c') || in lcl_ScRange_Parse_XL_R1C1()
737 NULL == (pTmp = lcl_r1c1_get_col( p+1, rDetails, &r.aEnd, &nFlags2 ))) in lcl_ScRange_Parse_XL_R1C1()
745 p = pTmp; in lcl_ScRange_Parse_XL_R1C1()
748 if (p && p[0] != 0) in lcl_ScRange_Parse_XL_R1C1()
770 lcl_a1_get_col( const sal_Unicode* p, ScAddress* pAddr, sal_uInt16* nFlags ) in lcl_a1_get_col() argument
774 if( *p == '$' ) in lcl_a1_get_col()
775 *nFlags |= SCA_COL_ABSOLUTE, p++; in lcl_a1_get_col()
777 if( !CharClass::isAsciiAlpha( *p ) ) in lcl_a1_get_col()
780 nCol = sal::static_int_cast<SCCOL>( toupper( char(*p++) ) - 'A' ); in lcl_a1_get_col()
781 while (nCol <= MAXCOL && CharClass::isAsciiAlpha(*p)) in lcl_a1_get_col()
782 nCol = sal::static_int_cast<SCCOL>( ((nCol + 1) * 26) + toupper( char(*p++) ) - 'A' ); in lcl_a1_get_col()
783 if( nCol > MAXCOL || CharClass::isAsciiAlpha( *p ) ) in lcl_a1_get_col()
789 return p; in lcl_a1_get_col()
793 lcl_a1_get_row( const sal_Unicode* p, ScAddress* pAddr, sal_uInt16* nFlags ) in lcl_a1_get_row() argument
798 if( *p == '$' ) in lcl_a1_get_row()
799 *nFlags |= SCA_ROW_ABSOLUTE, p++; in lcl_a1_get_row()
801 n = sal_Unicode_strtol( p, &pEnd ) - 1; in lcl_a1_get_row()
802 if( NULL == pEnd || p == pEnd || n < 0 || n > MAXROW ) in lcl_a1_get_row()
813 const sal_Unicode* p, in lcl_ScRange_Parse_XL_A1() argument
825 ByteString aStr(p, RTL_TEXTENCODING_UTF8); in lcl_ScRange_Parse_XL_A1()
830 p = r.Parse_XL_Header( p, pDoc, aExternDocName, aStartTabName, in lcl_ScRange_Parse_XL_A1()
837 if( NULL == p ) in lcl_ScRange_Parse_XL_A1()
840 tmp1 = lcl_a1_get_col( p, &r.aStart, &nFlags ); in lcl_ScRange_Parse_XL_A1()
846 tmp1 = lcl_a1_get_row( p, &r.aStart, &nFlags ); in lcl_ScRange_Parse_XL_A1()
923 p = tmp2; in lcl_ScRange_Parse_XL_A1()
924 p = lcl_eatWhiteSpace( p+1 ); in lcl_ScRange_Parse_XL_A1()
925 tmp1 = lcl_a1_get_col( p, &r.aEnd, &nFlags2 ); in lcl_ScRange_Parse_XL_A1()
951 lcl_ScAddress_Parse_OOo( const sal_Unicode* p, ScDocument* pDoc, ScAddress& rAddr, in lcl_ScAddress_Parse_OOo() argument
963 if (*p == '\'') in lcl_ScAddress_Parse_OOo()
965 const sal_Unicode* pStart = p; in lcl_ScAddress_Parse_OOo()
966 p = lcl_ParseQuotedName(p, aDocName); in lcl_ScAddress_Parse_OOo()
967 if (*p++ == SC_COMPILER_FILE_TAB_SEP) in lcl_ScAddress_Parse_OOo()
972 p = pStart; in lcl_ScAddress_Parse_OOo()
985 if ( ScGlobal::FindUnquoted( p, '.') ) in lcl_ScAddress_Parse_OOo()
990 if (*p == '$') in lcl_ScAddress_Parse_OOo()
991 nRes |= SCA_TAB_ABSOLUTE, p++; in lcl_ScAddress_Parse_OOo()
993 if (*p == '\'') in lcl_ScAddress_Parse_OOo()
998 p = lcl_ParseQuotedName(p, aTab); in lcl_ScAddress_Parse_OOo()
1002 while (*p) in lcl_ScAddress_Parse_OOo()
1004 if( *p == '.') in lcl_ScAddress_Parse_OOo()
1007 if( *p == '\'' ) in lcl_ScAddress_Parse_OOo()
1009 p++; break; in lcl_ScAddress_Parse_OOo()
1011 aTab += *p++; in lcl_ScAddress_Parse_OOo()
1014 if( *p++ != '.' ) in lcl_ScAddress_Parse_OOo()
1028 q = p; in lcl_ScAddress_Parse_OOo()
1029 if (*p) in lcl_ScAddress_Parse_OOo()
1032 if (*p == '$') in lcl_ScAddress_Parse_OOo()
1033 nBits |= SCA_COL_ABSOLUTE, p++; in lcl_ScAddress_Parse_OOo()
1035 if (CharClass::isAsciiAlpha( *p )) in lcl_ScAddress_Parse_OOo()
1037 nCol = sal::static_int_cast<SCCOL>( toupper( char(*p++) ) - 'A' ); in lcl_ScAddress_Parse_OOo()
1038 while (nCol < MAXCOL && CharClass::isAsciiAlpha(*p)) in lcl_ScAddress_Parse_OOo()
1039 … nCol = sal::static_int_cast<SCCOL>( ((nCol + 1) * 26) + toupper( char(*p++) ) - 'A' ); in lcl_ScAddress_Parse_OOo()
1044 if( nCol > MAXCOL || CharClass::isAsciiAlpha( *p ) ) in lcl_ScAddress_Parse_OOo()
1048 p = q; in lcl_ScAddress_Parse_OOo()
1051 q = p; in lcl_ScAddress_Parse_OOo()
1052 if (*p) in lcl_ScAddress_Parse_OOo()
1055 if (*p == '$') in lcl_ScAddress_Parse_OOo()
1056 nBits |= SCA_ROW_ABSOLUTE, p++; in lcl_ScAddress_Parse_OOo()
1057 if( !CharClass::isAsciiDigit( *p ) ) in lcl_ScAddress_Parse_OOo()
1064 String aTmp( p ); in lcl_ScAddress_Parse_OOo()
1066 while (CharClass::isAsciiDigit( *p )) in lcl_ScAddress_Parse_OOo()
1067 p++; in lcl_ScAddress_Parse_OOo()
1074 p = q; in lcl_ScAddress_Parse_OOo()
1079 if (!*p && bExtDoc) in lcl_ScAddress_Parse_OOo()
1167 if( !*p ) in lcl_ScAddress_Parse_OOo()
1179 lcl_ScAddress_Parse ( const sal_Unicode* p, ScDocument* pDoc, ScAddress& rAddr, in lcl_ScAddress_Parse() argument
1184 if( !*p ) in lcl_ScAddress_Parse()
1192 return lcl_ScAddress_Parse_OOo( p, pDoc, rAddr, pExtInfo, NULL ); in lcl_ScAddress_Parse()
1199 sal_uInt16 nFlags = lcl_ScRange_Parse_XL_A1( r, p, pDoc, true, pExtInfo, in lcl_ScAddress_Parse()
1207 sal_uInt16 nFlags = lcl_ScRange_Parse_XL_R1C1( r, p, pDoc, rDetails, true, pExtInfo ); in lcl_ScAddress_Parse()
1327 sal_Unicode* p = aTmp.GetBufferAccess(); in lcl_ScRange_Parse_OOo() local
1328 p[ nPos ] = 0; in lcl_ScRange_Parse_OOo()
1329 if( (nRes1 = lcl_ScAddress_Parse_OOo( p, pDoc, aRange.aStart, pExtInfo, NULL ) ) != 0 ) in lcl_ScRange_Parse_OOo()
1332 …if ( (nRes2 = lcl_ScAddress_Parse_OOo( p + nPos+ 1, pDoc, aRange.aEnd, pExtInfo, &aRange ) ) != 0 ) in lcl_ScRange_Parse_OOo()
1428 const sal_Unicode* p = rStr.GetBuffer(); in ParseCols() local
1431 if( NULL == p ) in ParseCols()
1442 if (NULL != (p = lcl_a1_get_col( p, &aStart, &ignored ) ) ) in ParseCols()
1444 if( p[0] == ':') in ParseCols()
1446 if( NULL != (p = lcl_a1_get_col( p+1, &aEnd, &ignored ))) in ParseCols()
1460 if ((p[0] == 'C' || p[0] != 'c') && in ParseCols()
1461 NULL != (p = lcl_r1c1_get_col( p, rDetails, &aStart, &ignored ))) in ParseCols()
1463 if( p[0] == ':') in ParseCols()
1465 if( (p[1] == 'C' || p[1] == 'c') && in ParseCols()
1466 NULL != (p = lcl_r1c1_get_col( p+1, rDetails, &aEnd, &ignored ))) in ParseCols()
1480 return (p != NULL && *p == '\0') ? nRes : 0; in ParseCols()
1487 const sal_Unicode* p = rStr.GetBuffer(); in ParseRows() local
1490 if( NULL == p ) in ParseRows()
1501 if (NULL != (p = lcl_a1_get_row( p, &aStart, &ignored ) ) ) in ParseRows()
1503 if( p[0] == ':') in ParseRows()
1505 if( NULL != (p = lcl_a1_get_row( p+1, &aEnd, &ignored ))) in ParseRows()
1519 if ((p[0] == 'R' || p[0] != 'r') && in ParseRows()
1520 NULL != (p = lcl_r1c1_get_row( p, rDetails, &aStart, &ignored ))) in ParseRows()
1522 if( p[0] == ':') in ParseRows()
1524 if( (p[1] == 'R' || p[1] == 'r') && in ParseRows()
1525 NULL != (p = lcl_r1c1_get_row( p+1, rDetails, &aEnd, &ignored ))) in ParseRows()
1539 return (p != NULL && *p == '\0') ? nRes : 0; in ParseRows()