24#include <rtl/ustring.hxx>
25#include <progress.hxx>
131 void Progress( std::size_t nDelta = 1 );
134 struct ScfProgressSegment;
139 ScfProgressSegment* pParSegment );
145 ScfProgressSegment*
GetSegment( sal_Int32 nSegment );
197 void Init( std::size_t nSize );
Progress bar for complex progress representation.
std::vector< std::unique_ptr< ScfProgressSegment > > ScfSegmentList
sal_Int32 AddSegment(std::size_t nSize)
Adds a new segment to the progress bar.
std::size_t mnNextUnitPos
Size between two calls of system progress.
ScfProgressSegment * mpParentSegment
Parent progress bar, if this is a segment progress bar.
bool mbInProgress
Additionally scaling factor for system progress.
std::size_t mnUnitSize
Sum of positions of all segments.
void ProgressAbs(std::size_t nPos)
Set current segment to the specified absolute position.
ScfSegmentList maSegments
void ActivateSegment(sal_Int32 nSegment)
Starts the progress bar or activates another segment.
ScProgressPtr mxSysProgress
UI string for system progress.
bool IsFull() const
Returns true, if the current progress segment is already full.
::std::unique_ptr< ScProgress > ScProgressPtr
SfxObjectShell * mpDocShell
System progress bar.
ScfProgressBar & GetSegmentProgressBar(sal_Int32 nSegment)
Returns a complete progress bar for the specified segment.
void Progress(std::size_t nDelta=1)
Increase current segment by the passed value.
std::size_t mnSysProgressScale
Limit for next system progress call.
ScfProgressSegment * mpCurrSegment
Parent segment, if this is a segment progress bar.
void Activate()
Starts the progress bar (with first segment).
ScfProgressBar * mpParentProgress
The document shell for the progress bar.
void SetCurrSegment(ScfProgressSegment *pSegment)
Activates progress bar and sets current segment.
OUString maText
List of progress segments.
void Init(SfxObjectShell *pDocShell)
Initializes all members on construction.
const ScfProgressBar operator=(const ScfProgressBar &)=delete
std::size_t mnTotalSize
Current segment for progress.
void IncreaseProgressBar(std::size_t nDelta)
Increases mnTotalPos and calls the system progress bar.
ScfProgressBar(const ScfProgressBar &)=delete
ScfProgressSegment * GetSegment(sal_Int32 nSegment)
Returns the segment specified by list index.
std::size_t mnTotalPos
Total size of all segments.
A simplified progress bar with only one segment.
ScfSimpleProgressBar(std::size_t nSize, SfxObjectShell *pDocShell, const OUString &rText)
void Init(std::size_t nSize)
Initializes and starts the progress bar.
ScfProgressBar maProgress
void ProgressAbs(std::size_t nPos)
Set progress bar to the specified position.
A simplified progress bar based on the stream position of an existing stream.
void Progress()
Sets the progress bar to the current stream position.
SvStream & mrStrm
The used progress bar.
void Init(SfxObjectShell *pDocShell, const OUString &rText)
Initializes and starts the progress bar.
::std::unique_ptr< ScfSimpleProgressBar > ScfSimpleProgressBarPtr
ScfSimpleProgressBarPtr mxProgress
ScfStreamProgressBar(SvStream &rStrm, SfxObjectShell *pDocShell)
const sal_Int32 SCF_INV_SEGMENT
Contains all data of a segment of the progress bar.
ScfProgressBarPtr mxProgress
::std::unique_ptr< ScfProgressBar > ScfProgressBarPtr
std::size_t mnSize
Pointer to sub progress bar for this segment.
std::size_t mnPos
Size of this segment.
ScfProgressSegment(std::size_t nSize)
Current position of this segment.