27 #include <com/sun/star/i18n/CollatorOptions.hpp>
29 #include <rtl/ustring.hxx>
40 #include <string_view>
51 #define SC_COLLATOR_IGNORES css::i18n::CollatorOptions::CollatorOptions_IGNORE_CASE
75 #define MINDOUBLE 1.7e-307
76 #define MAXDOUBLE 1.7e307
95 #define STD_ROWHEIGHT_DIFF 23
103 #define OLE_STD_CELLS_X 4
104 #define OLE_STD_CELLS_Y 5
222 #define SC_INDENT_STEP 200
485 class XOrdinalSuffix;
489 class TransliterationWrapper;
493 class SharedStringPoolPurge;
520 static std::atomic<css::lang::Locale*>
pLocale;
526 static void InitPPT();
539 static css::lang::Locale& GetLocale();
541 SC_DLLPUBLIC static ::utl::TransliterationWrapper& GetTransliteration();
542 static ::utl::TransliterationWrapper& GetCaseTransliteration();
543 static ::utl::TransliterationWrapper& GetTransliteration(
bool bCaseSensitive);
548 static const OUString& GetClipDocName();
549 static void SetClipDocName(
const OUString& rNew );
554 static void ClearAutoFormat();
558 static void SetUserList(
const ScUserList* pNewList );
563 static void OpenURL(
const OUString& rURL,
const OUString& rTarget,
bool bIgnoreSettings =
false);
565 static bool ShouldOpenURL();
566 SC_DLLPUBLIC static OUString GetAbsDocName(
const OUString& rFileName,
568 SC_DLLPUBLIC static OUString GetDocTabName( std::u16string_view rFileName,
569 std::u16string_view rTabName );
587 static void InitAddIns();
590 static void InitTextHeight(
const SfxItemPool* pPool);
594 static bool HasStarCalcFunctionList();
597 static void ResetFunctionList();
599 static OUString GetErrorString(
FormulaError nErrNumber);
600 static OUString GetLongErrorString(
FormulaError nErrNumber);
603 static bool CheckWidthInvalidate(
bool& bNumFormatChanged,
606 static bool HasAttrChanged(
const SfxItemSet& rNewAttrs,
608 const sal_uInt16 nWhich );
616 {
return ( c >=
'a' && c <=
'z' ) ? ( c-
'a'+
'A' ) : c; }
625 std::u16string_view rTokenList, std::u16string_view rToken,
627 bool bForceSep =
false );
653 SC_DLLPUBLIC static sal_Int32 FindUnquoted(
const OUString& rString,
sal_Unicode cChar, sal_Int32 nStart = 0 );
661 static rtl_TextEncoding GetCharsetValue( std::u16string_view rCharSet );
662 static OUString GetCharsetString( rtl_TextEncoding eVal );
667 static bool IsSystemRTL();
680 static OUString GetOrdinalSuffix( sal_Int32 nNumber);
697 SC_DLLPUBLIC static OUString ReplaceOrAppend(
const OUString& rString,
698 std::u16string_view rPlaceholder,
699 const OUString& rReplacement );
807 static double ConvertStringToValue(
const OUString& rStr,
const ScCalcConfig& rConfig,
905 void ClearDataAreas ();
906 void SetAreas ( std::unique_ptr<
ScArea[]> pAreas, sal_uInt16 nCount );
constexpr sal_Int32 STD_COL_WIDTH
If set, cloned formula cells will start to listen to the document.
bool operator==(const XclFontData &rLeft, const XclFontData &rRight)
List of spreadsheet functions.
constexpr sal_Int32 STD_EXTRA_WIDTH
If set, global named expressions will be converted to sheet-local named expressions.
static std::atomic< CollatorWrapper * > pCaseCollator
static SC_DLLPUBLIC bool bThreadedGroupCalcInProgress
Calc's threaded group calculation is in progress.
Collection of user-defined sort lists.
constexpr OUStringLiteral STRING_SCAPP
constexpr auto toTwips(N number, Length from)
const sal_Unicode CHAR_ZWSP
const sal_Unicode CHAR_NNBSP
static std::unique_ptr< ScFunctionMgr > xStarCalcFunctionMgr
static std::unique_ptr< ScUserList > xUserList
static std::atomic< css::lang::Locale * > pLocale
const sal_Unicode CHAR_WJ
static std::unique_ptr< ScFieldEditEngine > xFieldEditEngine
constexpr Point convert(const Point &rPoint, o3tl::Length eFrom, o3tl::Length eTo)
static std::atomic<::utl::TransliterationWrapper * > pCaseTransliteration
If set, absolute refs will not transformed to external references.
static std::unique_ptr< SvNumberFormatter > xEnglishFormatter
sal_uInt16 nDataAreaCount
constexpr SdrLayerID SC_LAYER_BACK(1)
static std::optional< SvtSysLocale > oSysLocale
constexpr OUStringLiteral STRING_STANDARD
create "Importx" (if necessary)
std::unique_ptr< ScArea[]> pDataAreas
constexpr sal_Int32 MAX_EXTRA_HEIGHT
Stores spreadsheet functions in categories, including a cumulative ('All') category and makes them ac...
static std::atomic< sc::SharedStringPoolPurge * > pSharedStringPoolPurge
Internal use only (d&d undo): do not delete caption objects of cell notes.
Shrink selection to actually used data area within the selection.
constexpr OUStringLiteral SC_TEXT_CSV_FILTER_NAME
Keep selection as is, expand to used data area if no selection.
static std::atomic< ScUnitConverter * > pUnitConverter
size_t SCSIZE
size_t typedef to be able to find places where code was changed from USHORT to size_t and is used to ...
static std::atomic< LegacyFuncCollection * > pLegacyFuncCollection
static std::unique_ptr< ScFunctionList > xStarCalcFunctionList
static std::atomic< CollatorWrapper * > pCollator
Copy flags for auto/series fill functions: do not touch notes and drawing objects.
If only one row or portion thereof is selected, shrink row to used data columns and select further ro...
sal_uInt16 nScClickMouseModifier
Internal use only (copy from clip): do not delete existing cell contents when pasting notes...
const sal_Unicode CHAR_SHY
create "untitled" (if necessary)
Point Rotate(const Point &rPoint, Degree10 nOrientation, const Point &rOrigin)
constexpr sal_Int32 MAX_COL_WIDTH
constexpr sal_Int32 MAX_EXTRA_WIDTH
static SC_DLLPUBLIC sal_uInt16 nStdRowHeight
const sal_Unicode CHAR_RLM
static std::optional< CalendarWrapper > oCalendar
constexpr auto TWIPS_PER_CHAR
static tools::SvRef< ScDocShell > xDrawClipDocShellRef
static SC_DLLPUBLIC double nScreenPPTY
Vertical pixel per twips factor.
CAUTION! The following defines must be in the same namespace as the respective type.
sal_uInt16 nScFillModeMouseModifier
::tools::Long nLastColWidthExtra
const sal_Unicode CHAR_NBSP
exports com.sun.star. i18n
static SC_DLLPUBLIC LanguageType eLnge
const sal_Unicode CHAR_NBHY
void Clear(EHistoryType eHistory)
constexpr sal_Int32 MAX_ROW_HEIGHT
static std::unique_ptr< ScAutoFormat > xAutoFormat
constexpr::tools::Long TwipsToEvenHMM(::tools::Long nTwips)
Internal use only (undo etc.): do not copy/delete caption objects of cell notes.
Configuration options for formula interpreter.
static SvxBrushItem * GetEmptyBrushItem()
const sal_Unicode CHAR_LRM
Behave as if the range corresponding to a ScDBData area was selected, for API use.
PyRef getCharClass(const Runtime &)
ScGetDBSelection
For ScDBFunc::GetDBData()
SfxViewShell * pScActiveViewShell
constexpr SdrLayerID SC_LAYER_HIDDEN(4)
static sal_uInt16 nDefFontHeight
static sal_Unicode ToUpperAlpha(sal_Unicode c)
static std::unique_ptr< SvxSearchItem > xSearchItem
constexpr SdrLayerID SC_LAYER_FRONT(0)
constexpr SdrLayerID SC_LAYER_INTERN(2)
static SC_DLLPUBLIC double nScreenPPTX
Horizontal pixel per twips factor.
force use of sheet-local instead of document global anonymous range
static std::unique_ptr< SvxBrushItem > xEmptyBrushItem
static std::atomic<::utl::TransliterationWrapper * > pTransliteration
static std::atomic< ScUnoAddInCollection * > pAddInCollection
static std::unique_ptr< SvxBrushItem > xButtonBrushItem
static SC_DLLPUBLIC::tools::Long nLastRowHeightExtra
constexpr SdrLayerID SC_LAYER_CONTROLS(3)
static css::uno::Reference< css::i18n::XOrdinalSuffix > xOrdinalSuffix
Sheet / outlining (grouping) information.
static OUString aStrClipDocName