void KexiDBImageBox::updateActionStrings() { if (!m_contextMenu) return; if (designMode()) { /* QString titleString( i18n("Image Box") ); if (!dataSource().isEmpty()) titleString.prepend(dataSource() + " : "); m_contextMenu->changeTitle(m_contextMenu->idAt(0), m_contextMenu->titlePixmap(m_contextMenu->idAt(0)), titleString);*/ } else { //update title in data view mode, based on the data source if (columnInfo()) { KexiImageContextMenu::updateTitle(m_contextMenu, columnInfo()->captionOrAliasOrName(), KexiFormManager::self()->library()->iconName(metaObject()->className())); } } if (m_chooser) { if (popupMenuAvailable() && dataSource().isEmpty()) { //this may work in the future (see @todo below) m_chooser->setToolTip(i18n("Click to show actions for this image box")); } else { QString beautifiedImageBoxName; if (designMode()) { beautifiedImageBoxName = dataSource(); } else { beautifiedImageBoxName = columnInfo() ? columnInfo()->captionOrAliasOrName() : QString(); /*! @todo look at makeFirstCharacterUpperCaseInCaptions setting [bool] (see doc/dev/settings.txt) */ beautifiedImageBoxName = beautifiedImageBoxName[0].toUpper() + beautifiedImageBoxName.mid(1); } m_chooser->setToolTip( i18n("Click to show actions for \"%1\" image box", beautifiedImageBoxName)); } } }
void KexiDBAutoField::setAutoCaption(bool autoCaption) { d->autoCaption = autoCaption; if (d->autoCaption) { if (columnInfo()) { changeText(columnInfo()->captionOrAliasOrName()); } else { changeText(d->fieldCaptionInternal); } } else changeText(d->caption); }
LayoutUnit RenderView::availableLogicalHeight() const { // If we have columns, then the available logical height is reduced to the column height. if (hasColumns()) return columnInfo()->columnHeight(); return RenderBlock::availableLogicalHeight(); }
LayoutUnit RenderView::availableLogicalHeight(AvailableLogicalHeightType) const { // If we have columns, then the available logical height is reduced to the column height. if (hasColumns()) return columnInfo()->columnHeight(); return isHorizontalWritingMode() ? frameView().visibleHeight() : frameView().visibleWidth(); }
void KexiDBAutoField::createEditor() { if (subwidget()) { delete(QWidget *)subwidget(); } QWidget *newSubwidget; //kDebug() << "widgetType:" << d->widgetType; switch (d->widgetType) { case Text: case Double: //! @todo setup validator case Integer: //! @todo setup validator case Date: case Time: case DateTime: { KexiDBLineEdit *le = new KexiDBLineEdit(this); newSubwidget = le; le->setFrame(false); break; } case MultiLineText: newSubwidget = new KexiDBTextEdit(this); break; case Boolean: newSubwidget = new KexiDBCheckBox(dataSource(), this); break; case Image: newSubwidget = new KexiDBImageBox(designMode(), this); break; case ComboBox: { KexiDBComboBox *cbox = new KexiDBComboBox(this); newSubwidget = cbox; cbox->setDesignMode(designMode()); break; } default: newSubwidget = 0; changeText(d->caption); break; } //kDebug() << newSubwidget; setSubwidget(newSubwidget); //this will also allow to declare subproperties, see KFormDesigner::WidgetWithSubpropertiesInterface if (newSubwidget) { newSubwidget->setObjectName( QString::fromLatin1("KexiDBAutoField_") + newSubwidget->metaObject()->className()); dynamic_cast<KexiDataItemInterface*>(newSubwidget)->setParentDataItemInterface(this); dynamic_cast<KexiFormDataItemInterface*>(newSubwidget) ->setColumnInfo(columnInfo()); //needed at least by KexiDBImageBox dynamic_cast<KexiFormDataItemInterface*>(newSubwidget) ->setVisibleColumnInfo(visibleColumnInfo()); //needed at least by KexiDBComboBox newSubwidget->setProperty("dataSource", dataSource()); //needed at least by KexiDBImageBox KFormDesigner::DesignTimeDynamicChildWidgetHandler::childWidgetAdded(this); newSubwidget->show(); d->label->setBuddy(newSubwidget); if (d->focusPolicyChanged) {//if focusPolicy is changed at top level, editor inherits it newSubwidget->setFocusPolicy(focusPolicy()); } else {//if focusPolicy is not changed at top level, inherit it from editor QWidget::setFocusPolicy(newSubwidget->focusPolicy()); } setFocusProxy(newSubwidget); //ok? if (parentWidget()) newSubwidget->setPalette(qApp->palette()); copyPropertiesToEditor(); } setLabelPosition(labelPosition()); }