/// get initial db file from text cache bool preferences::initDB(){ bool found = false; char PrefIn[100]; FILE* fp; string tempcache = TEMPCACHE; string Cache = getenv("HOME") + tempcache; fp = fopen(Cache.c_str(), "r"); /// open cached db location if(fp != NULL){ rewind(fp); while(!feof(fp)){ fscanf(fp, "%s", &PrefIn); found = true; } } else{ return false; } if(found){ // if the db (listed in this text cache) exists setSQL(PrefIn); /// set SQL location readDB(); // read that db fclose(fp); return true; } else{ fclose(fp); return false; } }
/// read preference table from sql void preferences::readDB(){ OpenDB(); int count = 0; if(db2.open()){ QSqlQuery query(db2); query = QString("SELECT * FROM pref"); while (query.next()){ QString QVal1 = query.value(1).toString(); QString QVal2 = query.value(2).toString(); QString QVal3 = query.value(3).toString(); QString QVal4 = query.value(4).toString(); QString QVal5 = query.value(5).toString(); QString QVal6 = query.value(6).toString(); QString QVal7 = query.value(7).toString(); setUser(QVal1.toStdString()); setPass(QVal2.toStdString()); setServ(QVal3.toStdString()); setPort(QVal4.toStdString()); setTable(QVal5.toStdString()); setSQL(QVal6.toStdString()); setPlaylistDir(QVal7.toStdString()); } db2.close(); } }
/// read preference table from sql void preferences::readDB(){ if(QFile::exists(DBlocation.c_str())){ db2 = QSqlDatabase::addDatabase("QSQLITE"); db2.setDatabaseName(DBlocation.c_str()); if(db2.open()){ QSqlQuery query(db2); query = QString("SELECT * FROM pref"); while (query.next()){ QString QVal1 = query.value(1).toString(); QString QVal2 = query.value(2).toString(); QString QVal3 = query.value(3).toString(); QString QVal4 = query.value(4).toString(); QString QVal5 = query.value(5).toString(); QString QVal6 = query.value(6).toString(); setUser(QVal1.toStdString()); setPass(QVal2.toStdString()); setServ(QVal3.toStdString()); setPort(QVal4.toStdString()); setTable(QVal5.toStdString()); setSQL(QVal6.toStdString()); } } db2.removeDatabase("QSQLITE"); } }
preferences& preferences::operator=(const preferences& src){ if(this != &src) { setUser(src.USER); setPass(src.PASS); setServ(src.SERVER); setPort(src.PORT); setTable(src.TABLE); setSQL(src.DBlocation); } return *this; }
toResultSchema::toResultSchema(QWidget *parent, const char *name) : toResultCombo(parent, name) { setSQL(toSQL::sql(toSQL::TOSQL_USERLIST)); toConnection &conn = toConnection::currentConnection(parent); ConnectionKey = conn.provider() + "-" + conn.user() + "-" + conn.host() + "-" + conn.database(); QString sel = conn.defaultSchema(); if (sel.isEmpty()) { QSettings s; sel = s.value("schema/" + ConnectionKey).toString(); } if (sel.isEmpty()) { if (conn.providerIs("QMYSQL")) sel = conn.database(); else sel = conn.user(); } // Oracle usernames are always in upper case if (conn.providerIs("Oracle") || conn.providerIs("SapDB")) sel = sel.toUpper(); setSelected(sel); setParams(toQueryParams()); // sets QueryReady = true; if (SelectedFound) conn.setDefaultSchema(sel); connect(this, SIGNAL(currentIndexChanged(const QString &)), this, SLOT(updateLastSchema(const QString &))); connect(&(connection().getCache()), SIGNAL(userListRefreshed()), this, SLOT(slotUsersFromCache())); setFocusPolicy(Qt::NoFocus); }
toResultResources::toResultResources(QWidget *parent, const char *name) : toResultItem(3, true, parent, name) { setSQL(SQLResource); }
toProfilerUnits(QWidget *parent) : toResultLong(true, false, toQuery::Normal, parent) { setColumnAlignment(3, Qt::AlignRight); setSQL(SQLListUnits); }