static void DoInit (HWND hWnd) { STRING szTmp; STRING szDir; int idx; iUserIndex = 0; iUserCount = GetNumberOfUsers(); iButtonIndex = 4; // set to other than 0 - 3 // hide unused radio buttons switch (iUserCount) { case 0: ShowWindow (GetDlgItem(hWnd, IDC_WHO_BUTTON1), SW_HIDE); case 1: ShowWindow (GetDlgItem(hWnd, IDC_WHO_BUTTON2), SW_HIDE); case 2: ShowWindow (GetDlgItem(hWnd, IDC_WHO_BUTTON3), SW_HIDE); case 3: ShowWindow (GetDlgItem(hWnd, IDC_WHO_BUTTON4), SW_HIDE); default: for (idx = 0 ; idx < iUserCount ; idx++) { if ( GetUserNameString (idx, szTmp) ) { SetDlgItemText (hWnd, ButtonIds[idx], szTmp); AstralControlRepaint (hWnd, ButtonIds[idx]); } } break; } ShowWindow (GetDlgItem(hWnd, HS_WHO_UPARROW), SW_HIDE); if (iUserCount <= 4) ShowWindow (GetDlgItem(hWnd, HS_WHO_DNARROW), SW_HIDE); else ShowWindow (GetDlgItem(hWnd, HS_WHO_DNARROW), SW_SHOW); clr ((LPTR)Control.CurrentUser, sizeof(Control.CurrentUser)); clr ((LPTR)szNewUser, sizeof(STRING)); if (GetUserNameString (iUserIndex, szNewUser)) { if (GetUserDir (szNewUser, szDir)) lstrcpy (Control.CurrentUser, szDir); } if (iUserCount) { SetFocus (GetDlgItem (hWnd, IDC_WHO_BUTTON1)); CheckRadioButton (hWnd, IDC_WHO_BUTTON1, IDC_WHO_NEWBUTTON, IDC_WHO_BUTTON1); fNoUsers = FALSE; } else { SetFocus (GetDlgItem (hWnd, IDOK)); fNoUsers = TRUE; } }
BOOL CExpandImageDlg::OnCommand(WPARAM wParam, LPARAM lParam) { int id = LOWORD(wParam); //ID of control WORD codeNotify = HIWORD(wParam); //Control notification code HWND hControl = (HWND) lParam; //Handle of control LPIMAGE lpImage; FRMTYPEINFO TypeInfo; long Color; switch (id) { case IDC_EXPANDLEFT: case IDC_EXPANDRIGHT: case IDC_EXPANDTOP: case IDC_EXPANDBOTTOM: case IDC_HEIGHT: case IDC_WIDTH: case IDC_PREF_UNITS: DoExpandControls(id, codeNotify); break; case IDC_FILLINCOLOR: if (codeNotify != 1) break; lpImage = GetImage(); if (lpImage) ImgGetTypeInfo(lpImage, &TypeInfo); else FrameSetTypeInfo(&TypeInfo, FDT_RGBCOLOR, NULL); if (TypeInfo.DataType == FDT_LINEART) { if(m_FillColor.gray == 255) m_FillColor.gray = 0; else m_FillColor.gray = 255; SetColorInfo(&m_FillColor, &m_FillColor, CS_GRAY); } else if (TypeInfo.DataType == FDT_GRAYSCALE || TypeInfo.DataType == FDT_PALETTECOLOR) { if (!PalettePicker(&m_FillColor, NULL, TypeInfo.ColorMap)) break; } else if (!ColorPicker(&m_FillColor, NULL)) break; CopyRGB( &m_FillColor.rgb, &Color ); SetWindowLong(::GetDlgItem(GetSafeHwnd(),IDC_FILLINCOLOR), GWL_ACTIVE, Color ); AstralControlRepaint(GetSafeHwnd(), IDC_FILLINCOLOR); break; case IDOK: if ( (FMUL( m_Resolution, m_Width ) > MAX_IMAGE_WIDTH) || (FMUL( m_Resolution, m_Height) > MAX_IMAGE_HEIGHT)) { Message( IDS_ETOOWIDE ); break; } SetUnitResolution( 0 ); Control.Units = m_SaveUnits; SetUnitInfo((UNIT_TYPE)(Control.Units-IDC_PREF_UNITINCHES), Control.UnitRes, Control.Points); AstralDlgEnd( GetSafeHwnd(), TRUE ); break; default: break; } return CPPViewModalDlg::OnCommand(wParam, lParam); }
BOOL CChromaDlg::OnCommand(WPARAM wParam, LPARAM lParam) { HWND hDlg = GetSafeHwnd(); BOOL bReturn = TRUE; UINT id = LOWORD(wParam); HWND hControl = (HWND)lParam; int codeNotify = HIWORD(wParam); int i; long Color; HWND hActiveWnd; char Buff[10]; BYTE mask; hActiveWnd = m_pView->GetSafeHwnd(); switch (id) { case IDC_CHROMASELECT: i = TableHandleCombo(hDlg, &iCombo[0], nCombo, id, codeNotify); if (i != IDC_CHROMA_NORMAL && i != IDC_CHROMA_HSL && i != IDC_CHROMA_LUMIN) break; lpChromaMask->ChromaColorMode = i; lpChromaMask->SetupChroma(); break; case IDC_MAP_PROBE: ::GetWindowText(hControl, Buff, 10); id = atoi(Buff); if (id < 1 || id > 8) break; id += IDC_MASKCOLOR1 - 1; GetDlgItem(id)->ShowWindow(SW_SHOW); GetDlgItem(id)->SetFocus(); ::ShowWindow(hControl, SW_HIDE); case IDC_MASKCOLOR1: case IDC_MASKCOLOR2: case IDC_MASKCOLOR3: case IDC_MASKCOLOR4: case IDC_MASKCOLOR5: case IDC_MASKCOLOR6: case IDC_MASKCOLOR7: case IDC_MASKCOLOR8: lpChromaMask->ActiveChromaMask = i = id - IDC_MASKCOLOR1; if (codeNotify != 1 /*Not A DoubleClick*/) { if (hActiveWnd) bProbePending = YES; } else { bProbePending = NO; if (!ColorPicker(&lpChromaMask->MaskColor[i], NULL)) break; CopyRGB(&lpChromaMask->MaskColor[i].rgb, &Color); SetWindowLong(::GetDlgItem(hDlg, id), GWL_ACTIVE, Color); AstralControlRepaint(hDlg, IDC_MASKCOLOR1+i); } mask = 1 << (id - IDC_MASKCOLOR1); if (lpChromaMask->Mask & mask) break; id = id - IDC_MASKCOLOR1 + IDC_MASKACTIVE1; case IDC_MASKACTIVE1: case IDC_MASKACTIVE2: case IDC_MASKACTIVE3: case IDC_MASKACTIVE4: case IDC_MASKACTIVE5: case IDC_MASKACTIVE6: case IDC_MASKACTIVE7: case IDC_MASKACTIVE8: { mask = 1 << (id - IDC_MASKACTIVE1); lpChromaMask->Mask ^= mask; CheckDlgButton(id, lpChromaMask->Mask & mask); lpChromaMask->SetupChroma(); } break; case IDC_CHROMA_FADE: if (::GetFocus() != ::GetDlgItem(hDlg, id)) break; if ( codeNotify == EN_CHANGE ) { BOOL Bool; lpChromaMask->Fade = GetDlgItemSpin(hDlg, id, &Bool, NO); lpChromaMask->SetupChroma(); } break; case IDC_MASKRANGE1: case IDC_MASKRANGE2: case IDC_MASKRANGE3: case IDC_MASKRANGE4: case IDC_MASKRANGE5: case IDC_MASKRANGE6: case IDC_MASKRANGE7: case IDC_MASKRANGE8: if (::GetFocus() != ::GetDlgItem(hDlg, id)) break; if ( codeNotify == EN_CHANGE ) { BOOL Bool; lpChromaMask->MaskRange[id-IDC_MASKRANGE1] = GetDlgItemSpin(hDlg, id, &Bool, NO); lpChromaMask->SetupChroma(); } break; case IDC_MASKMODE_ADD: case IDC_MASKMODE_SUBTRACT: case IDC_MASKMODE_REVERSE: lpChromaMask->ChromaCombineMode = SHAPE_REVERSE + (id - IDC_MASKMODE_REVERSE); CheckRadioButton(IDC_MASKMODE_REVERSE, IDC_MASKMODE_SUBTRACT,id); break; case IDC_DELETEMASK: lpChromaMask->Delete = !lpChromaMask->Delete; CheckDlgButton(id, lpChromaMask->Delete); break; case IDC_CHROMA: if (hActiveWnd) { idLastTool = ActivateTool(id); CreateProc(hActiveWnd, 0, 0, this); bPreview = YES; } break; case IDC_RESET: if ( bPreview ) DeactivateTool(); bPreview = NO; break; default: bReturn = FALSE; break; } return bReturn ? bReturn : CPPViewModalDlg::OnCommand(wParam, lParam); }
LOCAL void ShieldFloat_OnCommand(HWND hDlg, int id, HWND hControl, UINT codeNotify) /************************************************************************/ { int i; BOOL Bool, active; BYTE mask; long Color; ITEMID idLastTool; HWND hActiveWnd; char Buff[10]; hActiveWnd = GetActiveDoc(); switch (id) { case IDC_MAP_PROBE: GetWindowText(hControl, Buff, 10); id = atoi(Buff); if (id < 1 || id > 8) break; id += IDC_MASKCOLOR1 - 1; ShowWindow(GetDlgItem(hDlg, id), SW_SHOW); SetFocus(GetDlgItem(hDlg, id)); ShowWindow(hControl, SW_HIDE); case IDC_MASKCOLOR1: case IDC_MASKCOLOR2: case IDC_MASKCOLOR3: case IDC_MASKCOLOR4: case IDC_MASKCOLOR5: case IDC_MASKCOLOR6: case IDC_MASKCOLOR7: case IDC_MASKCOLOR8: ColorMask.MaskShield = i = id - IDC_MASKCOLOR1; if ( codeNotify != 1 /*Not A DoubleClick*/ ) { if ( hActiveWnd ) bProbePending = YES; } else { bProbePending = NO; if ( !ColorPicker( &ColorMask.MaskColor[i], NULL ) ) break; CopyRGB( &ColorMask.MaskColor[i].rgb, &Color ); SetWindowLong( GetDlgItem( hDlg, id ), GWL_ACTIVE, Color ); AstralControlRepaint( hDlg, IDC_MASKCOLOR1 + i ); } mask = 1 << (id - IDC_MASKCOLOR1); if (ColorMask.Mask & mask) { SetupShield(); break; } id = id - IDC_MASKCOLOR1 + IDC_MASKACTIVE1; case IDC_MASKACTIVE1: case IDC_MASKACTIVE2: case IDC_MASKACTIVE3: case IDC_MASKACTIVE4: case IDC_MASKACTIVE5: case IDC_MASKACTIVE6: case IDC_MASKACTIVE7: case IDC_MASKACTIVE8: mask = 1 << (id - IDC_MASKACTIVE1); ColorMask.Mask ^= mask; active = ColorMask.Mask & mask; CheckDlgButton( hDlg, id, active ); SetupShield(); break; case IDC_MASKRANGE1: case IDC_MASKRANGE2: case IDC_MASKRANGE3: case IDC_MASKRANGE4: case IDC_MASKRANGE5: case IDC_MASKRANGE6: case IDC_MASKRANGE7: case IDC_MASKRANGE8: if ( GetFocus() != GetDlgItem( hDlg, id ) ) break; if ( codeNotify != EN_CHANGE ) break; ColorMask.MaskRange[id-IDC_MASKRANGE1] = GetDlgItemSpin( hDlg, id, &Bool, NO ); SetupShield(); break; case IDC_SHIELD_IFHIDDEN: ColorMask.IfHidden = !ColorMask.IfHidden; CheckDlgButton( hDlg, id, !ColorMask.IfHidden ); break; case IDC_SHIELDSELECT: // case IDC_MASKINCLUDE: // case IDC_MASKEXCLUDE: if ( !(id = HandleCombo( hDlg, id, codeNotify )) ) break; ColorMask.Include = ( id == IDC_MASKINCLUDE ); if ( Tool.hRibbon ) SendMessage( Tool.hRibbon, WM_SHIELDCHANGE, 0, 0L ); break; case IDC_PREVIEW: if (!hActiveWnd) break; idLastTool = ActivateTool(id); CreateProc( hActiveWnd, 0, 0, idLastTool ); bPreview = YES; break; case IDC_RESET: TurnOffShieldPreview(); break; default: break; } }