void tst_QWidget_window::tst_qtbug35600()
{
    QWidget w;
    w.show();

    QWidget *wA = new QWidget;
    QHBoxLayout *layoutA = new QHBoxLayout;

    QWidget *wB = new QWidget;
    layoutA->addWidget(wB);

    QWidget *wC = new QWidget;
    layoutA->addWidget(wC);

    wA->setLayout(layoutA);

    QWidget *wD = new QWidget;
    wD->setAttribute(Qt::WA_NativeWindow);
    wD->setParent(wB);

    QWidget *wE = new QWidget(wC, Qt::Tool | Qt::FramelessWindowHint | Qt::WindowTransparentForInput);
    wE->show();

    wA->setParent(&w);

    // QTBUG-35600: program may crash here or on exit
}
void tst_QWindowContainer::testAncestorChange()
{
    QWidget root;
    QWidget *left = new QWidget(&root);
    QWidget *right = new QWidget(&root);

    root.setGeometry(0, 0, 200, 100);
    left->setGeometry(0, 0, 100, 100);
    right->setGeometry(100, 0, 100, 100);

    QWindow *window = new QWindow();
    QWidget *container = QWidget::createWindowContainer(window, left);
    container->setGeometry(0, 0, 100, 100);

    //      Root
    //      + left
    //      | + container
    //      |   + window
    //      + right
    root.show();
    QVERIFY(QTest::qWaitForWindowExposed(&root));
    QCOMPARE(window->geometry(), QRect(0, 0, 100, 100));

    container->setParent(right);
    //      Root
    //      + left
    //      + right
    //        + container
    //          + window
    QCOMPARE(window->geometry(), QRect(100, 0, 100, 100));

    QWidget *newRoot = new QWidget(&root);
    newRoot->setGeometry(50, 50, 200, 200);
    right->setParent(newRoot);
    //      Root
    //      + left
    //      + newRoot
    //        + right
    //          + container
    //            + window
    QCOMPARE(window->geometry(), QRect(150, 50, 100, 100));
    newRoot->move(0, 0);
    QCOMPARE(window->geometry(), QRect(100, 0, 100, 100));

    newRoot->setParent(0);
    newRoot->setGeometry(100, 100, 200, 200);
    newRoot->show();
    QVERIFY(QTest::qWaitForWindowExposed(newRoot));
    QCOMPARE(newRoot->windowHandle(), window->parent());
    //      newRoot
    //      + right
    //        + container
    //          + window
    QCOMPARE(window->geometry(), QRect(100, 0, 100, 100));
}
Example #3
0
QWidget* ConfigDialog::configWidget(SceneConfiguration& config, string name, QWidget *baseWidget) {
    
    const ConfigurationValue *value = config.GetField(name);
    
    QWidget *dataWidget = NULL;

    switch(value->GetType()) {
        case SCALAR:
            //qDebug() << "scalar";
            dataWidget = buildNumberWidget(value, -99999999, 99999999, 2);
            break;
            
        case INTEGER:
            //qDebug() << "integer";
            dataWidget = buildNumberWidget(value, -99999999, 99999999, 0);
            break;
            
        case FLAG:
            //qDebug() << "flag";
            dataWidget = buildFlagWidget(value);
            break;
            
        case RANGE:
            //qDebug() << "range 0-1";
            dataWidget = buildSliderWidget(value);
            break;
            
        case MATRIX:
            //qDebug() << "MATRIX";
            dataWidget = new QLabel("UNSUPPORTED MATRIX", baseWidget);
            break;
            
        case COLOR:
            //qDebug() << "color";
            dataWidget = buildColorWidget(value);
            break;
            
        case TRIPLET:
            //qDebug() << "triplet";
            dataWidget = buildTripletWidget(value);
            break;
            
        case STRING:
            //qDebug() << "string";
            dataWidget = buildSelectWidget(value);

            break;
            
        default:
            //qDebug() << "dunno";
            dataWidget = new QLabel("UNKNOWN VALUE TYPE", baseWidget);
            break;
    }
    
    dataWidget->setParent(baseWidget);
    
    return dataWidget;
    
    //return baseWidget;
}
Example #4
0
/*
	・ウィンドウ表示を行う
	・既に DockWidget に登録済みの場合は、一旦削除を行い表示を行う
 */
