/*! @brief ツールバーの表示を更新する @note 他から呼べるようにOnToolbarTimer()より切り出した @date 2008.10.05 nasukoji */ void CMainToolBar::UpdateToolbar( void ) { // 印刷プレビュー中なら、何もしない。 if( m_pOwner->IsInPreviewMode() )return; // ツールバーの状態更新 if( m_hwndToolBar ) { for( int i = 0; i < GetDllShareData().m_Common.m_sToolBar.m_nToolBarButtonNum; ++i ) { TBBUTTON tbb = m_pOwner->GetMenuDrawer().getButton( GetDllShareData().m_Common.m_sToolBar.m_nToolBarButtonIdxArr[i] ); int state = Toolbar_GetState( m_hwndToolBar, tbb.idCommand ); if( state != -1 ) { WORD stateToSet = 0; // 機能が利用可能か調べる if( IsFuncEnable( m_pOwner->GetDocument(), &GetDllShareData(), (EFunctionCode)tbb.idCommand ) ) { stateToSet |= TBSTATE_ENABLED; } // 機能がチェック状態か調べる if( IsFuncChecked( m_pOwner->GetDocument(), &GetDllShareData(), (EFunctionCode)tbb.idCommand ) ) { stateToSet |= TBSTATE_CHECKED; } if( state != stateToSet ) { Toolbar_SetState( m_hwndToolBar, tbb.idCommand, stateToSet ); } } } } }
/*! @brief ツールバーの表示を更新する @note 他から呼べるようにOnToolbarTimer()より切り出した @date 2008.10.05 nasukoji */ void CMainToolBar::UpdateToolbar( void ) { // 印刷プレビュー中なら、何もしない。 if( m_pOwner->IsInPreviewMode() )return; // ツールバーの状態更新 if( m_hwndToolBar ) { for( int i = 0; i < GetDllShareData().m_Common.m_sToolBar.m_nToolBarButtonNum; ++i ) { TBBUTTON tbb = m_pOwner->GetMenuDrawer().getButton( GetDllShareData().m_Common.m_sToolBar.m_nToolBarButtonIdxArr[i] ); // 機能が利用可能か調べる Toolbar_EnableButton( m_hwndToolBar, tbb.idCommand, IsFuncEnable( m_pOwner->GetDocument(), &GetDllShareData(), (EFunctionCode)tbb.idCommand ) ); // 機能がチェック状態か調べる Toolbar_CheckButton( m_hwndToolBar, tbb.idCommand, IsFuncChecked( m_pOwner->GetDocument(), &GetDllShareData(), (EFunctionCode)tbb.idCommand ) ); } } }