61 lines
2.0 KiB
C++
61 lines
2.0 KiB
C++
#include "mainwindow.h"
|
|
#include <QApplication>
|
|
#include <QFileDialog>
|
|
#include <QPushButton>
|
|
#include <QSlider>
|
|
MainWindow::MainWindow(QWidget *parent)
|
|
: QMainWindow(parent)
|
|
{
|
|
// Główny kontener podzielony na dwie części
|
|
splitter = new QSplitter(this);
|
|
|
|
leftMenu = new QWidget(splitter);
|
|
QVBoxLayout *menuLayout = new QVBoxLayout(leftMenu);
|
|
|
|
QPushButton *openButton = new QPushButton("Otwórz katalog", leftMenu);
|
|
menuLayout->addWidget(openButton);
|
|
menuLayout->addStretch();
|
|
QLabel *sliderLabel = new QLabel("Liczba kolumn: 3", leftMenu); // Etykieta pokazująca wartość suwaka
|
|
QSlider *columnsSlider = new QSlider(leftMenu);
|
|
menuLayout->addWidget(columnsSlider);
|
|
columnsSlider->setMinimum(1); // Minimalna liczba kolumn
|
|
columnsSlider->setMaximum(10); // Maksymalna liczba kolumn
|
|
columnsSlider->setValue(5);
|
|
|
|
|
|
imageGallery = new ImageGallery(splitter); //ustawianie galerii
|
|
|
|
|
|
//ustawienie wsyzstkiego razem w jednym miejscu
|
|
splitter->addWidget(leftMenu);
|
|
splitter->addWidget(imageGallery);
|
|
|
|
|
|
|
|
splitter->setSizes({static_cast<int>(width() * 0.2), static_cast<int>(width() * 0.8)});
|
|
setCentralWidget(splitter);
|
|
|
|
setWindowTitle("Kallery Image Gallery");
|
|
resize(800, 600);
|
|
|
|
connect(openButton, &QPushButton::clicked, this, [this]() {
|
|
QDir sciezka = QFileDialog::getExistingDirectory(this, "Wybierz katalog", QDir::homePath());
|
|
if (!sciezka.isEmpty()) {
|
|
imageGallery->addImagesFromDirectory(sciezka);
|
|
}
|
|
});
|
|
|
|
connect(columnsSlider, &QSlider::valueChanged, this, [this, sliderLabel](int value){
|
|
sliderLabel->setText("Liczba kolumn: " + QString::number(value));
|
|
imageGallery->setColumns(value);
|
|
});
|
|
|
|
imageGallery->setColumns(3);
|
|
QDir sciezka = QFileDialog::getExistingDirectory(this,"Select folder", QDir::homePath()); //dodaje okno dialogowe do wyboru
|
|
imageGallery->addImagesFromDirectory(sciezka);
|
|
}
|
|
|
|
MainWindow::~MainWindow()
|
|
{
|
|
}
|