BOOL COptionTreeColorPopUp::Create(CPoint pPoint, COLORREF crColor, CWnd* pParentWnd, LPCTSTR szDefaultText, LPCTSTR szCustomText) { // Declare variables CString strClassName; // Verify window ASSERT(pParentWnd && ::IsWindow(pParentWnd->GetSafeHwnd())); // Se variables m_wndParent = pParentWnd; m_crColor = m_crInitialColor = crColor; // Get the class name and create the window strClassName = AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW, 0, (HBRUSH) (COLOR_BTNFACE+1), 0); // Create window if (!CWnd::CreateEx(0, strClassName, _T(""), WS_POPUP | WS_VISIBLE, pPoint.x, pPoint.y, 100, 100, pParentWnd->GetSafeHwnd(), 0, NULL)) { return FALSE; } // Show window ShowWindow(SW_SHOWNA); // Store the Custom text if (szCustomText != NULL) { m_strCustomText = szCustomText; } // Store the Default Area text if (szDefaultText != NULL) { m_strDefaultText = szDefaultText; } // Set the window size SetWindowSize(); // Create the tooltips CreateToolTips(); // Find which cell (if any) corresponds to the initial color FindCellFromColor(crColor); // Capture all mouse events for the life of this window SetCapture(); return TRUE; }
BOOL CColorPopup::Create(CPoint p, COLORREF crColor, CWnd* pParentWnd, LPCTSTR szDefaultText /* = NULL */, LPCTSTR szCustomText /* = NULL */) { ASSERT(pParentWnd && ::IsWindow(pParentWnd->GetSafeHwnd())); m_pParent = pParentWnd; m_crColor = m_crInitialColor = crColor; // Get the class name and create the window CString szClassName = AfxRegisterWndClass(CS_CLASSDC|CS_SAVEBITS|CS_HREDRAW|CS_VREDRAW, 0, (HBRUSH) (COLOR_BTNFACE+1), 0); if (!CWnd::CreateEx(0, szClassName, _T(""), WS_VISIBLE|WS_POPUP, p.x, p.y, 100, 100, // size updated soon pParentWnd->GetSafeHwnd(), 0, NULL)) return FALSE; // Store the Custom text if (szCustomText != NULL) m_strCustomText = szCustomText; // Store the Default Area text if (szDefaultText != NULL) m_strDefaultText = szDefaultText; // Set the window size SetWindowSize(); // Create the tooltips CreateToolTips(); // Find which cell (if any) corresponds to the initial color FindCellFromColor(crColor); // Capture all mouse events for the life of this window SetCapture(); return TRUE; }