示例#1
0
// return help text for the item for which wxEVT_HELP was generated.
wxString wxRadioBoxBase::DoGetHelpTextAtPoint(const wxWindow *derived,
                                              const wxPoint& pt,
                                              wxHelpEvent::Origin origin) const
{
    int item;
    switch ( origin )
    {
        case wxHelpEvent::Origin_HelpButton:
            item = GetItemFromPoint(pt);
            break;

        case wxHelpEvent::Origin_Keyboard:
            item = GetSelection();
            break;

        default:
            wxFAIL_MSG( "unknown help even origin" );
            wxFALLTHROUGH;

        case wxHelpEvent::Origin_Unknown:
            // this value is used when we're called from GetHelpText() for the
            // radio box itself, so don't return item-specific text in this case
            item = wxNOT_FOUND;
    }

    if ( item != wxNOT_FOUND )
    {
        wxString text = GetItemHelpText(static_cast<unsigned int>(item));
        if( !text.empty() )
            return text;
    }

    return derived->wxWindowBase::GetHelpTextAtPoint(pt, origin);
}
void COXAutoListBox::OnMouseMove(UINT nFlags, CPoint point) 
{

	int nIndex=GetItemFromPoint(point);
	if (nIndex!=-1)
	{
	if (GetCurSel()!=nIndex)
		SetCurSel(nIndex);
	}
	CListBox::OnMouseMove(nFlags, point);
}
示例#3
0
long SkillObjectTree::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
{
    if(GetHwnd())
    { 
       
        switch ( nMsg )
        {
        case WM_LBUTTONDOWN: 
            int x = GET_X_LPARAM(lParam),
                y = GET_Y_LPARAM(lParam);
            HTREEITEM htItem = GetItemFromPoint(GetHwnd(), x, y);

            if ( htItem)
            {
                if ( wParam & MK_CONTROL )
                { 
                    SetFocus();

                    // toggle selected state
                    wxTreeCtrl::ToggleItemSelection(htItem);

                    tagNMTREEVIEWW ntv;

                    NMHDR hdr;
                    hdr.hwndFrom = GetHwnd();
                    hdr.idFrom = GetId();
                    hdr.code = TVN_SELCHANGEDW;

                    TVITEMW itemNew;
                    if(IsSelected(htItem))
                        itemNew.hItem = HTREEITEM(htItem);
                    else
                        itemNew.hItem = NULL;

                    ntv.hdr = hdr;
                    ntv.itemNew = itemNew;

                    WXLPARAM rc;
                    wxTreeCtrl::MSWOnNotify(GetId(), (LPARAM)&ntv, &rc); 

                    ::SetFocus(GetHwnd());                  

                    return 0L;
                }
            }
        }



    }
    return wxTreeCtrl::MSWWindowProc(nMsg,wParam,lParam);

}
示例#4
0
// return help text for the item for which wxEVT_HELP was generated.
wxString wxRadioBoxBase::DoGetHelpTextAtPoint(const wxWindow *derived,
                                              const wxPoint& pt,
                                              wxHelpEvent::Origin origin) const
{
    const int item = origin == wxHelpEvent::Origin_HelpButton
                        ? GetItemFromPoint(pt)
                        : GetSelection();

    if ( item != wxNOT_FOUND )
    {
        wxString text = GetItemHelpText(wx_static_cast(unsigned int, item));
        if( !text.empty() )
            return text;
    }
void COXAutoListBox::OnLButtonDown(UINT nFlags, CPoint point)
{
	UNUSED_ALWAYS(nFlags);

	ASSERT(m_pComplete);

	int nIndex=GetItemFromPoint(point);
	if (nIndex!=-1)
	{
		CString sText;
		GetText(nIndex,sText);
		::SendMessage( m_pComplete->m_hAttached, WM_SETTEXT, NULL,(LPARAM)(LPCTSTR) sText);
	}
	CListBox::OnLButtonDown(nFlags, point);
	::PostMessage( m_pComplete->m_hAttached, WM_SETFOCUS, (WPARAM)::GetFocus(), NULL);
}
示例#6
0
void TrackListCtrl::OnLButtonDblClk(UINT nFlags, CPoint point)
{
	INT nItem = GetItemFromPoint(point.x, point.y);
	if (nItem >= 0)
	{
		FullTrackRecordSP rec = (*m_pCollection)[nItem];
		MediaPlayListItem mpli;
		mpli.artist = rec->artist.name.c_str();
		mpli.title = rec->track.name.c_str();
		mpli.rating = rec->track.rating;
		mpli.length = rec->track.duration;
		mpli.url = rec->track.location.c_str();
		m_pPlayer->Play(mpli);
	}

	CFlexListCtrl::OnLButtonDblClk(nFlags, point);
}
示例#7
0
void TrackListCtrl::OnContextMenu(CWnd* pWnd, CPoint point)
{
	TRACEST(_T("TrackListCtrl::OnContextMenu"));
	if (m_pPlayer == NULL)	
		return;



	CPoint htp(point);
	ScreenToClient(&htp);
	m_menuInitiator = GetItemFromPoint(htp.x, htp.y);
	if (m_menuInitiator == -1)
		return;
	if (IsItemSelected(m_menuInitiator) == FALSE)
		SetItemSelection(m_menuInitiator, TRUE);

	ITSMenu& mainMenu = GetInternalMenu(M_Main);
	mainMenu.TrackPopupMenu(point.x, point.y, pWnd->GetSafeHwnd());

}