#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include "list.h" void MainWindow::display (List & list) { list.print (); int x = 0; Data * t = list.getFirst(); while (t != nullptr) { QColor c (t->r, t->g, t->b); QGraphicsRectItem * r = new QGraphicsRectItem; r->setRect (x, y, 100, 40); r->setPen (c); r->setBrush (c.lighter()); r->setToolTip (QString::fromStdString (t->name)); scene->addItem(r); x += 120; t = t->getNext (); } y += 60; } void MainWindow::on_actionRun_triggered() { List a; a.insertFirst(new Data("Cervena", 255, 0, 0)); a.insertLast(new Data("Zelena", 0, 255, 0)); a.insertFirst(new Data("Modra", 0, 0, 255)); display (a); a.insertAfter(a.getFirst(), new Data("Zluta", 255, 255, 0)); a.insertBefore(a.getFirst(), new Data("Oranzova", 255, 140, 0)); a.insertBefore(a.getLast(), new Data("Ruzova", 255, 20, 147)); display (a); List b; while (a.getFirst() != nullptr) { Data * data = a.getFirst(); a.remove(data); b.insertFirst(data); } b.print(); display (b); b.purge (); display (b); } MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); scene = new QGraphicsScene (); ui->graphicsView->setScene (scene); y = 0; } MainWindow::~MainWindow() { delete ui; } int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); } void MainWindow::on_actionQuit_triggered() { close (); }