当前位置: 首页>>代码示例>>C++>>正文


C++ wxEvent::GetId方法代码示例

本文整理汇总了C++中wxEvent::GetId方法的典型用法代码示例。如果您正苦于以下问题:C++ wxEvent::GetId方法的具体用法?C++ wxEvent::GetId怎么用?C++ wxEvent::GetId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在wxEvent的用法示例。


在下文中一共展示了wxEvent::GetId方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: OnClangSyncTaskFinished

void ClangPlugin::OnClangSyncTaskFinished( wxEvent& event )
{
#ifdef CLANGPLUGIN_TRACE_FUNCTIONS
    //fprintf(stdout,"%s\n", __PRETTY_FUNCTION__);
#endif
    ClangProxy::SyncJob* pJob = static_cast<ClangProxy::SyncJob*>(event.GetEventObject());

    if (event.GetId() == idClangCodeCompleteTask)
    {
        ClangProxy::CodeCompleteAtJob* pCCJob = dynamic_cast<ClangProxy::CodeCompleteAtJob*>(pJob);
        ClangEvent evt( clEVT_GETCODECOMPLETE_FINISHED, pCCJob->GetTranslationUnitId(), pCCJob->GetFilename(), pCCJob->GetLocation(), pCCJob->GetResults());
        ProcessEvent(evt);
        if ( HasEventSink(clEVT_DIAGNOSTICS_UPDATED) )
        {
            ClangEvent evt( clEVT_DIAGNOSTICS_UPDATED, pCCJob->GetTranslationUnitId(), pCCJob->GetFilename(), pCCJob->GetLocation(), pCCJob->GetDiagnostics());
            ProcessEvent(evt);
        }
    }
    else if (event.GetId() == idClangGetOccurrencesTask)
    {
        ClangProxy::GetOccurrencesOfJob* pOCJob = dynamic_cast<ClangProxy::GetOccurrencesOfJob*>(pJob);
        ClangEvent evt( clEVT_GETOCCURRENCES_FINISHED, pOCJob->GetTranslationUnitId(), pOCJob->GetFilename(), pOCJob->GetLocation(), pOCJob->GetResults());
        ProcessEvent(evt);
    }
    else if (event.GetId() == idClangGetCCDocumentationTask)
    {
        ClangProxy::DocumentCCTokenJob* pCCDocJob = dynamic_cast<ClangProxy::DocumentCCTokenJob*>(pJob);
        ClangEvent evt( clEVT_GETOCCURRENCES_FINISHED, pCCDocJob->GetTranslationUnitId(), pCCDocJob->GetFilename(), pCCDocJob->GetLocation(), pCCDocJob->GetResult());
        ProcessEvent(evt);
    }

    pJob->Finalize();
}
开发者ID:progmboy,项目名称:ClangLib,代码行数:33,代码来源:clangplugin.cpp

示例2: ProcessEvent

bool AudioView::ProcessEvent(wxEvent& event)
{
  if (event.GetEventType() == wxEVT_COMMAND_MENU_SELECTED &&
      event.GetId() >= FirstEffectID &&
      event.GetId() < FirstEffectID + numEffects) {
    Effect *f = Effect::GetEffect(event.GetId() - FirstEffectID);

    TrackList *tracks = GetTracks();
    VTrack *t = tracks->First();
    
    while(t) {
      if (t->selected && t->GetKind() == (VTrack::Wave)) {
	f->DoInPlaceEffect((WaveTrack *)t, sel0, sel1);
      }
      
      t = tracks->Next();
    }
    
    PushState();
    
    FixScrollbars();
    REDRAW(trackPanel);
    REDRAW(rulerPanel);
    
    // This indicates we handled the event.
    return true;
  }
  
  return wxView::ProcessEvent(event);
}
开发者ID:ruthmagnus,项目名称:audacity,代码行数:30,代码来源:AudioView.cpp

示例3: if