void FormNodeEditorImpl::_showForm(QWidget* pWidget, const QString& rqStr, Qt::DockWidgetAreas allowedDockArea, Qt::DockWidgetArea initDockArea)
{
	int nDockCnt = listDockWidgets.size();
	for (int i = 0; i < nDockCnt; i++) {
		QWidget* pWidgetTmp = listDockWidgets[i]->widget();
		if (pWidgetTmp == pWidget) {
			this->removeDockWidget(listDockWidgets[i]);
			listDockWidgets[i]->setWidget(NULL);
			/* [NOTE]
				一度、DockWidget化した widget を show() しても表示されない問題が発生した。
				その対処として、setParent(NULL) を明示的に行ったところ、show()にて表示できるようになった。
				現在の状態が、pWidgetTmp->isVisibleTo(listDockWidgets[i]) にて true の状態であるため、
				親値を外す必要があると思われる。
			 */
			pWidgetTmp->setParent(NULL);
			listDockWidgets.removeAt(i);
			break;
		}
	}

	if (_isEnableFormDockable) {

		QDockWidget* pDock = new QDockWidget(rqStr, this);

		pDock->setWidget(pWidget);
		pDock->setAllowedAreas(allowedDockArea);
		addDockWidget(initDockArea, pDock, Qt::Horizontal);
		pDock->show();

		listDockWidgets.push_back(pDock);

	} else {
		pWidget->show();
	}
}
Example #5
0
void MainWindow::callSlot(QString text)
{
	ui.scrollArea->setWidget(new QWidget());
	QWidget* camera = CameraFactory::CreateCamera();	

	if(text == QStringLiteral("全屏显示"))
	{
		CameraFactory::SetLBScreen(QStringLiteral("屏幕恢复"));

		camera->setParent(this);
		camera->setWindowFlags(Qt::Window);
		camera->showFullScreen();
		camera->setFocus();
	}	
	else
	{
		CameraFactory::SetLBScreen(QStringLiteral("全屏显示"));
		ui.scrollArea->setWidget(camera);
		camera->setFocus();
		//camera->setParent(ui.scrollArea);
		//camera->show();
		//camera->setFocus();
	}

	connect(camera, SIGNAL(backSignal()), this, SLOT(reportSlot()));
	connect(camera, SIGNAL(imageSignal(QString)), this, SLOT(loadNewImage(QString)));
	connect(camera, SIGNAL(fullScreenSignal(QString)), this, SLOT(fullScreenSlot(QString)));
}
Example #6
0
void SettingsWidget::addSettingsPage(ISettingsPage *page)
{
    QWidget * widget = page->createWidget();
    widget->setParent(this);
    m_extraPages.append(ExtraPage(page, widget));
    add(page->name(), widget);
}
Example #7
0
void VideoDock::fullScreen(bool b)
{
	if (b)
	{
		is_floating = isFloating();

		setTitleBarVisible(false);
		setFeatures(DockWidget::NoDockWidgetFeatures);
		setFloating(false);

		if (!isBreeze)
			setStyle(&commonStyle);
	}
	else
	{
		/* Visualizations on full screen */
		QWidget *dockedW = widget();
		if (dockedW != &iDW)
		{
			if (dockedW)
			{
				unsetCursor(dockedW);
				dockedW->setParent(nullptr);
			}
			setWidget(&iDW);
		}

		setTitleBarVisible();
		setFeatures(DockWidget::AllDockWidgetFeatures);
		setFloating(is_floating);

		if (!isBreeze)
			setStyle(nullptr);
	}
}
Example #8
0
void TTabWidget::setTabVisible(int idx, bool visible)
{
    if (hidden_idx.contains(idx) != visible)
        return;

    int bar_idx = idx;
    int vector_idx = 0;
    while (vector_idx < hidden_idx.size() && hidden_idx.at(vector_idx) < idx) {
        bar_idx--;
        vector_idx++;
    }

    if (visible ? vector_idx >= hidden_idx.size() : bar_idx >= count())
        return;

    doing_stuff = true;

    if (!visible) {
        QWidget *wid = widget(bar_idx);
        hidden_wid.insert(vector_idx, wid);
        hidden_idx.insert(vector_idx, idx);
        hidden_data.insert(vector_idx, qMakePair<QIcon, QString>(tabIcon(bar_idx), tabText(bar_idx)));

        removeTab(bar_idx);
        wid->setParent(this);
    } else {
        insertTab(bar_idx, hidden_wid.at(vector_idx), hidden_data.at(vector_idx).first, hidden_data.at(vector_idx).second);

        hidden_wid.remove(vector_idx);
        hidden_idx.remove(vector_idx);
        hidden_data.remove(vector_idx);
    }

    doing_stuff = false;
}
    void dataAppend(QObject *object)
    {
      DefaultObjectContainer::dataAppend(object);

      QWidget *widget = qobject_cast<QWidget*>(object);
      if (widget) {

        // restore widget flags for dialogs, menus
        const QVariant originalWindowFlags = widget->property("originalWindowFlags");
        if (originalWindowFlags.isValid() && originalWindowFlags.canConvert<Qt::WindowFlags>()) {
          widget->setParent(widget->parentWidget(), originalWindowFlags.value<Qt::WindowFlags>());
        }

        m_widgetContainer->addWidget(widget);
        return;
      }

      QLayout *layout = qobject_cast<QLayout*>(object);
      if (layout) {
        m_widgetContainer->setLayout(layout);
        return;
      }

      QAction *action = qobject_cast<QAction*>(object);
      if (action) {
        m_widgetContainer->addAction(action);
        return;
      }

      DeclarativeActionItem *actionItem = qobject_cast<DeclarativeActionItem*>(object);
      if (actionItem) {
        m_widgetContainer->addAction(actionItem->action());
        return;
      }
    }
