From 2b208ebcf0f53764dee625dc91edd9f6ba3cedaf Mon Sep 17 00:00:00 2001 From: Cyril Deguet Date: Sun, 25 Apr 2004 15:04:45 +0000 Subject: [PATCH] * ctrl_text.cpp: put the control text in the "moving" state initially --- modules/gui/skins2/controls/ctrl_text.cpp | 30 ++++++++++++----------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/modules/gui/skins2/controls/ctrl_text.cpp b/modules/gui/skins2/controls/ctrl_text.cpp index 640cb0e08c..e01907d7e4 100755 --- a/modules/gui/skins2/controls/ctrl_text.cpp +++ b/modules/gui/skins2/controls/ctrl_text.cpp @@ -80,7 +80,7 @@ CtrlText::CtrlText( intf_thread_t *pIntf, VarText &rVariable, m_fsm.addTransition( "outMoving", "enter", "moving" ); // Initial state - m_fsm.setState( "outStill" ); + m_fsm.setState( "moving" ); // Observe the variable m_rVariable.addObserver( this ); @@ -210,23 +210,25 @@ void CtrlText::displayText( const UString &rText ) onChangePosition(); m_xPos = 0; - // If the control was in the moving state, check if the scrolling is - // still necessary - const string &rState = m_fsm.getState(); - if( rState == "moving" || rState == "outMoving" ) + if( getPosition() ) { - if( m_pImg && m_pImg->getWidth() >= getPosition()->getWidth() ) + // If the control was in the moving state, check if the scrolling is + // still necessary + const string &rState = m_fsm.getState(); + if( rState == "moving" || rState == "outMoving" ) { - m_pCurrImg = m_pImgDouble; - m_pTimer->start( MOVING_TEXT_DELAY, false ); - } - else - { - m_pTimer->stop(); + if( m_pImg && m_pImg->getWidth() >= getPosition()->getWidth() ) + { + m_pCurrImg = m_pImgDouble; + m_pTimer->start( MOVING_TEXT_DELAY, false ); + } + else + { + m_pTimer->stop(); + } } + notifyLayout(); } - - notifyLayout(); } -- 2.39.5