void CONTEXT_MENU::CMEventHandler::onEvent( wxEvent& aEvent )
{
    TOOL_EVENT evt;
    wxEventType type = aEvent.GetEventType();

    // When the currently chosen item in the menu is changed, an update event is issued.
    // For example, the selection tool can use this to dynamically highlight the current item
    // from selection clarification popup.
    if( type == wxEVT_MENU_HIGHLIGHT )
        evt = TOOL_EVENT( TC_COMMAND, TA_CONTEXT_MENU_UPDATE, aEvent.GetId() );

    // One of menu entries was selected..
    else if( type == wxEVT_COMMAND_MENU_SELECTED )
    {
        // Store the selected position
        m_menu->m_selected = aEvent.GetId();

        // Check if there is a TOOL_ACTION for the given ID
        if( m_menu->m_toolActions.count( aEvent.GetId() ) == 1 )
        {
            evt = m_menu->m_toolActions[aEvent.GetId()]->MakeEvent();
        }
        else
        {
            // Handling non-action menu entries (e.g. items in clarification list)
            evt = TOOL_EVENT( TC_COMMAND, TA_CONTEXT_MENU_CHOICE, aEvent.GetId() );
        }
    }

    // forward the action/update event to the TOOL_MANAGER
    if( m_menu->m_tool )
        m_menu->m_tool->GetManager()->ProcessEvent( evt );
}
开发者ID:Th0rN13,项目名称:kicad-source-mirror,代码行数:33,代码来源:context_menu.cpp

示例4: OnEvent

	virtual bool OnEvent(wxPropertyGrid* propGrid,
		wxPGProperty* prop,
		wxWindow* ctrl,
		wxEvent& evt) const override
	{
		if (evt.GetEventType() == wxEVT_COMMAND_BUTTON_CLICKED)
		{
			wxPGMultiButton* buttons = (wxPGMultiButton*)propGrid->GetEditorControlSecondary();

			if (evt.GetId() == buttons->GetButtonId(0))
			{
				auto bprop = dynamic_cast<BtnProperty*>(prop);
				if (bprop && bprop->mFunc)
				{
					OnBtnFunc& f = bprop->mFunc;
					return f(prop);
				}
				return false;

				//auto it = mBtnPropMap.find(prop);
				//if (mBtnPropMap.end() != it)
				//	return (it->second) ? it->second(prop) : false;


			}//if (evt.GetId() == buttons->GetButtonId(0))
		}//if (evt.GetEventType() == wxEVT_COMMAND_BUTTON_CLICKED)
		return false;
		// всё что не выбрано кнопкой "..." не принимаем return wxPGTextCtrlEditor::OnEvent(propGrid, property, ctrl, event);	
	}
开发者ID:alex3696,项目名称:wh3,代码行数:29,代码来源:BtnProperty.cpp

示例5: FilterEvent

int AbstractApp::FilterEvent(wxEvent& event) {
    if (event.GetEventType() == wxEVT_SET_FOCUS) {
        wxObject* object = event.GetEventObject();
        wxWindow* window = wxDynamicCast(object, wxWindow);
        if (window != NULL) {
            wxFrame* frame = wxDynamicCast(window, wxFrame);
            wxWindow* parent = window->GetParent();
            while (frame == NULL && parent != NULL) {
                frame = wxDynamicCast(parent, wxFrame);
                parent = parent->GetParent();
            }

            // If we found a frame, and window is not a menu, then send a command event to the frame
            // that will cause it to rebuild its menu. The frame must keep track of whether the menu actually needs
            // to be rebuilt (only if MapGLCanvas previously had focus and just lost it or vice versa).
            // make sure the command is sent via QueueEvent to give wxWidgets a chance to update the focus states!
            if (frame != NULL) {
                //bool isMenu = wxDynamicCast(window, wxMenu) || wxDynamicCast(window, wxMenuItem);
                //if (!isMenu) {
                wxCommandEvent focusEvent(TrenchBroom::View::EditorFrame::EVT_SET_FOCUS);
                focusEvent.SetClientData(event.GetEventObject());
                focusEvent.SetEventObject(frame);
                focusEvent.SetId(event.GetId());
                AddPendingEvent(focusEvent);
                //}
            }
        }
    } else if (event.GetEventType() == TrenchBroom::View::EditorFrame::EVT_SET_FOCUS) {
        wxFrame* frame = wxStaticCast(event.GetEventObject(), wxFrame);
        frame->ProcessWindowEventLocally(event);
        return 1;
    }

    return wxApp::FilterEvent(event);
}
开发者ID:fluffyfreak,项目名称:TrenchBroom,代码行数:35,代码来源:AbstractApp.cpp