DataSourceDialog::DataSourceDialog(DataDialog::EditMode mode, DataSourcePtr dataSource, QWidget *parent)
  : QDialog(parent), _dataSource(dataSource) {

  setWindowTitle(QString("Configure %1").arg(_dataSource->fileType()));

  QVBoxLayout *layout = new QVBoxLayout(this);

  _dataSource->readLock();
  QWidget *widget = _dataSource->configWidget();
  connect(this, SIGNAL(ok()), widget, SLOT(save()));

  if (mode == DataDialog::Edit) {
    connect(this, SIGNAL(ok()), this, SLOT(disableReuse()));
  }

  _dataSource->unlock();

  widget->setParent(this);
  layout->addWidget(widget);

  _buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
  layout->addWidget(_buttonBox);

  connect(_buttonBox, SIGNAL(clicked(QAbstractButton *)),
          this, SLOT(buttonClicked(QAbstractButton *)));

  setLayout(layout);

  setMaximumSize(QSize(1024, 768));
  resize(minimumSizeHint());
}
Example #11
0
QWidget*  TabWidget::removeTab(int index) {
    QMutexLocker l(&_tabWidgetStateMutex);
    if (index < 0 || index >= (int)_tabs.size()) {
        return NULL;
    }
    QWidget* tab = _tabs[index];
    _gui->unregisterTab(tab);
    _tabs.erase(_tabs.begin()+index);
    _tabBar->blockSignals(true);
    _tabBar->removeTab(index);
    _tabBar->blockSignals(false);
    if (_tabs.size() > 0) {
        l.unlock();
        makeCurrentTab(0);
        l.relock();
    } else {
        
        _currentWidget = 0;
        _mainLayout->addStretch();
        if (_isFloating && !_gui->isDraggingPanel()) {
            l.unlock();
            closeFloatingPane();
            l.relock();
        }
    }
    tab->setParent(NULL);
    return tab;
}
Example #12
0
void GLViewer::setup()
{
    QSurfaceFormat format;

    format.setVersion(3, 2);
    format.setProfile(QSurfaceFormat::CoreProfile);

    format.setDepthBufferSize(16);

    m_canvas = new Canvas(format);
    m_canvas->setContinuousRepaint(true, 0);
    m_canvas->setSwapInterval(Canvas::VerticalSyncronization);

    m_canvas->setPainter(m_painter);

    QWidget *widget = QWidget::createWindowContainer(m_canvas);
    widget->setMinimumSize(1, 1);
    widget->setAutoFillBackground(false); // Important for overdraw, not occluding the scene.
    widget->setFocusPolicy(Qt::TabFocus);
    widget->setParent(this);

    QHBoxLayout *layout = new QHBoxLayout;
    layout->setContentsMargins(0, 0, 0, 0);
    layout->addWidget(widget);
    setLayout(layout);

    show();
}
Example #13
0
void IdealController::addView(Qt::DockWidgetArea area, View* view)
{
    IdealDockWidget *dock = new IdealDockWidget(this, m_mainWindow);
    // dock object name is used to store toolview settings
    QString dockObjectName = view->document()->title();
    // support different configuration for same docks opened in different areas
    if (m_mainWindow->area())
        dockObjectName += '_' + m_mainWindow->area()->objectName();

    dock->setObjectName(dockObjectName);

    KAcceleratorManager::setNoAccel(dock);
    QWidget *w = view->widget(dock);
    if (w->parent() == 0)
    {
        /* Could happen when we're moving the widget from
           one IdealDockWidget to another.  See moveView below.
           In this case, we need to reparent the widget. */
        w->setParent(dock);
    }

    QList<QAction *> toolBarActions = view->toolBarActions();
    if (toolBarActions.isEmpty()) {
      dock->setWidget(w);
    } else {
      QMainWindow *toolView = new QMainWindow();
      QToolBar *toolBar = new QToolBar(toolView);
      int iconSize = m_mainWindow->style()->pixelMetric(QStyle::PM_SmallIconSize);
      toolBar->setIconSize(QSize(iconSize, iconSize));
      toolBar->setToolButtonStyle(Qt::ToolButtonIconOnly);
      toolBar->setWindowTitle(i18n("%1 Tool Bar", w->windowTitle()));
      toolBar->setFloatable(false);
      toolBar->setMovable(false);
      toolBar->addActions(toolBarActions);
      toolView->setCentralWidget(w);
      toolView->addToolBar(toolBar);
      dock->setWidget(toolView);
    }

    dock->setWindowTitle(view->widget()->windowTitle());
    dock->setWindowIcon(view->widget()->windowIcon());
    dock->setFocusProxy(dock->widget());

    if (IdealButtonBarWidget* bar = barForDockArea(area)) {
        QAction* action = bar->addWidget(
            view->document()->title(), dock,
            static_cast<MainWindow*>(parent())->area(), view);
        m_dockwidget_to_action[dock] = m_view_to_action[view] = action;

        m_docks->addAction(action);
        connect(dock, &IdealDockWidget::closeRequested, action, &QAction::toggle);
    }

    connect(dock, &IdealDockWidget::dockLocationChanged, this, &IdealController::dockLocationChanged);

    dock->hide();

    docks.insert(dock);
}
Example #14
0
/** game over function
 *
 * Brief: destroys the current ui, then resets the main menu/window as the current ui.
 *
 * @param void
 * @return void
 */
