示例#1
0
void EditHandler::ProcessUpdateUIEvent(wxWindow *owner, wxUpdateUIEvent &event)
{
    LEditor *editor = dynamic_cast<LEditor*>(owner);

    if (event.GetId() == wxID_COPY || event.GetId() == XRCID("trim_trailing") || event.GetId() == XRCID("to_lower") || event.GetId() == XRCID("to_upper")) {
        event.Enable(editor);

    } else if (event.GetId() == wxID_CUT) {
        event.Enable(editor);

    } else if (event.GetId() == wxID_PASTE) {
#ifdef __WXGTK__
        event.Enable(editor);
#else
        event.Enable(editor && editor->CanPaste());
#endif
    } else if (event.GetId() == wxID_UNDO) {
        event.Enable(editor && editor->CanUndo());
    } else if (event.GetId() == wxID_REDO) {
        event.Enable(editor && editor->CanRedo());
    } else if (event.GetId() == wxID_SELECTALL) {
        event.Enable(editor && editor->GetLength() > 0);
    } else if (event.GetId() == wxID_DUPLICATE || event.GetId() == wxID_DELETE) {
        event.Enable(true);
    } else {
        event.Enable(false);
    }
    event.Skip(false);
}
示例#2
0
void CResolverPage::OnUpdateButtons(wxUpdateUIEvent& e)
{
  bool bEnable = false;
  if ((e.GetId() == ID_BTN_DELETE) || (e.GetId() == ID_BTN_EXPORT)) {
    if (m_dvResolvers->GetSelectedItemsCount() > 0) {
      // Can only delete/export regex resolvers or orphaned addressbooks
      const CResolver *pR = m_model.getEntry(
          m_pUIModel->GetRow(m_dvResolvers->GetSelection()));
      if (pR) {
        bEnable = (!pR->isAvailable() || (pR->getType() == RT_ONLINE_REGEX));
      }
    }
  }
  else if (e.GetId() == ID_BTN_MOVE_UP) {
    bEnable = (m_pUIModel->GetRowCount() > 1) &&
              (m_dvResolvers->GetSelectedItemsCount() > 0) &&
              (m_pUIModel->GetRow(m_dvResolvers->GetSelection()) > 0);
  }
  else if (e.GetId() == ID_BTN_MOVE_DOWN) {
    bEnable = (m_pUIModel->GetRowCount() > 1) &&
              (m_dvResolvers->GetSelectedItemsCount() > 0) &&
              (m_pUIModel->GetRow(m_dvResolvers->GetSelection()) < m_pUIModel->GetRowCount()-1);;
  }
  else if (e.GetId() == ID_BTN_ONOFF) {
    if (m_dvResolvers->GetSelectedItemsCount() > 0) {
      const CResolver *pR = m_model.getEntry(
          m_pUIModel->GetRow(m_dvResolvers->GetSelection()));
      bEnable = pR->isAvailable();
      e.SetText(pR->isEnabled() ? _("Dis&able") : _("En&able"));
    }
  }
  e.Enable(bEnable);
}
示例#3
0
void wxGISFeatureDetailsPanel::OnMenuUpdateUI(wxUpdateUIEvent& event)
{
    if (event.GetId() == ID_WG_RESET_SORT || event.GetId() >= ID_WG_ENCODING_START)
		return;
	if(m_listCtrl->GetSelectedItemCount() == 0)
		event.Enable(false);
	else
		event.Enable(true);
}
示例#4
0
/// Updates the radio button enable and selected states
void DragButtonList::UpdateUI(wxUpdateUIEvent& event)
{
	if (event.GetId() > wxID_HIGHEST && event.GetId() <= (int) mEnableStates.GetCount() + wxID_HIGHEST) {
		event.Enable(mEnableStates[event.GetId() - wxID_HIGHEST - 1]);
	}
	if (event.GetId() == (int) mSelected + wxID_HIGHEST + 1) {
		((wxRadioButton *) event.GetEventObject())->SetValue(true); //toggles the others automatically
	}
}
示例#5
0
void AbstractApp::OnUpdateMenuItem(wxUpdateUIEvent& event) {
    if (event.GetId() == wxID_ABOUT ||
        event.GetId() == wxID_PREFERENCES ||
        event.GetId() == TrenchBroom::View::CommandIds::Menu::HelpShowHelp)
        event.Enable(true);
    else
        event.Enable(false);
    if (GetTopWindow() != NULL)
        event.Skip();
}
示例#6
0
void wxGxObjectDialog::OnCommandUI(wxUpdateUIEvent& event)
{
	wxGISCommand* pCmd = GetCommand(event.GetId());
	if(pCmd)
	{
		if(pCmd->GetKind() == enumGISCommandCheck)
			event.Check(pCmd->GetChecked());
		event.Enable(pCmd->GetEnabled());
        m_toolBar->SetToolShortHelp(event.GetId(), pCmd->GetTooltip());
    }
}
void ThreadSearchView::OnQuickOptionsUpdateUI(wxUpdateUIEvent &event)
{
    ThreadSearchFindData &findData = m_ThreadSearchPlugin.GetFindData();
    if (event.GetId() == controlIDs.Get(ControlIDs::idOptionWholeWord))
        event.Check(findData.GetMatchWord());
    else if (event.GetId() == controlIDs.Get(ControlIDs::idOptionStartWord))
        event.Check(findData.GetStartWord());
    else if (event.GetId() == controlIDs.Get(ControlIDs::idOptionMatchCase))
        event.Check(findData.GetMatchCase());
    else if (event.GetId() == controlIDs.Get(ControlIDs::idOptionRegEx))
        event.Check(findData.GetRegEx());
}
示例#8
0
void ErdPanel::OnToolUpdate(wxUpdateUIEvent& event)
{
    if(event.GetId() == XRCID("IDT_ERD_TOOL"))
        event.Check(m_nToolMode == modeDESIGN);
    else if(event.GetId() == XRCID("IDT_ERD_TABLE"))
        event.Check(m_nToolMode == modeTABLE);
    else if(event.GetId() == XRCID("IDT_ERD_LINE"))
        event.Check(m_nToolMode == modeLine);
    else if(event.GetId() == XRCID("IDT_ERD_VIEW"))
        event.Check(m_nToolMode == modeVIEW);
    else
        event.Skip();
}
void PCB_EDIT_FRAME::OnUpdateSelectTrackWidth( wxUpdateUIEvent& aEvent )
{
    if( aEvent.GetId() == ID_AUX_TOOLBAR_PCB_TRACK_WIDTH )
    {
        if( m_SelTrackWidthBox->GetSelection() != (int) GetBoard()->GetTrackWidthIndex() )
            m_SelTrackWidthBox->SetSelection( GetBoard()->GetTrackWidthIndex() );
    }
    else
    {
        bool check = ( ( ( ID_POPUP_PCB_SELECT_WIDTH1 +
                           (int) GetBoard()->GetTrackWidthIndex() ) == aEvent.GetId() ) &&
                       !GetDesignSettings().m_UseConnectedTrackWidth );
        aEvent.Check( check );
    }
}
void LIB_EDIT_FRAME::OnUpdateEditingPart( wxUpdateUIEvent& aEvent )
{
    aEvent.Enable( m_component != NULL );

    if( m_component != NULL && aEvent.GetEventObject() == m_drawToolBar )
        aEvent.Check( GetToolId() == aEvent.GetId() );
}
示例#11
0
void wxWebPanelBase::OnUpdateUI(wxUpdateUIEvent& evt)
{
    int id = evt.GetId();
    switch (id)
    {
        case wxID_UNDO:
            evt.Enable(false);  // TODO: undo needs to be implemented
            break;
            
        case wxID_REDO:
            evt.Enable(false);  // TODO: undo needs to be implemented
            break;

        case wxID_CUT:
            evt.Enable(m_browser->CanCutSelection());
            break;
            
        case wxID_COPY:
            evt.Enable(m_browser->CanCopySelection());
            break;

        case ID_CopyLink:
            evt.Enable(m_browser->CanCopyLinkLocation());
            break;
            
        case wxID_PASTE:
            evt.Enable(m_browser->CanPaste());
            break;
/* Text searching is not yet implemented.
        case ID_FindAgain:
            evt.Enable(m_find_text.Length() > 0 ? true : false);
            break;
			*/
    }
}
示例#12
0
void SubmodelsPanelT::OnButtonUpdate(wxUpdateUIEvent& UE)
{
    switch (UE.GetId())
    {
        case ID_BUTTON_LOAD:
        {
            UE.Enable(true);
            break;
        }

        case ID_BUTTON_UP:
        {
            UE.Enable(false);
            break;
        }

        case ID_BUTTON_DOWN:
        {
            UE.Enable(false);
            break;
        }

        case ID_BUTTON_UNLOAD:
        {
            UE.Enable(m_List->GetSelectedItemCount()>0);
            break;
        }
    }
}
void HtmlExportWindow::onUpdateUI(wxUpdateUIEvent& ev) {
	switch (ev.GetId()) {
		case wxID_OK:
			ev.Enable(list->hasSelection() && !getSelection().empty());
			break;
	}
}
void FOOTPRINT_EDIT_FRAME::OnUpdateOptionsToolbar( wxUpdateUIEvent& aEvent )
{
    int        id = aEvent.GetId();
    DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions();

    bool state = false;

    switch( id )
    {
    case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH:
        state = displ_opts->m_DisplayModTextFill == SKETCH;
        break;

    case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH:
        state = displ_opts->m_DisplayModEdgeFill == SKETCH;
        break;

    case ID_TB_OPTIONS_SHOW_HIGH_CONTRAST_MODE:
        state = displ_opts->m_ContrastModeDisplay;
        break;

    default:
        wxMessageBox( wxT( "FOOTPRINT_EDIT_FRAME::OnUpdateOptionsToolbar error" ) );
        break;
    }

    aEvent.Check( state );
}
void FOOTPRINT_EDIT_FRAME::OnUpdateVerticalToolbar( wxUpdateUIEvent& aEvent )
{
    aEvent.Enable( GetBoard()->m_Modules != NULL );

    if( aEvent.GetEventObject() == m_drawToolBar )
        aEvent.Check( GetToolId() == aEvent.GetId() );
}
示例#16
0
//---------------------------------------------------------
void CVIEW_Map_3D::On_Command_UI(wxUpdateUIEvent &event)
{
	switch( event.GetId() )
	{
	case ID_CMD_MAP3D_INTERPOLATED:
		event.Check(m_pImage->m_bInterpol);
		break;

	case ID_CMD_MAP3D_CENTRAL:
		event.Check(m_pImage->m_bCentral);
		break;

	case ID_CMD_MAP3D_STEREO:
		event.Check(m_pImage->m_bStereo);
		break;

	case ID_CMD_MAP3D_SEQ_PLAY:
		event.Check(m_Play_Mode == PLAY_MODE_RUN_ONCE);
		break;

	case ID_CMD_MAP3D_SEQ_PLAY_LOOP:
		event.Check(m_Play_Mode == PLAY_MODE_RUN_LOOP);
		break;

	case ID_CMD_MAP3D_SEQ_SAVE:
		event.Check(m_Play_Mode == PLAY_MODE_RUN_SAVE);
		break;
	}
}
示例#17
0
void MyFrame::OnUpdateUI( wxUpdateUIEvent &event )
{
    switch (event.GetId())
    {
        case ID_COPY:
            event.Enable( false );
            break;
        case ID_CUT:
            event.Enable( false );
            break;
        case ID_PASTE:
            event.Enable( false );
            break;
        case ID_DELETE:
#ifdef __WXUNIVERSAL__
            event.Enable( m_text->HasSelection() );
#else
            {
              long selFrom, selTo;
              m_text->GetSelection(& selFrom, & selTo);
              event.Enable( selFrom != selTo );
            }
#endif
            break;
        default:
            break;
    }
}
//---------------------------------------------------------
void CVIEW_Map_3D::On_Command_UI(wxUpdateUIEvent &event)
{
    switch( event.GetId() )
    {
    case ID_CMD_MAP3D_CENTRAL:
        event.Check(m_pPanel->Get_Projector().is_Central());
        break;

    case ID_CMD_MAP3D_CENTRAL_LESS:
    case ID_CMD_MAP3D_CENTRAL_MORE:
        event.Enable(m_pPanel->Get_Projector().is_Central());
        break;

    case ID_CMD_MAP3D_INTERPOLATED:
        event.Check(m_pPanel->m_Parameters("DRAPE_MODE")->asInt() != 0);
        break;

    case ID_CMD_MAP3D_STEREO:
        event.Check(m_pPanel->m_Parameters("STEREO")->asBool());
        break;

    case ID_CMD_MAP3D_SEQ_PLAY:
        event.Check(m_pPanel->Play_Get_State() == SG_3DVIEW_PLAY_RUN_ONCE);
        break;

    case ID_CMD_MAP3D_SEQ_PLAY_LOOP:
        event.Check(m_pPanel->Play_Get_State() == SG_3DVIEW_PLAY_RUN_LOOP);
        break;

    case ID_CMD_MAP3D_SEQ_SAVE:
        event.Check(m_pPanel->Play_Get_State() == SG_3DVIEW_PLAY_RUN_SAVE);
        break;
    }
}
示例#19
0
void MyFrame::OnUpdateSetStyle(wxUpdateUIEvent& event)
{
    long currentStyle = wxSTB_DEFAULT_STYLE;
    if (GetStatusBar())
        currentStyle = GetStatusBar()->GetWindowStyle();

    switch (event.GetId())
    {
        case StatusBar_SetStyleSizeGrip:
            event.Check((currentStyle & wxSTB_SIZEGRIP) != 0);
            break;
        case StatusBar_SetStyleShowTips:
            event.Check((currentStyle & wxSTB_SHOW_TIPS) != 0);
            break;

        case StatusBar_SetStyleEllipsizeStart:
            event.Check((currentStyle & wxSTB_ELLIPSIZE_START) != 0);
            break;
        case StatusBar_SetStyleEllipsizeMiddle:
            event.Check((currentStyle & wxSTB_ELLIPSIZE_MIDDLE) != 0);
            break;
        case StatusBar_SetStyleEllipsizeEnd:
            event.Check((currentStyle & wxSTB_ELLIPSIZE_END) != 0);
            break;
    }
}
示例#20
0
//---------------------------------------------------------
bool CWKSP_Map_Layer::On_Command_UI(wxUpdateUIEvent &event)
{
	switch( event.GetId() )
	{
	default:
		return( CWKSP_Base_Item::On_Command_UI(event) );

	case ID_CMD_SHAPES_EDIT_SHAPE:
	case ID_CMD_SHAPES_EDIT_ADD_SHAPE:
	case ID_CMD_SHAPES_EDIT_DEL_SHAPE:
	case ID_CMD_SHAPES_EDIT_ADD_PART:
	case ID_CMD_SHAPES_EDIT_DEL_PART:
	case ID_CMD_SHAPES_EDIT_DEL_POINT:
	case ID_CMD_SHAPES_EDIT_SEL_CLEAR:
	case ID_CMD_SHAPES_EDIT_SEL_INVERT:
		return( m_pLayer->On_Command_UI(event) );

	case ID_CMD_MAPS_LAYER_SHOW:
		event.Check(m_bShow);
		break;

	case ID_CMD_MAPS_MOVE_TOP:
	case ID_CMD_MAPS_MOVE_UP:
		event.Enable(Get_Index() > 0);
		break;

	case ID_CMD_MAPS_MOVE_DOWN:
	case ID_CMD_MAPS_MOVE_BOTTOM:
		event.Enable(Get_Index() < Get_Manager()->Get_Count() - 1);
		break;
	}

	return( true );
}
void PCB_EDIT_FRAME::OnUpdateSelectViaSize( wxUpdateUIEvent& aEvent )
{
    if( aEvent.GetId() == ID_AUX_TOOLBAR_PCB_VIA_SIZE )
    {
        if( m_SelViaSizeBox->GetSelection() != (int) GetDesignSettings().GetViaSizeIndex() )
            m_SelViaSizeBox->SetSelection( GetDesignSettings().GetViaSizeIndex() );
    }
    else
    {
        bool check = ( ( ( ID_POPUP_PCB_SELECT_VIASIZE1 +
                           (int) GetDesignSettings().GetViaSizeIndex() ) == aEvent.GetId() ) &&
                       !GetDesignSettings().m_UseConnectedTrackWidth &&
                       !GetDesignSettings().UseCustomTrackViaSize() );

        aEvent.Check( check );
    }
}
示例#22
0
bool MemCheckPlugin::IsReady(wxUpdateUIEvent& event)
{
    bool ready = !m_mgr->IsBuildInProgress() && !m_terminal.IsRunning();
    int id = event.GetId();
    if(id == XRCID("memcheck_check_active_project")) {
        ready &= !m_mgr->GetWorkspace()->GetActiveProjectName().IsEmpty();
    }
    return ready;
}
示例#23
0
void DebuggerMenuHandler::OnWindowMenuItemUpdateUI(wxUpdateUIEvent& event)
{
    WindowMenuItemsMap::iterator it = m_windowMenuItems.find(event.GetId());
    if (it != m_windowMenuItems.end())
    {
        event.Check(it->second.item->IsChecked());
        event.Enable(it->second.item->IsEnabled());
    }
}
示例#24
0
void GotoDefinitionHandler::ProcessUpdateUIEvent(wxWindow *owner, wxUpdateUIEvent &event)
{
    LEditor *editor = dynamic_cast<LEditor*>(owner);
    if (event.GetId() == XRCID("goto_previous_definition")) {
        event.Enable(editor && editor->CanGotoPreviousDefintion());
    } else {
        event.Enable(editor != NULL);
    }
}
示例#25
0
void HeeksRibbon::OnUpdateExternalButton(wxUpdateUIEvent& event)
{
	RibbonButtonData* data = GetRibbonButtonData(event.GetId());
	if (data)
	{
		if(data->m_on_update_button)
			(*(data->m_on_update_button))(event);
	}
}
void LIB_EDIT_FRAME::OnUpdateEditingPart( wxUpdateUIEvent& aEvent )
{
    LIB_PART* part = GetCurPart();

    aEvent.Enable( part != NULL );

    if( part && aEvent.GetEventObject() == m_drawToolBar )
        aEvent.Check( GetToolId() == aEvent.GetId() );
}
示例#27
0
void wxExFrame::OnUpdateUI(wxUpdateUIEvent& event)
{
    switch (event.GetId())
    {
#if wxUSE_STATUSBAR
    case ID_UPDATE_STATUS_BAR:
    {
        wxExSTC* stc = GetSTC();

        if (stc != NULL && stc->HasFocus())
        {
            UpdateStatusBar(stc, "PaneInfo");
            UpdateStatusBar(stc, "PaneLexer");
            UpdateStatusBar(stc, "PaneFileType");
        }
        else
        {
            wxExListView* lv = GetListView();

            if (lv != NULL && lv->HasFocus())
            {
                UpdateStatusBar(lv);
            }
        }
    }
    break;
#endif

    case ID_VIEW_MENUBAR:
        if (GetMenuBar() != NULL)
        {
            event.Check(GetMenuBar()->IsShown());
        }
        else
        {
            event.Check(false);
        }
        break;

#if wxUSE_STATUSBAR
    case ID_VIEW_STATUSBAR:
        if (GetStatusBar() != NULL)
        {
            event.Check(GetStatusBar()->IsShown());
        }
        else
        {
            event.Check(false);
        }
        break;
#endif

    default:
        wxFAIL;
        break;
    }
}
示例#28
0
void NyqBench::OnMenuUpdate(wxUpdateUIEvent & e)
{
   if (e.GetId() != wxID_REVERT_TO_SAVED) {
      e.Enable((mScript->GetLastPosition() > 0) || mScript->IsModified());
   }
   else {
      e.Enable(mScript->IsModified());
   }
}
void PCB_EDIT_FRAME::OnUpdateZoneDisplayStyle( wxUpdateUIEvent& aEvent )
{
    int selected = aEvent.GetId() - ID_TB_OPTIONS_SHOW_ZONES;

    if( aEvent.IsChecked() && ( DisplayOpt.DisplayZonesMode == selected ) )
        return;

    aEvent.Check( DisplayOpt.DisplayZonesMode == selected );
}
示例#30
0
	void MutApp::PassEventToDocManagerUPD(wxUpdateUIEvent& event)
	{
		DEBUGLOG(eventqueue,_T("UpdateUI: %p, id=%d, type=%d"),
			 static_cast<void *>(&event),
			 event.GetId(),
			 (int)event.GetEventType()
			);
		if (!(document_manager->ProcessEvent(event)))
			event.Skip();
	}