Qt: switch to stacked layout to avoid bug. Add border to file browser table.
This commit is contained in:
parent
a0b67424ca
commit
2ef9e5757b
|
@ -21,7 +21,7 @@ extern "C" {
|
||||||
}
|
}
|
||||||
|
|
||||||
FileDropWidget::FileDropWidget(QWidget *parent) :
|
FileDropWidget::FileDropWidget(QWidget *parent) :
|
||||||
QWidget(parent)
|
QStackedWidget(parent)
|
||||||
{
|
{
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
#ifndef FILEDROPWIDGET_H
|
#ifndef FILEDROPWIDGET_H
|
||||||
#define FILEDROPWIDGET_H
|
#define FILEDROPWIDGET_H
|
||||||
|
|
||||||
#include <QWidget>
|
#include <QStackedWidget>
|
||||||
|
|
||||||
class QDragEnterEvent;
|
class QDragEnterEvent;
|
||||||
class QDropEvent;
|
class QDropEvent;
|
||||||
class QKeyEvent;
|
class QKeyEvent;
|
||||||
class QPaintEvent;
|
class QPaintEvent;
|
||||||
|
|
||||||
class FileDropWidget : public QWidget
|
class FileDropWidget : public QStackedWidget
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -24,13 +24,16 @@ static const QString qt_theme_dark_stylesheet = QStringLiteral(R"(
|
||||||
background-color:rgb(53,53,53);
|
background-color:rgb(53,53,53);
|
||||||
selection-background-color:%1;
|
selection-background-color:%1;
|
||||||
}
|
}
|
||||||
QWidget#playlistWidget, QWidget#browserWidget, QWidget#tableWidget, QWidget#logWidget {
|
QWidget#playlistWidget, QWidget#browserWidget, QStackedWidget#centralWidget, QWidget#logWidget {
|
||||||
background-color:rgb(66,66,66);
|
background-color:rgb(66,66,66);
|
||||||
border-top:1px solid rgba(175,175,175,50%);
|
border-top:1px solid rgba(175,175,175,50%);
|
||||||
border-left:1px solid rgba(125,125,125,50%);
|
border-left:1px solid rgba(125,125,125,50%);
|
||||||
border-right:1px solid rgba(125,125,125,50%);
|
border-right:1px solid rgba(125,125,125,50%);
|
||||||
border-bottom:1px solid rgba(25,25,25,75%);
|
border-bottom:1px solid rgba(25,25,25,75%);
|
||||||
}
|
}
|
||||||
|
QStackedWidget#centralWidget {
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
QTextEdit, LogTextEdit {
|
QTextEdit, LogTextEdit {
|
||||||
background-color:rgb(25,25,25);
|
background-color:rgb(25,25,25);
|
||||||
}
|
}
|
||||||
|
|
|
@ -314,8 +314,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||||
,m_folderIcon()
|
,m_folderIcon()
|
||||||
,m_customThemeString()
|
,m_customThemeString()
|
||||||
,m_gridView(new GridView(this))
|
,m_gridView(new GridView(this))
|
||||||
,m_gridWidget(new QWidget(this))
|
,m_playlistViewsAndFooter(new QWidget(this))
|
||||||
,m_gridScrollArea(new QScrollArea(m_gridWidget))
|
|
||||||
,m_zoomSlider(NULL)
|
,m_zoomSlider(NULL)
|
||||||
,m_lastZoomSliderValue(0)
|
,m_lastZoomSliderValue(0)
|
||||||
,m_viewType(VIEW_TYPE_LIST)
|
,m_viewType(VIEW_TYPE_LIST)
|
||||||
|
@ -408,15 +407,18 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||||
|
|
||||||
m_lastZoomSliderValue = m_zoomSlider->value();
|
m_lastZoomSliderValue = m_zoomSlider->value();
|
||||||
|
|
||||||
m_gridWidget->setLayout(new QVBoxLayout());
|
m_playlistViewsAndFooter->setLayout(new QVBoxLayout());
|
||||||
|
|
||||||
m_gridView->setSelectionMode(QAbstractItemView::SingleSelection);
|
m_gridView->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||||
m_gridView->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
m_gridView->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||||
|
|
||||||
m_gridWidget->layout()->addWidget(m_gridView);
|
m_playlistViews->addWidget(m_gridView);
|
||||||
m_gridWidget->layout()->addWidget(m_tableView);
|
m_playlistViews->addWidget(m_tableView);
|
||||||
m_gridWidget->layout()->setAlignment(Qt::AlignCenter);
|
m_centralWidget->setObjectName("centralWidget");
|
||||||
m_gridWidget->layout()->setContentsMargins(0, 0, 0, 0);
|
|
||||||
|
m_playlistViewsAndFooter->layout()->addWidget(m_playlistViews);
|
||||||
|
m_playlistViewsAndFooter->layout()->setAlignment(Qt::AlignCenter);
|
||||||
|
m_playlistViewsAndFooter->layout()->setContentsMargins(0, 0, 0, 0);
|
||||||
|
|
||||||
m_gridProgressWidget->setLayout(gridProgressLayout);
|
m_gridProgressWidget->setLayout(gridProgressLayout);
|
||||||
gridProgressLayout->setContentsMargins(0, 0, 0, 0);
|
gridProgressLayout->setContentsMargins(0, 0, 0, 0);
|
||||||
|
@ -424,7 +426,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||||
gridProgressLayout->addWidget(gridProgressLabel);
|
gridProgressLayout->addWidget(gridProgressLabel);
|
||||||
gridProgressLayout->addWidget(m_gridProgressBar);
|
gridProgressLayout->addWidget(m_gridProgressBar);
|
||||||
|
|
||||||
m_gridWidget->layout()->addWidget(m_gridProgressWidget);
|
m_playlistViewsAndFooter->layout()->addWidget(m_gridProgressWidget);
|
||||||
|
|
||||||
m_zoomWidget->setLayout(zoomLayout);
|
m_zoomWidget->setLayout(zoomLayout);
|
||||||
zoomLayout->setContentsMargins(0, 0, 0, 0);
|
zoomLayout->setContentsMargins(0, 0, 0, 0);
|
||||||
|
@ -440,7 +442,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||||
gridFooterLayout->addWidget(m_zoomWidget);
|
gridFooterLayout->addWidget(m_zoomWidget);
|
||||||
gridFooterLayout->addWidget(viewTypePushButton);
|
gridFooterLayout->addWidget(viewTypePushButton);
|
||||||
|
|
||||||
static_cast<QVBoxLayout*>(m_gridWidget->layout())->addLayout(gridFooterLayout);
|
static_cast<QVBoxLayout*>(m_playlistViewsAndFooter->layout())->addLayout(gridFooterLayout);
|
||||||
|
|
||||||
m_gridProgressWidget->hide();
|
m_gridProgressWidget->hide();
|
||||||
|
|
||||||
|
@ -2114,7 +2116,7 @@ void MainWindow::onTabWidgetIndexChanged(int index)
|
||||||
{
|
{
|
||||||
m_currentBrowser = BROWSER_TYPE_PLAYLISTS;
|
m_currentBrowser = BROWSER_TYPE_PLAYLISTS;
|
||||||
|
|
||||||
m_centralWidget->setCurrentWidget(m_playlistViews);
|
m_centralWidget->setCurrentWidget(m_playlistViewsAndFooter);
|
||||||
|
|
||||||
onCurrentItemChanged(m_tableView->currentIndex());
|
onCurrentItemChanged(m_tableView->currentIndex());
|
||||||
}
|
}
|
||||||
|
@ -2517,18 +2519,15 @@ void MainWindow::setCurrentViewType(ViewType viewType)
|
||||||
{
|
{
|
||||||
case VIEW_TYPE_ICONS:
|
case VIEW_TYPE_ICONS:
|
||||||
{
|
{
|
||||||
m_tableView->hide();
|
m_playlistViews->setCurrentWidget(m_gridView);
|
||||||
m_zoomWidget->show();
|
m_zoomWidget->show();
|
||||||
m_gridView->show();
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case VIEW_TYPE_LIST:
|
case VIEW_TYPE_LIST:
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
m_viewType = VIEW_TYPE_LIST;
|
m_playlistViews->setCurrentWidget(m_tableView);
|
||||||
m_gridView->hide();
|
|
||||||
m_zoomWidget->hide();
|
m_zoomWidget->hide();
|
||||||
m_tableView->show();
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2583,9 +2582,9 @@ FileDropWidget* MainWindow::playlistViews()
|
||||||
return m_playlistViews;
|
return m_playlistViews;
|
||||||
}
|
}
|
||||||
|
|
||||||
QWidget* MainWindow::contentGridWidget()
|
QWidget* MainWindow::playlistViewsAndFooter()
|
||||||
{
|
{
|
||||||
return m_gridWidget;
|
return m_playlistViewsAndFooter;
|
||||||
}
|
}
|
||||||
|
|
||||||
GridView* MainWindow::contentGridView()
|
GridView* MainWindow::contentGridView()
|
||||||
|
|
|
@ -240,7 +240,7 @@ static void* ui_companion_qt_init(void)
|
||||||
QDockWidget *coreSelectionDock = NULL;
|
QDockWidget *coreSelectionDock = NULL;
|
||||||
QTabWidget *browserAndPlaylistTabWidget = NULL;
|
QTabWidget *browserAndPlaylistTabWidget = NULL;
|
||||||
QStackedWidget *centralWidget = NULL;
|
QStackedWidget *centralWidget = NULL;
|
||||||
QWidget *widget = NULL;
|
QStackedWidget *widget = NULL;
|
||||||
QWidget *browserWidget = NULL;
|
QWidget *browserWidget = NULL;
|
||||||
QWidget *playlistWidget = NULL;
|
QWidget *playlistWidget = NULL;
|
||||||
QWidget *coreSelectionWidget = NULL;
|
QWidget *coreSelectionWidget = NULL;
|
||||||
|
@ -290,7 +290,6 @@ static void* ui_companion_qt_init(void)
|
||||||
listWidget = mainwindow->playlistListWidget();
|
listWidget = mainwindow->playlistListWidget();
|
||||||
|
|
||||||
widget = mainwindow->playlistViews();
|
widget = mainwindow->playlistViews();
|
||||||
widget->setObjectName("tableWidget");
|
|
||||||
widget->setContextMenuPolicy(Qt::CustomContextMenu);
|
widget->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||||
|
|
||||||
QObject::connect(widget, SIGNAL(filesDropped(QStringList)), mainwindow, SLOT(onPlaylistFilesDropped(QStringList)));
|
QObject::connect(widget, SIGNAL(filesDropped(QStringList)), mainwindow, SLOT(onPlaylistFilesDropped(QStringList)));
|
||||||
|
@ -298,14 +297,9 @@ static void* ui_companion_qt_init(void)
|
||||||
QObject::connect(widget, SIGNAL(deletePressed()), mainwindow, SLOT(deleteCurrentPlaylistItem()));
|
QObject::connect(widget, SIGNAL(deletePressed()), mainwindow, SLOT(deleteCurrentPlaylistItem()));
|
||||||
QObject::connect(widget, SIGNAL(customContextMenuRequested(const QPoint&)), mainwindow, SLOT(onFileDropWidgetContextMenuRequested(const QPoint&)));
|
QObject::connect(widget, SIGNAL(customContextMenuRequested(const QPoint&)), mainwindow, SLOT(onFileDropWidgetContextMenuRequested(const QPoint&)));
|
||||||
|
|
||||||
playlistViewsLayout = new QVBoxLayout();
|
|
||||||
playlistViewsLayout->addWidget(mainwindow->contentGridWidget());
|
|
||||||
|
|
||||||
widget->setLayout(playlistViewsLayout);
|
|
||||||
|
|
||||||
centralWidget = mainwindow->centralWidget();
|
centralWidget = mainwindow->centralWidget();
|
||||||
|
|
||||||
centralWidget->addWidget(widget);
|
centralWidget->addWidget(mainwindow->playlistViewsAndFooter());
|
||||||
centralWidget->addWidget(mainwindow->fileTableView());
|
centralWidget->addWidget(mainwindow->fileTableView());
|
||||||
|
|
||||||
mainwindow->setCentralWidget(centralWidget);
|
mainwindow->setCentralWidget(centralWidget);
|
||||||
|
|
|
@ -344,7 +344,7 @@ public:
|
||||||
QTableView* fileTableView();
|
QTableView* fileTableView();
|
||||||
FileDropWidget* playlistViews();
|
FileDropWidget* playlistViews();
|
||||||
GridView* contentGridView();
|
GridView* contentGridView();
|
||||||
QWidget* contentGridWidget();
|
QWidget* playlistViewsAndFooter();
|
||||||
QWidget* searchWidget();
|
QWidget* searchWidget();
|
||||||
QLineEdit* searchLineEdit();
|
QLineEdit* searchLineEdit();
|
||||||
QComboBox* launchWithComboBox();
|
QComboBox* launchWithComboBox();
|
||||||
|
@ -583,8 +583,7 @@ private:
|
||||||
QIcon m_folderIcon;
|
QIcon m_folderIcon;
|
||||||
QString m_customThemeString;
|
QString m_customThemeString;
|
||||||
GridView *m_gridView;
|
GridView *m_gridView;
|
||||||
QWidget *m_gridWidget;
|
QWidget *m_playlistViewsAndFooter;
|
||||||
QScrollArea *m_gridScrollArea;
|
|
||||||
QWidget *m_gridLayoutWidget;
|
QWidget *m_gridLayoutWidget;
|
||||||
QSlider *m_zoomSlider;
|
QSlider *m_zoomSlider;
|
||||||
int m_lastZoomSliderValue;
|
int m_lastZoomSliderValue;
|
||||||
|
|
Loading…
Reference in New Issue