void MainWindow::game_over()
{

    QWidget* wid = this->centralWidget(); // now our main screen becomes the central widget again
    wid->setParent(NULL); // we want the parent of this main window to be nothing!

    ui->setupUi(this); // now everything pops up from the desinger... designer... sorry...
}
void EditGroupWidget::addEditPage(IEditGroupPage* page)
{
    QWidget* widget = page->createWidget();
    widget->setParent(this);

    m_extraPages.append(ExtraPage(page, widget));
    addPage(page->name(), page->icon(), widget);
}
/*!
    Removes the scroll area's widget, and passes ownership of the
    widget to the caller.

    \sa widget()
 */
QWidget *QScrollArea::takeWidget()
{
    Q_D(QScrollArea);
    QWidget *w = d->widget;
    d->widget = 0;
    if (w)
        w->setParent(0);
    return w;
}
QWidget *DetailsWidget::takeWidget()
{
    QWidget *widget = d->m_widget;
    d->m_widget = 0;
    d->m_grid->removeWidget(widget);
    if (widget)
        widget->setParent(0);
    return widget;
}
Example #18
0
DlgSettings::~DlgSettings()
{
    for (int i=0; i<ui_.tab->count(); ++i)
    {
        QWidget* w = ui_.tab->widget(i);
        w->setParent(nullptr);
    }
    ui_.tab->clear();
}
Example #19
0
void NavigationBar::reloadLayout()
{
    if (m_widgets.isEmpty()) {
        return;
    }

    setUpdatesEnabled(false);

    // Clear layout
    while (m_layout->count() != 0) {
        QLayoutItem *item = m_layout->takeAt(0);
        if (!item) {
            continue;
        }
        QWidget *widget = item->widget();
        if (!widget) {
            continue;
        }
        widget->setParent(nullptr);
    }

    // Hide all widgets
    for (const WidgetData &data : m_widgets) {
        data.widget->hide();
    }

    // Add widgets to layout
    for (const QString &id : qAsConst(m_layoutIds)) {
        const WidgetData data = m_widgets.value(id);
        if (data.widget) {
            m_layout->addWidget(data.widget);
            NavigationBarToolButton *button = qobject_cast<NavigationBarToolButton*>(data.widget);
            if (button) {
                button->updateVisibility();
            } else {
                data.widget->show();
            }
        }
    }

    m_layout->addWidget(m_supMenu);

    // Make sure search bar is visible
    if (m_searchLine->isVisible() && m_navigationSplitter->sizes().at(1) == 0) {
        const int locationBarSize = m_navigationSplitter->sizes().at(0);
        setSplitterSizes(locationBarSize - 50, 50);
    }

    if (m_window->isFullScreen()) {
        enterFullScreen();
    } else {
        leaveFullScreen();
    }

    setUpdatesEnabled(true);
}
/**
 * @brief game_over
 */
