本文整理汇总了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();
}
示例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);
}
示例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 );
}
示例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);
}
示例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);
}
示例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);
}
示例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.
}
}
示例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
}
示例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);
}
}
示例10:
void ComponentAnimationPlayer2D::OnRightClickOptionClicked(wxEvent &evt, int baseid)
{
int id = evt.GetId();
if( id == baseid + 1 )
{
My2DAnimInfo* p2DAnimInfo = Get2DAnimInfoObject();
p2DAnimInfo->FillPropertiesWindow( true );
}
}
示例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);
}
示例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
}
示例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;
}
示例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;
}
示例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;
}