23 #include <string_view>
234 const OUString& rString,
259 std::u16string_view rString);
283 const OUString& rString,
412 static OUString
EncodeUrl(
const XclExpRoot& rRoot, std::u16string_view rAbsUrl,
const OUString* pTableName =
nullptr );
414 static OUString
EncodeDde( std::u16string_view rApplic, std::u16string_view rTopic );
rtl::Reference< XclExpHyperlink > XclExpHyperlinkRef
Matrix data type that can store values of mixed types.
void ConvertRangeList(XclRangeList &rXclRanges, const ScRangeList &rScRanges, bool bWarn)
Converts the passed Calc cell range list to an Excel cell range list.
This class stores an unformatted or formatted string for Excel export.
static OUString EncodeUrl(const XclExpRoot &rRoot, std::u16string_view rAbsUrl, const OUString *pTableName=nullptr)
Encodes and returns the URL passed in rAbsUrl to an Excel like URL.
const sal_uInt16 EXC_STR_MAXLEN
XclExpHyperlinkRef mxLinkRec
sal_Int32 mnSegRowFinal
Sub progress bar for finalizing ROW records.
bool ConvertRange(XclRange &rXclRange, const ScRange &rScRange, bool bWarn)
Converts the passed Calc cell range to an Excel cell range.
The main progress bar for the export filter.
XclExpAddressConverter(const XclExpRoot &rRoot)
void ActivateCreateRowsSegment()
Activates the progress segment to create ROW records.
This class is used to export Excel record streams.
XclStrFlags
Flags used to specify import/export mode of strings.
void Initialize()
Initializes all segments and sub progress bars.
ScAddress maScPos
Created HLINK record.
void Progress()
Increases the currently activated (sub) progress bar by 1 step.
static void AppendString(XclExpString &rXclString, const XclExpRoot &rRoot, std::u16string_view rString)
Appends an unformatted string to an Excel string object.
bool CheckRange(const ScRange &rScRange, bool bWarn)
Checks if the passed cell range is valid (checks start and end position).
Provides export of hyperlink data.
ScfProgressBarPtr mxProgress
ScfProgressBar * mpSubRowCreate
Current sub progress bar.
void ActivateFinalRowsSegment()
Activates the progress segment to finalize ROW records.
XclExpHFConverter(const XclExpHFConverter &)=delete
delete copy constructor
XclExpCachedMatrix(const ScMatrix &rMatrix)
Constructs and fills a new matrix.
const XclExpStringHelper & operator=(const XclExpStringHelper &)=delete
remove copy-assignment operator
const OUString & GetUrlList() const
Returns a string containing all processed URLs.
Access to global data from other classes.
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 ...
Helper to create HLINK records during creation of formatted cell strings.
bool mbMultipleUrls
List with all processed URLs.
ScfInt32Vec maSubSegRowCreate
Sub progress bar for creating table rows.
void GenerateString(const EditTextObject *pLeftObj, const EditTextObject *pCenterObj, const EditTextObject *pRightObj)
Generates the header/footer string from the passed edit engine text objects.
XclAddress CreateValidAddress(const ScAddress &rScPos, bool bWarn)
Returns a valid cell address by moving it into allowed dimensions.
void GetDimensions(SCSIZE &nCols, SCSIZE &nRows) const
std::size_t GetSize() const
Returns the byte count of all contained data.
void IncRowRecordCount()
Increases the number of existing ROW records by 1.
XclExpHyperlinkHelper(const XclExpRoot &rRoot, const ScAddress &rScPos)
Contains cached values in a 2-dimensional array.
OUString maHFString
The header/footer edit engine.
XclExpHyperlinkRef GetLinkRecord() const
Returns the created single HLINk record, or an empty reference.
A 2D cell range address list with Excel column and row indexes.
bool HasMultipleUrls() const
Returns true, if multiple URLs have been processed.
const ScMatrix & mrMatrix
static sal_Int16 GetLeadingScriptType(const XclExpRoot &rRoot, const OUString &rString)
Returns the script type first text portion different to WEAK, or the system default script type...
std::unique_ptr< ScfProgressBar > ScfProgressBarPtr
OUString maUrlList
Cell position to set at the HLINK record.
A 2D cell address struct with Excel column and row indexes.
bool HasLinkRecord() const
Returns true, if a single HLINK record has been created.
Progress bar for complex progress representation.
This class contains static methods to encode a file URL.
sal_Int32 GetTotalHeight() const
Returns the total height of the last generated header/footer in twips.
bool ValidateRange(ScRange &rScRange, bool bWarn)
Checks and eventually crops the cell range to valid dimensions.
virtual ~XclExpProgressBar() override
ScfProgressBar * mpSubProgress
Progress bar implementation.
const XclExpUrlHelper & operator=(const XclExpUrlHelper &)=delete
delete copy-assignment operator
Provides functions to convert Calc cell addresses to Excel cell addresses.
std::size_t mnRowCount
Progress segment for finalizing ROW records.
sal_Int32 mnTotalHeight
The last generated header/footer string.
static XclExpStringRef CreateCellString(const XclExpRoot &rRoot, const OUString &rString, const ScPatternAttr *pCellAttr, XclStrFlags nFlags=XclStrFlags::NONE, sal_uInt16 nMaxLen=EXC_STR_MAXLEN)
Creates a new formatted string from a Calc string cell.
XclExpProgressBar(const XclExpRoot &rRoot)
const OUString & GetHFString() const
Returns the last generated header/footer string.
static OUString EncodeDde(std::u16string_view rApplic, std::u16string_view rTopic)
Encodes and returns the passed DDE link to an Excel like DDE link.
void AppendPortion(const EditTextObject *pTextObj, sal_Unicode cPortionCode)
Converts the text object contents and stores it in the passed string.
static void AppendChar(XclExpString &rXclString, const XclExpRoot &rRoot, sal_Unicode cChar)
Appends a character to an Excel string object.
void Save(XclExpStream &rStrm) const
Writes the complete matrix to stream.
const XclExpHFConverter & operator=(const XclExpHFConverter &)=delete
delete copy-assignment operator
Base class for import/export address converters.
OUString ProcessUrlField(const SvxURLField &rUrlField)
Processes the passed URL field (tries to create a HLINK record).
This class provides methods to create an XclExpString.
void ValidateRangeList(ScRangeList &rScRanges, bool bWarn)
Checks and eventually crops the cell ranges to valid dimensions.
static XclExpStringRef CreateString(const XclExpRoot &rRoot, const OUString &rString, XclStrFlags nFlags=XclStrFlags::NONE, sal_uInt16 nMaxLen=EXC_STR_MAXLEN)
Creates a new unformatted string from the passed string.
XclExpStringHelper()=delete
We don't want anybody to instantiate this class, since it is just a collection of static methods...
std::shared_ptr< XclExpString > XclExpStringRef
ScfProgressBar * mpSubRowFinal
Segment ID's for all sheets in sub progress bar.
Converts edit engine text objects to an Excel header/footer string.
virtual ~XclExpHyperlinkHelper() override
XclExpUrlHelper()=delete
We don't want anybody to instantiate this class, since it is just a collection of static methods...
bool CheckAddress(const ScAddress &rScPos, bool bWarn)
Checks if the passed Calc cell address is valid.
bool ConvertAddress(XclAddress &rXclPos, const ScAddress &rScPos, bool bWarn)
Converts the passed Calc cell address to an Excel cell address.
A 2D cell range address struct with Excel column and row indexes.