vcl: reduce pointless timer / scheduler / idle includes.

Change-Id: I8bf7f8d6ba1a54f2969e055956fadc52ff6c8673
This commit is contained in:
Michael Meeks
2015-11-26 11:15:11 +00:00
parent bc8dcb2b5d
commit ed6aceab08
7 changed files with 31 additions and 22 deletions

View File

@@ -37,7 +37,6 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/document/CmisVersion.hpp>
#include <vcl/timer.hxx>
#include <vcl/vclptr.hxx>
#include <svl/poolitem.hxx>
#include <vcl/bitmap.hxx>
@@ -805,17 +804,6 @@ inline SfxObjectShellLock & SfxObjectShellLock::
inline SfxObjectShellLock & SfxObjectShellLock::operator = ( SfxObjectShell * pObjP )
{ return *this = SfxObjectShellLock( pObjP ); }
class AutoReloadTimer_Impl : public Timer
{
OUString aUrl;
SfxObjectShell* pObjSh;
public:
AutoReloadTimer_Impl( const OUString& rURL, sal_uInt32 nTime,
SfxObjectShell* pSh );
virtual void Invoke() override;
};
class SFX2_DLLPUBLIC SfxObjectShellItem: public SfxPoolItem
{
SfxObjectShell* pObjSh;

View File

@@ -23,7 +23,6 @@
#include <tools/solar.h>
#include <vcl/dllapi.h>
#include <vcl/syswin.hxx>
#include <vcl/timer.hxx>
#include <vcl/vclptr.hxx>
// - Dialog -

View File

@@ -27,8 +27,6 @@
#include <tools/solar.h>
#include <vcl/dllapi.h>
#include <vcl/timer.hxx>
#include <vcl/idle.hxx>
#include <vcl/menu.hxx>
#include <vcl/dndhelp.hxx>
#include <vcl/vclptr.hxx>
@@ -70,6 +68,8 @@ public:
enum AutocompleteAction{ AUTOCOMPLETE_KEYINPUT, AUTOCOMPLETE_TABFORWARD, AUTOCOMPLETE_TABBACKWARD };
class Timer;
// - Edit -
class VCL_DLLPUBLIC Edit : public Control, public vcl::unohelper::DragAndDropClient
{
@@ -205,7 +205,7 @@ public:
virtual bool IsModified() const { return mpSubEdit ? mpSubEdit->mbModified : mbModified; }
virtual void EnableUpdateData( sal_uLong nTimeout = EDIT_UPDATEDATA_TIMEOUT );
virtual void DisableUpdateData() { delete mpUpdateDataTimer; mpUpdateDataTimer = nullptr; }
virtual void DisableUpdateData();
void SetEchoChar( sal_Unicode c );
sal_Unicode GetEchoChar() const { return mcEchoChar; }

View File

@@ -25,12 +25,10 @@
#include <vcl/dllapi.h>
#include <vcl/dockwin.hxx>
#include <vcl/image.hxx>
#include <vcl/timer.hxx>
#include <vcl/idle.hxx>
#include <vector>
class Timer;
class UserDrawEvent;
struct ImplToolItem;
struct ImplToolSize;
struct ImplToolBoxPrivateData;
@@ -67,6 +65,7 @@ struct ImplToolSize
sal_uInt16 mnLines;
};
class Idle;
class VCL_DLLPUBLIC ToolBox : public DockingWindow
{
friend class FloatingWindow;
@@ -76,7 +75,7 @@ private:
ImplToolBoxPrivateData* mpData;
std::vector<ImplToolSize> maFloatSizes;
ImageList maImageList;
Idle maIdle;
Idle *mpIdle;
Rectangle maUpperRect;
Rectangle maLowerRect;
Rectangle maOutDockRect;

View File

@@ -30,6 +30,7 @@
#include <sfx2/objsh.hxx>
#include <sfx2/docmacromode.hxx>
#include "bitset.hxx"
#include <vcl/timer.hxx>
#include <appbaslib.hxx>
@@ -45,6 +46,17 @@ struct MarkData_Impl
class SfxBasicManagerHolder;
class AutoReloadTimer_Impl : public Timer
{
OUString aUrl;
SfxObjectShell* pObjSh;
public:
AutoReloadTimer_Impl( const OUString& rURL, sal_uInt32 nTime,
SfxObjectShell* pSh );
virtual void Invoke() override;
};
struct SfxObjectShell_Impl : public ::sfx2::IMacroDocumentAccess
{
::comphelper::EmbeddedObjectContainer* mpObjectContainer;

View File

@@ -2463,6 +2463,12 @@ void Edit::EnableUpdateData( sal_uLong nTimeout )
}
}
void Edit::DisableUpdateData()
{
delete mpUpdateDataTimer;
mpUpdateDataTimer = nullptr;
}
void Edit::SetEchoChar( sal_Unicode c )
{
mcEchoChar = c;

View File

@@ -1398,8 +1398,9 @@ void ToolBox::ImplInit( vcl::Window* pParent, WinBits nStyle )
mnKeyModifier = 0;
mnActivateCount = 0;
maIdle.SetPriority( SchedulerPriority::RESIZE );
maIdle.SetIdleHdl( LINK( this, ToolBox, ImplUpdateHdl ) );
mpIdle = new Idle("toolbox update");
mpIdle->SetPriority( SchedulerPriority::RESIZE );
mpIdle->SetIdleHdl( LINK( this, ToolBox, ImplUpdateHdl ) );
// set timeout and handler for dropdown items
mpData->maDropdownTimer.SetTimeout( 250 );
@@ -1657,6 +1658,10 @@ void ToolBox::dispose()
}
}
mpFloatWin.clear();
delete mpIdle;
mpIdle = nullptr;
DockingWindow::dispose();
}