예제 #1
0
void hdSimpleTextTool::mouseDrag(hdMouseEvent &event)
{
	if(!showEdit)
	{
		getDefaultTool()->mouseDrag(event);
	}
}
void ddMenuTool::mouseDown(ddMouseEvent& event)
{	
	setAnchorCoords(event.GetPosition().x,event.GetPosition().y);

	

	if(menuFigure->menuEnabled() && event.RightDown())
	{
                wxMenu menu;
				getDrawingEditor()->view()->setMenuToolFigure(menuFigure);
				getDrawingEditor()->view()->setTextPopUpList(menuFigure->popupStrings(),menu);
				ddPoint p=event.GetPosition();
				event.getView()->CalcScrolledPosition(p.x,p.y,&p.x,&p.y);
				getDrawingEditor()->view()->PopupMenu(&menu, p);
		return;
	}


/*	if(event.LeftDClick())
	{
		getDrawingEditor()->view()->setMenuToolFigure(menuFigure);
		showEdit = true;
		edit->ChangeValue(txtFigure->getText()); //Same as SetValue but don't generated wxEVT_COMMAND_TEXT_UPDATED event
		calculateSizeEntry(event.getView());
		edit->SetFocus();
		edit->Show();
		return;
	}*/
	getDefaultTool()->mouseDown(event);
}
예제 #3
0
void wxhdCompositeFigureTool::mouseDown(wxhdMouseEvent& event)
{
	int x=event.GetPosition().x, y=event.GetPosition().y;
	wxhdCompositeFigure *cfigure = (wxhdCompositeFigure*) getFigure();
	wxhdIFigure *figure = cfigure->findFigure(x,y);
	
	if(figure)
	{
		setDelegateTool(figure->CreateFigureTool(getDrawingEditor(),getDefaultTool()));
	}
	else
	{
		setDelegateTool(getDefaultTool());
	}

	if(delegateTool)
	{
		delegateTool->mouseDown(event);
	}
}
예제 #4
0
void hdMenuTool::mouseDown(hdMouseEvent &event)
{
    //Linux hack for bug
    int x = event.GetPosition().x, y = event.GetPosition().y;
    setAnchorCoords(x, y);

    if(menuFigure->menuEnabled() && event.RightDown())
    {
        wxMenu menu;
        event.getView()->setMenuToolFigure(menuFigure);
        menuFigure->createMenu(menu);
        event.getView()->connectPopUpMenu(menu);
        hdPoint p = event.GetPosition();
        event.getView()->CalcScrolledPosition(p.x, p.y, &p.x, &p.y);
        event.getView()->PopupMenu(&menu, p);
        return;
    }

    getDefaultTool()->mouseDown(event);
}
예제 #5
0
void hdSimpleTextTool::mouseDown(hdMouseEvent &event)
{
	setAnchorCoords(event.GetPosition().x, event.GetPosition().y);

	// Right click to get the contextual menu
	if(txtFigure->menuEnabled() && event.RightDown())
	{
		wxMenu menu;
		event.getView()->setSimpleTextToolFigure(txtFigure, true);
		txtFigure->createMenu(menu);
		event.getView()->connectPopUpMenu(menu);
		hdPoint p = event.GetPosition();
		event.getView()->CalcScrolledPosition(p.x, p.y, &p.x, &p.y);
		event.getView()->PopupMenu(&menu, p);
		return;
	}

	// Double click to rename an object
	if(event.LeftDClick())
	{
		if(withoutDialog)
		{
			event.getView()->setSimpleTextToolFigure(txtFigure);
			showEdit = true;
			event.getView()->getSimpleTextToolEdit()->ChangeValue(txtFigure->getText()); //Same as SetValue but don't generated wxEVT_COMMAND_TEXT_UPDATED event
			calculateSizeEntry(event.getView());
			event.getView()->getSimpleTextToolEdit()->SetFocus();
			event.getView()->getSimpleTextToolEdit()->Show();
			event.getView()->getOkTxt()->Show();
			event.getView()->getCancelTxt()->Show();
		}
		else
		{
			callDialog(event.getView());
		}
		return;
	}
	getDefaultTool()->mouseDown(event);
}
예제 #6
0
void hdMenuTool::mouseDrag(hdMouseEvent &event)
{
    getDefaultTool()->mouseDrag(event);
}