void NewDevice::showManufacturers() { m_manufacturer->clear(); QList <DeviceClass> dclist(_app->doc()->deviceClassList()); for (DeviceClass* dc = dclist.first(); dc != NULL; dc = dclist.next()) { QPixmap pm(_app->settings()->getPixmapPath() + QString("dmx.xpm")); bool alreadyAdded = false; for (int i = 0; i < m_manufacturer->count(); i++) { alreadyAdded = false; if (m_manufacturer->text(i) == dc->manufacturer()) { alreadyAdded = true; break; } } if (alreadyAdded == false) { m_manufacturer->insertItem(pm, dc->manufacturer()); } } slotManufacturerActivated(m_manufacturer->currentItem()); }
void QuickDC::Share::Manager::createFileLists(bool incomplete) { QDBG("QuickDC::Share::Manager::createFileLists"); Samurai::IO::Buffer* xmlout = new Samurai::IO::Buffer(); createFileList(xmlout, 0, incomplete); { #ifdef DATADUMP QDBG("XML file list will be %i bytes long", (int) xmlout->size()); #endif Samurai::IO::File xmllist("~/.quickdc/files.xml"); if (xmllist.open(Samurai::IO::File::Write | Samurai::IO::File::Truncate)) { char* out = new char[xmlout->size()]; xmlout->pop(out, xmlout->size()); int written = xmllist.write(out, xmlout->size()); if (written == -1) QDBG("Error writing files.xml"); xmllist.close(); delete[] out; } } #ifdef BZIP2 { Samurai::IO::File dclist("~/.quickdc/files.xml.bz2"); Samurai::IO::BZip2Compressor* filter = new Samurai::IO::BZip2Compressor(); Samurai::IO::Buffer* writer = new Samurai::IO::Buffer(); bool ok = process(filter, xmlout, writer); if (ok && dclist.open(Samurai::IO::File::Write | Samurai::IO::File::Truncate)) { int written = dclist.write(writer, writer->size()); if (written == -1) QDBG("Error writing files.xml.bz2"); dclist.close(); } delete filter; delete writer; } #endif // BZIP2 #ifdef DATADUMP QDBG("Lists written to disk"); #endif delete xmlout; filelists = true; }
void NewDevice::fillTree() { QListViewItem* parent = NULL; QListViewItem* newItem = NULL; QList <DeviceClass> dclist(_app->doc()->deviceClassList()); QPixmap pm(_app->settings()->pixmapPath() + QString("dmx.xpm")); m_tree->clear(); for (DeviceClass* dc = dclist.first(); dc != NULL; dc = dclist.next()) { bool alreadyAdded = false; for (QListViewItem* i = m_tree->firstChild(); i != NULL; i = i->nextSibling()) { if (i->text(0) == dc->manufacturer()) { alreadyAdded = true; parent = i; break; } } if (alreadyAdded == false) { parent = new QListViewItem(m_tree, dc->manufacturer()); if (_app->settings()->newDeviceTreeOpen() == true) { parent->setOpen(true); } } parent->setPixmap(0, QPixmap(_app->settings()->pixmapPath() + QString("global.xpm"))); newItem = new QListViewItem(parent, dc->model()); newItem->setPixmap(0, pm); newItem->setText(1,dc->type()); } }
void NewDevice::showModels(QString mfg) { m_model->clear(); QList <DeviceClass> dclist(_app->doc()->deviceClassList()); for (DeviceClass* dc = dclist.first(); dc != NULL; dc = dclist.next()) { if (mfg == dc->manufacturer()) { if (dc->protocol() == DeviceClass::DMX512) { QPixmap pm(_app->settings()->getPixmapPath() + QString("dmx.xpm")); m_model->insertItem(pm, dc->model()); } else { m_model->insertItem(dc->model()); } } } slotModelActivated(m_model->currentItem()); }