diff options
author | Miodrag Milanović <mmicko@gmail.com> | 2019-12-28 15:46:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-28 15:46:02 +0100 |
commit | 247e18cf027334d5201be00735aa607250e6253d (patch) | |
tree | 850d77245b0469a57ddf522e7fb68e3a805e3498 /gui/basewindow.cc | |
parent | 0d43aff2682d91817ea4a1fb5dff6e169ae9a659 (diff) | |
parent | fb5480cde349008ab74e6b7179ac1b1fc8ffef1f (diff) | |
download | nextpnr-247e18cf027334d5201be00735aa607250e6253d.tar.gz nextpnr-247e18cf027334d5201be00735aa607250e6253d.tar.bz2 nextpnr-247e18cf027334d5201be00735aa607250e6253d.zip |
Merge pull request #344 from YosysHQ/mmicko/ecp5_gui
ECP5 display improvement
Diffstat (limited to 'gui/basewindow.cc')
-rw-r--r-- | gui/basewindow.cc | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gui/basewindow.cc b/gui/basewindow.cc index a470335d..c3dbc131 100644 --- a/gui/basewindow.cc +++ b/gui/basewindow.cc @@ -224,6 +224,38 @@ void BaseMainWindow::createMenusAndBars() actionZoomOutbound->setIcon(QIcon(":/icons/resources/shape_square.png"));
connect(actionZoomOutbound, &QAction::triggered, fpgaView, &FPGAViewWidget::zoomOutbound);
+ actionDisplayBel = new QAction("Enable/Disable Bels", this);
+ actionDisplayBel->setIcon(QIcon(":/icons/resources/bel.png"));
+ actionDisplayBel->setCheckable(true);
+ actionDisplayBel->setChecked(true);
+ connect(actionDisplayBel, &QAction::triggered, this, &BaseMainWindow::enableDisableDecals);
+
+ actionDisplayWire = new QAction("Enable/Disable Wires", this);
+ actionDisplayWire->setIcon(QIcon(":/icons/resources/wire.png"));
+ actionDisplayWire->setCheckable(true);
+ actionDisplayWire->setChecked(true);
+ connect(actionDisplayWire, &QAction::triggered, this, &BaseMainWindow::enableDisableDecals);
+
+ actionDisplayPip = new QAction("Enable/Disable Pips", this);
+ actionDisplayPip->setIcon(QIcon(":/icons/resources/pip.png"));
+ actionDisplayPip->setCheckable(true);
+#ifdef ARCH_ECP5
+ actionDisplayPip->setChecked(false);
+#else
+ actionDisplayPip->setChecked(true);
+#endif
+ connect(actionDisplayPip, &QAction::triggered, this, &BaseMainWindow::enableDisableDecals);
+
+ actionDisplayGroups = new QAction("Enable/Disable Groups", this);
+ actionDisplayGroups->setIcon(QIcon(":/icons/resources/group.png"));
+ actionDisplayGroups->setCheckable(true);
+ actionDisplayGroups->setChecked(true);
+ connect(actionDisplayGroups, &QAction::triggered, this, &BaseMainWindow::enableDisableDecals);
+
+ // set initial state
+ fpgaView->enableDisableDecals(actionDisplayBel->isChecked(), actionDisplayWire->isChecked(),
+ actionDisplayPip->isChecked(), actionDisplayGroups->isChecked());
+
// Add main menu
menuBar = new QMenuBar();
menuBar->setGeometry(QRect(0, 0, 1024, 27));
@@ -280,6 +312,11 @@ void BaseMainWindow::createMenusAndBars() deviceViewToolBar->addAction(actionZoomOut);
deviceViewToolBar->addAction(actionZoomSelected);
deviceViewToolBar->addAction(actionZoomOutbound);
+ deviceViewToolBar->addSeparator();
+ deviceViewToolBar->addAction(actionDisplayBel);
+ deviceViewToolBar->addAction(actionDisplayWire);
+ deviceViewToolBar->addAction(actionDisplayPip);
+ deviceViewToolBar->addAction(actionDisplayGroups);
// Add status bar with progress bar
statusBar = new QStatusBar();
@@ -292,6 +329,13 @@ void BaseMainWindow::createMenusAndBars() setStatusBar(statusBar);
}
+void BaseMainWindow::enableDisableDecals()
+{
+ fpgaView->enableDisableDecals(actionDisplayBel->isChecked(), actionDisplayWire->isChecked(),
+ actionDisplayPip->isChecked(), actionDisplayGroups->isChecked());
+ ctx->refreshUi();
+}
+
void BaseMainWindow::open_json()
{
QString fileName = QFileDialog::getOpenFileName(this, QString("Open JSON"), QString(), QString("*.json"));
|