@devstatusreadytouse @threadsafeyes
*/ class StatusIndicatorFactory final : public ::cppu::WeakImplHelper<
css::lang::XServiceInfo
, css::lang::XInitialization
, css::task::XStatusIndicatorFactory
, css::util::XUpdatable >, public comphelper::LibreOfficeKit::ThreadJoinable
{
// member private:
std::mutex m_mutex;
/** stack with all current indicator children. */
IndicatorStack m_aStack;
/** uno service manager to create own needed uno resources. */
css::uno::Reference< css::uno::XComponentContext > m_xContext;
/** most active indicator child, which could work with our shared indicator window only. */
css::uno::Reference< css::task::XStatusIndicator > m_xActiveChild;
/** used to show the progress on the frame (layouted!) or
as a plugged vcl window. */
css::uno::Reference< css::task::XStatusIndicator > m_xProgress;
/** points to the frame, where we show the progress (in case
m_xProgress points to a frame progress. */
css::uno::WeakReference< css::frame::XFrame > m_xFrame;
/** points to an outside window, where we show the progress (in case
we are plugged into such window). */
css::uno::WeakReference< css::awt::XWindow > m_xPluggWindow;
/** Notify us if a fix time is over. We use it to implement an
intelligent "Reschedule" ... */
std::unique_ptr<WakeUpThread> m_pWakeUp;
/** Our WakeUpThread calls us in our interface method "XUpdatable::update(). Therewesetthismemberm_bAllowRescheduletosal_True.Nexttimeifourimpl_reschedule() methodiscalled,weknow,thatanApplication::Reschedule()shouldbemade.
Because the last made Reschedule can be was taken long time ago ... may be.*/ bool m_bAllowReschedule;
/** @short creates a new internal used progress. @descrThisfactorydoesnotpainttheprogressitself. Ituseshelperforthat.Theycanbevclbasedor layoutedbytheframeandprovidedasaunointerface.
*/ void impl_createProgress();
/** @short shows the internal used progress. @descrThisfactorydoesnotpainttheprogressitself. Ituseshelperforthat.Theycanbevclbasedor layoutedbytheframeandprovidedasaunointerface.
*/ void impl_showProgress();
/** @short hides the internal used progress. @descrThisfactorydoesnotpainttheprogressitself. Ituseshelperforthat.Theycanbevclbasedor layoutedbytheframeandprovidedasaunointerface.
*/ void impl_hideProgress();
/** @short try to "share the current thread in an intelligent manner" :-)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.