EntitiesTreeWidget::EntitiesTreeWidget(QWidget *parent) : QTreeWidget(parent) { applicationNode = new QTreeWidgetItem(this,QStringList() << "Application"); modulesNode = new QTreeWidgetItem(this,QStringList() << "Modules"); resourcesNode = new QTreeWidgetItem(this,QStringList() << "Resources"); templatesNode = new QTreeWidgetItem(this,QStringList() << "Templates"); applicationNode->setIcon(0,QIcon(":/images/folderapp_ico.png")); modulesNode->setIcon(0,QIcon(":/images/foldermod_ico.png")); resourcesNode->setIcon(0,QIcon(":/images/folderres_ico.png")); templatesNode->setIcon(0,QIcon(":/images/folder_ico.png")); addTopLevelItem(applicationNode); addTopLevelItem(modulesNode); addTopLevelItem(resourcesNode); addTopLevelItem(templatesNode); setExpandsOnDoubleClick(false); setContextMenuPolicy(Qt::CustomContextMenu); resizeColumnToContents(0); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this,SLOT(onItemDoubleClicked(QTreeWidgetItem*,int))); connect(this,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(onContext(QPoint))); openFile = new QAction("Open File",this); importFile = new QAction("Import Files...",this); topLevelMenu.addAction(openFile); topLevelMenu.addAction(importFile); loadFiles = new QAction("Load",this); QAction *separator = new QAction(this); separator->setSeparator(true); reopen = new QAction("Reopen",this); remove = new QAction("Remove",this); secondLevelMenu.addAction(loadFiles); secondLevelMenu.addAction(separator); secondLevelMenu.addAction(reopen); secondLevelMenu.addAction(remove); edit = new QAction("Edit",this); leafLevelMenu.addAction(edit); connect(loadFiles,SIGNAL(triggered()),this,SLOT(onLoadFile())); connect(openFile,SIGNAL(triggered()),this,SIGNAL(openFiles())); connect(importFile,SIGNAL(triggered()),this,SIGNAL(importFiles())); connect(edit,SIGNAL(triggered()),this,SLOT(onEdit())); connect(remove,SIGNAL(triggered()),this,SLOT(onRemove())); }
EntitiesTreeWidget::EntitiesTreeWidget(QWidget *parent) : QTreeWidget(parent) { applicationNode = new QTreeWidgetItem(this,QStringList() << "Application"); modulesNode = new QTreeWidgetItem(this,QStringList() << "Modules"); resourcesNode = new QTreeWidgetItem(this,QStringList() << "Resources"); templatesNode = new QTreeWidgetItem(this,QStringList() << "Templates"); applicationNode->setIcon(0,QIcon(":/folder-app.svg")); modulesNode->setIcon(0,QIcon(":/folder-mod.svg")); resourcesNode->setIcon(0,QIcon(":/folder-res.svg")); templatesNode->setIcon(0,QIcon(":/folder.svg")); addTopLevelItem(applicationNode); addTopLevelItem(modulesNode); addTopLevelItem(resourcesNode); addTopLevelItem(templatesNode); setExpandsOnDoubleClick(false); setContextMenuPolicy(Qt::CustomContextMenu); resizeColumnToContents(0); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this,SLOT(onItemDoubleClicked(QTreeWidgetItem*,int))); connect(this,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(onContext(QPoint))); openFile = new QAction("Open File",this); importFile = new QAction("Import Files...",this); topLevelMenu.addAction(openFile); topLevelMenu.addAction(importFile); loadFiles = new QAction("Load",this); QAction *separator = new QAction(this); separator->setSeparator(true); reopen = new QAction("Refresh",this); remove = new QAction("Remove",this); editApplication = new QAction("Edit",this); secondLevelMenu.addAction(loadFiles); secondLevelMenu.addAction(editApplication); secondLevelMenu.addAction(separator); secondLevelMenu.addAction(reopen); secondLevelMenu.addAction(remove); edit = new QAction("Edit",this); leafLevelMenu.addAction(edit); connect(loadFiles,SIGNAL(triggered()),this,SLOT(onLoadFile())); connect(editApplication,SIGNAL(triggered()),this,SLOT(onEditApplication())); connect(openFile,SIGNAL(triggered()),this,SIGNAL(openFiles())); connect(importFile,SIGNAL(triggered()),this,SIGNAL(importFiles())); connect(edit,SIGNAL(triggered()),this,SLOT(onEdit())); connect(remove,SIGNAL(triggered()),this,SLOT(onRemove())); connect(reopen,SIGNAL(triggered()),this,SLOT(onReopen())); #if defined(WIN32) ext_editor = "notepad.exe"; #else ext_editor = "xdg-open"; #endif setDragEnabled(true); setDragDropMode(DragOnly); }