CTRL+T opens new split in current page

This commit is contained in:
Rasmus Karlsson 2017-05-29 21:26:55 +02:00
parent 5d30181d48
commit 3b9a9e8373
4 changed files with 31 additions and 0 deletions

View file

@ -157,9 +157,11 @@ void ChatWidgetHeader::rightButtonClicked()
void ChatWidgetHeader::menuAddSplit() void ChatWidgetHeader::menuAddSplit()
{ {
printf("Add split for menu (NOT IMPLEMENTED KKarrot)\n");
} }
void ChatWidgetHeader::menuCloseSplit() void ChatWidgetHeader::menuCloseSplit()
{ {
printf("Close split\n");
} }
void ChatWidgetHeader::menuMoveSplit() void ChatWidgetHeader::menuMoveSplit()
{ {

View file

@ -10,6 +10,7 @@
#include <QFormLayout> #include <QFormLayout>
#include <QLayout> #include <QLayout>
#include <QList> #include <QList>
#include <QShortcut>
#include <QStandardPaths> #include <QStandardPaths>
#include <QWidget> #include <QWidget>
#include <boost/foreach.hpp> #include <boost/foreach.hpp>
@ -41,6 +42,20 @@ Notebook::Notebook(QWidget *parent)
[this](const bool &) { performLayout(); }); [this](const bool &) { performLayout(); });
SettingsManager::getInstance().hideUserButton.valueChanged.connect( SettingsManager::getInstance().hideUserButton.valueChanged.connect(
[this](const bool &) { performLayout(); }); [this](const bool &) { performLayout(); });
// Initialize notebook hotkeys
{
// CTRL+T: Create new split (Add page)
auto shortcut = new QShortcut(QKeySequence("CTRL+T"), this);
connect(shortcut, &QShortcut::activated, [this]() {
printf("ctrL+t pressed\n"); //
if (this->_selectedPage == nullptr) {
return;
}
this->_selectedPage->addChat();
});
}
} }
NotebookPage *Notebook::addPage(bool select) NotebookPage *Notebook::addPage(bool select)

View file

@ -49,6 +49,18 @@ NotebookTab *NotebookPage::getTab() const
return _tab; return _tab;
} }
void
NotebookPage::addChat(bool openChannelNameDialog)
{
ChatWidget *w = new ChatWidget();
if (openChannelNameDialog) {
w->showChangeChannelPopup();
}
addToLayout(w, std::pair<int, int>(-1, -1));
}
std::pair<int, int> NotebookPage::removeFromLayout(ChatWidget *widget) std::pair<int, int> NotebookPage::removeFromLayout(ChatWidget *widget)
{ {
// remove from chatWidgets vector // remove from chatWidgets vector

View file

@ -31,6 +31,8 @@ public:
const std::vector<ChatWidget *> &getChatWidgets() const; const std::vector<ChatWidget *> &getChatWidgets() const;
NotebookTab *getTab() const; NotebookTab *getTab() const;
void addChat(bool openChannelNameDialog = false);
static bool isDraggingSplit; static bool isDraggingSplit;
static ChatWidget *draggingSplit; static ChatWidget *draggingSplit;
static std::pair<int, int> dropPosition; static std::pair<int, int> dropPosition;