LibreCAD
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros
toolbar.cpp
Go to the documentation of this file.
1 #include "toolbar.h"
2 #include "ui_toolbar.h"
3 
4 Toolbar::Toolbar(QWidget *parent) :
5  QDockWidget(parent),
6  ui(new Ui::Toolbar) {
7 
8  ui->setupUi(this);
9  setTitleBarWidget(0);
10  setWidget(ui->tabWidget);
11 }
12 
14  delete ui;
15 }
16 
17 void Toolbar::addTab(const char* name, ToolbarTab* page) {
18  ui->tabWidget->addTab(page, tr(name));
19 }
20 
21 void Toolbar::removeTab(QWidget *page) {
22  if(page == nullptr) {
23  return;
24  }
25 
26  auto index = ui->tabWidget->indexOf(page);
27  ui->tabWidget->removeTab(index);
28 }
29 
30 ToolbarTab* Toolbar::tabByName(const char *name) {
31  auto nbTab = ui->tabWidget->count();
32 
33  for(int i = 0; i < nbTab; i++) {
34  if(ui->tabWidget->tabText(i) == name) {
35  return dynamic_cast<ToolbarTab*>(ui->tabWidget->widget(i));
36  }
37  }
38 
39  return nullptr;
40 }
void removeTab(QWidget *page)
Remove a tab.
Definition: toolbar.cpp:21
Ui::Toolbar * ui
Definition: toolbar.h:43
void addTab(const char *name, ToolbarTab *page)
Add a new tab.
Definition: toolbar.cpp:17
Widget used as tab for toolbar containing buttons.
Definition: toolbartab.h:19
Toolbar widget, displays only ToolbarTabs.
Definition: toolbar.h:13
ToolbarTab * tabByName(const char *name)
Get existing tab.
Definition: toolbar.cpp:30
~Toolbar()
Definition: toolbar.cpp:13
Toolbar(QWidget *parent=0)
Create widget.
Definition: toolbar.cpp:4