Implement the news button
Make the news button open the latest news post in the user's web browser. Also remove the webkit dependency. I was planning on using it to display the news in a custom window, but we'll just use the user's browser for now.
This commit is contained in:
parent
17f1864a71
commit
431cfbc60a
@ -527,8 +527,8 @@ ADD_EXECUTABLE(MultiMC MACOSX_BUNDLE WIN32 main.cpp ${MULTIMC_RCS})
|
|||||||
# Link
|
# Link
|
||||||
TARGET_LINK_LIBRARIES(MultiMC MultiMC_common)
|
TARGET_LINK_LIBRARIES(MultiMC MultiMC_common)
|
||||||
TARGET_LINK_LIBRARIES(MultiMC_common xz-embedded unpack200 quazip libUtil libSettings libGroupView ${MultiMC_LINK_ADDITIONAL_LIBS})
|
TARGET_LINK_LIBRARIES(MultiMC_common xz-embedded unpack200 quazip libUtil libSettings libGroupView ${MultiMC_LINK_ADDITIONAL_LIBS})
|
||||||
QT5_USE_MODULES(MultiMC Core Widgets Network Xml WebKit Concurrent ${MultiMC_QT_ADDITIONAL_MODULES})
|
QT5_USE_MODULES(MultiMC Core Widgets Network Xml Concurrent ${MultiMC_QT_ADDITIONAL_MODULES})
|
||||||
QT5_USE_MODULES(MultiMC_common Core Widgets Network Xml WebKit Concurrent ${MultiMC_QT_ADDITIONAL_MODULES})
|
QT5_USE_MODULES(MultiMC_common Core Widgets Network Xml Concurrent ${MultiMC_QT_ADDITIONAL_MODULES})
|
||||||
ADD_DEPENDENCIES(MultiMC_common MultiMCLauncher JavaCheck)
|
ADD_DEPENDENCIES(MultiMC_common MultiMCLauncher JavaCheck)
|
||||||
|
|
||||||
################################ INSTALLATION AND PACKAGING ################################
|
################################ INSTALLATION AND PACKAGING ################################
|
||||||
|
@ -125,6 +125,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
|
|||||||
newsLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
newsLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
||||||
newsLabel->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
newsLabel->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
ui->newsToolBar->insertWidget(ui->actionMoreNews, newsLabel);
|
ui->newsToolBar->insertWidget(ui->actionMoreNews, newsLabel);
|
||||||
|
QObject::connect(newsLabel, &QAbstractButton::clicked, this, &MainWindow::newsButtonClicked);
|
||||||
QObject::connect(MMC->newsChecker().get(), &NewsChecker::newsLoaded, this, &MainWindow::updateNewsLabel);
|
QObject::connect(MMC->newsChecker().get(), &NewsChecker::newsLoaded, this, &MainWindow::updateNewsLabel);
|
||||||
updateNewsLabel();
|
updateNewsLabel();
|
||||||
}
|
}
|
||||||
@ -774,6 +775,15 @@ void MainWindow::on_actionMoreNews_triggered()
|
|||||||
openWebPage(QUrl("http://multimc.org/posts.html"));
|
openWebPage(QUrl("http://multimc.org/posts.html"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::newsButtonClicked()
|
||||||
|
{
|
||||||
|
QList<NewsEntryPtr> entries = MMC->newsChecker()->getNewsEntries();
|
||||||
|
if (entries.count() > 0)
|
||||||
|
openWebPage(QUrl(entries[0]->link));
|
||||||
|
else
|
||||||
|
openWebPage(QUrl("http://multimc.org/posts.html"));
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::on_actionAbout_triggered()
|
void MainWindow::on_actionAbout_triggered()
|
||||||
{
|
{
|
||||||
AboutDialog dialog(this);
|
AboutDialog dialog(this);
|
||||||
|
@ -87,6 +87,8 @@ slots:
|
|||||||
|
|
||||||
void on_actionMoreNews_triggered();
|
void on_actionMoreNews_triggered();
|
||||||
|
|
||||||
|
void newsButtonClicked();
|
||||||
|
|
||||||
void on_mainToolBar_visibilityChanged(bool);
|
void on_mainToolBar_visibilityChanged(bool);
|
||||||
|
|
||||||
// void on_instanceView_customContextMenuRequested(const QPoint &pos);
|
// void on_instanceView_customContextMenuRequested(const QPoint &pos);
|
||||||
|
Loading…
Reference in New Issue
Block a user