Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Tobias Hunger
qt-creator
Commits
2796fbab
Commit
2796fbab
authored
Jan 13, 2011
by
Marco Bubke
Browse files
QmlDesigner.NodeInstances: Restart render timer in Preview
Now rendering is only happen if no changes happen anymore.
parent
d81f81a1
Changes
4
Hide whitespace changes
Inline
Side-by-side
src/plugins/qmldesigner/designercore/instances/nodeinstanceserver.cpp
View file @
2796fbab
...
...
@@ -135,6 +135,21 @@ void NodeInstanceServer::setSlowRenderTimerInterval(int timerInterval)
m_slowRenderTimerInterval
=
timerInterval
;
}
void
NodeInstanceServer
::
setTimerId
(
int
timerId
)
{
m_timer
=
timerId
;
}
int
NodeInstanceServer
::
timerId
()
const
{
return
m_timer
;
}
int
NodeInstanceServer
::
renderTimerInterval
()
const
{
return
m_renderTimerInterval
;
}
void
NodeInstanceServer
::
startRenderTimer
()
{
if
(
m_slowRenderTimer
)
...
...
@@ -151,6 +166,11 @@ void NodeInstanceServer::slowDownRenderTimer()
if
(
!
m_slowRenderTimer
)
stopRenderTimer
();
if
(
m_timer
!=
0
)
{
killTimer
(
m_timer
);
m_timer
=
0
;
}
if
(
m_timer
==
0
)
m_timer
=
startTimer
(
m_slowRenderTimerInterval
);
...
...
src/plugins/qmldesigner/designercore/instances/nodeinstanceserver.h
View file @
2796fbab
...
...
@@ -118,10 +118,11 @@ protected:
void
addChangedProperty
(
const
InstancePropertyPair
&
property
);
void
startRenderTimer
();
virtual
void
startRenderTimer
();
void
slowDownRenderTimer
();
void
stopRenderTimer
();
void
setRenderTimerInterval
(
int
timerInterval
);
int
renderTimerInterval
()
const
;
void
setSlowRenderTimerInterval
(
int
timerInterval
);
void
initializeDeclarativeView
();
...
...
@@ -129,6 +130,9 @@ protected:
QImage
renderPreviewImage
();
void
setTimerId
(
int
timerId
);
int
timerId
()
const
;
private:
ServerNodeInstance
m_rootNodeInstance
;
ServerNodeInstance
m_activeStateInstance
;
...
...
src/plugins/qmldesigner/designercore/instances/previewnodeinstanceserver.cpp
View file @
2796fbab
...
...
@@ -7,7 +7,7 @@ namespace QmlDesigner {
PreviewNodeInstanceServer
::
PreviewNodeInstanceServer
(
NodeInstanceClientInterface
*
nodeInstanceClient
)
:
NodeInstanceServer
(
nodeInstanceClient
)
{
setRenderTimerInterval
(
50
);
setRenderTimerInterval
(
50
0
);
setSlowRenderTimerInterval
(
10000
);
}
...
...
@@ -18,6 +18,15 @@ void PreviewNodeInstanceServer::createScene(const CreateSceneCommand &command)
startRenderTimer
();
}
void
PreviewNodeInstanceServer
::
startRenderTimer
()
{
if
(
timerId
()
!=
0
)
killTimer
(
timerId
());
int
timerId
=
startTimer
(
renderTimerInterval
());
setTimerId
(
timerId
);
}
void
PreviewNodeInstanceServer
::
findItemChangesAndSendChangeCommands
()
{
...
...
src/plugins/qmldesigner/designercore/instances/previewnodeinstanceserver.h
View file @
2796fbab
...
...
@@ -15,6 +15,7 @@ public:
protected:
void
findItemChangesAndSendChangeCommands
();
void
startRenderTimer
();
private:
ServerNodeInstance
m_actualState
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment