NavitAdapter::NavitAdapter() { QAction* loadFile = new QAction(tr("Load Navit file..."), this); loadFile->setData(theUid.toString()); connect(loadFile, SIGNAL(triggered()), SLOT(onLoadFile())); theMenu = new QMenu(); theMenu->addAction(loadFile); loaded = false; // loaded = navit.setFilename("C:/home/cbro/Merkaartor/osm_bbox_11.3,47.9,11.7,48.2.bin"); // loaded = navit.setFilename("C:/home/cbro/Merkaartor/osm_bbox_4.2,50.7,4.6,50.9.bin"); // loaded = navit.setFilename("C:/home/cbro/Merkaartor/belgium.navit.bin"); MasPaintStyle theStyle; theStyle.loadPainters(":/Styles/Mapnik.mas"); for (int i=0; i<theStyle.painterSize(); ++i) { thePrimitivePainters.append(PrimitivePainter(*theStyle.getPainter(i))); } QStringList osmAttr = attrmap.split("\n", QString::SkipEmptyParts); foreach (QString l, osmAttr) { QStringList flds = l.split("\t", QString::SkipEmptyParts); item_type typ = item_from_name(flds[2].toLatin1().data()); if (typ == type_none) continue; NavitFeature f; QStringList sl = flds[1].split(","); foreach(QString t, sl) { QStringList kv = t.split("="); f.Tags.append(qMakePair(kv[0], kv[1])); }
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); }