示例6: ProcessEvent

bool AudacityProject::ProcessEvent(wxEvent & event)
{
   int numEffects = Effect::GetNumEffects(false);
   int numPlugins = Effect::GetNumEffects(true);
   Effect *f = NULL;

   if (event.GetEventType() == wxEVT_COMMAND_MENU_SELECTED &&
       event.GetId() >= FirstEffectID &&
       event.GetId() < FirstEffectID + numEffects)
      f = Effect::GetEffect(event.GetId() - FirstEffectID, false);
   
   if (event.GetEventType() == wxEVT_COMMAND_MENU_SELECTED &&
       event.GetId() >= FirstPluginID &&
       event.GetId() < FirstPluginID + numPlugins)
      f = Effect::GetEffect(event.GetId() - FirstPluginID, true);

   if (f) {
      TrackListIterator iter(mTracks);
      VTrack *t = iter.First();
      int count = 0;

      while (t) {
         if (t->GetSelected() && t->GetKind() == (VTrack::Wave))
            count++;
         t = iter.Next();
      }

      if (count == 0 || mViewInfo.sel0 == mViewInfo.sel1) {
         wxMessageBox(_("No audio data is selected."));
         return true;
      }

      if (f->DoEffect(this, mTracks, mViewInfo.sel0, mViewInfo.sel1)) {
         PushState(_("Applied an effect."));   // maybe more specific?
         FixScrollbars();
         mTrackPanel->Refresh(false);
      }
      else {
         // TODO: undo the effect if necessary?
      }

      // This indicates we handled the event.
      return true;
   }

   return wxFrame::ProcessEvent(event);
}
开发者ID:tuanmasterit,项目名称:audacity,代码行数:47,代码来源:Project.cpp

示例7: OnPopupClick

void MaterialManager::OnPopupClick(wxEvent &evt)
{
    int id = evt.GetId();
    if( id == 1000 )
    {
        g_pMaterialManager->CreateMaterial( "new" ); // the new material will only exist in the material manager.
        // TODO: this material will cause an assert on shutdown, unless released by some other code.
    }
}
开发者ID:jaccen,项目名称:MyFramework,代码行数:9,代码来源:MaterialManager.cpp

示例8: HandleMenuEvent

bool AudacityProject::HandleMenuEvent(wxEvent & event)
{
   int idz = (event.GetId() - MenuBaseID);
   if ((idz >= 0) && (idz < GetNumCommands())) {
      (this->*((audEventFunction) (this->GetCommandFunc(idz)))) (event);
   }

   return true;                 //handled message
}
开发者ID:andreipaga,项目名称:audacity,代码行数:9,代码来源:Menus.cpp

示例9: ProcessEvent

bool wxDialogEx::ProcessEvent(wxEvent& event)
{
	if(event.GetEventType() != wxEVT_MENU) {
		return wxDialog::ProcessEvent(event);
	}

	wxTextEntry* e = GetSpecialTextEntry(FindFocus(), 'V');
	if( e && event.GetId() == pasteId ) {
		e->Paste();
		return true;
	}
	else if( e && event.GetId() == selectAllId ) {
		e->SelectAll();
		return true;
	}
	else {
		return wxDialog::ProcessEvent(event);
	}
}
开发者ID:Typz,项目名称:FileZilla,代码行数:19,代码来源:dialogex.cpp

示例10:

