summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Madl <tobias.madl.dev@gmail.com>2015-01-14 13:11:28 +0000
committerTobias Madl <tobias.madl.dev@gmail.com>2015-03-06 12:27:06 +0000
commit57656eb1fae5ae6c4d3b7542a385a93ff434e4e7 (patch)
tree7dc672090c6236ef7bd5a2bf5278cd03b89e2ef8
parent49524c6dcf04b9dadef8d2b084cf26abcf70b8a9 (diff)
Idle and Timer are now completely independent
And everything is functionating pretty well. Change-Id: Id7f5a995362f6f7c5235f2e9facb7c7f119f3140
-rw-r--r--basctl/source/basicide/baside2b.cxx2
-rw-r--r--cui/source/inc/backgrnd.hxx2
-rw-r--r--cui/source/tabpages/backgrnd.cxx8
-rw-r--r--cui/source/tabpages/macroass.cxx2
-rw-r--r--dbaccess/source/ui/inc/JoinTableView.hxx1
-rw-r--r--dbaccess/source/ui/querydesign/JoinTableView.cxx2
-rw-r--r--linguistic/source/lngsvcmgr.hxx1
-rw-r--r--sc/source/ui/dbgui/sfiltdlg.cxx2
-rw-r--r--sc/source/ui/inc/navipi.hxx2
-rw-r--r--sc/source/ui/navipi/navipi.cxx6
-rw-r--r--starmath/inc/edit.hxx4
-rw-r--r--starmath/source/edit.cxx4
-rw-r--r--svx/inc/sdr/contact/objectcontactofpageview.hxx1
-rw-r--r--svx/source/inc/eventhandler.hxx3
-rw-r--r--svx/source/sdr/contact/objectcontactofpageview.cxx2
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofpageobj.cxx3
-rw-r--r--sw/source/uibase/inc/srcedtw.hxx1
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx3
-rw-r--r--vcl/Library_vcl.mk1
-rw-r--r--vcl/qa/cppunit/timer.cxx8
-rw-r--r--vcl/source/app/idle.cxx9
-rw-r--r--vcl/source/edit/textdata.cxx2
22 files changed, 40 insertions, 29 deletions
diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx
index 110b71c5ecbe..51d5c87b147f 100644
--- a/basctl/source/basicide/baside2b.cxx
+++ b/basctl/source/basicide/baside2b.cxx
@@ -1356,7 +1356,7 @@ void EditorWindow::DestroyProgress()
void EditorWindow::ForceSyntaxTimeout()
{
aSyntaxIdle.Stop();
- aSyntaxIdle.GetTimeoutHdl().Call(&aSyntaxIdle);
+ aSyntaxIdle.GetIdleHdl().Call(&aSyntaxIdle);
}
diff --git a/cui/source/inc/backgrnd.hxx b/cui/source/inc/backgrnd.hxx
index ab4145fcece1..9e34d66218ee 100644
--- a/cui/source/inc/backgrnd.hxx
+++ b/cui/source/inc/backgrnd.hxx
@@ -137,7 +137,7 @@ private:
bool FillItemSetWithWallpaperItem( SfxItemSet& rCoreSet, sal_uInt16 nSlot);
void ResetFromWallpaperItem( const SfxItemSet& rSet );
- DECL_LINK( LoadTimerHdl_Impl, Timer* );
+ DECL_LINK( LoadIdleHdl_Impl, Idle* );
DECL_LINK(SelectHdl_Impl, void *);
DECL_LINK(BrowseHdl_Impl, void *);
DECL_LINK( RadioClickHdl_Impl, RadioButton* );
diff --git a/cui/source/tabpages/backgrnd.cxx b/cui/source/tabpages/backgrnd.cxx
index cf0c3ff68ac4..62476bf25934 100644
--- a/cui/source/tabpages/backgrnd.cxx
+++ b/cui/source/tabpages/backgrnd.cxx
@@ -723,7 +723,7 @@ bool SvxBackgroundTabPage::FillItemSet( SfxItemSet* rCoreSet )
if ( pPageImpl->pLoadIdle && pPageImpl->pLoadIdle->IsActive() )
{
pPageImpl->pLoadIdle->Stop();
- LoadTimerHdl_Impl( pPageImpl->pLoadIdle );
+ LoadIdleHdl_Impl( pPageImpl->pLoadIdle );
}
// os: Such a nonsense! One will always find such an item somewhere,
// but it must be existing in the rSet!
@@ -1095,7 +1095,7 @@ void SvxBackgroundTabPage::ShowSelector()
pPageImpl->pLoadIdle = new Idle;
pPageImpl->pLoadIdle->SetPriority( IdlePriority::VCL_IDLE_PRIORITY_LOWEST );
pPageImpl->pLoadIdle->SetIdleHdl(
- LINK( this, SvxBackgroundTabPage, LoadTimerHdl_Impl ) );
+ LINK( this, SvxBackgroundTabPage, LoadIdleHdl_Impl ) );
bAllowShowSelector = false;
@@ -1453,7 +1453,7 @@ IMPL_LINK_NOARG(SvxBackgroundTabPage, BrowseHdl_Impl)
-IMPL_LINK( SvxBackgroundTabPage, LoadTimerHdl_Impl, Timer* , pTimer )
+IMPL_LINK( SvxBackgroundTabPage, LoadIdleHdl_Impl, Idle* , pIdle )
/* [Description]
@@ -1463,7 +1463,7 @@ IMPL_LINK( SvxBackgroundTabPage, LoadTimerHdl_Impl, Timer* , pTimer )
*/
{
- if ( pTimer == pPageImpl->pLoadIdle )
+ if ( pIdle == pPageImpl->pLoadIdle )
{
pPageImpl->pLoadIdle->Stop();
diff --git a/cui/source/tabpages/macroass.cxx b/cui/source/tabpages/macroass.cxx
index a4a23b23e75a..3a160a03b086 100644
--- a/cui/source/tabpages/macroass.cxx
+++ b/cui/source/tabpages/macroass.cxx
@@ -189,7 +189,7 @@ bool _SfxMacroTabPage::FillItemSet( SfxItemSet* rSet )
void _SfxMacroTabPage::LaunchFillGroup()
{
- if (!mpImpl->maFillGroupIdle.GetTimeoutHdl().IsSet())
+ if (!mpImpl->maFillGroupIdle.GetIdleHdl().IsSet())
{
mpImpl->maFillGroupIdle.SetIdleHdl( STATIC_LINK( this, _SfxMacroTabPage, TimeOut_Impl ) );
mpImpl->maFillGroupIdle.SetPriority( IdlePriority::VCL_IDLE_PRIORITY_HIGHEST );
diff --git a/dbaccess/source/ui/inc/JoinTableView.hxx b/dbaccess/source/ui/inc/JoinTableView.hxx
index 3e77f4df0f1f..39c6fb3ffed4 100644
--- a/dbaccess/source/ui/inc/JoinTableView.hxx
+++ b/dbaccess/source/ui/inc/JoinTableView.hxx
@@ -21,6 +21,7 @@
#include <vcl/window.hxx>
#include <vcl/timer.hxx>
+#include <vcl/idle.hxx>
#include <vcl/scrbar.hxx>
#include <tools/rtti.hxx>
#include <svtools/transfer.hxx>
diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx b/dbaccess/source/ui/querydesign/JoinTableView.cxx
index 6f3c5950ed2d..28a00c1c1090 100644
--- a/dbaccess/source/ui/querydesign/JoinTableView.cxx
+++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx
@@ -1048,7 +1048,7 @@ bool OJoinTableView::ScrollWhileDragging()
// resetting timer, if still necessary
if (bNeedScrollTimer)
{
- m_aDragScrollIdle.SetPriority(VCL_IDLE_PRIORITY_LOW);
+ m_aDragScrollIdle.SetPriority(IdlePriority::VCL_IDLE_PRIORITY_LOW);
m_aDragScrollIdle.Start();
}
diff --git a/linguistic/source/lngsvcmgr.hxx b/linguistic/source/lngsvcmgr.hxx
index 3ce86a111300..6b4392ec2789 100644
--- a/linguistic/source/lngsvcmgr.hxx
+++ b/linguistic/source/lngsvcmgr.hxx
@@ -31,6 +31,7 @@
#include <com/sun/star/util/XModifyListener.hpp>
#include <unotools/configitem.hxx>
#include <vcl/timer.hxx>
+#include <vcl/idle.hxx>
#include <boost/ptr_container/ptr_vector.hpp>
#include "linguistic/misc.hxx"
diff --git a/sc/source/ui/dbgui/sfiltdlg.cxx b/sc/source/ui/dbgui/sfiltdlg.cxx
index 2d13078e8ba7..164554e0089d 100644
--- a/sc/source/ui/dbgui/sfiltdlg.cxx
+++ b/sc/source/ui/dbgui/sfiltdlg.cxx
@@ -87,7 +87,7 @@ ScSpecialFilterDlg::ScSpecialFilterDlg( SfxBindings* pB, SfxChildWindow* pCW, vc
// Hack: RefInput-Kontrolle
pIdle = new Idle;
- pIdle->SetTimeout( IdlePriority::VCL_IDLE_PRIORITY_MEDIUM ); // 50ms warten
+ pIdle->SetPriority( IdlePriority::VCL_IDLE_PRIORITY_MEDIUM ); // 50ms warten
pIdle->SetIdleHdl( LINK( this, ScSpecialFilterDlg, TimeOutHdl ) );
pIdle->Start();
diff --git a/sc/source/ui/inc/navipi.hxx b/sc/source/ui/inc/navipi.hxx
index 256fd825a9cf..50b0a0f5ebf1 100644
--- a/sc/source/ui/inc/navipi.hxx
+++ b/sc/source/ui/inc/navipi.hxx
@@ -257,7 +257,7 @@ private:
ScNavigatorControllerItem** ppBoundItems;
- DECL_LINK( TimeHdl, Timer* );
+ DECL_LINK( TimeHdl, Idle* );
void DoResize();
diff --git a/sc/source/ui/navipi/navipi.cxx b/sc/source/ui/navipi/navipi.cxx
index 3b25f7fc2bcf..0bd20f246be9 100644
--- a/sc/source/ui/navipi/navipi.cxx
+++ b/sc/source/ui/navipi/navipi.cxx
@@ -657,7 +657,7 @@ ScNavigatorDlg::ScNavigatorDlg( SfxBindings* pB, SfxChildWindowContext* pCW, vcl
aWndScenarios.SetPosPixel( aLbEntries.GetPosPixel() );
aContentIdle.SetIdleHdl( LINK( this, ScNavigatorDlg, TimeHdl ) );
- aContentIdle.SetPriority( VCL_IDLE_PRIORITY_LOWEST );
+ aContentIdle.SetPriority( IdlePriority::VCL_IDLE_PRIORITY_LOWEST );
FreeResource();
@@ -878,9 +878,9 @@ void ScNavigatorDlg::Notify( SfxBroadcaster&, const SfxHint& rHint )
}
}
-IMPL_LINK( ScNavigatorDlg, TimeHdl, Timer*, pTimer )
+IMPL_LINK( ScNavigatorDlg, TimeHdl, Idle*, pIdle )
{
- if ( pTimer != &aContentIdle )
+ if ( pIdle != &aContentIdle )
return 0;
aLbEntries.Refresh( SC_CONTENT_NOTE );
diff --git a/starmath/inc/edit.hxx b/starmath/inc/edit.hxx
index ece88249cee5..601b3b9a1667 100644
--- a/starmath/inc/edit.hxx
+++ b/starmath/inc/edit.hxx
@@ -64,8 +64,8 @@ class SmEditWindow : public vcl::Window, public DropTargetHelper
virtual void KeyInput(const KeyEvent& rKEvt) SAL_OVERRIDE;
virtual void Command(const CommandEvent& rCEvt) SAL_OVERRIDE;
DECL_LINK(MenuSelectHdl, Menu *);
- DECL_LINK(ModifyTimerHdl, Timer *);
- DECL_LINK(CursorMoveTimerHdl, Timer *);
+ DECL_LINK(ModifyTimerHdl, Idle *);
+ DECL_LINK(CursorMoveTimerHdl, Idle *);
virtual void DataChanged( const DataChangedEvent& ) SAL_OVERRIDE;
virtual void Resize() SAL_OVERRIDE;
diff --git a/starmath/source/edit.cxx b/starmath/source/edit.cxx
index 6d9d166ded18..41d50c2f115c 100644
--- a/starmath/source/edit.cxx
+++ b/starmath/source/edit.cxx
@@ -244,14 +244,14 @@ void SmEditWindow::DataChanged( const DataChangedEvent& )
Resize();
}
-IMPL_LINK( SmEditWindow, ModifyTimerHdl, Timer *, EMPTYARG /*pTimer*/ )
+IMPL_LINK( SmEditWindow, ModifyTimerHdl, Idle *, EMPTYARG /*pTimer*/ )
{
UpdateStatus();
aModifyIdle.Stop();
return 0;
}
-IMPL_LINK(SmEditWindow, CursorMoveTimerHdl, Timer *, EMPTYARG /*pTimer*/)
+IMPL_LINK(SmEditWindow, CursorMoveTimerHdl, Idle *, EMPTYARG /*pTimer*/)
// every once in a while check cursor position (selection) of edit
// window and if it has changed (try to) set the formula-cursor
// according to that.
diff --git a/svx/inc/sdr/contact/objectcontactofpageview.hxx b/svx/inc/sdr/contact/objectcontactofpageview.hxx
index c5e07fa0d946..3a822502e560 100644
--- a/svx/inc/sdr/contact/objectcontactofpageview.hxx
+++ b/svx/inc/sdr/contact/objectcontactofpageview.hxx
@@ -21,6 +21,7 @@
#define INCLUDED_SVX_INC_SDR_CONTACT_OBJECTCONTACTOFPAGEVIEW_HXX
#include <svx/sdr/contact/objectcontact.hxx>
+#include <vcl/idle.hxx>
// predeclarations
diff --git a/svx/source/inc/eventhandler.hxx b/svx/source/inc/eventhandler.hxx
index ea9da53634d0..ed8d2dd231ff 100644
--- a/svx/source/inc/eventhandler.hxx
+++ b/svx/source/inc/eventhandler.hxx
@@ -24,6 +24,7 @@
#include <vector>
#include <vcl/timer.hxx>
+#include <vcl/idle.hxx>
namespace sdr
{
@@ -95,7 +96,7 @@ namespace sdr
class TimerEventHandler : public EventHandler, public Idle
{
public:
- TimerEventHandler(IdlePriority ePriority = VCL_IDLE_PRIORITY_HIGH);
+ TimerEventHandler(IdlePriority ePriority = IdlePriority::VCL_IDLE_PRIORITY_HIGH);
virtual ~TimerEventHandler();
diff --git a/svx/source/sdr/contact/objectcontactofpageview.cxx b/svx/source/sdr/contact/objectcontactofpageview.cxx
index 949ac76952a8..fa1b39d43ae7 100644
--- a/svx/source/sdr/contact/objectcontactofpageview.cxx
+++ b/svx/source/sdr/contact/objectcontactofpageview.cxx
@@ -59,7 +59,7 @@ namespace sdr
setPreviewRenderer(((SdrPaintView&)rPageWindow.GetPageView().GetView()).IsPreviewRenderer());
// init timer
- SetPriority(VCL_IDLE_PRIORITY_HIGH);
+ SetPriority(IdlePriority::VCL_IDLE_PRIORITY_HIGH);
Stop();
}
diff --git a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
index 007dc7d82d14..a7806ffb3e93 100644
--- a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
+++ b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <vcl/idle.hxx>
#include <svx/sdr/contact/viewobjectcontactofpageobj.hxx>
#include <svx/sdr/contact/viewcontactofpageobj.hxx>
#include <svx/svdopage.hxx>
@@ -83,7 +84,7 @@ PagePrimitiveExtractor::PagePrimitiveExtractor(
setPreviewRenderer(true);
// init timer
- SetPriority(VCL_IDLE_PRIORITY_HIGH);
+ SetPriority(IdlePriority::VCL_IDLE_PRIORITY_HIGH);
Stop();
}
diff --git a/sw/source/uibase/inc/srcedtw.hxx b/sw/source/uibase/inc/srcedtw.hxx
index 3a533864d6e6..153d9e17d09d 100644
--- a/sw/source/uibase/inc/srcedtw.hxx
+++ b/sw/source/uibase/inc/srcedtw.hxx
@@ -22,6 +22,7 @@
#include <vcl/window.hxx>
#include <svl/lstner.hxx>
#include <vcl/timer.hxx>
+#include <vcl/idle.hxx>
#include <vcl/xtextedt.hxx>
#include <set>
diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx
index 389fa0d629a1..b720f96c7aab 100644
--- a/toolkit/source/awt/vclxtoolkit.cxx
+++ b/toolkit/source/awt/vclxtoolkit.cxx
@@ -91,6 +91,7 @@
#include <vcl/fixed.hxx>
#include <vcl/floatwin.hxx>
#include <vcl/group.hxx>
+#include <vcl/idle.hxx>
#include <vcl/imgctrl.hxx>
#include <vcl/longcurr.hxx>
#include <vcl/lstbox.hxx>
@@ -1868,7 +1869,7 @@ void SAL_CALL VCLXToolkit::processEventsToIdle()
throw (::com::sun::star::uno::RuntimeException, std::exception)
{
SolarMutexGuard aSolarGuard;
- Timer::ProcessAllIdleHandlers();
+ Idle::ProcessAllIdleHandlers();
}
}
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index 680933383676..e468df4e102d 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -326,6 +326,7 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\
vcl/source/app/dndhelp \
vcl/source/app/help \
vcl/source/app/i18nhelp \
+ vcl/source/app/idle \
vcl/source/app/idlemgr \
vcl/source/app/salvtables \
vcl/source/app/session \
diff --git a/vcl/qa/cppunit/timer.cxx b/vcl/qa/cppunit/timer.cxx
index 4e2bb5647f7d..f33578a3d13b 100644
--- a/vcl/qa/cppunit/timer.cxx
+++ b/vcl/qa/cppunit/timer.cxx
@@ -16,6 +16,7 @@
#include <salhelper/thread.hxx>
#include <vcl/timer.hxx>
+#include <vcl/idle.hxx>
#include <vcl/svapp.hxx>
/// Avoid our timer tests just wedging the build if they fail.
@@ -86,12 +87,13 @@ class IdleBool : public Idle
bool &mrBool;
public:
IdleBool( bool &rBool ) :
- Idle( VCL_IDLE_PRIORITY_LOWEST ), mrBool( rBool )
+ Idle(), mrBool( rBool )
{
+ SetPriority( IdlePriority::VCL_IDLE_PRIORITY_LOWEST );
Start();
mrBool = false;
}
- virtual void Timeout() SAL_OVERRIDE
+ virtual void DoIdle() SAL_OVERRIDE
{
mrBool = true;
Application::EndYield();
@@ -102,7 +104,7 @@ void TimerTest::testIdle()
{
bool bTriggered = false;
IdleBool aTest( bTriggered );
- Timer::ProcessAllIdleHandlers();
+ Idle::ProcessAllIdleHandlers();
CPPUNIT_ASSERT_MESSAGE("watchdog triggered", bTriggered);
}
diff --git a/vcl/source/app/idle.cxx b/vcl/source/app/idle.cxx
index bf715fb1e5bc..15427d6da2ed 100644
--- a/vcl/source/app/idle.cxx
+++ b/vcl/source/app/idle.cxx
@@ -94,9 +94,10 @@ void Idle::ImplDeInitIdle()
void Idle::ProcessAllIdleHandlers()
{
// process all pending Idle
- ImplIdleData* pIdleData;
- ImplIdleData* pPrevIdleData;
- while (pIdleData = ImplIdleData::GetFirstIdle())
+ ImplIdleData* pIdleData = NULL;
+ ImplIdleData* pPrevIdleData = NULL;
+ ImplSVData* pSVData = ImplGetSVData();
+ while ((pIdleData = ImplIdleData::GetFirstIdle()))
{
pIdleData->Invoke();
}
@@ -192,7 +193,7 @@ Idle& Idle::operator=( const Idle& rIdle )
Idle::Idle():
mpIdleData(NULL),
- mePriority(VCL_IDLE_PRIORITY_HIGH),
+ mePriority(IdlePriority::VCL_IDLE_PRIORITY_HIGH),
mbActive(false)
{
}
diff --git a/vcl/source/edit/textdata.cxx b/vcl/source/edit/textdata.cxx
index b4f5047f689f..2004d6e98f0d 100644
--- a/vcl/source/edit/textdata.cxx
+++ b/vcl/source/edit/textdata.cxx
@@ -223,7 +223,7 @@ IdleFormatter::IdleFormatter()
{
mpView = 0;
mnRestarts = 0;
- SetPriority(VCL_IDLE_PRIORITY_HIGH);
+ SetPriority(IdlePriority::VCL_IDLE_PRIORITY_HIGH);
}
IdleFormatter::~IdleFormatter()