void TransFunc1DKeysEditor::createConnections() { // Buttons connect(clearButton_, SIGNAL(clicked()), this, SLOT(clearButtonClicked())); connect(loadButton_, SIGNAL(clicked()), this, SLOT(loadTransferFunction())); connect(saveButton_, SIGNAL(clicked()), this, SLOT(saveTransferFunction())); connect(makeRampButton_, SIGNAL(clicked()), this, SLOT(makeRamp())); // signals from transferMappingCanvas connect(transCanvas_, SIGNAL(changed()), this, SLOT(updateTransferFunction())); connect(transCanvas_, SIGNAL(loadTransferFunction()), this, SLOT(loadTransferFunction())); connect(transCanvas_, SIGNAL(saveTransferFunction()), this, SLOT(saveTransferFunction())); connect(transCanvas_, SIGNAL(resetTransferFunction()), this, SLOT(clearButtonClicked())); connect(transCanvas_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); // signals for colorPicker connect(transCanvas_, SIGNAL(colorChanged(const QColor&)), colorPicker_, SLOT(setCol(const QColor))); connect(transCanvas_, SIGNAL(colorChanged(const QColor&)), colorLumPicker_, SLOT(setCol(const QColor))); connect(colorPicker_, SIGNAL(newCol(int,int)), colorLumPicker_, SLOT(setCol(int,int))); connect(colorLumPicker_, SIGNAL(newHsv(int,int,int)), this, SLOT(markerColorChanged(int,int,int))); connect(colorPicker_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); connect(colorLumPicker_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); // doubleslider connect(doubleSlider_, SIGNAL(valuesChanged(float, float)), this, SLOT(applyThreshold())); connect(doubleSlider_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); connect(lowerMappingSpin_, SIGNAL(valueChanged(double)), this, SLOT(lowerMappingChanged(double))); connect(upperMappingSpin_, SIGNAL(valueChanged(double)), this, SLOT(upperMappingChanged(double))); connect(fitDomainToData_, SIGNAL(clicked()), this, SLOT(fitDomainToData())); connect(alwaysFit_, SIGNAL(stateChanged(int)), this, SLOT(alwaysFitChanged(int))); }
/*! * \brief sets whether the date can be empty */ void QDateEditEx::setNullable(bool enable) { d->nullable = enable; if (enable && !d->clearButton) { d->clearButton = new QPushButton(this); d->clearButton->setFlat(true); #if 1 // defined(WIDGETS_LIBRARY) static bool initres = false; if (!initres) { Q_INIT_RESOURCE(widgets); initres = true; } #endif // defined(WIDGETS_LIBRARY) Q_ASSERT(QFile::exists(":/widgets/edit-clear-locationbar-rtl.png")); d->clearButton->setIcon(QIcon(":/widgets/edit-clear-locationbar-rtl.png")); d->clearButton->setFocusPolicy(Qt::NoFocus); d->clearButton->setFixedSize(17, d->clearButton->sizeHint().height()-6); connect(d->clearButton,SIGNAL(clicked()),this,SLOT(clearButtonClicked())); d->clearButton->setVisible(!d->null); } else if (d->clearButton) { disconnect(d->clearButton,SIGNAL(clicked()),this,SLOT(clearButtonClicked())); delete d->clearButton; d->clearButton = 0; } update(); }
void pLineEdit::init() { mMargin = sizeHint().height() -2; mSpacing = 0; tbSearch = new QToolButton( this ); tbSearch->setIcon( pIconManager::icon( "search.png", ":/fresh" ) ); tbSearch->setToolTip( tr( "Search Options" ) ); tbSearch->setStyleSheet( "QToolButton { border: none; padding: 0px; } QToolButton::menu-indicator { right: -2px; bottom: -2px; }" ); tbSearch->setCursor( Qt::ArrowCursor ); tbSearch->setFocusPolicy( Qt::NoFocus ); tbSearch->setPopupMode( QToolButton::InstantPopup ); tbClear = new QToolButton( this ); tbClear->setIcon( pIconManager::icon( "edit-clear-rtl.png", ":/fresh" ) ); tbClear->setToolTip( tr( "Clear" ) ); tbClear->setStyleSheet( "QToolButton { border: none; padding: 0px; }" ); tbClear->setCursor( Qt::ArrowCursor ); tbClear->setFocusPolicy( Qt::NoFocus ); setSearchButtonVisible( true ); setClearButtonVisible( false ); setPromptText( "Search..." ); mTimer = new QTimer( this ); mTimer->setInterval( mTimeOut ); mTimer->setSingleShot( true ); connect( this, SIGNAL( textChanged( const QString& ) ), this, SLOT( _q_textChanged( const QString& ) ) ); connect( tbSearch, SIGNAL( clicked() ), this, SIGNAL( searchButtonClicked() ) ); connect( tbSearch, SIGNAL( triggered( QAction* ) ), this, SIGNAL( searchButtonActionTriggered( QAction* ) ) ); connect( tbClear, SIGNAL( clicked() ), this, SLOT( clear() ) ); connect( tbClear, SIGNAL( clicked() ), this, SIGNAL( clearButtonClicked() ) ); connect( mTimer, SIGNAL( timeout() ), this, SLOT( timer_timeout() ) ); }
ShortcutsPage::ShortcutsPage(QWidget *parent) : QWidget(parent), m_treeModel( NULL ), ui( new Ui::ShortcutsPage ) { ui->setupUi(this); m_treeModel = new QStandardItemModel(this); treeModelLoadShortcutsSetting(); ui->treeView->setModel(m_treeModel); ui->treeView->resizeColumnToContents(0); connect(ui->treeView, SIGNAL(clicked(const QModelIndex&)), this, SLOT(tableItemClicked(const QModelIndex&))); connect(ui->keySeqLineEdit, SIGNAL(keyCaptured(QKeySequence)), this, SLOT(keyCapLineEditTextChanged(QKeySequence))); connect(ui->restoreShortcutsButton, SIGNAL(clicked()), this, SLOT(restoreShortcutsButtonClicked())); connect(ui->clearButton, SIGNAL(clicked()), this, SLOT(clearButtonClicked())); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); ui->gridLayout->addWidget(ui->text, 1, 1, 1, 3); QPushButton *clearButton = new QPushButton("C"); ui->gridLayout->addWidget(clearButton, 1, 4); connect(clearButton, SIGNAL(clicked()), this, SLOT(clearButtonClicked())); QPushButton *equalButton = new QPushButton("="); ui->gridLayout->addWidget(equalButton, 5, 3); connect(equalButton, SIGNAL(clicked()), this, SLOT(equalButtonClicked())); QPushButton *pointButton = new QPushButton("."); ui->gridLayout->addWidget(pointButton, 5, 2); connect(pointButton, SIGNAL(clicked()), this, SLOT(pointButtonClicked())); ///Making signals for operations QSignalMapper *operationMapper = new QSignalMapper; connect(operationMapper, SIGNAL(mapped(const QString &)), this, SLOT(operationButtonClicked(const QString &))); for (int i = 0; i < 4; i++) { QString *operation = new QString; if (i == 0) operation[0] = '+'; else if (i == 1) operation[0] = '-'; else if (i == 2) operation[0] = '*'; else if (i == 3) operation[0] = '/'; QPushButton *newOperationButton = new QPushButton(*operation); ui->gridLayout->addWidget(newOperationButton, i + 2, 4); connect(newOperationButton, SIGNAL(clicked()), operationMapper, SLOT(map())); operationMapper->setMapping(newOperationButton, *operation); } ///Making signals for digits QSignalMapper *digitMapper = new QSignalMapper; connect(digitMapper, SIGNAL(mapped(const QString &)), this, SLOT(digitButtonClicked(const QString &))); for (int i = 0; i < 10; i++) { QPushButton *newDigitButton = new QPushButton(QString::number(i)); if (i == 0) ui->gridLayout->addWidget(newDigitButton, 5, 1); else { int row = 4 - ((i - 1) / 3); int column = ((i - 1) % 3) + 1; ui->gridLayout->addWidget(newDigitButton, row, column); } connect(newDigitButton, SIGNAL(clicked()), digitMapper, SLOT(map())); digitMapper->setMapping(newDigitButton, QString::number(i)); } }
MainWindow2::MainWindow2( QWidget *parent ) : QMainWindow( parent ), ui( new Ui::MainWindow2 ) { ui->setupUi( this ); m_object = new Object(); m_object->defaultInitialisation(); editor = new Editor( this ); m_pScribbleArea = editor->getScribbleArea(); m_pTimeLine = new TimeLine( this, editor ); makeTimeLineConnections(); arrangePalettes(); createMenus(); loadAllShortcuts(); // must run after 'arragePalettes' editor->setObject( m_object ); editor->resetUI(); readSettings(); makeColorPaletteConnections(); makeColorWheelConnections(); connect(editor, SIGNAL(needSave()), this, SLOT(saveDocument())); connect(m_pToolSet, SIGNAL(clearButtonClicked()), editor, SLOT(clearCurrentFrame())); connect(editor, SIGNAL(changeTool(ToolType)), m_pToolSet, SLOT(setCurrentTool(ToolType))); editor->setCurrentLayer( this->editor->m_pObject->getLayerCount() - 1 ); }
void TransFunc1DRampEditor::createConnections() { // Buttons connect(clearButton_, SIGNAL(clicked()), this, SLOT(clearButtonClicked())); connect(loadButton_, SIGNAL(clicked()), this, SLOT(loadTransferFunction())); connect(saveButton_, SIGNAL(clicked()), this, SLOT(saveTransferFunction())); // signals from transferMappingCanvas connect(transCanvas_, SIGNAL(changed()), this, SLOT(updateTransferFunction())); connect(transCanvas_, SIGNAL(loadTransferFunction()), this, SLOT(loadTransferFunction())); connect(transCanvas_, SIGNAL(saveTransferFunction()), this, SLOT(saveTransferFunction())); connect(transCanvas_, SIGNAL(resetTransferFunction()), this, SLOT(clearButtonClicked())); connect(transCanvas_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); // signals for colorPicker connect(transCanvas_, SIGNAL(colorChanged(const QColor&)), colorPicker_, SLOT(setCol(const QColor))); connect(transCanvas_, SIGNAL(colorChanged(const QColor&)), colorLumPicker_, SLOT(setCol(const QColor))); connect(colorPicker_, SIGNAL(newCol(int,int)), colorLumPicker_, SLOT(setCol(int,int))); connect(colorLumPicker_, SIGNAL(newHsv(int,int,int)), this, SLOT(markerColorChanged(int,int,int))); connect(colorPicker_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); connect(colorLumPicker_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); // doubleslider connect(doubleSlider_, SIGNAL(valuesChanged(float, float)), this, SLOT(thresholdChanged(float, float))); connect(doubleSlider_, SIGNAL(toggleInteractionMode(bool)), this, SLOT(toggleInteractionMode(bool))); // threshold spinboxes connect(lowerThresholdSpin_, SIGNAL(valueChanged(int)), this, SLOT(lowerThresholdSpinChanged(int))); connect(upperThresholdSpin_, SIGNAL(valueChanged(int)), this, SLOT(upperThresholdSpinChanged(int))); connect(checkClipThresholds_, SIGNAL(toggled(bool)), transCanvas_, SLOT(toggleClipThresholds(bool))); //ramp slider and spinboxes connect(sliderRampCenter_, SIGNAL(valueChanged(int)), this, SLOT(updateRampCenter(int))); connect(spinRampCenter_, SIGNAL(valueChanged(int)), this, SLOT(updateRampCenter(int))); connect(spinRampWidth_, SIGNAL(valueChanged(int)), this, SLOT(updateRampWidth(int))); connect(sliderRampWidth_, SIGNAL(valueChanged(int)), this, SLOT(updateRampWidth(int))); connect(sliderRampCenter_, SIGNAL(sliderPressed()), this, SLOT(startTracking())); connect(sliderRampWidth_, SIGNAL(sliderPressed()), this, SLOT(startTracking())); connect(sliderRampCenter_, SIGNAL(sliderReleased()), this, SLOT(stopTracking())); connect(sliderRampWidth_, SIGNAL(sliderReleased()), this, SLOT(stopTracking())); }
void StreamOutputWidget::enabledButtonClicked(bool enabled) { m_enabled = m_ui.m_enabledCheckbox->isChecked(); if (!m_enabled) { stopButtonClicked(); clearButtonClicked(); } }
/** * This method is called if the touch-up event was inside the * bounds of the button. * @param button The button object that generated the event. */ void MainScreen::buttonClicked(Widget* button) { if ( mClearButton == button ) { clearButtonClicked(); } else if ( mSubmitButton == button ) { // Hide the keyboard if it isn't already dismissed. mPasswordBox->hideKeyboard(); submitEditBoxContent(); } }
IncSearchWidget::IncSearchWidget( QWidget *parent, const char *name ) : QWidget( parent ) { setObjectName( name ); QHBoxLayout *layout = new QHBoxLayout( this ); layout->setSpacing( KDialog::spacingHint() ); layout->setMargin( 2 ); mSearchText = new KLineEdit( this ); mSearchText->setClearButtonShown(true); mSearchText->setClickMessage( i18nc( "Search for contacts in the address book", "Search" ) ); mSearchText->setSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Preferred ); mSearchText->setWhatsThis( i18n( "The incremental search<p>Enter some text here will start the search for the contact, which matches the search pattern best. The part of the contact, which will be used for matching, depends on the field selection.</p>" ) ); layout->addWidget( mSearchText ); QLabel *label = new QLabel( i18nc( "as in 'Search in:'", "&in:" ), this ); label->setObjectName( "kde toolbar widget" ); label->setAlignment( Qt::AlignVCenter | Qt::AlignRight ); layout->addWidget( label ); mFieldCombo = new KComboBox( this ); mFieldCombo->setEditable( false ); layout->addWidget( mFieldCombo ); label->setBuddy(mFieldCombo); mFieldCombo->setToolTip( i18n( "Select incremental search field" ) ); mFieldCombo->setWhatsThis( i18n( "Here you can choose the field, which shall be used for incremental search." ) ); mInputTimer = new QTimer( this ); mInputTimer->setSingleShot( true ); connect( mInputTimer, SIGNAL( timeout() ), SLOT( timeout() ) ); connect( mSearchText, SIGNAL( textChanged( const QString& ) ), SLOT( announceDoSearch() ) ); connect( mSearchText, SIGNAL( returnPressed() ), SLOT( announceDoSearch() ) ); connect( mFieldCombo, SIGNAL( activated( const QString& ) ), SLOT( announceDoSearch() ) ); connect( mSearchText, SIGNAL( clearButtonClicked() ), SLOT( announceDoSearch() ) ); initFields(); mSearchText->installEventFilter( this ); setFocusProxy( mSearchText ); }
CalculatorWidget::CalculatorWidget(QWidget *parent, Qt::WindowFlags flags) : QWidget(parent, flags) { QGridLayout *layout = new QGridLayout(this); layout->setSizeConstraint(QLayout::SetFixedSize); setLayout(layout); QSizePolicy policy = sizePolicy(); displayLabel = new QLabel(this); layout->addWidget(displayLabel, 0, 0, 1, 3); displayLabel->setAutoFillBackground(true); displayLabel->setBackgroundRole(QPalette::Base); displayLabel->setAlignment(Qt::AlignRight); displayLabel->setFrameStyle(QFrame::Panel | QFrame::Sunken); policy = displayLabel->sizePolicy(); policy.setVerticalPolicy(QSizePolicy::Fixed); displayLabel->setSizePolicy(policy); signalMapper = new QSignalMapper(this); QPushButton *button = new QPushButton(QString::number(0), this); QObject::connect(button, SIGNAL(clicked()), signalMapper, SLOT(map())); signalMapper->setMapping(button, 0); layout->addWidget(button, 4, 1); digitButtons.push_back(button); for (unsigned int i = 1; i < 10; ++i) { QPushButton *button = new QPushButton(QString::number(i), this); QObject::connect(button, SIGNAL(clicked()), signalMapper, SLOT(map())); signalMapper->setMapping(button, i); layout->addWidget(button, 1+(9-i)/3, (i-1)%3); digitButtons.push_back(button); } QObject::connect(signalMapper, SIGNAL(mapped(int)), SLOT(buttonClicked(int))); clearButton = new QPushButton("C", this); layout->addWidget(clearButton, 1, 4); QObject::connect(clearButton, SIGNAL(clicked()), SLOT(clearButtonClicked())); additionButton = new QPushButton("+", this); layout->addWidget(additionButton, 2, 4); QObject::connect(additionButton, SIGNAL(clicked()), SLOT(addButtonClicked())); subtractionButton = new QPushButton("-", this); layout->addWidget(subtractionButton, 3, 4); QObject::connect(subtractionButton, SIGNAL(clicked()), SLOT(subtractButtonClicked())); calculateButton = new QPushButton("=", this); layout->addWidget(calculateButton, 4, 4); QObject::connect(calculateButton, SIGNAL(clicked()), SLOT(calculateButtonClicked())); }
void RoutingLineEdit::mouseReleaseEvent( QMouseEvent* e ) { if ( d->m_clearButton == childAt( e->pos() ) ) { QString newText; if ( e->button() == Qt::MidButton ) { newText = QApplication::clipboard()->text( QClipboard::Selection ); setText( newText ); } else { setSelection( 0, text().size() ); del(); emit clearButtonClicked(); } emit textChanged( newText ); } QLineEdit::mouseReleaseEvent( e ); }
QLayout *Calculator::setupVariousButtons() { QPushButton *buttonAC = new QPushButton("AC"); QPushButton *buttonC = new QPushButton("C"); QPushButton *buttonSign = new QPushButton("+/-"); buttonAC->setObjectName(("buttonAC")); buttonC->setObjectName("buttonC"); buttonSign->setObjectName("buttonSign"); QHBoxLayout *layout = new QHBoxLayout; layout->addWidget(buttonAC); layout->addWidget(buttonC); layout->addWidget(buttonSign); connect(buttonAC,SIGNAL(clicked()),this,SLOT(allClearButtonClicked())); connect(buttonC,SIGNAL(clicked()),this,SLOT(clearButtonClicked())); connect(buttonSign,SIGNAL(clicked()),this,SLOT(signButtonClicked())); return layout; }
StreamOutputWidget::StreamOutputWidget(QWidget *parent) : QWidget(parent), m_mutex(QMutex::Recursive), m_audioOutput(NULL), m_IODevice(NULL), m_enabled(false) { //Create GUI components m_ui.setupUi(this); m_timer =new QTimer(this); //Connect signals connect(m_ui.m_startButton,SIGNAL(clicked()),this,SLOT(startButtonClicked())); connect(m_ui.m_stopButton,SIGNAL(clicked()),this,SLOT(stopButtonClicked())); connect(m_ui.m_clearButton,SIGNAL(clicked()),this,SLOT(clearButtonClicked())); connect(m_timer,SIGNAL(timeout()),this,SLOT(refreshTimeout())); connect(m_ui.m_enabledCheckbox,SIGNAL(toggled(bool)),this,SLOT(enabledButtonClicked(bool))); //Scan audio output devices scanOutputDevice(); m_timer->start(100); //100ms timer }
void TransFunc1DRampEditor::loadTransferFunction() { if (!transferFuncIntensity_) { LWARNING("No valid transfer function assigned"); return; } //create filter with supported file formats QString filter = "transfer function ("; for (size_t i = 0; i < transferFuncIntensity_->getLoadFileFormats().size(); ++i) { std::string temp = "*." + transferFuncIntensity_->getLoadFileFormats()[i] + " "; filter.append(temp.c_str()); } filter.replace(filter.length()-1, 1, ")"); QString fileName = getOpenFileName(filter); if (!fileName.isEmpty()) { if (transferFuncIntensity_->load(fileName.toStdString())) { if (transferFuncIntensity_->getNumKeys() > 2) { clearButtonClicked(); std::string error = "The loaded transfer function contains more than 2 keys.\n"; error += "The editor does not support this kind of transfer functions.\n"; error += "The transfer function is reset to default."; QMessageBox::critical(this, tr("Error"), tr(error.c_str())); LERROR(error); } else { restoreThresholds(); updateTransferFunction(); } } else { QMessageBox::critical(this, tr("Error"), tr("The selected transfer function could not be loaded.")); LERROR("The selected transfer function could not be loaded. Maybe the file is corrupt."); } } }
CartesianPlotLegendDock::CartesianPlotLegendDock(QWidget *parent): QWidget(parent), m_legend(0), labelWidget(0), m_initializing(false), m_completion(new KUrlCompletion()) { ui.setupUi(this); //"Title"-tab QHBoxLayout* hboxLayout = new QHBoxLayout(ui.tabTitle); labelWidget=new LabelWidget(ui.tabTitle); labelWidget->setNoGeometryMode(true); hboxLayout->addWidget(labelWidget); hboxLayout->setContentsMargins(2,2,2,2); hboxLayout->setSpacing(2); //"Background"-tab ui.kleBackgroundFileName->setClearButtonShown(true); ui.bOpen->setIcon( KIcon("document-open") ); ui.kleBackgroundFileName->setCompletionObject(m_completion); //adjust layouts in the tabs for (int i=0; i<ui.tabWidget->count(); ++i){ QGridLayout* layout = dynamic_cast<QGridLayout*>(ui.tabWidget->widget(i)->layout()); if (!layout) continue; layout->setContentsMargins(2,2,2,2); layout->setHorizontalSpacing(2); layout->setVerticalSpacing(2); } //SIGNAL/SLOT //General connect( ui.leName, SIGNAL(returnPressed()), this, SLOT(nameChanged()) ); connect( ui.leComment, SIGNAL(returnPressed()), this, SLOT(commentChanged()) ); connect( ui.chkVisible, SIGNAL(clicked(bool)), this, SLOT(visibilityChanged(bool)) ); connect( ui.kfrLabelFont, SIGNAL(fontSelected(QFont)), this, SLOT(labelFontChanged(QFont)) ); connect( ui.kcbLabelColor, SIGNAL(changed(QColor)), this, SLOT(labelColorChanged(QColor)) ); connect( ui.cbOrder, SIGNAL(currentIndexChanged(int)), this, SLOT(labelOrderChanged(int)) ); connect( ui.sbLineSymbolWidth, SIGNAL(valueChanged(double)), this, SLOT(lineSymbolWidthChanged(double)) ); connect( ui.cbPositionX, SIGNAL(currentIndexChanged(int)), this, SLOT(positionXChanged(int)) ); connect( ui.cbPositionY, SIGNAL(currentIndexChanged(int)), this, SLOT(positionYChanged(int)) ); connect( ui.sbPositionX, SIGNAL(valueChanged(double)), this, SLOT(customPositionXChanged(double)) ); connect( ui.sbPositionY, SIGNAL(valueChanged(double)), this, SLOT(customPositionYChanged(double)) ); //Background connect( ui.cbBackgroundType, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundTypeChanged(int)) ); connect( ui.cbBackgroundColorStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundColorStyleChanged(int)) ); connect( ui.cbBackgroundImageStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundImageStyleChanged(int)) ); connect( ui.cbBackgroundBrushStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundBrushStyleChanged(int)) ); connect(ui.bOpen, SIGNAL(clicked(bool)), this, SLOT(selectFile())); connect( ui.kleBackgroundFileName, SIGNAL(returnPressed()), this, SLOT(fileNameChanged()) ); connect( ui.kleBackgroundFileName, SIGNAL(clearButtonClicked()), this, SLOT(fileNameChanged()) ); connect( ui.kcbBackgroundFirstColor, SIGNAL(changed(QColor)), this, SLOT(backgroundFirstColorChanged(QColor)) ); connect( ui.kcbBackgroundSecondColor, SIGNAL(changed(QColor)), this, SLOT(backgroundSecondColorChanged(QColor)) ); connect( ui.sbBackgroundOpacity, SIGNAL(valueChanged(int)), this, SLOT(backgroundOpacityChanged(int)) ); //Border connect( ui.cbBorderStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(borderStyleChanged(int)) ); connect( ui.kcbBorderColor, SIGNAL(changed(QColor)), this, SLOT(borderColorChanged(QColor)) ); connect( ui.sbBorderWidth, SIGNAL(valueChanged(double)), this, SLOT(borderWidthChanged(double)) ); connect( ui.sbBorderCornerRadius, SIGNAL(valueChanged(double)), this, SLOT(borderCornerRadiusChanged(double)) ); connect( ui.sbBorderOpacity, SIGNAL(valueChanged(int)), this, SLOT(borderOpacityChanged(int)) ); //Layout connect( ui.sbLayoutTopMargin, SIGNAL(valueChanged(double)), this, SLOT(layoutTopMarginChanged(double)) ); connect( ui.sbLayoutBottomMargin, SIGNAL(valueChanged(double)), this, SLOT(layoutBottomMarginChanged(double)) ); connect( ui.sbLayoutLeftMargin, SIGNAL(valueChanged(double)), this, SLOT(layoutLeftMarginChanged(double)) ); connect( ui.sbLayoutRightMargin, SIGNAL(valueChanged(double)), this, SLOT(layoutRightMarginChanged(double)) ); connect( ui.sbLayoutHorizontalSpacing, SIGNAL(valueChanged(double)), this, SLOT(layoutHorizontalSpacingChanged(double)) ); connect( ui.sbLayoutVerticalSpacing, SIGNAL(valueChanged(double)), this, SLOT(layoutVerticalSpacingChanged(double)) ); connect( ui.sbLayoutColumnCount, SIGNAL(valueChanged(int)), this, SLOT(layoutColumnCountChanged(int)) ); TemplateHandler* templateHandler = new TemplateHandler(this, TemplateHandler::CartesianPlotLegend); ui.verticalLayout->addWidget(templateHandler); templateHandler->show(); connect(templateHandler, SIGNAL(loadConfigRequested(KConfig&)), this, SLOT(loadConfigFromTemplate(KConfig&))); connect(templateHandler, SIGNAL(saveConfigRequested(KConfig&)), this, SLOT(saveConfigAsTemplate(KConfig&))); connect(templateHandler, SIGNAL(info(QString)), this, SIGNAL(info(QString))); init(); }
KexiDataSourcePage::KexiDataSourcePage(QWidget *parent) : KexiPropertyPaneViewBase(parent) , m_noDataSourceAvailableSingleText( i18n("No data source could be assigned for this widget.") ) , m_noDataSourceAvailableMultiText( i18n("No data source could be assigned for multiple widgets.") ) , m_insideClearFormDataSourceSelection(false) #ifdef KEXI_NO_AUTOFIELD_WIDGET , m_tableOrQuerySchema(0) #endif { /*moved Q3VBoxLayout *vlyr = new Q3VBoxLayout(this); m_objectInfoLabel = new KexiObjectInfoLabel(this); m_objectInfoLabel->setObjectName("KexiObjectInfoLabel"); vlyr->addWidget(m_objectInfoLabel);*/ //moved vlyr->addSpacing(8); //Section 1: Form's/Widget's Data Source /*2.0 KoProperty::GroupContainer *container = new KoProperty::GroupContainer( i18n("Data Source"), this); layout()->addWidget(container); QWidget *contents = new QWidget(container); container->setContents(contents);*/ //2.0 QVBoxLayout *contentsVlyr = new QVBoxLayout(this); //2.0 contentsVlyr->setContentsMargins(0, 0, 0, 0); infoLabel()->setContentsMargins(0, 0, 0, spacing()); m_noDataSourceAvailableLabel = new QLabel(m_noDataSourceAvailableSingleText, this); m_noDataSourceAvailableLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); m_noDataSourceAvailableLabel->setContentsMargins(0, 0, 0, spacing()); //m_noDataSourceAvailableLabel->setAutoFillBackground(true); //m_noDataSourceAvailableLabel->setPaletteBackgroundColor(Qt::red); //2.0 m_noDataSourceAvailableLabel->setMargin(2); m_noDataSourceAvailableLabel->setAlignment(Qt::AlignBottom | Qt::AlignLeft); m_noDataSourceAvailableLabel->setWordWrap(true); mainLayout()->addWidget(m_noDataSourceAvailableLabel); //-Widget's Data Source QHBoxLayout *hlyr = new QHBoxLayout(); mainLayout()->addLayout(hlyr); #if 0 //! @todo unhide this when expression work // m_widgetDSLabel = new QLabel(i18nc("Table Field, Query Field or Expression", "Source field or expression"), this); #else m_widgetDSLabel = new QLabel( i18nc("Table Field or Query Field", "Widget's data source"), this); #endif m_widgetDSLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); //2.0 m_widgetDSLabel->setMargin(2); //2.0 m_widgetDSLabel->setMinimumHeight(IconSize(KIconLoader::Small) + 4); m_widgetDSLabel->setAlignment(Qt::AlignLeft | Qt::AlignBottom); hlyr->addWidget(m_widgetDSLabel); #if 0 //2.0: clear button is available in the combobox itself m_clearWidgetDSButton = new KexiSmallToolButton( koIcon("edit-clear-locationbar-rtl"), QString(), this); m_clearWidgetDSButton->setObjectName("clearWidgetDSButton"); m_clearWidgetDSButton->setMinimumHeight(m_widgetDSLabel->minimumHeight()); m_clearWidgetDSButton->setToolTip(i18n("Clear widget's data source")); hlyr->addWidget(m_clearWidgetDSButton); connect(m_clearWidgetDSButton, SIGNAL(clicked()), this, SLOT(clearWidgetDataSourceSelection())); #endif m_widgetDataSourceCombo = new KexiFieldComboBox(this); m_widgetDataSourceCombo->setObjectName("sourceFieldCombo"); m_widgetDataSourceCombo->setContentsMargins(0, 0, 0, 0); m_widgetDSLabel->setBuddy(m_widgetDataSourceCombo); connect(m_widgetDataSourceCombo->lineEdit(), SIGNAL(clearButtonClicked()), this, SLOT(clearWidgetDataSourceSelection())); mainLayout()->addWidget(m_widgetDataSourceCombo); m_widgetDataSourceComboSpacer = addWidgetSpacer(); /* m_dataSourceSeparator = new Q3Frame(contents); m_dataSourceSeparator->setFrameShape(Q3Frame::HLine); m_dataSourceSeparator->setFrameShadow(Q3Frame::Sunken); mainLayout()->addWidget(m_dataSourceSeparator);*/ // addSpacing(); //- Form's Data Source hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_dataSourceLabel = new QLabel(i18n("Form's data source"), this); m_dataSourceLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); //2.0 m_dataSourceLabel->setMargin(2); //2.0 m_dataSourceLabel->setMinimumHeight(IconSize(KIconLoader::Small) + 4); m_dataSourceLabel->setAlignment(Qt::AlignLeft | Qt::AlignBottom); hlyr->addWidget(m_dataSourceLabel); //m_dataSourceLabel->setAutoFillBackground(true); //m_dataSourceLabel->setPaletteBackgroundColor(Qt::red); m_gotoButton = new KexiSmallToolButton( koIcon("go-jump"), QString(), this); m_gotoButton->setObjectName("gotoButton"); //2.0 m_gotoButton->setMinimumHeight(m_dataSourceLabel->minimumHeight()); m_gotoButton->setToolTip(i18n("Go to selected form's data source")); m_gotoButton->setWhatsThis(i18n("Goes to selected form's data source")); hlyr->addWidget(m_gotoButton); connect(m_gotoButton, SIGNAL(clicked()), this, SLOT(slotGotoSelected())); #if 0 //2.0: clear button is available in the combobox itself m_clearDSButton = new KexiSmallToolButton( koIcon("edit-clear-locationbar-rtl"), QString(), this); m_clearDSButton->setObjectName("clearDSButton"); m_clearDSButton->setMinimumHeight(m_dataSourceLabel->minimumHeight()); m_clearDSButton->setToolTip(i18n("Clear form's data source")); hlyr->addWidget(m_clearDSButton); connect(m_clearDSButton, SIGNAL(clicked()), this, SLOT(clearFormDataSourceSelection())); #endif m_formDataSourceCombo = new KexiDataSourceComboBox(this); m_formDataSourceCombo->setObjectName("dataSourceCombo"); m_formDataSourceCombo->setContentsMargins(0, 0, 0, 0); m_dataSourceLabel->setBuddy(m_formDataSourceCombo); connect(m_formDataSourceCombo->lineEdit(), SIGNAL(clearButtonClicked()), this, SLOT(clearFormDataSourceSelection())); mainLayout()->addWidget(m_formDataSourceCombo); m_formDataSourceComboSpacer = addWidgetSpacer(); #ifdef KEXI_NO_AUTOFIELD_WIDGET m_availableFieldsLabel = 0; m_addField = 0; // m_fieldListView = 0; mainLayout()->addStretch(); #else // addSpacing(); /* Q3Frame *separator = new QFrame(this); separator->setFrameShape(Q3Frame::HLine); separator->setFrameShadow(Q3Frame::Sunken); vlyr->addWidget(separator);*/ /* KPopupTitle *title = new KPopupTitle(this); title->setTitle(i18n("Inserting fields")); vlyr->addWidget(title); vlyr->addSpacing(4);*/ //2. Inserting fields /*2.0 container = new KoProperty::GroupContainer(i18n("Inserting Fields"), this); static_cast<QBoxLayout*>(layout())->addWidget(container, 1);*/ //helper info //! @todo allow to hide such helpers by adding global option //2.0 contents = new QWidget(container); //2.0 container->setContents(contents); //2.0 mainLayout() = new QVBoxLayout(contents); hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_mousePointerLabel = new QLabel(this); hlyr->addWidget(m_mousePointerLabel); m_mousePointerLabel->setPixmap(koIcon("mouse_pointer")); m_mousePointerLabel->setFixedWidth(m_mousePointerLabel->pixmap() ? m_mousePointerLabel->pixmap()->width() : 0); m_availableFieldsDescriptionLabel = new QLabel( i18n("Select fields from the list below and drag them onto" " a form or click the \"Insert\" button"), this); m_availableFieldsDescriptionLabel->setAlignment(Qt::AlignLeft); m_availableFieldsDescriptionLabel->setWordWrap(true); hlyr->addWidget(m_availableFieldsDescriptionLabel); //Available Fields //2.0 mainLayout()->addSpacing(4); hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_availableFieldsLabel = new QLabel(i18n("Available fields"), this); m_availableFieldsLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); //2.0 m_availableFieldsLabel->setMargin(2); //2.0 m_availableFieldsLabel->setMinimumHeight(IconSize(KIconLoader::Small)); hlyr->addWidget(m_availableFieldsLabel); m_addField = new KexiSmallToolButton( koIcon("add_field"), i18nc("Insert selected field into form", "Insert"), this); m_addField->setObjectName("addFieldButton"); //2.0 m_addField->setMinimumHeight(m_availableFieldsLabel->minimumHeight()); // m_addField->setTextPosition(QToolButton::Right); m_addField->setFocusPolicy(Qt::StrongFocus); m_addField->setToolTip(i18n("Insert selected fields into form")); m_addField->setWhatsThis(i18n("Inserts selected fields into form")); hlyr->addWidget(m_addField); connect(m_addField, SIGNAL(clicked()), this, SLOT(slotInsertSelectedFields())); m_fieldListView = new KexiFieldListView(this, KexiFieldListView::ShowDataTypes | KexiFieldListView::AllowMultiSelection); m_fieldListView->setObjectName("fieldListView"); m_fieldListView->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding)); m_availableFieldsLabel->setBuddy(m_fieldListView); mainLayout()->addWidget(m_fieldListView, 1); connect(m_fieldListView, SIGNAL(selectionChanged()), this, SLOT(slotFieldListViewSelectionChanged())); connect(m_fieldListView, SIGNAL(fieldDoubleClicked(QString,QString,QString)), this, SLOT(slotFieldDoubleClicked(QString,QString,QString))); #endif mainLayout()->addStretch(1); connect(m_formDataSourceCombo, SIGNAL(textChanged(QString)), this, SLOT(slotFormDataSourceTextChanged(QString))); connect(m_formDataSourceCombo, SIGNAL(dataSourceChanged()), this, SLOT(slotFormDataSourceChanged())); connect(m_widgetDataSourceCombo, SIGNAL(selected()), this, SLOT(slotFieldSelected())); clearFormDataSourceSelection(); slotFieldListViewSelectionChanged(); }
CartesianPlotDock::CartesianPlotDock(QWidget *parent): QWidget(parent), m_plot(0), labelWidget(0), m_initializing(false), m_completion(new KUrlCompletion()) { ui.setupUi(this); //"Coordinate system"-tab ui.bAddXBreak->setIcon( KIcon("list-add") ); ui.bRemoveXBreak->setIcon( KIcon("list-remove") ); ui.cbXBreak->addItem("1"); ui.bAddYBreak->setIcon( KIcon("list-add") ); ui.bRemoveYBreak->setIcon( KIcon("list-remove") ); ui.cbYBreak->addItem("1"); //"Background"-tab ui.kleBackgroundFileName->setClearButtonShown(true); ui.bOpen->setIcon( KIcon("document-open") ); ui.kleBackgroundFileName->setCompletionObject(m_completion); //"Title"-tab QHBoxLayout* hboxLayout = new QHBoxLayout(ui.tabTitle); labelWidget=new LabelWidget(ui.tabTitle); hboxLayout->addWidget(labelWidget); hboxLayout->setContentsMargins(2,2,2,2); hboxLayout->setSpacing(2); //adjust layouts in the tabs for (int i=0; i<ui.tabWidget->count(); ++i) { QGridLayout* layout = dynamic_cast<QGridLayout*>(ui.tabWidget->widget(i)->layout()); if (!layout) continue; layout->setContentsMargins(2,2,2,2); layout->setHorizontalSpacing(2); layout->setVerticalSpacing(2); } //Validators ui.leXBreakStart->setValidator( new QDoubleValidator(ui.leXBreakStart) ); ui.leXBreakEnd->setValidator( new QDoubleValidator(ui.leXBreakEnd) ); ui.leYBreakStart->setValidator( new QDoubleValidator(ui.leYBreakStart) ); ui.leYBreakEnd->setValidator( new QDoubleValidator(ui.leYBreakEnd) ); //SIGNAL/SLOT //General connect( ui.leName, SIGNAL(returnPressed()), this, SLOT(nameChanged()) ); connect( ui.leComment, SIGNAL(returnPressed()), this, SLOT(commentChanged()) ); connect( ui.chkVisible, SIGNAL(clicked(bool)), this, SLOT(visibilityChanged(bool)) ); connect( ui.sbLeft, SIGNAL(valueChanged(double)), this, SLOT(geometryChanged()) ); connect( ui.sbTop, SIGNAL(valueChanged(double)), this, SLOT(geometryChanged()) ); connect( ui.sbWidth, SIGNAL(valueChanged(double)), this, SLOT(geometryChanged()) ); connect( ui.sbHeight, SIGNAL(valueChanged(double)), this, SLOT(geometryChanged()) ); connect( ui.chkAutoScaleX, SIGNAL(stateChanged(int)), this, SLOT(autoScaleXChanged(int)) ); connect( ui.kleXMin, SIGNAL(returnPressed()), this, SLOT(xMinChanged()) ); connect( ui.kleXMax, SIGNAL(returnPressed()), this, SLOT(xMaxChanged()) ); connect( ui.cbXScaling, SIGNAL(currentIndexChanged(int)), this, SLOT(xScaleChanged(int)) ); connect( ui.chkAutoScaleY, SIGNAL(stateChanged(int)), this, SLOT(autoScaleYChanged(int)) ); connect( ui.kleYMin, SIGNAL(returnPressed()), this, SLOT(yMinChanged()) ); connect( ui.kleYMax, SIGNAL(returnPressed()), this, SLOT(yMaxChanged()) ); connect( ui.cbYScaling, SIGNAL(currentIndexChanged(int)), this, SLOT(yScaleChanged(int)) ); //Range breaks connect( ui.chkXBreak, SIGNAL(toggled(bool)), this, SLOT(toggleXBreak(bool)) ); connect( ui.bAddXBreak, SIGNAL(clicked()), this, SLOT(addXBreak()) ); connect( ui.bRemoveXBreak, SIGNAL(clicked()), this, SLOT(removeXBreak()) ); connect( ui.cbXBreak, SIGNAL(currentIndexChanged(int)), this, SLOT(currentXBreakChanged(int)) ); connect( ui.leXBreakStart, SIGNAL(returnPressed()), this, SLOT(xBreakStartChanged()) ); connect( ui.leXBreakEnd, SIGNAL(returnPressed()), this, SLOT(xBreakEndChanged()) ); connect( ui.sbXBreakPosition, SIGNAL(valueChanged(int)), this, SLOT(xBreakPositionChanged(int)) ); connect( ui.cbXBreakStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(xBreakStyleChanged(int)) ); connect( ui.chkYBreak, SIGNAL(toggled(bool)), this, SLOT(toggleYBreak(bool)) ); connect( ui.bAddYBreak, SIGNAL(clicked()), this, SLOT(addYBreak()) ); connect( ui.bRemoveYBreak, SIGNAL(clicked()), this, SLOT(removeYBreak()) ); connect( ui.cbYBreak, SIGNAL(currentIndexChanged(int)), this, SLOT(currentYBreakChanged(int)) ); connect( ui.leYBreakStart, SIGNAL(returnPressed()), this, SLOT(yBreakStartChanged()) ); connect( ui.leYBreakEnd, SIGNAL(returnPressed()), this, SLOT(yBreakEndChanged()) ); connect( ui.sbYBreakPosition, SIGNAL(valueChanged(int)), this, SLOT(yBreakPositionChanged(int)) ); connect( ui.cbYBreakStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(yBreakStyleChanged(int)) ); //Background connect( ui.cbBackgroundType, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundTypeChanged(int)) ); connect( ui.cbBackgroundColorStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundColorStyleChanged(int)) ); connect( ui.cbBackgroundImageStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundImageStyleChanged(int)) ); connect( ui.cbBackgroundBrushStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(backgroundBrushStyleChanged(int)) ); connect(ui.bOpen, SIGNAL(clicked(bool)), this, SLOT(selectFile())); connect( ui.kleBackgroundFileName, SIGNAL(returnPressed()), this, SLOT(fileNameChanged()) ); connect( ui.kleBackgroundFileName, SIGNAL(clearButtonClicked()), this, SLOT(fileNameChanged()) ); connect( ui.kcbBackgroundFirstColor, SIGNAL(changed(QColor)), this, SLOT(backgroundFirstColorChanged(QColor)) ); connect( ui.kcbBackgroundSecondColor, SIGNAL(changed(QColor)), this, SLOT(backgroundSecondColorChanged(QColor)) ); connect( ui.sbBackgroundOpacity, SIGNAL(valueChanged(int)), this, SLOT(backgroundOpacityChanged(int)) ); //Border connect( ui.cbBorderStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(borderStyleChanged(int)) ); connect( ui.kcbBorderColor, SIGNAL(changed(QColor)), this, SLOT(borderColorChanged(QColor)) ); connect( ui.sbBorderWidth, SIGNAL(valueChanged(double)), this, SLOT(borderWidthChanged(double)) ); connect( ui.sbBorderCornerRadius, SIGNAL(valueChanged(double)), this, SLOT(borderCornerRadiusChanged(double)) ); connect( ui.sbBorderOpacity, SIGNAL(valueChanged(int)), this, SLOT(borderOpacityChanged(int)) ); //Padding connect( ui.sbPaddingHorizontal, SIGNAL(valueChanged(double)), this, SLOT(horizontalPaddingChanged(double)) ); connect( ui.sbPaddingVertical, SIGNAL(valueChanged(double)), this, SLOT(verticalPaddingChanged(double)) ); TemplateHandler* templateHandler = new TemplateHandler(this, TemplateHandler::CartesianPlot); ui.verticalLayout->addWidget(templateHandler); templateHandler->show(); connect(templateHandler, SIGNAL(loadConfigRequested(KConfig&)), this, SLOT(loadConfigFromTemplate(KConfig&))); connect(templateHandler, SIGNAL(saveConfigRequested(KConfig&)), this, SLOT(saveConfigAsTemplate(KConfig&))); connect(templateHandler, SIGNAL(info(QString)), this, SIGNAL(info(QString))); init(); }
CoverFoundDialog::CoverFoundDialog( const CoverFetchUnit::Ptr unit, const CoverFetch::Metadata &data, QWidget *parent ) : KDialog( parent ) , m_album( unit->album() ) , m_isSorted( false ) , m_sortEnabled( false ) , m_unit( unit ) , m_queryPage( 0 ) { DEBUG_BLOCK setButtons( KDialog::Ok | KDialog::Cancel | KDialog::User1 ); // User1: clear icon view setButtonGuiItem( KDialog::User1, KStandardGuiItem::clear() ); connect( button( KDialog::User1 ), SIGNAL(clicked()), SLOT(clearView()) ); m_save = button( KDialog::Ok ); QSplitter *splitter = new QSplitter( this ); m_sideBar = new CoverFoundSideBar( m_album, splitter ); KVBox *vbox = new KVBox( splitter ); vbox->setSpacing( 4 ); KHBox *breadcrumbBox = new KHBox( vbox ); QLabel *breadcrumbLabel = new QLabel( i18n( "Finding cover for" ), breadcrumbBox ); AlbumBreadcrumbWidget *breadcrumb = new AlbumBreadcrumbWidget( m_album, breadcrumbBox ); QFont breadcrumbLabelFont; breadcrumbLabelFont.setBold( true ); breadcrumbLabel->setFont( breadcrumbLabelFont ); breadcrumbLabel->setIndent( 4 ); connect( breadcrumb, SIGNAL(artistClicked(const QString&)), SLOT(addToCustomSearch(const QString&)) ); connect( breadcrumb, SIGNAL(albumClicked(const QString&)), SLOT(addToCustomSearch(const QString&)) ); KHBox *searchBox = new KHBox( vbox ); vbox->setSpacing( 4 ); QStringList completionNames; QString firstRunQuery( m_album->name() ); completionNames << firstRunQuery; if( m_album->hasAlbumArtist() ) { const QString &name = m_album->albumArtist()->name(); completionNames << name; firstRunQuery += ' ' + name; } m_query = firstRunQuery; m_album->setSuppressImageAutoFetch( true ); m_search = new KComboBox( searchBox ); m_search->setEditable( true ); // creates a KLineEdit for the combobox m_search->setTrapReturnKey( true ); m_search->setInsertPolicy( QComboBox::NoInsert ); // insertion is handled by us m_search->setCompletionMode( KGlobalSettings::CompletionPopup ); m_search->setSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Fixed ); qobject_cast<KLineEdit*>( m_search->lineEdit() )->setClickMessage( i18n( "Enter Custom Search" ) ); m_search->completionObject()->setOrder( KCompletion::Insertion ); m_search->completionObject()->setIgnoreCase( true ); m_search->completionObject()->setItems( completionNames ); m_search->insertItem( 0, KStandardGuiItem::find().icon(), QString() ); m_search->insertSeparator( 1 ); m_search->insertItem( 2, KIcon("filename-album-amarok"), m_album->name() ); if( m_album->hasAlbumArtist() ) m_search->insertItem( 3, KIcon("filename-artist-amarok"), m_album->albumArtist()->name() ); m_searchButton = new KPushButton( KStandardGuiItem::find(), searchBox ); KPushButton *sourceButton = new KPushButton( KStandardGuiItem::configure(), searchBox ); updateSearchButton( firstRunQuery ); QMenu *sourceMenu = new QMenu( sourceButton ); QAction *lastFmAct = new QAction( i18n( "Last.fm" ), sourceMenu ); QAction *googleAct = new QAction( i18n( "Google" ), sourceMenu ); QAction *yahooAct = new QAction( i18n( "Yahoo!" ), sourceMenu ); QAction *discogsAct = new QAction( i18n( "Discogs" ), sourceMenu ); lastFmAct->setCheckable( true ); googleAct->setCheckable( true ); yahooAct->setCheckable( true ); discogsAct->setCheckable( true ); connect( lastFmAct, SIGNAL(triggered()), this, SLOT(selectLastFm()) ); connect( googleAct, SIGNAL(triggered()), this, SLOT(selectGoogle()) ); connect( yahooAct, SIGNAL(triggered()), this, SLOT(selectYahoo()) ); connect( discogsAct, SIGNAL(triggered()), this, SLOT(selectDiscogs()) ); m_sortAction = new QAction( i18n( "Sort by size" ), sourceMenu ); m_sortAction->setCheckable( true ); connect( m_sortAction, SIGNAL(triggered(bool)), this, SLOT(sortingTriggered(bool)) ); QActionGroup *ag = new QActionGroup( sourceButton ); ag->addAction( lastFmAct ); ag->addAction( googleAct ); ag->addAction( yahooAct ); ag->addAction( discogsAct ); sourceMenu->addActions( ag->actions() ); sourceMenu->addSeparator(); sourceMenu->addAction( m_sortAction ); sourceButton->setMenu( sourceMenu ); connect( m_search, SIGNAL(returnPressed(const QString&)), SLOT(insertComboText(const QString&)) ); connect( m_search, SIGNAL(returnPressed(const QString&)), SLOT(processQuery(const QString&)) ); connect( m_search, SIGNAL(returnPressed(const QString&)), SLOT(updateSearchButton(const QString&)) ); connect( m_search, SIGNAL(editTextChanged(const QString&)), SLOT(updateSearchButton(const QString&)) ); connect( m_search->lineEdit(), SIGNAL(clearButtonClicked()), SLOT(clearQueryButtonClicked())); connect( m_searchButton, SIGNAL(clicked()), SLOT(processQuery()) ); m_view = new KListWidget( vbox ); m_view->setAcceptDrops( false ); m_view->setContextMenuPolicy( Qt::CustomContextMenu ); m_view->setDragDropMode( QAbstractItemView::NoDragDrop ); m_view->setDragEnabled( false ); m_view->setDropIndicatorShown( false ); m_view->setMovement( QListView::Static ); m_view->setGridSize( QSize( 140, 150 ) ); m_view->setIconSize( QSize( 120, 120 ) ); m_view->setSpacing( 4 ); m_view->setViewMode( QListView::IconMode ); m_view->setResizeMode( QListView::Adjust ); connect( m_view, SIGNAL(currentItemChanged(QListWidgetItem*, QListWidgetItem*)), this, SLOT(currentItemChanged(QListWidgetItem*, QListWidgetItem*)) ); connect( m_view, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(itemDoubleClicked(QListWidgetItem*)) ); connect( m_view, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(itemMenuRequested(const QPoint&)) ); splitter->addWidget( m_sideBar ); splitter->addWidget( vbox ); setMainWidget( splitter ); const KConfigGroup config = Amarok::config( "Cover Fetcher" ); const QString source = config.readEntry( "Interactive Image Source", "LastFm" ); m_sortEnabled = config.readEntry( "Sort by Size", false ); m_sortAction->setChecked( m_sortEnabled ); m_isSorted = m_sortEnabled; restoreDialogSize( config ); // call this after setMainWidget() if( source == "LastFm" ) lastFmAct->setChecked( true ); else if( source == "Yahoo" ) yahooAct->setChecked( true ); else if( source == "Discogs" ) discogsAct->setChecked( true ); else googleAct->setChecked( true ); typedef CoverFetchArtPayload CFAP; const CFAP *payload = dynamic_cast< const CFAP* >( unit->payload() ); if( !m_album->hasImage() ) m_sideBar->setPixmap( QPixmap::fromImage( m_album->image(190 ) ) ); else if( payload ) add( m_album->image(), data, payload->imageSize() ); else add( m_album->image(), data ); m_view->setCurrentItem( m_view->item( 0 ) ); updateGui(); connect( The::networkAccessManager(), SIGNAL( requestRedirected( QNetworkReply*, QNetworkReply* ) ), this, SLOT( fetchRequestRedirected( QNetworkReply*, QNetworkReply* ) ) ); }
void ParseTreeLablerForm::init(int argc, char** argv) { if(argc!=5 && argc!=6) { cerr<<"usage:"<<argv[0]<<" <segmented_PCD> <neighborMap> <inputTree> <typenames>"<<endl; exit(-1); } labelColors[0]= new ColorRGB(1,0,0); labelColors[1]= new ColorRGB(0,1,0); labelColors[2]= new ColorRGB(0,0,1); labelColors[3]= new ColorRGB(1,1,0); labelColors[4]= new ColorRGB(0,1,1); labelColors[5]= new ColorRGB(1,0,1); labelColors[6]= new ColorRGB(0.5,0,0); labelColors[7]= new ColorRGB(0,0.5,0); labelColors[8]= new ColorRGB(0,0,0.5); labelColors[9]= new ColorRGB(0.5,0,0.5); std::ifstream fileI; std::string line; typeListFile=argv[4]; fileI.open(typeListFile); if (fileI.is_open()) { int count = 1; while (fileI.good()) { getline(fileI, line); //each line is a label if (line.size() == 0) break; cout << "adding typename " << line << endl; widget.comboBox->addItem(QString(line.data())); count++; typeMaxId[line]=0; } } else { cout << "could not open typenames file...exiting\n"; exit(-1); } fileI.close(); parseNbrMap(argv[2],nbrMap,INT_MAX); parseTreeFileName=argv[3]; // setUpTree(argv[3]); readTree(argv[3]); // exit(-1); nodeTableModel=new PTNodeTableModel(0); colorMapTableModel=new ColorMapTableModel(0); widget.colorTable->setModel(colorMapTableModel); widget.tableView->setModel(nodeTableModel); // read from file pcdFileName=argv[1]; if ( pcl::io::loadPCDFile<PointT > (pcdFileName, cloud_orig) == -1) { ROS_ERROR("Couldn't read file "); exit (-1); } //viewer.createViewPort(0.0, 0.0, 1.0, 1.0); cloud_colored=cloud_orig; updatePCDVis(); QItemSelectionModel *selectionModel= widget.treeView->selectionModel(); connect(selectionModel, SIGNAL(selectionChanged (const QItemSelection &, const QItemSelection &)), this, SLOT(selectionChangedSlot(const QItemSelection &, const QItemSelection &))); connect(widget.addButton, SIGNAL(clicked ()), this, SLOT(addNodeButtonClicked())); connect(widget.combineButton, SIGNAL(clicked ()), this, SLOT(combineButtonClicked())); connect(widget.clearButton, SIGNAL(clicked ()), this, SLOT(clearButtonClicked())); connect(this, SIGNAL(finished (int)), this, SLOT(windowClosing())); connect(widget.deleteButton, SIGNAL(clicked ()), this, SLOT(deleteNodeButtonClicked())); connect(widget.showNbrButton, SIGNAL(clicked ()), this, SLOT(showNbrButtonClicked())); connect(widget.splitButton, SIGNAL(clicked ()), this, SLOT(splitButtonClicked())); connect(widget.undoSplitButton, SIGNAL(clicked ()), this, SLOT(undoSplitButtonClicked())); connect(widget.treeView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(addNodeFromTree(const QModelIndex &))); widget.comboBox->setEditable(true); widget.comboBox->setDuplicatesEnabled(false); widget.filenameLabel->setText(argv[1]); // Convert to the templated message type // pcl::fromROSMsg(cloud_blob_orig, cloud_orig); // pcl::PointCloud<PointT>::Ptr orig_cloud_ptr(new pcl::PointCloud<PointT > (cloud_orig)); // get_sorted_indices(cloud_orig, segmentIndices); // sizeSortColors(segmentIndices, colorToSeg); // color_handler_orig.reset(new pcl_visualization::PointCloudColorHandlerRGBField<sensor_msgs::PointCloud2 > (cloud_blob_orig)); // viewer.addPointCloud(*orig_cloud_ptr, color_handler_orig, "orig"); }
KexiDataSourcePage::KexiDataSourcePage(QWidget *parent) : KexiPropertyPaneViewBase(parent) , m_noDataSourceAvailableSingleText( i18n("No data source could be assigned for this widget.") ) , m_noDataSourceAvailableMultiText( i18n("No data source could be assigned for multiple widgets.") ) , m_insideClearFormDataSourceSelection(false) #ifdef KEXI_NO_AUTOFIELD_WIDGET , m_tableOrQuerySchema(0) #endif { infoLabel()->setContentsMargins(0, 0, 0, spacing()); m_noDataSourceAvailableLabel = new QLabel(m_noDataSourceAvailableSingleText, this); m_noDataSourceAvailableLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); m_noDataSourceAvailableLabel->setContentsMargins(0, 0, 0, spacing()); m_noDataSourceAvailableLabel->setAlignment(Qt::AlignBottom | Qt::AlignLeft); m_noDataSourceAvailableLabel->setWordWrap(true); mainLayout()->addWidget(m_noDataSourceAvailableLabel); //-Widget's Data Source QHBoxLayout *hlyr = new QHBoxLayout(); mainLayout()->addLayout(hlyr); #if 0 //! @todo unhide this when expression work // m_widgetDSLabel = new QLabel(i18nc("Table Field, Query Field or Expression", "Source field or expression"), this); #else m_widgetDSLabel = new QLabel( i18nc("Table Field or Query Field", "Widget's data source"), this); #endif m_widgetDSLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); m_widgetDSLabel->setAlignment(Qt::AlignLeft | Qt::AlignBottom); hlyr->addWidget(m_widgetDSLabel); #if 0 m_clearWidgetDSButton = new KexiSmallToolButton( koIcon("edit-clear-locationbar-rtl"), QString(), this); m_clearWidgetDSButton->setObjectName("clearWidgetDSButton"); m_clearWidgetDSButton->setMinimumHeight(m_widgetDSLabel->minimumHeight()); m_clearWidgetDSButton->setToolTip(i18n("Clear widget's data source")); hlyr->addWidget(m_clearWidgetDSButton); connect(m_clearWidgetDSButton, SIGNAL(clicked()), this, SLOT(clearWidgetDataSourceSelection())); #endif m_widgetDataSourceCombo = new KexiFieldComboBox(this); m_widgetDataSourceCombo->setObjectName("sourceFieldCombo"); m_widgetDataSourceCombo->setContentsMargins(0, 0, 0, 0); m_widgetDSLabel->setBuddy(m_widgetDataSourceCombo); connect(m_widgetDataSourceCombo->lineEdit(), SIGNAL(clearButtonClicked()), this, SLOT(clearWidgetDataSourceSelection())); mainLayout()->addWidget(m_widgetDataSourceCombo); m_widgetDataSourceComboSpacer = addWidgetSpacer(); //- Form's Data Source hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_dataSourceLabel = new QLabel(i18n("Form's data source"), this); m_dataSourceLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); m_dataSourceLabel->setAlignment(Qt::AlignLeft | Qt::AlignBottom); hlyr->addWidget(m_dataSourceLabel); m_gotoButton = new KexiSmallToolButton( koIcon("go-jump"), QString(), this); m_gotoButton->setObjectName("gotoButton"); m_gotoButton->setToolTip(i18n("Go to selected form's data source")); m_gotoButton->setWhatsThis(i18n("Goes to selected form's data source")); hlyr->addWidget(m_gotoButton); connect(m_gotoButton, SIGNAL(clicked()), this, SLOT(slotGotoSelected())); #if 0 m_clearDSButton = new KexiSmallToolButton( koIcon("edit-clear-locationbar-rtl"), QString(), this); m_clearDSButton->setObjectName("clearDSButton"); m_clearDSButton->setMinimumHeight(m_dataSourceLabel->minimumHeight()); m_clearDSButton->setToolTip(i18n("Clear form's data source")); hlyr->addWidget(m_clearDSButton); connect(m_clearDSButton, SIGNAL(clicked()), this, SLOT(clearFormDataSourceSelection())); #endif m_formDataSourceCombo = new KexiDataSourceComboBox(this); m_formDataSourceCombo->setObjectName("dataSourceCombo"); m_formDataSourceCombo->setContentsMargins(0, 0, 0, 0); m_dataSourceLabel->setBuddy(m_formDataSourceCombo); connect(m_formDataSourceCombo->lineEdit(), SIGNAL(clearButtonClicked()), this, SLOT(clearFormDataSourceSelection())); mainLayout()->addWidget(m_formDataSourceCombo); m_formDataSourceComboSpacer = addWidgetSpacer(); #ifdef KEXI_NO_AUTOFIELD_WIDGET m_availableFieldsLabel = 0; m_addField = 0; mainLayout()->addStretch(); #else //2. Inserting fields //helper info //! @todo allow to hide such helpers by adding global option hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_mousePointerLabel = new QLabel(this); hlyr->addWidget(m_mousePointerLabel); m_mousePointerLabel->setPixmap(koIcon("mouse_pointer")); m_mousePointerLabel->setFixedWidth(m_mousePointerLabel->pixmap() ? m_mousePointerLabel->pixmap()->width() : 0); m_availableFieldsDescriptionLabel = new QLabel( i18n("Select fields from the list below and drag them onto" " a form or click the \"Insert\" button"), this); m_availableFieldsDescriptionLabel->setAlignment(Qt::AlignLeft); m_availableFieldsDescriptionLabel->setWordWrap(true); hlyr->addWidget(m_availableFieldsDescriptionLabel); //Available Fields hlyr = new QHBoxLayout(); hlyr->setContentsMargins(0, 0, 0, 0); mainLayout()->addLayout(hlyr); m_availableFieldsLabel = new QLabel(i18n("Available fields"), this); m_availableFieldsLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); hlyr->addWidget(m_availableFieldsLabel); m_addField = new KexiSmallToolButton( koIcon("add_field"), i18nc("Insert selected field into form", "Insert"), this); m_addField->setObjectName("addFieldButton"); m_addField->setFocusPolicy(Qt::StrongFocus); m_addField->setToolTip(i18n("Insert selected fields into form")); m_addField->setWhatsThis(i18n("Inserts selected fields into form")); hlyr->addWidget(m_addField); connect(m_addField, SIGNAL(clicked()), this, SLOT(slotInsertSelectedFields())); m_fieldListView = new KexiFieldListView(this, KexiFieldListView::ShowDataTypes | KexiFieldListView::AllowMultiSelection); m_fieldListView->setObjectName("fieldListView"); m_fieldListView->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding)); m_availableFieldsLabel->setBuddy(m_fieldListView); mainLayout()->addWidget(m_fieldListView, 1); connect(m_fieldListView, SIGNAL(selectionChanged()), this, SLOT(slotFieldListViewSelectionChanged())); connect(m_fieldListView, SIGNAL(fieldDoubleClicked(QString,QString,QString)), this, SLOT(slotFieldDoubleClicked(QString,QString,QString))); #endif mainLayout()->addStretch(1); connect(m_formDataSourceCombo, SIGNAL(textChanged(QString)), this, SLOT(slotFormDataSourceTextChanged(QString))); connect(m_formDataSourceCombo, SIGNAL(dataSourceChanged()), this, SLOT(slotFormDataSourceChanged())); connect(m_widgetDataSourceCombo, SIGNAL(selected()), this, SLOT(slotFieldSelected())); clearFormDataSourceSelection(); slotFieldListViewSelectionChanged(); }