forked from len0rd/rockbox
Theme Editor: Enabled tag closing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26566 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
0af8860775
commit
d41a681053
4 changed files with 35 additions and 0 deletions
|
@ -78,6 +78,12 @@ void EditorWindow::setupUI()
|
||||||
model->setRootPath(QDir::currentPath());
|
model->setRootPath(QDir::currentPath());
|
||||||
ui->fileTree->setModel(model);
|
ui->fileTree->setModel(model);
|
||||||
|
|
||||||
|
/* Connecting the tab bar signals */
|
||||||
|
QObject::connect(ui->editorTabs, SIGNAL(currentChanged(int)),
|
||||||
|
this, SLOT(shiftTab(int)));
|
||||||
|
QObject::connect(ui->editorTabs, SIGNAL(tabCloseRequested(int)),
|
||||||
|
this, SLOT(closeTab(int)));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorWindow::setupMenus()
|
void EditorWindow::setupMenus()
|
||||||
|
@ -102,6 +108,26 @@ void EditorWindow::newTab()
|
||||||
ui->editorTabs->addTab(doc, doc->getTitle());
|
ui->editorTabs->addTab(doc, doc->getTitle());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EditorWindow::shiftTab(int index)
|
||||||
|
{
|
||||||
|
if(index < 0)
|
||||||
|
ui->parseTree->setModel(0);
|
||||||
|
else
|
||||||
|
ui->parseTree->setModel(dynamic_cast<SkinDocument*>
|
||||||
|
(ui->editorTabs->currentWidget())->getModel());
|
||||||
|
}
|
||||||
|
|
||||||
|
void EditorWindow::closeTab(int index)
|
||||||
|
{
|
||||||
|
SkinDocument* widget = dynamic_cast<SkinDocument*>
|
||||||
|
(ui->editorTabs->widget(index));
|
||||||
|
if(widget->requestClose())
|
||||||
|
{
|
||||||
|
ui->editorTabs->removeTab(index);
|
||||||
|
widget->deleteLater();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void EditorWindow::showPanel()
|
void EditorWindow::showPanel()
|
||||||
{
|
{
|
||||||
if(sender() == ui->actionFile_Panel)
|
if(sender() == ui->actionFile_Panel)
|
||||||
|
|
|
@ -44,6 +44,8 @@ protected:
|
||||||
private slots:
|
private slots:
|
||||||
void showPanel();
|
void showPanel();
|
||||||
void newTab();
|
void newTab();
|
||||||
|
void shiftTab(int index);
|
||||||
|
void closeTab(int index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* Setup functions */
|
/* Setup functions */
|
||||||
|
|
|
@ -35,6 +35,11 @@ SkinDocument::~SkinDocument()
|
||||||
delete model;
|
delete model;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool SkinDocument::requestClose()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
void SkinDocument::setupUI()
|
void SkinDocument::setupUI()
|
||||||
{
|
{
|
||||||
/* Setting up the text edit */
|
/* Setting up the text edit */
|
||||||
|
|
|
@ -39,6 +39,8 @@ public:
|
||||||
ParseTreeModel* getModel(){ return model; }
|
ParseTreeModel* getModel(){ return model; }
|
||||||
QString getTitle(){ return title; }
|
QString getTitle(){ return title; }
|
||||||
|
|
||||||
|
bool requestClose();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue