void MessageWidget::SelectedMenuMessagesSettings(QAction *pAction) { if (pAction != NULL) { if (pAction->text().compare(Homer::Gui::MessageWidget::tr("Show window")) == 0) { ToggleVisibility(); return; } if (pAction->text().compare(Homer::Gui::MessageWidget::tr("Close window")) == 0) { ToggleVisibility(); return; } if (pAction->text().compare(Homer::Gui::MessageWidget::tr("Save history")) == 0) { mTbMessageHistory->Save(); return; } if (pAction->text().compare(Homer::Gui::MessageWidget::tr("Add to contacts")) == 0) { LOG(LOG_VERBOSE, "Adding this participant to contacts"); AddPArticipantToContacts(); return; } } }
CWidgetActiveTransfer::CWidgetActiveTransfer(wxWindow* pParent, BSLHOST hHost, BSLTRANSFER hTransfer) : CWidgetBase(pParent, ID_WIDGETACTIVETRANSFER) { CBSLClient* pState = wxGetApp().GetState(); CBSLTransfer bslTransfer; m_pButtonBar = NULL; m_pButtonBarSizer = NULL; m_hHost = hHost; m_hTransfer = hTransfer; // Create Controls CreateControls(true, true, false); // Update control state. pState->GetTransfer(m_hTransfer, &bslTransfer); SetWidgetName(bslTransfer.GetName()); UpdateControls(bslTransfer); UpdateControlsButtonBar(bslTransfer); ToggleVisibility(bslTransfer); // Give time for all the controls to figure out their layout and render // properly. wxCommandEvent evt(wxEVT_WIDGETACTIVETRANSFER_INIT); AddPendingEvent(evt); }
void FilePathPanel::SetAddToProject(bool add) { cbProject* prj = Manager::Get()->GetProjectManager()->GetActiveProject(); add = add && prj; chkAddToProject->SetValue(add); ToggleVisibility(add); }
void Pyx::Graphics::GraphicsContext::SetMainRenderer(Renderer::IRenderer* pRenderer) { PYX_ASSERT_A(pRenderer != nullptr); m_pMainRenderer = pRenderer; PyxContext::GetInstance().Log(XorStringA("[Graphics] Using renderer : ") + std::string(pRenderer->GetRendererTypeString())); auto pGui = GuiContext::GetInstance().GetGui(); if (pGui) pGui->ToggleVisibility(true); }
void CWidgetActiveTransfer::OnTransferUpdate(CBSLTransferEvent& event) { CBSLTransfer bslTransfer; event.GetTransfer(&bslTransfer); ToggleVisibility(bslTransfer); if (bslTransfer.IsTransferActive()) { UpdateControlsButtonBar(bslTransfer); if (IsContentsShown()) { UpdateControls(bslTransfer); } } }
void Pyx::Graphics::Gui::ImGuiImpl::OnFrame() { if (m_isInitialized) { if (!m_isResourcesCreated) CreateResources(); if (m_isResourcesCreated) { auto* pRenderer = GraphicsContext::GetInstance().GetMainRenderer(); if (pRenderer) { auto& io = ImGui::GetIO(); if (Input::InputContext::GetInstance().CursorIsVisible() && pRenderer->GetAttachedWindow() == GetForegroundWindow()) { auto cursorPos = Input::InputContext::GetInstance().GetCursorPosition(); ScreenToClient(pRenderer->GetAttachedWindow(), &cursorPos); io.MousePos.x = cursorPos.x; io.MousePos.y = cursorPos.y; io.MouseDown[0] = GetAsyncKeyState(VK_LBUTTON) != 0; io.MouseDown[1] = GetAsyncKeyState(VK_RBUTTON) != 0; io.MouseDown[2] = GetAsyncKeyState(VK_MBUTTON) != 0; io.KeyCtrl = GetAsyncKeyState(VK_CONTROL) != 0; io.KeyShift = GetAsyncKeyState(VK_SHIFT) != 0; io.KeyAlt = GetAsyncKeyState(VK_MENU) != 0; } switch (pRenderer->GetRendererType()) { case RendererType::D3D9: { ImGui_ImplDX9_NewFrame(); break; } case RendererType::D3D11: { ImGui_ImplDX11_NewFrame(); break; } default: return; } if (m_isVisible) { BuildMainMenuBar(); if (m_showConsole) BuildLogsWindow(); if (m_showDebugWindow) BuildDebugWindow(); GetOnRenderCallbacks().Run(this); Scripting::ScriptingContext::GetInstance().FireCallbacks(XorStringW(L"ImGui.OnRender")); ImGui::Render(); } } static int lastToggleVisibilityTick = 0; if (GetTickCount() - lastToggleVisibilityTick > 250) { bool shouldToggleGui = true; for (auto vKey : PyxContext::GetInstance().GetSettings().GuiToggleVisibilityHotkeys) { if (GetAsyncKeyState(vKey) == NULL) { shouldToggleGui = false; break; } } if (shouldToggleGui) { ToggleVisibility(!IsVisible()); lastToggleVisibilityTick = GetTickCount(); } } static int lastToggleConsoleVisibilityTick = 0; if (GetTickCount() - lastToggleConsoleVisibilityTick > 250) { bool shouldToggleConsole = true; for (auto vKey : PyxContext::GetInstance().GetSettings().ImGuiToggleConsoleHotkeys) { if (GetAsyncKeyState(vKey) == NULL) { shouldToggleConsole = false; break; } } if (shouldToggleConsole) { m_showConsole = !m_showConsole; lastToggleConsoleVisibilityTick = GetTickCount(); } } } } }
void MessageWidget::Init(QMenu *pMenu, QString pParticipant, enum TransportType pParticipantTransport, bool pVisible) { mParticipant = pParticipant; mParticipantTransport = pParticipantTransport; initializeGUI(); mPbCall->SetPartner(mParticipant, mParticipantTransport); //#################################################################### //### create the remaining necessary menu item and short cuts //#################################################################### if (pMenu != NULL) { mAssignedAction = pMenu->addAction(pParticipant); mAssignedAction->setCheckable(true); mAssignedAction->setChecked(pVisible); QIcon tIcon; tIcon.addPixmap(QPixmap(":/images/22_22/Checked.png"), QIcon::Normal, QIcon::On); tIcon.addPixmap(QPixmap(":/images/22_22/Unchecked.png"), QIcon::Normal, QIcon::Off); mAssignedAction->setIcon(tIcon); } if (mAssignedAction != NULL) connect(mAssignedAction, SIGNAL(triggered()), this, SLOT(ToggleVisibility())); //#################################################################### //### update GUI //#################################################################### //TODO: remove the following if the feature is complete #ifdef RELEASE_VERSION mPbFile->setEnabled(false); #endif setWindowTitle(mParticipant); connect(mTeMessage, SIGNAL(SendTrigger()), this, SLOT(SendMessage())); connect(mPbFile, SIGNAL(released()), this, SLOT(SendFile())); connect(mPbAdd, SIGNAL(released()), this, SLOT(AddPArticipantToContacts())); if(IsKnownContact()) { mPbAdd->hide(); }else { mPbAdd->show(); } if (pVisible) { show(); }else { hide(); } UpdateParticipantState(CONTACT_UNDEFINED_STATE); //### set focus setFocus mTeMessage->setFocus(Qt::TabFocusReason); // are we part of broadcast window? if (mParticipant == BROACAST_IDENTIFIER) { mPbAdd->hide(); mPbCall->setEnabled(false); } }
void MessageWidget::closeEvent(QCloseEvent *pEvent) { ToggleVisibility(); }
FilePathPanel::FilePathPanel(wxWindow* parent,wxWindowID id) : txtFilename(0), btnBrowse(0), lblGuard(0), txtGuard(0), chkAddToProject(0), clbTargets(0), btnAll(0), btnNone(0), m_ExtFilter(_T("")), m_Selection(-1) { //(*Initialize(FilePathPanel) wxBoxSizer* BoxSizer1; wxStaticText* StaticText1; wxStaticText* StaticText2; wxStaticText* StaticText4; Create(parent,id,wxDefaultPosition,wxDefaultSize,wxTAB_TRAVERSAL,_T("wxPanel")); BoxSizer1 = new wxBoxSizer(wxVERTICAL); StaticText1 = new wxStaticText(this,ID_STATICTEXT1,_("Please enter the file\'s location and name and\nwhether to add it to the active project."),wxDefaultPosition,wxDefaultSize,0,_T("ID_STATICTEXT1")); BoxSizer1->Add(StaticText1,0,wxALL|wxALIGN_LEFT|wxALIGN_TOP,8); StaticText2 = new wxStaticText(this,ID_STATICTEXT2,_("Filename with full path:"),wxDefaultPosition,wxDefaultSize,0,_T("ID_STATICTEXT2")); BoxSizer1->Add(StaticText2,0,wxTOP|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); BoxSizer2 = new wxBoxSizer(wxHORIZONTAL); txtFilename = new wxTextCtrl(this,ID_TEXTCTRL1,_("Text"),wxDefaultPosition,wxDefaultSize,0,wxDefaultValidator,_T("ID_TEXTCTRL1")); BoxSizer2->Add(txtFilename,1,wxALL|wxALIGN_LEFT|wxALIGN_TOP,0); btnBrowse = new wxButton(this,ID_BUTTON1,_("..."),wxDefaultPosition,wxSize(22,22),0,wxDefaultValidator,_T("ID_BUTTON1")); BoxSizer2->Add(btnBrowse,0,wxALL|wxALIGN_LEFT|wxALIGN_TOP,0); BoxSizer1->Add(BoxSizer2,0,wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); lblGuard = new wxStaticText(this,ID_STATICTEXT3,_("Header guard word:"),wxDefaultPosition,wxDefaultSize,0,_T("ID_STATICTEXT3")); BoxSizer1->Add(lblGuard,0,wxTOP|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); txtGuard = new wxTextCtrl(this,ID_TEXTCTRL2,_("Text"),wxDefaultPosition,wxDefaultSize,0,wxDefaultValidator,_T("ID_TEXTCTRL2")); BoxSizer1->Add(txtGuard,0,wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); BoxSizer1->Add(-1,-1,0,wxALL|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,0); chkAddToProject = new wxCheckBox(this,ID_CHECKBOX1,_("Add file to active project"),wxDefaultPosition,wxDefaultSize,0,wxDefaultValidator,_T("ID_CHECKBOX1")); chkAddToProject->SetValue(false); BoxSizer1->Add(chkAddToProject,0,wxTOP|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); FlexGridSizer1 = new wxFlexGridSizer(0,2,0,0); FlexGridSizer1->AddGrowableCol(1); FlexGridSizer1->AddGrowableRow(1); FlexGridSizer1->Add(16,16,0,wxALL|wxALIGN_LEFT|wxALIGN_TOP,0); StaticText4 = new wxStaticText(this,ID_STATICTEXT4,_("In build target(s):"),wxDefaultPosition,wxDefaultSize,0,_T("ID_STATICTEXT4")); FlexGridSizer1->Add(StaticText4,0,wxALL|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,0); FlexGridSizer1->Add(16,16,0,wxALL|wxALIGN_LEFT|wxALIGN_TOP,0); clbTargets = new wxCheckListBox(this,ID_CHECKLISTBOX2,wxDefaultPosition,wxSize(222,111),0,NULL,wxLB_HSCROLL|wxLB_SINGLE,wxDefaultValidator,_T("ID_CHECKLISTBOX2")); clbTargets->Disable(); FlexGridSizer1->Add(clbTargets,1,wxALL|wxEXPAND|wxFIXED_MINSIZE|wxALIGN_LEFT|wxALIGN_TOP,0); FlexGridSizer1->Add(16,16,0,wxALL|wxALIGN_LEFT|wxALIGN_TOP,0); BoxSizer6 = new wxBoxSizer(wxHORIZONTAL); btnAll = new wxButton(this,ID_BUTTON2,_("All"),wxDefaultPosition,wxDefaultSize,0,wxDefaultValidator,_T("ID_BUTTON2")); btnAll->Disable(); BoxSizer6->Add(btnAll,0,wxRIGHT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL,4); btnNone = new wxButton(this,ID_BUTTON3,_("None"),wxDefaultPosition,wxDefaultSize,0,wxDefaultValidator,_T("ID_BUTTON3")); btnNone->Disable(); BoxSizer6->Add(btnNone,0,wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL,0); FlexGridSizer1->Add(BoxSizer6,0,wxALL|wxALIGN_RIGHT|wxALIGN_TOP,0); BoxSizer1->Add(FlexGridSizer1,1,wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL,8); BoxSizer3 = new wxBoxSizer(wxVERTICAL); BoxSizer1->Add(BoxSizer3,0,wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_TOP,8); SetSizer(BoxSizer1); BoxSizer1->Fit(this); BoxSizer1->SetSizeHints(this); Connect(ID_TEXTCTRL1,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FilePathPanel::OntxtFilenameText); Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FilePathPanel::OnbtnBrowseClick); Connect(ID_CHECKBOX1,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&FilePathPanel::OnchkAddToProjectChange); Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FilePathPanel::OnbtnAllClick); Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FilePathPanel::OnbtnNoneClick); //*) txtFilename->SetValue(wxEmptyString); txtGuard->SetValue(wxEmptyString); // fill targets list cbProject* prj = Manager::Get()->GetProjectManager()->GetActiveProject(); if (prj) { clbTargets->Clear(); for (int i = 0; i < prj->GetBuildTargetsCount(); ++i) { ProjectBuildTarget* bt = prj->GetBuildTarget(i); if (bt) clbTargets->Append(bt->GetTitle()); } clbTargets->SetSelection(clbTargets->FindString(prj->GetActiveBuildTarget())); chkAddToProject->SetValue(true); ToggleVisibility(true); } else { chkAddToProject->SetValue(false); ToggleVisibility(false); } }
bool KeyboardEventHandler::handle(const GUIEventAdapter& ea, GUIActionAdapter&) { switch(ea.getEventType()) { case GUIEventAdapter::KEYDOWN : { //to pull up help menu and pause running state if(ea.getKey() == 'h' || ea.getKey() == 'H') { if(GLOBAL->gSimState & RUNNING) { //show help and pause GLOBAL->gHUD_HelpGeode->setNodeMask(0xFFFFFF); GLOBAL->gHUD_HelpTextGeode->setNodeMask(0xFFFFFF); GLOBAL->gSimState ^= RUNNING; GLOBAL->gHUD_TimeText->setText("Firing Paused"); } else { GLOBAL->gSimState |= RUNNING; GLOBAL->gHUD_HelpGeode->setNodeMask(0); GLOBAL->gHUD_HelpTextGeode->setNodeMask(0); } } //only accept all other key input if running if(GLOBAL->gSimState & RUNNING) switch(ea.getKey()) { //FILTERING CONTROLS case ( 'N' ) : ToggleVisibility(GLOBAL->gSomaGeode.get()); break; case ( 'n' ) : ToggleVisibility(GLOBAL->gSynapseGeode.get()); break; case ( 'l' ) : ToggleVisibility(GLOBAL->gLinesGeode.get()); break; case ( 'v' ) : FilterSynapses(); break; case ( 'V' ) : FilterSomas(); break; //MOTION CONTROLS //translations case 'w' : case 'W' : _fpm->moveForward(GLOBAL->gCamSpeed); break; case 'a': case 'A': _fpm->moveRight(-GLOBAL->gCamSpeed); break; case 's' : case 'S' : _fpm->moveForward(-GLOBAL->gCamSpeed); break; case 'd' : case 'D' : _fpm->moveRight(GLOBAL->gCamSpeed); break; case 'e' : case 'E' : _fpm->moveUp(GLOBAL->gCamSpeed/2); break; case 'x' : case 'X' : _fpm->moveUp(-GLOBAL->gCamSpeed/2); break; //rotations case ( osgGA::GUIEventAdapter::KEY_Up ) : _fpm->rotateUp(GLOBAL->gCamRotSpeed); break; case ( osgGA::GUIEventAdapter::KEY_Down ) : _fpm->rotateDown(GLOBAL->gCamRotSpeed); break; case ( osgGA::GUIEventAdapter::KEY_Left ) : _fpm->rotateLeft(GLOBAL->gCamRotSpeed); break; case ( osgGA::GUIEventAdapter::KEY_Right ) : _fpm->rotateRight(GLOBAL->gCamRotSpeed); break; //speed control case ( '-' ) : GLOBAL->gCamSpeed *= 0.5; break; case ( '=' ) : GLOBAL->gCamSpeed *=1.5; break; case ( '_' ) : GLOBAL->gCamRotSpeed *= 0.5; break; case ( '+' ) : GLOBAL->gCamRotSpeed *= 1.5; break; //firing control case 'g' ://start/pause if(GLOBAL->gSimState & FIRING_ACTIVE) { GLOBAL->gSimState ^= FIRING_ACTIVE; GLOBAL->gHUD_TimeText->setText("Firing Paused"); } else GLOBAL->gSimState |= FIRING_ACTIVE; break; case 'G' ://reset GLOBAL->gFiringTimeElapsed = 0; break; case 'c': GLOBAL->SetCenter(); break; case 'C': case osgGA::GUIEventAdapter::KEY_Space : GLOBAL->gOrbitCenter = Vec3d(0,0,0); GLOBAL->gOrbitManipulator->setCenter(GLOBAL->gOrbitCenter); break; default: break; } break; } default: break; } return false; }