void StartupView::showDetailsForItem( const QModelIndex & index ) { QLayout * layout = m_projectDetailView->layout(); for( int i = 0; i < layout->count(); i++ ) { delete layout->itemAt(i)->widget(); layout->removeItem(layout->itemAt(i)); } QString name = m_templateListModel->data(index,Qt::ToolTipRole).toString(); QString description = m_templateListModel->data(index,Qt::WhatsThisRole).toString(); if( ! name.isEmpty() ) { QLabel * nameLabel = new QLabel(name); nameLabel->setStyleSheet("QLabel { font: bold }"); layout->addWidget(nameLabel); } if( ! description.isEmpty() ) { QTextEdit * descriptionLabel = new QTextEdit(description); descriptionLabel->setStyleSheet("QTextEdit { border: none; }"); descriptionLabel->setReadOnly(true); layout->addWidget(descriptionLabel); } }
void AboutDialog::displayFile(const QString &fileName, const QString &title) { QDialog *dialog = new QDialog(this); QLayout *layout = new QVBoxLayout(dialog); QTextEdit *textEdit = new QTextEdit(dialog); QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Close, Qt::Horizontal, dialog); textEdit->setStyleSheet(QLatin1String("font-family: monospace")); QFile file(fileName); if (file.open(QIODevice::ReadOnly)) { QString text = QTextStream(&file).readAll(); textEdit->setPlainText(text); } textEdit->setReadOnly(true); connect(buttonBox, SIGNAL(rejected()), dialog, SLOT(close())); buttonBox->setCenterButtons(true); layout->addWidget(textEdit); layout->addWidget(buttonBox); layout->setMargin(6); dialog->setLayout(layout); dialog->setWindowTitle(title); dialog->setWindowFlags(Qt::Sheet); dialog->resize(600, 350); dialog->exec(); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { //ui->setupUi(this); //ustvarim Widget centralWidget = new QWidget(this); this->setCentralWidget( centralWidget ); centralWidget->setWindowTitle("DLX"); centralWidget->setMaximumSize(1000, 1000); centralWidget->setMinimumSize(10, 10); centralWidget->resize(400,400); mainLayout = new QGridLayout( centralWidget ); mainLayout->setSpacing(0); for(int mr = 0; mr < 3; mr++)//ustvarim 3 vrstice { for(int mc = 0; mc < 3; mc++)//ustvarim 3 stolpce { //veliki robovi QFrame * widget = new QFrame; widget->setFrameStyle(QFrame::Plain); widget->setFrameShape(QFrame::Box); //znotraj velikih robov se en grid QGridLayout * gridLayout = new QGridLayout(widget); gridLayout->setSpacing(0); gridLayout->setMargin(0); for(int r = 0; r < 3; r++)//3 vrstice { for(int c = 0; c < 3; c++)//3 stolpci { //ustvarim skatlo s textom QTextEdit * tile = new QTextEdit(""); tile->setFrameStyle(QFrame::Plain); tile->setFrameShape(QFrame::Box); tile->setAlignment(Qt::AlignCenter); tile->setTabChangesFocus(true); tile->setStyleSheet("font: 24pt ;"); gridLayout->addWidget(tile, r, c, 1, 1, Qt::AlignCenter); } } mainLayout->addWidget(widget, mr, mc, 1, 1, Qt::AlignCenter); } } //ustvarim menu z eventom QMenuBar* menuBar = new QMenuBar(); QMenu *fileMenu = new QMenu("Algoritem"); menuBar->addMenu(fileMenu); QAction *helpAction = fileMenu->addAction("Find solution"); connect(helpAction, SIGNAL(triggered()), this, SLOT(algoritem())); centralWidget->layout()->setMenuBar(menuBar); QMenu *fileMenu1 = new QMenu("Input"); menuBar->addMenu(fileMenu1); QAction *Action = fileMenu1->addAction("Reset"); connect(Action, SIGNAL(triggered()), this, SLOT(reset())); QAction *Action2 = fileMenu1->addAction("Qassim Hamza"); connect(Action2, SIGNAL(triggered()), this, SLOT(hamza())); }
void SmartCat::printDataToMessageList() { qDebug() << "printMessages title=" << currentDialog.title(); vk->loadHistory( currentDialog.id() ); ui->lNameDialog->setText( currentDialog.title() ); User selfUser = vk->currentUser(); ui->listMessages->clear(); for(QMap<int, Message>::iterator itr = vk->history.begin()+1; itr != vk->history.end(); itr++) { Message message = itr.value(); QListWidgetItem *item_mess = new QListWidgetItem(); item_mess->setSizeHint(QSize(0,200)); QWidget *widget = new QWidget(); QHBoxLayout *layout = new QHBoxLayout(); QVBoxLayout *vlayout = new QVBoxLayout(); QTextEdit *textEdit = new QTextEdit( message.text() ); QLabel *photo = new QLabel(); QLabel *label = new QLabel(); if( message.from().id() != selfUser.id() ) { QPixmap pix( message.from().avatar50px() ); label->setPixmap( pix ); label->setStyleSheet("width: 25px; height: 25px; border-radius: 25px;"); textEdit->setStyleSheet("border-radius: 20px; background: rgb(216,216,216); color: rgb(0,0,0); margin: 7px; padding: 10px;"); layout->addWidget( label ); if( !(message.attachment().isEmpty()) ) { qDebug() << "!="; for(int i = 0; i < message.attachment().size(); i++) { if( message.attachment().at(i).first == "photo") { QPixmap pix_photo( message.attachment().at(i).second.photo75() ); photo->setPixmap( pix_photo ); if(message.text() != "") vlayout->addWidget( textEdit ); vlayout->addWidget( photo ); layout->addLayout( vlayout ); } } } else { layout->addWidget( textEdit ); } } if( message.from().id() == selfUser.id() ) { QPixmap pix( selfUser.avatar50px() ); label->setPixmap( pix ); label->setStyleSheet("width: 25px; height: 25px; border-radius: 25px;"); textEdit->setStyleSheet("border-radius: 20px; background: rgb(34,107,179); color: rgb(255,255,255); margin: 7px; padding: 10px;"); if( !(message.attachment().isEmpty()) ) { for(int i = 0; i < message.attachment().size(); i++) { if( message.attachment().at(i).first == "photo") { QPixmap pix_photo( message.attachment().at(i).second.photo75() ); photo->setPixmap( pix_photo ); if(message.text() != "") vlayout->addWidget( textEdit ); vlayout->addWidget( photo ); layout->addLayout( vlayout ); } } } else { layout->addWidget( textEdit ); } layout->addWidget( label ); } widget->setLayout(layout); ui->listMessages->addItem( item_mess ); ui->listMessages->setItemWidget(item_mess, widget ); } }
TrayNotificationWidget::TrayNotificationWidget(QPixmap pixmapIcon, QString headerText, QString messageText) : QWidget(0) { setWindowFlags( #ifdef Q_OS_MAC Qt::SubWindow | // This type flag is the second point #else Qt::Tool | #endif Qt::FramelessWindowHint | Qt::WindowSystemMenuHint | Qt::WindowStaysOnTopHint ); setAttribute(Qt::WA_NoSystemBackground, true); // set the parent widget's background to translucent setAttribute(Qt::WA_TranslucentBackground, true); //setAttribute(Qt::WA_ShowWithoutActivating, true); setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); // create a display widget for displaying child widgets QWidget* displayWidget = new QWidget; displayWidget->setStyleSheet(".QWidget { background-color: rgba(0, 0, 0, 75%); border-width: 1px; border-style: solid; border-radius: 10px; border-color: #555555; } .QWidget:hover { background-color: rgba(68, 68, 68, 75%); border-width: 2px; border-style: solid; border-radius: 10px; border-color: #ffffff; }"); QLabel* icon = new QLabel; icon->setPixmap(pixmapIcon); icon->setMaximumSize(32, 32); QLabel* header = new QLabel; header->setMaximumSize(250, 50); header->setWordWrap(true); header->setText(headerText); header->setStyleSheet("QLabel { color: #ffffff; font-weight: bold; font-size: 12px; }"); QTextEdit *message = new QTextEdit; message->setReadOnly(true); message->setFrameStyle(QFrame::NoFrame); message->setLineWrapMode(QTextEdit::WidgetWidth); message->setWordWrapMode(QTextOption::WrapAnywhere); QPalette pal = palette(); pal.setColor(QPalette::Base, Qt::transparent); message->setPalette(pal); message->setStyleSheet("QTextEdit { color: #ffffff; font-size: 10px; }"); message->setText(messageText); message->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); QVBoxLayout* vl = new QVBoxLayout; vl->addWidget(header); vl->addWidget(message); QHBoxLayout* displayMainLayout = new QHBoxLayout; displayMainLayout->addWidget(icon); displayMainLayout->addLayout(vl); displayWidget->setLayout(displayMainLayout); QHBoxLayout* containerLayout = new QHBoxLayout; containerLayout->addWidget(displayWidget); setLayout(containerLayout); show(); setMinimumHeight((int)(message->document()->size().height() *1.5 + header->height() +70)); timeout = new QTimer(this); connect(timeout, SIGNAL(timeout()), this, SLOT(fadeOut())); timeout->start(3000); }
void Dialog::appendToHistory(const QString& name, const QDateTime& sendTime, QTextDocument *document, InsertingMode mode) { QListWidgetItem *item = new QListWidgetItem(); QTextEdit *te = new QTextEdit(); lwHistory->addItem(item); te->setReadOnly(true); reloadResource(te); lwHistory->setItemWidget(item, te); QString color; if (name == "You") color = "blue"; else color = "red"; te->append(QString("<font color = \"%1\"> <b>" + name + "</b> (" + sendTime.toString("dd-MM-yyyy hh:mm:ss") + "):</font>").arg(color)); te->moveCursor(QTextCursor::End); te->textCursor().insertBlock(); te->textCursor().insertFragment(QTextDocumentFragment(document)); int heig = 17, widthTe = parentWidget()->width(); int curLine = 0; int mx = 0; for (QTextBlock bl = te->document()->begin(); bl != te->document()->end(); bl = bl.next()) if (bl.isValid()) { if (bl.begin().atEnd()) { heig += 17 + mx;//&&& curLine = mx = 0; continue; } for (QTextBlock::iterator it = bl.begin(); !it.atEnd(); ++it) { QTextFragment fragm = it.fragment(); int curw, curh; if (fragm.isValid() && fragm.charFormat().isImageFormat()) { curw = smiles->width() / W_CNT; curh = smiles->height() / H_CNT; processCalc(heig, mx, curLine, curw, curh); } else if (fragm.isValid()) { QString s = fragm.text(); QFontMetrics me(fragm.charFormat().font()); curh = me.lineSpacing(); for (int j = 0; j < s.size(); ++j) { curw = me.width(s[j]); processCalc(heig, mx, curLine, curw, curh); } } } heig += mx; mx = curLine = 0; } te->setStyleSheet(QString("QFrame {" "border: 2px solid #f3f2f1;" "border-radius: 4px;" "padding: 2px;}")); item->setSizeHint(QSize(0, heig + 18)); te->resize(QSize(widthTe, heig)); lwHistory->scrollToBottom(); if (mode == ReceivedMessage && !dgReadByUser) { setUnreadMessage(unreadMessage + 1); queUnreadWrote.push_back(te); te->setStyleSheet("QTextEdit { background-color: #FFFCCC; }"); } else if (mode == LoadHistory) { if (unreadMessage != 0) { queUnreadWrote.push_back(te); te->setStyleSheet("QTextEdit { background-color: #FFFCCC; }"); if (queUnreadWrote.size() > unreadMessage) { queUnreadWrote.front()->setStyleSheet("QTextEdit { background-color: #FFFFFF; }"); queUnreadWrote.pop_front(); } } if (wroteMessage != 0) { queUnreadWrote.push_back(te); te->setStyleSheet("QTextEdit { background-color: #DFFFCC; }"); if (queUnreadWrote.size() > wroteMessage) { queUnreadWrote.front()->setStyleSheet("QTextEdit { background-color: #FFFFFF; }"); queUnreadWrote.pop_front(); } } } else if (mode == SendMessage) { teMessage->setFocus(); te->setStyleSheet("QTextEdit { background-color: #DFFFCC; }"); wroteMessage++; queUnreadWrote.push_back(te); } }
RulesEditor::RulesEditor(DataBaseManager* db, ServiceManager* sv_man, QWidget *parent) : QWidget(parent) , database_manager_(db) , service_manager_(sv_man) { setWindowTitle("Редактор правил"); setFixedSize(400, 400); QGroupBox* field_names_combo = new QGroupBox("Имена полей"); QTextEdit* names = new QTextEdit(); names->setReadOnly(true); names->setText(QString("Время начала сессии: ") + "StartTime \n" + "Время конца сессии: " + "EndTime\n" + "Имя Exe файла: " + "ExeName \n" + "Название приложения: " + "Name\n" + "Тип приложения: " + "Type\n" + "Web адрес: " + "Uri\n" + "Заголовок окна: " + "Title \n\n Пример : \n Name LIKE \"%Skype%\" AND Type = \"Браузер\" \n!!!Идентификаторы должны быть в двойных кавычках!!!"); names->setStyleSheet(QString::fromUtf8("background-color: rgb(240, 240, 240);")); QHBoxLayout* l_names = new QHBoxLayout(); l_names->addWidget(names); field_names_combo->setLayout(l_names); QLabel* rule_label = new QLabel("Правило :"); rule_edit_ = new QLineEdit(); b_add_rule_ = new QPushButton("Добавить"); initRuleTypeBox(); priority_slider_ = new QSlider(Qt::Horizontal); priority_slider_->setRange(1,10); priority_slider_->setTickInterval(1); priority_slider_->setTickPosition(QSlider::TicksAbove); QLabel* slider_label = new QLabel("Приоритет"); QVBoxLayout* v_layout1 = new QVBoxLayout(); v_layout1->addWidget(slider_label); v_layout1->addWidget(priority_slider_); v_layout1->addWidget(b_add_rule_); QHBoxLayout* h_layout = new QHBoxLayout(); h_layout->addWidget(rule_type_box_); h_layout->addLayout(v_layout1); QVBoxLayout* v_layout = new QVBoxLayout(); v_layout->addWidget(field_names_combo); v_layout->addWidget(rule_label); v_layout->addWidget(rule_edit_); v_layout->addLayout(h_layout); setLayout(v_layout); QObject::connect(b_add_rule_, SIGNAL(clicked()), this, SLOT(slotAddRule())); }