Exemplo n.º 1
0
void KEditDialogImpl::OnSubmit()
{
    if (m_pNowComp == NULL)
    {
        return;
    }

    BOOL bIsSet = FALSE;
    CString strTmp;
    std::string strCmd;

    // 不知道有多少属性?
    for (size_t i = 0; i < ATTRUTE_SIZE; ++i)
    {
        m_kEdit[i].GetText(strTmp);
        strCmd = CW2A(strTmp.GetString());
        bIsSet = m_pNowComp->SetCompAttrute(i, strCmd);
        if (!bIsSet)
        {
            break;
        }
    }

    _Redraw();
}
Exemplo n.º 2
0
void KEditDialogImpl::OnPalette()
{
    SetFocus();
    if (m_uSelItemID != 0)
    {
        IComponent* pCompTmp = _CompFactory();

        if (pCompTmp != NULL)
        {
            m_vecComp.push_back(pCompTmp);

            SetItemCheck(m_uSelItemID, FALSE);
            m_uSelItemID = 0;
            m_pNowComp   = pCompTmp;

            CStringA strPos;
            CPoint   cPoint;

            _TransfromPoint(m_nowPoint, cPoint);
            strPos.Format("%d,%d", cPoint.x, cPoint.y);
            m_pNowComp->SetCompAttrute("pos", strPos.GetString());
        }
    }
    else if (m_nSelItem == -1)
    {
        m_pNowComp = NULL;
    }
    _Redraw();
}
void
BRadioButton::MouseDown(BPoint point)
{
	if (!IsEnabled())
		return;

	fOutlined = true;

	if (Window()->Flags() & B_ASYNCHRONOUS_CONTROLS) {
		Invalidate();
		SetTracking(true);
		SetMouseEventMask(B_POINTER_EVENTS, B_LOCK_WINDOW_FOCUS);
	} else {
		_Redraw();

		BRect bounds = Bounds();
		uint32 buttons;

		do {
			snooze(40000);

			GetMouse(&point, &buttons, true);

			bool inside = bounds.Contains(point);

			if (fOutlined != inside) {
				fOutlined = inside;
				_Redraw();
			}
		} while (buttons != 0);

		if (fOutlined) {
			fOutlined = false;
			_Redraw();
			SetValue(B_CONTROL_ON);
			Invoke();
		} else {
			_Redraw();
		}
	}
}
Exemplo n.º 4
0
void KEditDialogImpl::OnMouseMove(UINT nFlags, CPoint point)
{
    if (nFlags == MK_LBUTTON && m_pNowComp != NULL)
    {
        _CheckPoint(point);

        std::string strPos;
        std::string strLastPos;

        m_pNowComp->GetCompAttrute("pos", strLastPos);
        _CalcMovePos(strLastPos, strPos);
        m_pNowComp->SetCompAttrute("pos", strPos);

        _Redraw();
    }
}
Exemplo n.º 5
0
void KEditDialogImpl::OnDelete()
{
    if (m_pNowComp != NULL)
    {
        for (std::vector<IComponent*>::iterator iter = m_vecComp.begin(); iter != m_vecComp.end(); ++iter)
        {
            if (*iter == m_pNowComp)
            {
                m_vecComp.erase(iter);
                m_pNowComp->UninitComp();
                delete m_pNowComp;
                m_pNowComp = NULL;
                break;
            }
        }
    }
    _Redraw();
}
void CCandidateWindow::_Update()
{
	if(regwordul || regword)
	{
		disptext = _MakeRegWordString();
	}

	if(regwordul)
	{
		_dwFlags = TF_CLUIE_COUNT | TF_CLUIE_SELECTION | TF_CLUIE_STRING |
			TF_CLUIE_PAGEINDEX | TF_CLUIE_CURRENTPAGE;
		_UpdateUIElement();
	}
	else
	{
		if(_hwnd != NULL)
		{
			_CalcWindowRect();

			_Redraw();
		}
	}
}