Example #1
0
void reToolManager::CreateTools(){

	m_tools[reTOOL_SELECT] = new reSelectionTool(m_component, m_owner);
	m_tools[reTOOL_TRANSLATE] = new reTranslateTool(m_component, m_owner);
	m_tools[reTOOL_ROTATE] = new reRotateTool(m_component, m_owner);
	m_tools[reTOOL_SCALE] = new reScaleTool(m_component, m_owner);

	for (auto& tool : m_tools) {
		tool.second->Init();
	}

	ActivateTool(reTOOL_SELECT);
}
Example #2
0
afx_msg void CServerView::OnStitch()
{
    if (STOP) return;
    CServerDoc* pDoc = GetDocument();
    LPIMAGE lpImage = pDoc->GetImage();

    DeactivateTool();
    if (ImgMultipleObjects(lpImage))
    {
        Message(IDS_OBJECTSNEEDCOMBINE);
        return;
    }
    ActivateTool( IDC_STITCH );
}
Example #3
0
void ShowChromaProc( HWND hWindow, UINT msg, int x, int y, UINT32 Option )
   	{
	switch (msg)
		{
		case WM_CREATE:
			pChromaDlg = (CChromaDlg*)Option;
			pChromaDlg->ShowChromaPreview();
			Tool.bActive = YES;
		   	break;

		case WM_LBUTTONDBLCLK:
		case WM_DESTROY:	// The cancel operation message
			pChromaDlg->ShowChromaReset();
			Tool.bActive = NO;
			ActivateTool(pChromaDlg->idLastTool);
		   	break;

		default:
		   	break;
	   }
	}
Example #4
0
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);
}
Example #5
0
void reToolManager::OnToolbarToolClick(wxCommandEvent& event){
	ActivateTool((reToolId)event.GetId());
}
Example #6
0
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;
    }
}