void SettingsPage::createContent() { Q_D(SettingsPage); setStyleName("AccountsUiPage"); //% "%1 settings" setTitle(qtTrId("qtn_acc_ser_prof_set_title").arg(d->context->service().name())); MWidget *upperWidget = new MWidget(this); MLayout *upperLayout = new MLayout(upperWidget); MLinearLayoutPolicy *upperLayoutPolicy = new MLinearLayoutPolicy(upperLayout, Qt::Vertical); upperLayoutPolicy->setSpacing(0); MLayout *horizontalLayout = new MLayout(); MLinearLayoutPolicy *horizontalLayoutPolicy = new MLinearLayoutPolicy(horizontalLayout, Qt::Horizontal); QString providerName(d->context->account()->providerName()); QString providerIconId; // xml file that describes the ui elements for the provider Accounts::Provider provider = AccountsManager::instance()->provider(providerName); if (provider.isValid()) { QDomElement root = provider.domDocument().documentElement(); QDomElement providerIcon = root.firstChildElement("icon"); providerIconId = providerIcon.text(); } ServiceHelper *serviceHepler = new ServiceHelper(d->context->service(), this); BasicHeaderWidget *usernameAndStatus = 0; if (d->context->account()->id() == 0) { usernameAndStatus = new BasicHeaderWidget(BasicHeaderWidget::IconWithTitle, this); usernameAndStatus->createLayout(); } else { usernameAndStatus = new BasicHeaderWidget(BasicHeaderWidget::IconWithTitleAndSubTitle, this); usernameAndStatus->createLayout(); usernameAndStatus->setSubtitle(qtTrId(d->context->account()->displayName().toLatin1())); } usernameAndStatus->setImage(providerIconId); usernameAndStatus->setTitle(serviceHepler->prettyName()); MSeparator *separatorTop = new MSeparator(this); separatorTop->setStyleName("CommonHeaderDividerInverted"); separatorTop->setOrientation(Qt::Horizontal); d->context->account()->selectService(d->context->service()); horizontalLayoutPolicy->addItem(usernameAndStatus, Qt::AlignLeft | Qt::AlignVCenter); upperLayoutPolicy->addItem(horizontalLayout); upperLayoutPolicy->addItem(separatorTop); MWidget *widget = d->context->widget(this); MWidget *centralWidget = new MWidget(this); MLayout *layout = new MLayout(centralWidget); MLinearLayoutPolicy *layoutPolicy = new MLinearLayoutPolicy(layout, Qt::Vertical); layoutPolicy->addItem(upperWidget); layoutPolicy->addItem(widget); layoutPolicy->addStretch(); setCentralWidget(centralWidget); }
void CreateEditPage::createContent(void) { MApplicationPage::createContent(); setStyleName("CommonApplicationPage"); setPannable(false); createActions(); QGraphicsAnchorLayout *anchor = new QGraphicsAnchorLayout(); anchor->setContentsMargins(0, 0, 0, 0); anchor->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); ViewHeader *header = new ViewHeader(m_tag == TagStorage::NULL_TAG ? tr("Create tag contents") : tr("Edit tag contents")); anchor->addCornerAnchors(header, Qt::TopLeftCorner, anchor, Qt::TopLeftCorner); #ifdef LABEL_SIZE m_size = new MLabel(); m_size->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); m_size->setAlignment(Qt::AlignRight); anchor->addAnchor(m_size, Qt::AnchorBottom, anchor, Qt::AnchorBottom); anchor->addAnchor(m_size, Qt::AnchorRight, anchor, Qt::AnchorRight); #endif MWidget *layoutContainer = new MWidget(); layoutContainer->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); m_layout = new QGraphicsLinearLayout(Qt::Vertical, layoutContainer); m_layout->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); m_name = new LabeledTextEdit(tr("Ok"), LabeledTextEdit::SingleLineEditAndLabel); m_name->setLabel(tr("Tag name")); m_name->setPrompt(tr("Enter tag name")); m_name->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); m_layout->addItem(m_name); m_layout->setAlignment(m_name, Qt::AlignLeft); connect(m_name, SIGNAL(contentsChanged(void)), this, SLOT(nameChanged(void))); MSeparator *sep = new MSeparator; sep->setStyleName("CommonHorizontalSeparator"); sep->setOrientation(Qt::Horizontal); layout()->addItem(sep); createPageSpecificContent(); MPannableViewport *view = new MPannableViewport(); view->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); view->setPanDirection(Qt::Vertical); view->setMinimumSize(100, 100); view->setWidget(layoutContainer); anchor->addAnchor(view, Qt::AnchorTop, header, Qt::AnchorBottom); #ifdef LABEL_SIZE anchor->addAnchor(view, Qt::AnchorBottom, m_size, Qt::AnchorTop); #else anchor->addAnchor(view, Qt::AnchorBottom, anchor, Qt::AnchorBottom); #endif anchor->addAnchor(view, Qt::AnchorLeft, anchor, Qt::AnchorLeft); anchor->addAnchor(view, Qt::AnchorRight, anchor, Qt::AnchorRight); centralWidget()->setLayout(anchor); if (m_tag == TagStorage::NULL_TAG) { setContentValidity(false); setNameValidity(false); setupNewData(); } else { load(); } }