void ComponentAnimationPlayer2D::OnRightClickOptionClicked(wxEvent &evt, int baseid)
{
    int id = evt.GetId();

    if( id == baseid + 1 )
    {
        My2DAnimInfo* p2DAnimInfo = Get2DAnimInfoObject();
        p2DAnimInfo->FillPropertiesWindow( true );
    }
}
开发者ID:JimmyLord,项目名称:MyEngine,代码行数:10,代码来源:ComponentAnimationPlayer2D.cpp

示例11: FilterEvent

// This is always the first to handle an event !
int MyApp::FilterEvent(wxEvent& event)
{
    if ( event.GetEventType() == wxEVT_BUTTON &&
            event.GetId() == MyEvtTestButton::BUTTON_ID )
    {
        wxLogMessage("Step 0 in \"How Events are Processed\":\n"
                     "App::FilterEvent");
    }

    return wxApp::FilterEvent(event);
}
开发者ID:ruifig,项目名称:nutcracker,代码行数:12,代码来源:event.cpp

示例12: HandleMenuEvent

bool AudacityProject::HandleMenuEvent(wxEvent & event)
{
   for(int i = 0; i < mCommandIDs.GetCount(); i++)
   {
      if((mCommandIDs[i] == (int *)event.GetId()) && (GetCommandState(i)))
      {
         (this->*((wxEventFunction) (this->GetCommandFunc(i))))(event);
      }
   }

   return true; //handled message
}
开发者ID:andreipaga,项目名称:audacity,代码行数:12,代码来源:Menus.cpp

示例13: ProcessEvent

    bool ProcessEvent(wxEvent& evt)
    {
        if (evt.GetEventType() == wxEVT_COMMAND_MENU_SELECTED)
        {
            m_last_id = evt.GetId();
            return true;
        }

        if (GetNextHandler())
            return GetNextHandler()->ProcessEvent(evt);

        return false;
    }
开发者ID:cubemoon,项目名称:GD,代码行数:13,代码来源:FlatAuiTabArt.cpp

示例14: ProcessEvent

    bool ProcessEvent(wxEvent& evt)
    {
        if (evt.GetEventType() == wxEVT_MENU)
        {
            m_lastId = evt.GetId();
            return true;
        }

        if (GetNextHandler())
            return GetNextHandler()->ProcessEvent(evt);

        return false;
    }
开发者ID:futurepr0n,项目名称:wxWidgets,代码行数:13,代码来源:tabart.cpp

示例15: FilterEvent

// Prevent recursive entry of CMainDocument::RequestRPC()
int CBOINCGUIApp::FilterEvent(wxEvent &event) {
    int theEventType;
    wxDialog* theRPCWaitDialog;
    wxObject* theObject;

    if (!m_pDocument) return -1;

    theEventType = event.GetEventType();

    if (m_pDocument->WaitingForRPC()) {
        // If in RPC Please Wait dialog, reject all command 
        // and timer events except: 
        //  - RPC Finished
        //  - those for that dialog or its children
        //  - Open Manager menu item from system tray icon

        if ((theEventType == wxEVT_COMMAND_MENU_SELECTED) && (event.GetId() == wxID_OPEN)) {
            return -1;        
        }

        theRPCWaitDialog = m_pDocument->GetRPCWaitDialog();
        theObject = event.GetEventObject();
        while (theObject) {
            if (!theObject->IsKindOf(CLASSINFO(wxWindow))) break;
            if (theObject == theRPCWaitDialog) return -1;
            theObject = ((wxWindow*)theObject)->GetParent();
        }
        // Continue with rest of filtering below
    } else {
        // Do limited filtering if shutting down to allow RPC 
        // completion events but not events which start new RPCs
        if (!m_bFilterEvents) return -1;
    }

    // Allow all except Command, Timer and Mouse Moved events
    if (event.IsCommandEvent()) {
        return false;
    }
    
    if (theEventType == wxEVT_TIMER) {
        return false;
    }
    
#ifdef __WXMSW__
    if (theEventType == wxEVT_TASKBAR_MOVE) {
        return false;
    }
#endif
   
    return -1;
}
开发者ID:xiaobozi,项目名称:boinc,代码行数:52,代码来源:BOINCGUIApp.cpp


注:本文中的wxEvent::GetId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。