本文整理汇总了C++中wxEvent::GetEventObject方法的典型用法代码示例。如果您正苦于以下问题:C++ wxEvent::GetEventObject方法的具体用法?C++ wxEvent::GetEventObject怎么用?C++ wxEvent::GetEventObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wxEvent
的用法示例。
在下文中一共展示了wxEvent::GetEventObject方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnTestEvent
void OnTestEvent(wxEvent& evt)
{
if ( evt.GetEventObject() == gs_psrc1 )
gs_value += 1;
else if ( evt.GetEventObject() == gs_psrc2 )
gs_value += 0x10000;
}
示例2: 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);
}
示例3: ProcessEvent
bool wxBackgroundBitmap::ProcessEvent(wxEvent &Event)
{
if(Event.GetEventType() == wxEVT_ERASE_BACKGROUND)
{
if(Bitmap.IsOk())
{
}
else
Event.Skip();
}
else if(Event.GetEventType() == wxEVT_PAINT)
{
bool TransactionIsOk = false;
if(Bitmap.IsOk())
{
wxWindow * TempWindow = wxDynamicCast(Event.GetEventObject(),wxWindow);
if(TempWindow)
{
wxAutoBufferedPaintDC DC(TempWindow);
int w, h;
TempWindow->GetClientSize(&w, &h);
wxSize current( w,h);
if ( current != m_lastSize )
{
wxImage TempImage = Bitmap.ConvertToImage();
TempImage.Rescale(w,h);
Bitmap = wxBitmap( TempImage );
}
DC.DrawBitmap(Bitmap, 0, 0, false);
m_lastSize = current;
TransactionIsOk = true;
}
}
if(TransactionIsOk == false)
Event.Skip();
}
else if(Event.GetEventType() == wxEVT_SIZE)
{
wxWindow * TempWindow = wxDynamicCast(Event.GetEventObject(),wxWindow);
if(TempWindow)
{
TempWindow->Refresh();
}
Event.Skip();
}
else
return Inherited::ProcessEvent(Event);
return true;
}
示例4: OnClangReparseFinished
void ClangPlugin::OnClangReparseFinished( wxEvent& event )
{
//#ifdef CLANGPLUGIN_TRACE_FUNCTIONS
fprintf(stdout,"%s\n", __PRETTY_FUNCTION__);
//#endif
ClangProxy::ReparseJob* pJob = static_cast<ClangProxy::ReparseJob*>(event.GetEventObject());
if ( HasEventSink(clEVT_DIAGNOSTICS_UPDATED ) )
{
ClangProxy::GetDiagnosticsJob job( cbEVT_CLANG_ASYNCTASK_FINISHED, idClangGetDiagnostics, pJob->GetTranslationUnitId(), pJob->GetFilename() );
m_Proxy.AppendPendingJob(job);
}
ClangEvent evt( clEVT_REPARSE_FINISHED, pJob->GetTranslationUnitId(), pJob->GetFilename());
ProcessEvent(evt);
#if 0
if (pJob->m_TranslId != this->m_TranslUnitId)
{
std::cout<<" Reparse finished but another file was loaded"<<std::endl;
return;
}
if (m_ReparseNeeded)
{
fprintf(stdout,"%s: Reparsing again, was modified while we were busy...\n", __PRETTY_FUNCTION__);
wxCommandEvent evt(cbEVT_COMMAND_REPARSE, idReparse);
AddPendingEvent(evt);
}
else
{
//m_DiagnosticTimer.Stop();
//m_DiagnosticTimer.Start(DIAGNOSTIC_DELAY, wxTIMER_ONE_SHOT);
}
#endif
}
示例5: 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();
}
示例6: ProcessEvent
bool wxAuiMDIParentFrame::ProcessEvent(wxEvent& event)
{
// stops the same event being processed repeatedly
if (m_pLastEvt == &event)
return false;
m_pLastEvt = &event;
// let the active child (if any) process the event first.
bool res = false;
if (m_pActiveChild &&
event.IsCommandEvent() &&
event.GetEventObject() != m_pClientWindow &&
!(event.GetEventType() == wxEVT_ACTIVATE ||
event.GetEventType() == wxEVT_SET_FOCUS ||
event.GetEventType() == wxEVT_KILL_FOCUS ||
event.GetEventType() == wxEVT_CHILD_FOCUS ||
event.GetEventType() == wxEVT_COMMAND_SET_FOCUS ||
event.GetEventType() == wxEVT_COMMAND_KILL_FOCUS )
)
{
res = m_pActiveChild->GetEventHandler()->ProcessEvent(event);
}
if (!res)
{
// if the event was not handled this frame will handle it,
// which is why we need the protection code at the beginning
// of this method
res = wxEvtHandler::ProcessEvent(event);
}
m_pLastEvt = NULL;
return res;
}
示例7: ConfigControl
void GamepadPage::ConfigControl(wxEvent& event)
{
m_control_dialog = new ControlDialog(this, m_plugin, ((ControlButton*)event.GetEventObject())->control_reference);
m_control_dialog->ShowModal();
m_control_dialog->Destroy();
// update changes that were made in the dialog
UpdateGUI();
}
示例8: OnRadioButton
void wxRadioBox::OnRadioButton(wxEvent& event)
{
int n = m_buttons.Index((wxRadioButton *)event.GetEventObject());
wxCHECK_RET( n != wxNOT_FOUND, _T("click from alien radio button") );
m_selection = n;
SendRadioEvent();
}
示例9: ClearControl
void GamepadPage::ClearControl(wxEvent& event)
{
ControlButton* const btn = (ControlButton*)event.GetEventObject();
btn->control_reference->expression.clear();
btn->control_reference->range = 1.0;
controller->UpdateReferences(g_controller_interface);
// update changes
UpdateGUI();
}
示例10: ProcessEvent
// Extend event processing to call OnCommand
bool wxPropertyFormView::ProcessEvent(wxEvent& event)
{
if (wxEvtHandler::ProcessEvent(event))
return true;
else if (event.IsCommandEvent() && !event.IsKindOf(CLASSINFO(wxUpdateUIEvent)) && event.GetEventObject())
{
OnCommand(* ((wxWindow*) event.GetEventObject()), (wxCommandEvent&) event);
return true;
}
else
return false;
}
示例11: ClearControl
void GamepadPage::ClearControl(wxEvent& event)
{
ControlButton* const btn = (ControlButton*)event.GetEventObject();
btn->control_reference->expression.clear();
btn->control_reference->range = 1.0f;
std::lock_guard<std::recursive_mutex> lk(m_plugin.controls_lock);
controller->UpdateReferences(g_controller_interface);
// update changes
UpdateGUI();
}
示例12: 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;
}
示例13: OnWindowOpen
// ----------------------------------------------------------------------------
void MouseSap::OnWindowOpen(wxEvent& event)
// ----------------------------------------------------------------------------
{
// wxEVT_CREATE entry
// Have to do this especially for split windows since CodeBlocks does not have
// events when opening/closing split windows
wxWindow* pWindow = (wxWindow*)(event.GetEventObject());
// Some code (at times) is not issuing event EVT_APP_STARTUP_DONE
// so here we do it ourselves. If not initialized and this is the first
// scintilla window, initialize now.
if ( (not m_bEditorsAttached)
&& ( pWindow->GetName().Lower() == wxT("sciwindow")) )
OnAppStartupDoneInit();
// Attach a split window (or any other window)
if ( m_bEditorsAttached )
{
wxWindow* pWindow = (wxWindow*)(event.GetEventObject());
cbEditor* ed = 0;
ed = Manager::Get()->GetEditorManager()->GetBuiltinActiveEditor();
if (ed)
{
if (pWindow->GetParent() == ed)
{ Attach(pWindow);
#ifdef LOGGING
LOGIT( _T("OnWindowOpen Attached:%p name: %s"),
pWindow, pWindow->GetName().GetData() );
#endif //LOGGING
}
}//fi (ed)
}//fi m_bNote...
event.Skip();
}//OnWindowOpen
示例14: FilterEvent
int mmGUIApp::FilterEvent(wxEvent &event)
{
int ret = wxApp::FilterEvent(event);
if (event.GetEventType() == wxEVT_SHOW)
{
wxWindow *win = (wxWindow*)event.GetEventObject();
if (win && win->IsTopLevel() && win != this->m_frame) // wxDialog & wxFrame http://docs.wxwidgets.org/trunk/classwx_top_level_window.html
{
Model_Usage::instance().pageview(win);
}
}
return ret;
}
示例15: OnWindowClose
// ----------------------------------------------------------------------------
void MouseSap::OnWindowClose(wxEvent& event)
// ----------------------------------------------------------------------------
{
// wxEVT_DESTROY entry
wxWindow* pWindow = (wxWindow*)(event.GetEventObject());
if ( (pWindow) && (m_EditorPtrs.Index(pWindow) != wxNOT_FOUND))
{ // window is one of ours
Detach(pWindow);
#ifdef LOGGING
LOGIT( _T("OnWindowClose Detached %p"), pWindow);
#endif //LOGGING
}
event.Skip();
}//OnWindowClose