void MainWindow::game_over(){
    // Take the current board game out of the central widget of MainWindow
       QWidget* wid = this->centralWidget();
       wid->setParent(nullptr);
       // Line above will delete the widget gracefully (no memory errors)

       // Display something which says that you lost, maybe display high score.

       // Reset the MainWindow with the initial startup screen
       ui->setupUi(this);
}
Example #21
0
void QwwTaskPanel::removeTask(int index) {
    if (index < 0 || index>=m_tasks.count()) return;
    Task *tsk = static_cast<Task*>(m_tasks.at(index));
    m_tasks.removeAt(index);
    if (m_tasks.count()<=index) {
        setCurrentIndex(m_tasks.count()-1);
    }
    QWidget *body = tsk->body();
    body->setParent(this);
    delete tsk;
}
Example #22
0
void WidgetMOItem::initializeGui()
{
    clearGui();
    QGridLayout* itemLayout = dynamic_cast<QGridLayout*>(itemWidget->layout());
    QLabel* label;
    if(item)
    {
        ui->groupItem->setTitle(item->name());
        QWidget* curWidget;

        for(int iF=0;iF<item->getNbFields();iF++)
        {
            curWidget = createEditWidget(item, iF, _editable);
            if(curWidget)
            {
                curWidget->setParent(this);
                fieldEditWidget.insert(iF,curWidget);


                // add it to gui
                label = new QLabel(item->getFieldName(iF),this);
                label->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
                itemLayout->addWidget(label,iF,0);
                itemLayout->addWidget(curWidget,iF,1);

                // connect change
                QComboBox* combo = dynamic_cast<QComboBox*>(curWidget);
                if(combo)
                    connect(combo,SIGNAL(thiseditTextChanged(const QString &)),
                            this,SLOT(onValueChanged(const QString &)));

                QSpinBox* spinBox = dynamic_cast<QSpinBox*>(curWidget);
                if(spinBox)
                    connect(spinBox,SIGNAL(valueChanged( const QString & )),
                            this,SLOT(onValueChanged(const QString &)));

                QScienceSpinBox* doubleSpinBox = dynamic_cast<QScienceSpinBox*>(curWidget);
                if(doubleSpinBox)
                    connect(doubleSpinBox,SIGNAL(valueChanged( const QString & )),
                            this,SLOT(onValueChanged(const QString &)));

                QCheckBox* checkBox = dynamic_cast<QCheckBox*>(curWidget);
                if(checkBox)
                    connect(checkBox,SIGNAL(stateChanged(int)),
                            this,SLOT(onCheckChanged(int)));

                QLineEdit* lineEdit = dynamic_cast<QLineEdit*>(curWidget);
                if(lineEdit)
                    connect(lineEdit,SIGNAL(editingFinished()),
                            this,SLOT(onLineEditValueChanged()));
            }
        }
    }
}
Example #23
0
void MyScrollArea::setWidget(QWidget *w)
{
    widget = w;
    widget->setParent(viewport());
    if (!widget->testAttribute(Qt::WA_Resized))
        widget->resize(widget->sizeHint());

    verticalScrollBar()->setValue(0);
    verticalScrollBar()->setValue(0);

    updateArea();
}
Example #24
0
KPageTabbedView::~KPageTabbedView()
{
  if (model()) {
    for ( int i = 0; i < mTabWidget->count(); ++i ) {
        QWidget *page = qvariant_cast<QWidget*>( model()->data( model()->index( i, 0 ), KPageModel::WidgetRole ) );

        if (page) {
            page->setVisible(false);
            page->setParent(0); // reparent our children before they are deleted
        }
    }
  }
}
Example #25
0
/** void QWidget::addWidget(QWidget *widget)
 * bind/QWidget.h:46
 */
