BOOL CAppNodeGroupHandle::PostMessageToAllEditors( UINT uMsg, /*!< ポストするメッセージ */ WPARAM wParam, /*!< 第1メッセージ パラメータ */ LPARAM lParam, /*!< 第2メッセージ パラメータ */ HWND hWndLast /*!< 最後に送りたいウィンドウ */ ) { EditNode *pWndArr, *p, *pLast = NULL; int n; n = CAppNodeManager::getInstance()->GetOpenedWindowArr( &pWndArr, FALSE ); if( 0 == n ){ return TRUE; } // hWndLast以外へのメッセージ。hWndLast == NULLのときにもメッセージが送られるように。 for( p = pWndArr; p != pWndArr + n ; ++p ){ if (m_nGroup == 0 || m_nGroup == p->m_nGroup) { if (IsSakuraMainWindow( p->m_hWnd )) { if (hWndLast != p->m_hWnd) { /* メッセージをポスト */ ::PostMessage( p->m_hWnd, uMsg, wParam, lParam ); } else { pLast = p; } } } } // hWndLastへのメッセージ if (pLast) { /* メッセージをポスト */ ::PostMessage( pLast->m_hWnd, uMsg, wParam, lParam ); } delete []pWndArr; return TRUE; }