+ QLabel* maxFileSize = new QLabel(i18n("Maximum file size:"), previewBox);
+
+ KHBox* vBox = new KHBox(previewBox);
+ vBox->setSpacing(spacing);
+
+ const int min = 1; // MB
+ const int max = 100; // MB
+ m_maxPreviewSize = new QSlider(Qt::Horizontal, vBox);
+ m_maxPreviewSize->setRange(min, max);
+ m_maxPreviewSize->setPageStep(10);
+ m_maxPreviewSize->setSingleStep(1);
+ m_maxPreviewSize->setTickPosition(QSlider::TicksBelow);
+
+ KConfigGroup globalConfig(KGlobal::config(), "PreviewSettings");
+ const int maxByteSize = globalConfig.readEntry("MaximumSize", 1024 * 1024 /* 1 MB */);
+ int maxMByteSize = maxByteSize / (1024 * 1024);
+ if (maxMByteSize < 1) {
+ maxMByteSize = 1;
+ }
+ else if (maxMByteSize > max) {
+ maxMByteSize = max;
+ }
+ m_maxPreviewSize->setValue(maxMByteSize);
+
+ QSpinBox* spinBox = new QSpinBox(vBox);
+ spinBox->setRange(min, max);
+ spinBox->setSingleStep(1);
+ spinBox->setSuffix(" MB");
+ spinBox->setValue(m_maxPreviewSize->value());
+
+ connect(m_maxPreviewSize, SIGNAL(valueChanged(int)),
+ spinBox, SLOT(setValue(int)));
+ connect(spinBox, SIGNAL(valueChanged(int)),
+ m_maxPreviewSize, SLOT(setValue(int)));
+
+ QVBoxLayout* previewBoxLayout = new QVBoxLayout(previewBox);
+ previewBoxLayout->addWidget(maxFileSize);
+ previewBoxLayout->addWidget(vBox);
+