static int TableView_addWidget(lua_State *L) {
  try {
    TableView *self = *((TableView **)dub_checksdata(L, 1, "mimas.TableView"));
    QWidget *widget = *((QWidget **)dub_checksdata(L, 2, "mimas.QWidget"));
    widget->setParent(self);
    return 0;
  } catch (std::exception &e) {
    lua_pushfstring(L, "addWidget: %s", e.what());
  } catch (...) {
    lua_pushfstring(L, "addWidget: Unknown exception");
  }
  return dub_error(L);
}
Example #26
0
QWidget *WidgetTip::takeWidget(Qt::WindowFlags wf)
{
    // Remove widget from layout
    if (!m_layout->count())
        return 0;
    QLayoutItem *item = m_layout->takeAt(0);
    QWidget *widget = item->widget();
    delete item;
    if (!widget)
        return 0;
    widget->setParent(0, wf);
    return widget;
}
Example #27
0
void VideoDock::popup(const QPoint &p)
{
	if (canPopup)
	{
#ifdef Q_OS_MACOS
		// Move parent of video adjustment widget from native Mac widget to QMenu
		QWidget *videoAdj = (QWidget *)QMPlay2GUI.videoAdjustment;
		QWidget *parent = videoAdj->parentWidget();
		if (parent && qstrcmp(parent->metaObject()->className(), "QMacNativeWidget") == 0)
			videoAdj->setParent(QMPlay2GUI.menuBar->playback->videoFilters->videoAdjustmentMenu);
#endif
		popupMenu->popup(mapToGlobal(p));
	}
}
Example #28
0
void ItemOrderList::setCurrentItemWidget(QWidget *widget)
{
    // Reparent current widget so it's safely deleted.
    QWidget *currentWidget = ui->scrollArea->takeWidget();
    if (currentWidget != nullptr) {
        currentWidget->setParent(this);
        currentWidget->hide();
    }

    if (widget != nullptr) {
        ui->scrollArea->setWidget(widget);
        widget->show();
    }
}
Example #29
0
ItemSync::ItemSync(const QString &label, const QString &icon, ItemWidget *childItem)
    : QWidget( childItem->widget()->parentWidget() )
    , ItemWidgetWrapper(childItem, this)
    , m_label( new QTextEdit(this) )
    , m_icon( new IconWidget(icon, this) )
{
    auto layout = new QVBoxLayout(this);
    layout->setContentsMargins(0, 0, 0, 0);
    layout->setSpacing(0);
    layout->setSizeConstraint(QLayout::SetMinimumSize);

    auto labelLayout = new QHBoxLayout;
    connect( layout, &QVBoxLayout::destroyed,
             labelLayout, &QHBoxLayout::deleteLater );
    labelLayout->setContentsMargins(0, 0, 0, 0);
    labelLayout->setSpacing(0);

    labelLayout->addWidget(m_icon);
    labelLayout->addWidget(m_label);
    labelLayout->addStretch();

    layout->addLayout(labelLayout);

    QWidget *w = childItem->widget();
    layout->addWidget(w);
    w->setObjectName("item_child");
    w->setParent(this);

    m_label->setObjectName("item_child");

    m_label->document()->setDefaultFont(font());

    QTextOption option = m_label->document()->defaultTextOption();
    option.setWrapMode(QTextOption::WrapAtWordBoundaryOrAnywhere);
    m_label->document()->setDefaultTextOption(option);

    m_label->setReadOnly(true);
    m_label->setUndoRedoEnabled(false);

    m_label->setFocusPolicy(Qt::NoFocus);
    m_label->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    m_label->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    m_label->setFrameStyle(QFrame::NoFrame);
    m_label->setContextMenuPolicy(Qt::NoContextMenu);

    m_label->viewport()->installEventFilter(this);

    m_label->setPlainText(label);
}
Example #30
0
void EditorToolBar::removeToolbarForEditor(IEditor *editor)
{
    disconnect(editor->document(), &IDocument::changed, this, &EditorToolBar::checkDocumentStatus);

    QWidget *toolBar = editor->toolBar();
    if (toolBar != 0) {
        if (d->m_activeToolBar == toolBar) {
            d->m_activeToolBar = d->m_defaultToolBar;
            d->m_activeToolBar->setVisible(true);
        }
        d->m_toolBarPlaceholder->layout()->removeWidget(toolBar);
        toolBar->setVisible(false);
        toolBar->setParent(0);
    }
}