Fix tooltip position when doing screenshot
This commit is contained in:
parent
85c56f4246
commit
62a615a17d
@ -368,9 +368,9 @@ void FPGAViewWidget::paintGL()
|
|||||||
}
|
}
|
||||||
QtImGui::newFrame();
|
QtImGui::newFrame();
|
||||||
QMutexLocker lock(&rendererArgsLock_);
|
QMutexLocker lock(&rendererArgsLock_);
|
||||||
|
|
||||||
if (!(rendererArgs_->hoveredDecal == DecalXY()))
|
if (!(rendererArgs_->hoveredDecal == DecalXY()))
|
||||||
{
|
{
|
||||||
|
ImGui::SetNextWindowPos(ImVec2(rendererArgs_->x, rendererArgs_->y));
|
||||||
ImGui::BeginTooltip();
|
ImGui::BeginTooltip();
|
||||||
ImGui::PushTextWrapPos(ImGui::GetFontSize() * 35.0f);
|
ImGui::PushTextWrapPos(ImGui::GetFontSize() * 35.0f);
|
||||||
ImGui::TextUnformatted(rendererArgs_->hintText.c_str());
|
ImGui::TextUnformatted(rendererArgs_->hintText.c_str());
|
||||||
@ -717,6 +717,8 @@ void FPGAViewWidget::mouseMoveEvent(QMouseEvent *event)
|
|||||||
QMutexLocker locked(&rendererArgsLock_);
|
QMutexLocker locked(&rendererArgsLock_);
|
||||||
rendererArgs_->hoveredDecal = closest.decal(ctx_);
|
rendererArgs_->hoveredDecal = closest.decal(ctx_);
|
||||||
rendererArgs_->changed = true;
|
rendererArgs_->changed = true;
|
||||||
|
rendererArgs_->x = event->x();
|
||||||
|
rendererArgs_->y = event->y();
|
||||||
if (closest.type == ElementType::BEL) {
|
if (closest.type == ElementType::BEL) {
|
||||||
rendererArgs_->hintText = std::string("BEL\n") + ctx_->getBelName(closest.bel).c_str(ctx_);
|
rendererArgs_->hintText = std::string("BEL\n") + ctx_->getBelName(closest.bel).c_str(ctx_);
|
||||||
CellInfo *cell = ctx_->getBoundBelCell(closest.bel);
|
CellInfo *cell = ctx_->getBoundBelCell(closest.bel);
|
||||||
@ -862,6 +864,7 @@ void FPGAViewWidget::leaveEvent(QEvent *event)
|
|||||||
QMutexLocker locked(&rendererArgsLock_);
|
QMutexLocker locked(&rendererArgsLock_);
|
||||||
rendererArgs_->hoveredDecal = DecalXY();
|
rendererArgs_->hoveredDecal = DecalXY();
|
||||||
rendererArgs_->changed = true;
|
rendererArgs_->changed = true;
|
||||||
|
rendererArgs_->hintText = "";
|
||||||
pokeRenderer();
|
pokeRenderer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -270,6 +270,8 @@ class FPGAViewWidget : public QOpenGLWidget, protected QOpenGLFunctions
|
|||||||
PassthroughFlags flags;
|
PassthroughFlags flags;
|
||||||
// Hint text
|
// Hint text
|
||||||
std::string hintText;
|
std::string hintText;
|
||||||
|
// cursor pos
|
||||||
|
int x,y;
|
||||||
};
|
};
|
||||||
std::unique_ptr<RendererArgs> rendererArgs_;
|
std::unique_ptr<RendererArgs> rendererArgs_;
|
||||||
QMutex rendererArgsLock_;
|
QMutex rendererArgsLock_;
|
||||||
|
Loading…
Reference in New Issue
Block a user