Now rendering is only happen if no changes happen anymore.
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)
if (!m_slowRenderTimer)
stopRenderTimer();
+ if (m_timer != 0) {
+ killTimer(m_timer);
+ m_timer = 0;
+ }
+
if (m_timer == 0)
m_timer = startTimer(m_slowRenderTimerInterval);
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();
QImage renderPreviewImage();
+ void setTimerId(int timerId);
+ int timerId() const;
+
private:
ServerNodeInstance m_rootNodeInstance;
ServerNodeInstance m_activeStateInstance;
PreviewNodeInstanceServer::PreviewNodeInstanceServer(NodeInstanceClientInterface *nodeInstanceClient) :
NodeInstanceServer(nodeInstanceClient)
{
- setRenderTimerInterval(50);
+ setRenderTimerInterval(500);
setSlowRenderTimerInterval(10000);
}
startRenderTimer();
}
+void PreviewNodeInstanceServer::startRenderTimer()
+{
+ if (timerId() != 0)
+ killTimer(timerId());
+
+ int timerId = startTimer(renderTimerInterval());
+
+ setTimerId(timerId);
+}
void PreviewNodeInstanceServer::findItemChangesAndSendChangeCommands()
{
protected:
void findItemChangesAndSendChangeCommands();
+ void startRenderTimer();
private:
ServerNodeInstance m_actualState;