FacebookContactUI::FacebookContactUI(const QRectF &rect) : PlexyDesk::DesktopWidget(rect), d (new PrivateFacebookContactUI) { enableDefaultBackground(true); QRectF scrollRect = QRect(0.0, 24.0, rect.width(), rect.height() - 80); d->mScrollView = new ContactList(scrollRect, this); d->mScrollView->setVisible(true); d->mScrollView->enableDefaultBackground(false); d->mScrollView->enableShadow(false); d->mScrollView->setLabelName("Contacts"); d->mScrollView->setFlag(QGraphicsItem::ItemIsMovable, false); d->mScrollView->enableDockMode(false); d->mScrollView->enableWindowMode(false); d->mSearchBox = new PlexyDesk::LineEdit(this); d->mSearchBox->setSize (QSizeF(rect.width() - 40, 32)); d->mSearchBox->show(); d->mSearchBox->setPos( (rect.width() / 2) - (d->mSearchBox->boundingRect().width() / 2) , 38 + d->mScrollView->boundingRect().height() ); connect(d->mSearchBox, SIGNAL(text(QString)), d->mScrollView, SLOT(filter(QString))); connect(d->mScrollView, SIGNAL(clicked(QString)), this, SLOT(onViewClicked(QString))); setCacheMode(QGraphicsItem::ItemCoordinateCache); }
OpenFileDialog::OpenFileDialog(QWidget *parent) : QDialog(parent) { /* layouts */ QVBoxLayout* layout = new QVBoxLayout(); QHBoxLayout* hlayout; /* title area */ title = new QLabel("Open File"); title->setStyleSheet("font: 24pt; color: white;"); QFrame* line = new QFrame; line->setFrameStyle(QFrame::HLine | QFrame::Raised); line->setStyleSheet("background: white; border: 2px solid white;"); layout->addWidget(title); layout->addWidget(line); /* files header */ path = new QLabel(QDir::homePath()); path->setStyleSheet("color: white; font: 14pt;"); drive = new QPushButton("Drives"); drive->setFixedSize(QSize(150, 50)); drive->setStyleSheet("QPushButton{color: white; border: 0px; font: 14pt;} QPushButton::hover{border: 2px solid white;}"); connect(drive, SIGNAL(clicked(bool)), this, SLOT(onDriveClicked())); hlayout = new QHBoxLayout(); hlayout->addWidget(path); hlayout->addStretch(); hlayout->addWidget(drive); layout->addLayout(hlayout); /* files area */ model = new QFileSystemModel(); model->setFilter(QDir::AllEntries | QDir::NoDot); view = new QListView(); view->setModel(model); view->setRootIndex(model->setRootPath(path->text())); view->setStyleSheet("QListView{border: 2px solid white; } QListView::item{color: white; height: 50px;} QListView::item:hover{border: 2px solid white; } QListView::item:selected{border: 2px solid white;}"); view->verticalScrollBar()->setStyleSheet("QScrollBar:vertical { width: 45px; }"); connect(view, SIGNAL(clicked(QModelIndex)), this, SLOT(onViewClicked(QModelIndex))); layout->addWidget(view); /* open area */ input = new Input(); input->setFixedHeight(50); input->setStyleSheet("color: white; font: 14pt;"); open = new QPushButton("Open"); open->setFixedSize(QSize(150, 50)); open->setStyleSheet("QPushButton{color: white; border: 0px; font: 14pt;} QPushButton::hover{border: 2px solid white;}"); connect(open, SIGNAL(clicked(bool)), this, SLOT(onOpenClicked())); cancel = new QPushButton("Cancel"); cancel->setFixedSize(QSize(150, 50)); cancel->setStyleSheet("QPushButton{color: white; border: 0px; font: 14pt;} QPushButton::hover{border: 2px solid white;}"); connect(cancel, SIGNAL(clicked(bool)), this, SLOT(onCancelClicked())); hlayout = new QHBoxLayout(); hlayout->addWidget(input); hlayout->addWidget(open); hlayout->addWidget(cancel); layout->addLayout(hlayout); /* keyboard */ keyboard = new VirtualKeyboard(input, this); keyboard->setStyleSheet("font: 14pt;"); keyboard->hide(); connect(keyboard, SIGNAL(enterClicked()), this, SLOT(onOpenClicked())); layout->addWidget(keyboard); /* window */ setLayout(layout); setStyleSheet("background: rgb(46,46,46);"); showFullScreen(); }