From: <su...@us...> - 2008-03-31 13:45:06
|
Revision: 2653 http://tora.svn.sourceforge.net/tora/?rev=2653&view=rev Author: subik Date: 2008-03-31 06:44:09 -0700 (Mon, 31 Mar 2008) Log Message: ----------- "openMaximized" option removed. Main window remembers its position and size automagically now. + tons of "code conventions" caused by QSettings port fixed Modified Paths: -------------- trunk/tora/src/main.cpp trunk/tora/src/toabout.cpp trunk/tora/src/toabout.h trunk/tora/src/toalert.cpp trunk/tora/src/toalert.h trunk/tora/src/toanalyze.cpp trunk/tora/src/toanalyze.h trunk/tora/src/tobackup.cpp trunk/tora/src/tobackup.h trunk/tora/src/tobrowser.cpp trunk/tora/src/tobrowser.h trunk/tora/src/tobrowserconstraint.cpp trunk/tora/src/tobrowsertable.cpp trunk/tora/src/tobrowsertable.h trunk/tora/src/tochangeconnection.cpp trunk/tora/src/tochangeconnection.h trunk/tora/src/tochartmanager.cpp trunk/tora/src/tochartmanager.h trunk/tora/src/toconf.h trunk/tora/src/toconfiguration.cpp trunk/tora/src/toconfiguration.h trunk/tora/src/toconnection.cpp trunk/tora/src/toconnection.h trunk/tora/src/tocurrent.cpp trunk/tora/src/tocurrent.h trunk/tora/src/todatatype.cpp trunk/tora/src/todatatype.h trunk/tora/src/todebug.cpp trunk/tora/src/todebug.h trunk/tora/src/toeditextensions.cpp trunk/tora/src/toeditextensions.h trunk/tora/src/toextract.cpp trunk/tora/src/tofilesize.cpp trunk/tora/src/tofilesize.h trunk/tora/src/toglobalsetting.cpp trunk/tora/src/toglobalsetting.h trunk/tora/src/toglobalsettingui.ui trunk/tora/src/tohelp.cpp trunk/tora/src/tohelp.h trunk/tora/src/tohelpsetup.h trunk/tora/src/tohighlightedtext.cpp trunk/tora/src/tohighlightedtext.h trunk/tora/src/tohtml.cpp trunk/tora/src/tohtml.h trunk/tora/src/toinvalid.cpp trunk/tora/src/toinvalid.h trunk/tora/src/tolinechart.cpp trunk/tora/src/tolinechart.h trunk/tora/src/tolistviewformatter.cpp trunk/tora/src/tolistviewformatter.h trunk/tora/src/tolistviewformattercsv.cpp trunk/tora/src/tolistviewformattercsv.h trunk/tora/src/tolistviewformatterhtml.cpp trunk/tora/src/tolistviewformattersql.cpp trunk/tora/src/tolistviewformattertabdel.cpp trunk/tora/src/tolistviewformattertext.cpp trunk/tora/src/tomain.cpp trunk/tora/src/tomain.h trunk/tora/src/tomainwindow.cpp trunk/tora/src/tomarkedtext.cpp trunk/tora/src/tomarkedtext.h trunk/tora/src/tomemoeditor.cpp trunk/tora/src/tonewconnection.cpp trunk/tora/src/tonewconnection.h trunk/tora/src/tonoblockquery.h trunk/tora/src/tooracleconnection.cpp trunk/tora/src/tooraclesetting.h trunk/tora/src/tooutput.cpp trunk/tora/src/tooutput.h trunk/tora/src/toparamget.cpp trunk/tora/src/toparamget.h trunk/tora/src/topiechart.cpp trunk/tora/src/topiechart.h trunk/tora/src/topreferences.cpp trunk/tora/src/topreferences.h trunk/tora/src/toprofiler.cpp trunk/tora/src/toprofiler.h trunk/tora/src/toproject.cpp trunk/tora/src/toproject.h trunk/tora/src/toqsqlconnection.cpp trunk/tora/src/toqvalue.h trunk/tora/src/toresult.cpp trunk/tora/src/toresult.h trunk/tora/src/toresultcols.cpp trunk/tora/src/toresultcols.h trunk/tora/src/toresultcolscomment.cpp trunk/tora/src/toresultcolscomment.h trunk/tora/src/toresultdata.cpp trunk/tora/src/toresultdata.h trunk/tora/src/toresultdatasingle.cpp trunk/tora/src/toresultdatasingle.h trunk/tora/src/toresultitem.cpp trunk/tora/src/toresultitem.h trunk/tora/src/toresultlabel.cpp trunk/tora/src/toresultlistformat.cpp trunk/tora/src/toresultlistformat.h trunk/tora/src/toresultlong.cpp trunk/tora/src/toresultmodel.cpp trunk/tora/src/toresultmodel.h trunk/tora/src/toresultparam.cpp trunk/tora/src/toresultparam.h trunk/tora/src/toresultplan.cpp trunk/tora/src/toresultstats.cpp trunk/tora/src/toresultstorage.cpp trunk/tora/src/toresultstorage.h trunk/tora/src/toresulttableview.cpp trunk/tora/src/toresulttableview.h trunk/tora/src/toresulttableviewedit.cpp trunk/tora/src/toresulttableviewedit.h trunk/tora/src/toresultview.cpp trunk/tora/src/toresultview.h trunk/tora/src/torollback.cpp trunk/tora/src/toscript.cpp trunk/tora/src/toscript.h trunk/tora/src/tosearchreplace.cpp trunk/tora/src/tosecurity.cpp trunk/tora/src/tosession.cpp trunk/tora/src/tosession.h trunk/tora/src/tosgastatement.cpp trunk/tora/src/tosgatrace.cpp trunk/tora/src/tosgatrace.h trunk/tora/src/tosmtp.cpp trunk/tora/src/tosmtp.h trunk/tora/src/tosplash.cpp trunk/tora/src/tosplash.h trunk/tora/src/tosqledit.cpp trunk/tora/src/tosqledit.h trunk/tora/src/tosqlparse.cpp trunk/tora/src/tosqlparse.h trunk/tora/src/tostorage.cpp trunk/tora/src/tostoragedefinition.cpp trunk/tora/src/tosyntaxsetup.cpp trunk/tora/src/tosyntaxsetup.h trunk/tora/src/totableselect.cpp trunk/tora/src/totabwidget.cpp trunk/tora/src/totabwidget.h trunk/tora/src/totemplate.cpp trunk/tora/src/totemplate.h trunk/tora/src/totemporary.cpp trunk/tora/src/totemporary.h trunk/tora/src/tothread.cpp trunk/tora/src/tothread.h trunk/tora/src/totimer.cpp trunk/tora/src/totool.cpp trunk/tora/src/totool.h trunk/tora/src/totreewidget.cpp trunk/tora/src/totreewidget.h trunk/tora/src/totuning.cpp trunk/tora/src/tovisualize.cpp trunk/tora/src/tovisualize.h trunk/tora/src/towaitevents.cpp trunk/tora/src/towaitevents.h trunk/tora/src/toworksheet.cpp trunk/tora/src/toworksheet.h trunk/tora/src/toworksheetstatistic.cpp trunk/tora/src/toworksheetstatistic.h trunk/tora/src/toworksheettext.cpp trunk/tora/src/toworksheettext.h trunk/tora/src/toworksheetwidget.cpp trunk/tora/src/toworksheetwidget.h trunk/tora/src/utils.cpp trunk/tora/src/utils.h Modified: trunk/tora/src/main.cpp =================================================================== --- trunk/tora/src/main.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/main.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -92,18 +92,18 @@ int main(int argc, char **argv) { // QSettings uses these. - QCoreApplication::setOrganizationName("TOra"); - QCoreApplication::setOrganizationDomain("tora.sourceforge.net"); - QCoreApplication::setApplicationName("TOra"); + QCoreApplication::setOrganizationName("TOra"); + QCoreApplication::setOrganizationDomain("tora.sourceforge.net"); + QCoreApplication::setApplicationName("TOra"); -#ifdef ENABLE_QT_XFT - toSetEnv("QT_XFT", toConfigurationSingle::Instance().QtXft()); -#endif +// These vars are not useful for Qt4 anymore +// #ifdef ENABLE_QT_XFT +// toSetEnv("QT_XFT", toConfigurationSingle::Instance().QtXft()); +// #endif +// # ifndef Q_OS_WIN32 +// QApplication::setDesktopSettingsAware(toConfigurationSingle::Instance().desktopAware()); +// # endif -# ifndef Q_OS_WIN32 - QApplication::setDesktopSettingsAware(toConfigurationSingle::Instance().desktopAware()); -# endif - new QApplication(argc, argv); try @@ -147,7 +147,7 @@ dirPath = DEFAULT_PLUGIN_DIR; d.cd(dirPath); if (d.exists()) - toConfigurationSingle::Instance().setPluginDir(dirPath); + toConfigurationSingle::Instance().setPluginDir(dirPath); else fprintf(stderr, "Invalid PluginDir.\n"); } @@ -221,17 +221,14 @@ { exit (2); } - toConfigurationSingle::Instance().setLastVersion(TOVERSION); + toConfigurationSingle::Instance().setLastVersion(TOVERSION); } if (toConfigurationSingle::Instance().firstInstall().isEmpty()) { -// time_t t; -// time(&t); -// toConfigurationSingle::Instance().globalSetConfig("FirstInstall", ctime(&t)); - toConfigurationSingle::Instance().setFirstInstall( - QDateTime::currentDateTime().toString()); + toConfigurationSingle::Instance().setFirstInstall( + QDateTime::currentDateTime().toString()); } toQValue::setNumberFormat( @@ -260,7 +257,7 @@ connect = QString::fromLatin1(getenv("ORACLE_SID")); } if (!connect.isEmpty()) - toConfigurationSingle::Instance().setDefaultDatabase(connect); + toConfigurationSingle::Instance().setDefaultDatabase(connect); pos = user.indexOf(QString::fromLatin1("/")); if (pos > -1) { @@ -276,8 +273,6 @@ toUpdateIndicateEmpty(); - - new toMain; int ret = qApp->exec(); Modified: trunk/tora/src/toabout.cpp =================================================================== --- trunk/tora/src/toabout.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toabout.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -136,22 +136,24 @@ toAbout::toAbout(AboutType page, QWidget* parent, const char* name, bool modal, Qt::WFlags fl) - : QDialog(parent, fl) + : QDialog(parent, fl) { - if(name) + if (name) setObjectName(name); - if(modal) + if (modal) setWindowModality(Qt::WindowModal); setupUi(this); - if(page == License) { + if (page == License) + { setWindowTitle(tr("GNU General Public License")); - TextView->setHtml(tr(LicenseText)); + TextView->setHtml(tr(LicenseText)); if (parent) CancelButton->hide(); } - else { + else + { setWindowTitle(tr(ABOUT_CAPTION).arg(QString::fromLatin1(TOVERSION))); QString buffer = tr(AboutText).arg(QString::fromLatin1(TOVERSION)); TextView->setHtml(buffer); Modified: trunk/tora/src/toabout.h =================================================================== --- trunk/tora/src/toabout.h 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toabout.h 2008-03-31 13:44:09 UTC (rev 2653) @@ -46,7 +46,8 @@ Q_OBJECT public: - enum AboutType { + enum AboutType + { About, License }; Modified: trunk/tora/src/toalert.cpp =================================================================== --- trunk/tora/src/toalert.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toalert.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -149,7 +149,7 @@ AddNames.insert(AddNames.end(), def); - addAct = + addAct = toolbar->addAction(QIcon(QPixmap(const_cast<const char**>(commit_xpm))), tr("Register current"), this, @@ -211,11 +211,13 @@ this, SLOT(windowActivated(QWidget *))); State = Started; - try { + try + { toThread *thread = new toThread(new pollTask(*this)); thread->start(); } - catch(...) { + catch (...) + { toStatusMessage(tr("Failed to start polling thread, try closing " "some other tools and restart Alert Messenger")); } @@ -223,9 +225,12 @@ setFocusProxy(Message); } -void toAlert::windowActivated(QWidget *widget) { - if(widget == this) { - if(!ToolMenu) { +void toAlert::windowActivated(QWidget *widget) +{ + if (widget == this) + { + if (!ToolMenu) + { ToolMenu = new QMenu(tr("&Alert"), this); ToolMenu->addAction(addAct); @@ -239,20 +244,25 @@ toMainWidget()->addCustomMenu(ToolMenu); } } - else { + else + { delete ToolMenu; ToolMenu = NULL; } } -toAlert::~toAlert() { +toAlert::~toAlert() +{ } -void toAlert::closeEvent(QCloseEvent *event) { - try { +void toAlert::closeEvent(QCloseEvent *event) +{ + try + { Lock.lock(); State = Quit; - while(State != Done) { + while (State != Done) + { Lock.unlock(); Semaphore.down(); Lock.lock(); Modified: trunk/tora/src/toalert.h =================================================================== --- trunk/tora/src/toalert.h 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toalert.h 2008-03-31 13:44:09 UTC (rev 2653) @@ -52,17 +52,18 @@ class QLineEdit; class toListView; -class toAlert : public toToolWidget { +class toAlert : public toToolWidget +{ Q_OBJECT; - class pollTask : public toTask +class pollTask : public toTask { toAlert &Parent; public: - pollTask(toAlert &parent) : Parent(parent) + pollTask(toAlert &parent) : Parent(parent) { } - + virtual void run(void); }; @@ -93,7 +94,8 @@ std::list<QString> SendAlerts; std::list<QString> SendMessages; - enum { + enum + { Started, Quit, Done Modified: trunk/tora/src/toanalyze.cpp =================================================================== --- trunk/tora/src/toanalyze.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toanalyze.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -68,23 +68,28 @@ #include "icons/stop.xpm" #include "icons/toanalyze.xpm" -class toAnalyzeTool : public toTool { - virtual const char **pictureXPM(void) { +class toAnalyzeTool : public toTool +{ + virtual const char **pictureXPM(void) + { return const_cast<const char**>(toanalyze_xpm); } public: toAnalyzeTool() - : toTool(320, "Statistics Manager") { } + : toTool(320, "Statistics Manager") { } virtual void closeWindow(toConnection &connection) {}; - virtual const char *menuItem() { + virtual const char *menuItem() + { return "Statistics Manager"; } - virtual QWidget *toolWindow(QWidget *parent, toConnection &connection) { + virtual QWidget *toolWindow(QWidget *parent, toConnection &connection) + { return new toAnalyze(parent, connection); } - virtual bool canHandle(toConnection &conn) { + virtual bool canHandle(toConnection &conn) + { return toIsOracle(conn) || toIsMySQL(conn) || toIsPostgreSQL(conn); } }; @@ -199,7 +204,8 @@ toAnalyze::toAnalyze(QWidget *main, toConnection &connection) - : toToolWidget(AnalyzeTool, "analyze.html", main, connection) { + : toToolWidget(AnalyzeTool, "analyze.html", main, connection) +{ Tabs = new QTabWidget(this); layout()->addWidget(Tabs); @@ -219,7 +225,8 @@ toolbar->addSeparator(); Analyzed = NULL; - if(toIsOracle(connection)) { + if (toIsOracle(connection)) + { Analyzed = new QComboBox(toolbar); Analyzed->addItem(tr("All")); Analyzed->addItem(tr("Not analyzed")); @@ -231,12 +238,14 @@ Schema->setSelected(tr("All")); Schema->additionalItem(tr("All")); toolbar->addWidget(Schema); - try { + try + { Schema->query(toSQL::sql(toSQL::TOSQL_USERLIST)); } TOCATCH; - if (toIsOracle(connection)) { + if (toIsOracle(connection)) + { Type = new QComboBox(toolbar); Type->addItem(tr("Tables")); Type->addItem(tr("Indexes")); @@ -278,7 +287,8 @@ Sample->setEnabled(false); toolbar->addWidget(Sample); } - else if(toIsPostgreSQL(connection)) { + else if (toIsPostgreSQL(connection)) + { Type = new QComboBox(toolbar); Type->addItem(tr("Tables")); Type->addItem(tr("Indexes")); @@ -298,7 +308,8 @@ Sample = NULL; For = NULL; } - else { + else + { Operation = new QComboBox(toolbar); Operation->addItem(tr("Analyze table")); Operation->addItem(tr("Optimize table")); @@ -369,7 +380,8 @@ box->setContentsMargins(0, 0, 0, 0); container->setLayout(box); - if (toIsOracle(connection)) { + if (toIsOracle(connection)) + { container = new QWidget(Tabs); box = new QVBoxLayout; toolbar = toAllocBar(container, tr("Explain plans")); @@ -379,7 +391,8 @@ QSplitter *splitter = new QSplitter(Qt::Horizontal, container); box->addWidget(splitter); Plans = new toResultTableView(false, false, splitter); - try { + try + { Plans->query(toSQL::string(SQLListPlans, connection).arg( toConfigurationSingle::Instance().planTable())); } @@ -410,7 +423,8 @@ box->setContentsMargins(0, 0, 0, 0); container->setLayout(box); } - else { + else + { Plans = NULL; CurrentPlan = NULL; Worksheet = NULL; @@ -420,9 +434,12 @@ setFocusProxy(Tabs); } -void toAnalyze::fillOwner(void) { - for(toResultTableView::iterator it(Statistics); (*it).isValid(); it++) { - if((*it).data(Qt::EditRole).isNull()) { +void toAnalyze::fillOwner(void) +{ + for (toResultTableView::iterator it(Statistics); (*it).isValid(); it++) + { + if ((*it).data(Qt::EditRole).isNull()) + { Statistics->model()->setData( (*it), Schema->selected(), @@ -431,26 +448,31 @@ } } -void toAnalyze::selectPlan(void) { +void toAnalyze::selectPlan(void) +{ QModelIndex index = Plans->selectedIndex(); - if(index.isValid()) + if (index.isValid()) CurrentPlan->query("SAVED:" + index.data(Qt::EditRole).toString()); } -toWorksheetStatistic *toAnalyze::worksheet(void) { +toWorksheetStatistic *toAnalyze::worksheet(void) +{ Tabs->setCurrentIndex(Tabs->indexOf(Worksheet)); return Worksheet; } -void toAnalyze::changeOperation(int op) { +void toAnalyze::changeOperation(int op) +{ if (Sample) Sample->setEnabled(op == 1); if (For) For->setEnabled(op == 0 || op == 1); } -void toAnalyze::refresh(void) { - try { +void toAnalyze::refresh(void) +{ + try + { Statistics->setSQL(QString::null); toQList par; QString sql; @@ -458,11 +480,13 @@ sql = toSQL::string(SQLListTables, connection()); else sql = toSQL::string(SQLListIndex, connection()); - if (Schema->selected() != tr("All")) { + if (Schema->selected() != tr("All")) + { par.insert(par.end(), Schema->selected()); if (toIsOracle(connection())) sql += "\n AND owner = :own<char[100]>"; - else if(toIsPostgreSQL(connection())) { + else if (toIsPostgreSQL(connection())) + { sql = QString(" SELECT * FROM ( %1 ) sub\n" " WHERE schemaname = :own<char[100]>").arg(sql); @@ -472,8 +496,10 @@ } else if (toIsMySQL(connection())) sql += " FROM :f1<alldatabases>"; - if (Analyzed) { - switch (Analyzed->currentIndex()) { + if (Analyzed) + { + switch (Analyzed->currentIndex()) + { default: break; case 1: @@ -490,33 +516,43 @@ TOCATCH; } -void toAnalyze::poll(void) { - try { +void toAnalyze::poll(void) +{ + try + { int running = 0; - for (std::list<toNoBlockQuery *>::iterator i = Running.begin();i != Running.end();i++) { + for (std::list<toNoBlockQuery *>::iterator i = Running.begin();i != Running.end();i++) + { bool eof = false; - try { - if ((*i)->poll()) { + try + { + if ((*i)->poll()) + { int cols = (*i)->describe().size(); for (int j = 0;j < cols;j++) (*i)->readValueNull(); // Eat the output if any. } - try { + try + { eof = (*i)->eof(); } - catch (const QString &) { + catch (const QString &) + { eof = true; } } - catch (const QString &err) { + catch (const QString &err) + { toStatusMessage(err); eof = true; } - if (eof) { + if (eof) + { QString sql = toShift(Pending); - if (!sql.isEmpty()) { + if (!sql.isEmpty()) + { delete(*i); toQList par; (*i) = new toNoBlockQuery(connection(), sql, par); @@ -526,7 +562,8 @@ else running++; } - if (!running) { + if (!running) + { Poll.stop(); refresh(); stop(); @@ -537,15 +574,21 @@ TOCATCH; } -std::list<QString> toAnalyze::getSQL(void) { +std::list<QString> toAnalyze::getSQL(void) +{ std::list<QString> ret; - for(toResultTableView::iterator it(Statistics); (*it).isValid(); it++) { - if(Statistics->isRowSelected((*it))) { - if (toIsOracle(connection())) { + for (toResultTableView::iterator it(Statistics); (*it).isValid(); it++) + { + if (Statistics->isRowSelected((*it))) + { + if (toIsOracle(connection())) + { QString sql = QString::fromLatin1("ANALYZE %3 %1.%2 "); QString forc; - if ((*it).data(Qt::EditRole) == QString::fromLatin1("TABLE")) { - switch (For->currentIndex()) { + if ((*it).data(Qt::EditRole) == QString::fromLatin1("TABLE")) + { + switch (For->currentIndex()) + { case 0: forc = QString::null; break; @@ -561,7 +604,8 @@ } } - switch (Operation->currentIndex()) { + switch (Operation->currentIndex()) + { case 0: sql += QString::fromLatin1("COMPUTE STATISTICS"); sql += forc; @@ -584,10 +628,12 @@ .arg(Statistics->model()->data((*it).row(), 1).toString())); } - else if(toIsPostgreSQL(connection())) { + else if (toIsPostgreSQL(connection())) + { QString sql; - switch (Operation->currentIndex()) { + switch (Operation->currentIndex()) + { case 0: sql += QString("VACUUM FULL VERBOSE %1.%2"); break; @@ -603,9 +649,11 @@ QString schema = Statistics->model()->data((*it).row(), 2).toString(); toPush(ret, sql.arg(schema).arg(table)); } - else { + else + { QString sql; - switch (Operation->currentIndex()) { + switch (Operation->currentIndex()) + { case 0: sql = QString::fromLatin1("ANALYZE TABLE %1.%2 "); break; @@ -625,7 +673,8 @@ return ret; } -void toAnalyze::displaySQL(void) { +void toAnalyze::displaySQL(void) +{ QString txt; std::list<QString> sql = getSQL(); for (std::list<QString>::iterator i = sql.begin();i != sql.end();i++) @@ -633,16 +682,19 @@ new toMemoEditor(this, txt, -1, -1, true); } -void toAnalyze::execute(void) { +void toAnalyze::execute(void) +{ stop(); std::list<QString> sql = getSQL(); for (std::list<QString>::iterator i = sql.begin();i != sql.end();i++) toPush(Pending, *i); - try { + try + { toQList par; - for (int i = 0; i < Parallel->value(); i++) { + for (int i = 0; i < Parallel->value(); i++) + { QString sql = toShift(Pending); if (!sql.isEmpty()) toPush(Running, new toNoBlockQuery(connection(), sql, par)); @@ -654,15 +706,19 @@ TOCATCH; } -void toAnalyze::stop(void) { - try { +void toAnalyze::stop(void) +{ + try + { for_each(Running.begin(), Running.end(), DeleteObject()); Running.clear(); Pending.clear(); Stop->setEnabled(false); Current->setText(QString::null); - if (!connection().needCommit()) { - try { + if (!connection().needCommit()) + { + try + { connection().rollback(); } catch (...) { } @@ -671,11 +727,13 @@ TOCATCH; } -void toAnalyze::createTool(void) { +void toAnalyze::createTool(void) +{ AnalyzeTool.createWindow(); } -void toAnalyze::displayMenu(QMenu *menu) { +void toAnalyze::displayMenu(QMenu *menu) +{ QAction *before = menu->actions()[0]; menu->insertSeparator(before); Modified: trunk/tora/src/toanalyze.h =================================================================== --- trunk/tora/src/toanalyze.h 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/toanalyze.h 2008-03-31 13:44:09 UTC (rev 2653) @@ -59,7 +59,8 @@ class toResultTableView; class toWorksheetStatistic; -class toAnalyze : public toToolWidget { +class toAnalyze : public toToolWidget +{ Q_OBJECT; QTabWidget *Tabs; Modified: trunk/tora/src/tobackup.cpp =================================================================== --- trunk/tora/src/tobackup.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/tobackup.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -320,7 +320,7 @@ layout()->addWidget(toolbar); updateAct = new QAction(QPixmap(const_cast<const char**>(refresh_xpm)), - tr("Update"), this); + tr("Update"), this); updateAct->setShortcut(QKeySequence::Refresh); connect(updateAct, SIGNAL(triggered()), this, SLOT(refresh(void))); toolbar->addAction(updateAct); @@ -374,9 +374,12 @@ setFocusProxy(Tabs); } -void toBackup::windowActivated(QWidget *widget) { - if (widget == this) { - if (!ToolMenu) { +void toBackup::windowActivated(QWidget *widget) +{ + if (widget == this) + { + if (!ToolMenu) + { ToolMenu = new QMenu(tr("&Backup Manager"), this); ToolMenu->addAction(updateAct); @@ -384,7 +387,8 @@ toMainWidget()->addCustomMenu(ToolMenu); } } - else { + else + { delete ToolMenu; ToolMenu = NULL; } Modified: trunk/tora/src/tobackup.h =================================================================== --- trunk/tora/src/tobackup.h 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/tobackup.h 2008-03-31 13:44:09 UTC (rev 2653) @@ -48,7 +48,8 @@ class QTabWidget; class toResultTableView; -class toBackup : public toToolWidget { +class toBackup : public toToolWidget +{ Q_OBJECT; QAction *updateAct; Modified: trunk/tora/src/tobrowser.cpp =================================================================== --- trunk/tora/src/tobrowser.cpp 2008-03-29 23:04:38 UTC (rev 2652) +++ trunk/tora/src/tobrowser.cpp 2008-03-31 13:44:09 UTC (rev 2653) @@ -158,7 +158,8 @@ void toBrowserTool::addTable(void) { - try { + try + { toConnection &conn = toMainWidget()->currentConnection(); toBrowserTable::newTable(conn, toIsMySQL(conn) ? conn.database() : conn.user(), @@ -169,7 +170,8 @@ void toBrowserTool::addIndex(void) { - try { + try + { toConnection &conn = toMainWidget()->currentConnection(); toBrowserIndex::modifyIndex(conn, toIsMySQL(conn) ? conn.database() : conn.user(), @@ -181,7 +183,8 @@ void toBrowserTool::addConstraint(void) { - try { + try + { toConnection &conn = toMainWidget()->currentConnection(); toBrowserConstraint::modifyConstraint(conn, toIsMySQL(conn) ? conn.database() : conn.user(), @@ -198,7 +201,8 @@ " ORDER BY Tablespace_Name", "List the available tablespaces in a database."); -class toBrowserFilter : public toViewFilter { +class toBrowserFilter : public toViewFilter +{ int Type; bool IgnoreCase; bool Invert; @@ -219,16 +223,18 @@ int tablespace, const std::list<QString> &tablespaces, bool onlyOwnSchema = false) - : Type(type), - IgnoreCase(cas), - Invert(invert), - Text(cas ? str.toUpper() : str), - TablespaceType(tablespace), - Tablespaces(tablespaces), - OnlyOwnSchema(onlyOwnSchema), - Empty(false) { + : Type(type), + IgnoreCase(cas), + Invert(invert), + Text(cas ? str.toUpper() : str), + TablespaceType(tablespace), + Tablespaces(tablespaces), + OnlyOwnSchema(onlyOwnSchema), + Empty(false) + { - if (!str.isEmpty()) { + if (!str.isEmpty()) + { Match.setPattern(str); Match.setCaseSensitivity(cas ? Qt::CaseSensitive : Qt::CaseInsensitive); } @@ -237,42 +243,47 @@ } toBrowserFilter(bool empty = true) - : Type(0), - IgnoreCase(true), - Invert(false), - TablespaceType(0) { + : Type(0), + IgnoreCase(true), + Invert(false), + TablespaceType(0) + { Empty = empty; if (!empty) readFilterSettings(); else - toConfigurationSingle::Instance().setFilterType(0); // No filter type + toConfigurationSingle::Instance().setFilterType(0); // No filter type } - virtual bool isEmpty(void) { + virtual bool isEmpty(void) + { return Empty; } - virtual void storeFilterSettings(void) { - toConfigurationSingle::Instance().setFilterIgnoreCase(IgnoreCase); - toConfigurationSingle::Instance().setFilterInvert(Invert); - toConfigurationSingle::Instance().setFilterType(Type); - toConfigurationSingle::Instance().setFilterTablespaceType(TablespaceType); - toConfigurationSingle::Instance().setFilterText(Text); + virtual void storeFilterSettings(void) + { + toConfigurationSingle::Instance().setFilterIgnoreCase(IgnoreCase); + toConfigurationSingle::Instance().setFilterInvert(Invert); + toConfigurationSingle::Instance().setFilterType(Type); + toConfigurationSingle::Instance().setFilterTablespaceType(TablespaceType); + toConfigurationSingle::Instance().setFilterText(Text); toConfigurationSingle::Instance().saveConfig(); } - virtual void readFilterSettings(void) { + virtual void readFilterSettings(void) + { QString t; - Text = toConfigurationSingle::Instance().filterText(); - IgnoreCase = toConfigurationSingle::Instance().filterIgnoreCase(); - Invert = toConfigurationSingle::Instance().filterInvert(); + Text = toConfigurationSingle::Instance().filterText(); + IgnoreCase = toConfigurationSingle::Instance().filterIgnoreCase(); + Invert = toConfigurationSingle::Instance().filterInvert(); OnlyOwnSchema = false; - Type = toConfigurationSingle::Instance().filterType(); - TablespaceType = toConfigurationSingle::Instance().filterTablespaceType(); + Type = toConfigurationSingle::Instance().filterType(); + TablespaceType = toConfigurationSingle::Instance().filterTablespaceType(); } - virtual void exportData(std::map<QString, QString> &data, const QString &prefix) { + virtual void exportData(std::map<QString, QString> &data, const QString &prefix) + { data[prefix + ":Type"] = QString::number(Type); if (IgnoreCase) data[prefix + ":Ignore"] = "Yes"; @@ -287,33 +298,39 @@ data[prefix + ":OwnlyOwnSchema"] = "Yes"; } - virtual void importData(std::map<QString, QString> &data, const QString &prefix) { + virtual void importData(std::map<QString, QString> &data, const QString &prefix) + { Type = data[prefix + ":Type"].toInt(); OnlyOwnSchema = !data[prefix + ":OnlyOwnSchema"].isEmpty(); TablespaceType = data[prefix + ":SpaceType"].toInt(); IgnoreCase = !data[prefix + ":Ignore"].isEmpty(); Invert = !data[prefix + ":Invert"].isEmpty(); Text = data[prefix + ":Text"]; - if (!Text.isEmpty()) { + if (!Text.isEmpty()) + { Match.setPattern(Text); Match.setCaseSensitivity(IgnoreCase ? Qt::CaseSensitive : Qt::CaseInsensitive); } int id = 1; std::map<QString, QString>::iterator i; Tablespaces.clear(); - while ((i = data.find(prefix + ":Space:" + QString::number(id).toLatin1())) != data.end()) { + while ((i = data.find(prefix + ":Space:" + QString::number(id).toLatin1())) != data.end()) + { Tablespaces.insert(Tablespaces.end(), (*i).second); i++; id++; } } - bool onlyOwnSchema(void) { + bool onlyOwnSchema(void) + { return OnlyOwnSchema; } - virtual QString wildCard(void) { - switch (Type) { + virtual QString wildCard(void) + { + switch (Type) + { default: return QString::fromLatin1("%"); case 1: @@ -325,23 +342,27 @@ } } - virtual void startingQuery() { + virtual void startingQuery() + { RemoveDuplicates.clear(); } - virtual bool check(const toTreeWidgetItem *item) { + virtual bool check(const toTreeWidgetItem *item) + { return check(item->text(0), item->text(1), item->text(2)); } - virtual bool check(const toResultModel *model, const int row) { + virtual bool check(const toResultModel *model, const int row) + { return check(model->data(row, 1).toString(), model->data(row, 2).toString(), model->data(row, 3).toString()); } - virtual bool check(QString one, QString two, QString three) { + virtual bool check(QString one, QString two, QString three) + { QString key = one + "." + two; if (RemoveDuplicates.find(key) != RemoveDuplicates.end()) return false; @@ -350,14 +371,19 @@ QString str = one; QString tablespace = three; - if (!tablespace.isEmpty()) { - switch (TablespaceType) { + if (!tablespace.isEmpty()) + { + switch (TablespaceType) + { default: break; - case 1: { + case 1: + { bool ok = false; - for (std::list<QString>::iterator i = Tablespaces.begin();i != Tablespaces.end();i++) { - if (*i == tablespace) { + for (std::list<QString>::iterator i = Tablespaces.begin();i != Tablespaces.end();i++) + { + if (*i == tablespace) + { ok = true; break; } @@ -373,11 +399,13 @@ break; } } - switch (Type) { + switch (Type) + { default: return true; case 1: - if (IgnoreCase) { + if (IgnoreCase) + { if (str.toUpper().startsWith(Text)) return !Invert; } @@ -385,7 +413,8 @@ return !Invert; break; case 2: - if (IgnoreCase) { + if (IgnoreCase) + { if (str.right(Text.length()).toUpper() == Text) return !Invert; } @@ -396,10 +425,12 @@ if (str.contains(Text, IgnoreCase ? Qt::CaseSensitive : Qt::CaseInsensitive)) return !Invert; break; - case 4: { + case 4: + { QStringList lst = Text.split(QRegExp(QString("\\s*,\\s*"))); for (int i = 0;i < lst.count();i++) - if (IgnoreCase) { + if (IgnoreCase) + { if (str.toUpper() == lst[i]) return !Invert; } @@ -416,20 +447,23 @@ return Invert; } - virtual toViewFilter *clone(void) { + virtual toViewFilter *clone(void) + { return new toBrowserFilter(*this); } friend class toBrowserFilterSetup; }; -class toBrowserFilterSetup : public QDialog, public Ui::toBrowserFilterUI { +class toBrowserFilterSetup : public QDialog, public Ui::toBrowserFilterUI +{ private: QButtonGroup *ButtonsGroup; QButtonGroup *TypeGroup; public: - void setup(bool temp) { + void setup(bool temp) + { toHelp::connectDialog(this); // qbuttongroup is not a widget. awesome. guess they'll fix @@ -447,11 +481,13 @@ TypeGroup->addButton(Include, 1); TypeGroup->addButton(Exclude, 2); - if (!temp) { + if (!temp) + { OnlyOwnSchema->hide(); Tablespaces->setNumberColumn(false); Tablespaces->setReadableColumns(true); - try { + try + { toConnection &conn = toCurrentConnection(this); toQuery query(conn, toSQL::string(SQLListTablespaces, conn)); Tablespaces->query(SQLListTablespaces); @@ -459,34 +495,41 @@ catch (...) {} Tablespaces->setSelectionMode(toTreeWidget::Multi); } - else { + else + { TablespaceType->hide(); } } toBrowserFilterSetup(bool temp, QWidget *parent) - : QDialog(parent) { + : QDialog(parent) + { setupUi(this); setup(temp); } toBrowserFilterSetup(bool temp, toBrowserFilter &cur, QWidget *parent) - : QDialog(parent) { + : QDialog(parent) + { setupUi(this); setup(temp); QAbstractButton *b = ButtonsGroup->button(cur.Type); - if(b) + if (b) b->setChecked(true); - if (!TablespaceType->isHidden()) { + if (!TablespaceType->isHidden()) + { b = TypeGroup->button(cur.TablespaceType); - if(b) + if (b) b->setChecked(true); - for(std::list<QString>::iterator i = cur.Tablespaces.begin(); - i != cur.Tablespaces.end(); - i++) { - for(toTreeWidgetItemIterator it(Tablespaces); (*it); it++) { - if((*it)->text(0) == *i) { + for (std::list<QString>::iterator i = cur.Tablespaces.begin(); + i != cur.Tablespaces.end(); + i++) + { + for (toTreeWidgetItemIterator it(Tablespaces); (*it); it++) + { + if ((*it)->text(0) == *i) + { (*it)->setSelected(true); break; } @@ -499,10 +542,12 @@ } } - toBrowserFilter *getSetting(void) { + toBrowserFilter *getSetting(void) + { std::list<QString> tablespaces; - for(toTreeWidgetItemIterator it(Tablespaces); (*it); it++) { - if((*it)->isSelected()) + for (toTreeWidgetItemIterator it(Tablespaces); (*it); it++) + { + if ((*it)->isSelected()) tablespaces.insert(tablespaces.end(), (*it)->text(0)); } @@ -523,7 +568,8 @@ const char * slot, QToolBar * parent, const char * name) - : QToolButton(parent) { + : QToolButton(parent) +{ setIcon(iconSet); setText(textLabel); @@ -531,7 +577,8 @@ setObjectName(name); setToolTip(grouptext); - try { + try + { connect(toCurrentTool(this), SIGNAL(connectionChange()), this, SLOT(connectionChanged())); } TOCATCH @@ -540,7 +587,8 @@ void toBrowseButton::connectionChanged() { - try { + try + { setEnabled(toExtract::canHandle(toCurrentConnection(this))); } TOCATCH @@ -708,7 +756,7 @@ "SHOW INDEX FROM :f1<noquote>.:tab<noquote>", "", "", - "MySQL"); + "MySQL"); static toSQL SQLTableConstraint( "toBrowser:TableConstraint", @@ -1244,20 +1292,23 @@ QString toBrowser::schema(void) { - try { + try + { QString ret = Schema->selected(); if (ret == tr("No schemas")) return connection().database(); return ret; } - catch (...) { + catch (...) + { return QString::null; } } void toBrowser::setNewFilter(toBrowserFilter *filter) { - if (Filter) { + if (Filter) + { delete Filter; Filter = NULL; } @@ -1272,7 +1323,8 @@ } toBrowser::toBrowser(QWidget *parent, toConnection &connection) - : toToolWidget(BrowserTool, "browser.html", parent, connection) { + : toToolWidget(BrowserTool, "browser.html", parent, connection) +{ SecondTab = NULL; SecondText = QString::null; @@ -1344,36 +1396,36 @@ vbox->addWidget(toolbar); addTableAct = new QAction(QPixmap(const_cast<const char**>(addtable_xpm)), - tr("Create new table"), - this); + tr("Create new table"), + this); connect(addTableAct, SIGNAL(triggered()), this, SLOT(addTable(void))); toolbar->addAction(addTableAct); toolbar->addSeparator(); modTableAct = new QAction(QPixmap(const_cast<const char**>(modtable_xpm)), - tr("Modify table columns"), - this); + tr("Modify table columns"), + this); connect(modTableAct, SIGNAL(triggered()), this, SLOT(modifyTable(void))); toolbar->addAction(modTableAct); modConstraintAct = new QAction(QPixmap(const_cast<const char**>(modconstraint_xpm)), - tr("Modify constraints"), - this); + tr("Modify constraints"), + this); connect(modConstraintAct, SIGNAL(triggered()), this, SLOT(modifyConstraint(void))); toolbar->addAction(modConstraintAct); modIndexAct = new QAction(QPixmap(const_cast<const char**>(modindex_xpm)), - tr("Modify indexes"), - this); + tr("Modify indexes"), + this); connect(modIndexAct, SIGNAL(triggered()), this, SLOT(modifyIndex(void))); toolbar->addAction(modIndexAct); toolbar->addSeparator(); dropTableAct = new QAction(QPixmap(const_cast<const char**>(trash_xpm)), - tr("Drop table"), - this); + tr("Drop table"), + this); connect(dropTableAct, SIGNAL(triggered()), this, SLOT(dropTable(void))); toolbar->addAction(dropTableAct); @@ -1903,10 +1955,10 @@ AccessPanel = new toMySQLUserAccess(curr, TAB_ACCESS_OBJECTS); curr->addTab(AccessPanel, tr("&Objects")); SecondMap[TAB_ACCESS_OBJECTS] = UserPanel; // Yes, it should be - // this one, it will - // signal the - // TAB_ACCESS_OBJECTS - // to update. + // this one, it will + // signal the + // TAB_ACCESS_OBJECTS + // to update. connect(AccessPanel, SIGNAL(hasChanged()), UserPanel, SLOT(hasChanged())); connect(UserPanel, SIGNAL(saveChanges(const QString &, const QString &)), @@ -1953,9 +2005,12 @@ setNewFilter(NULL); } -void toBrowser::windowActivated(QWidget *widget) { - if (widget == this) { - if (!ToolMenu) { +void toBrowser::windowActivated(QWidget *widget) +{ + if (widget == this) + { + if (!ToolMenu) + { ToolMenu = new QMenu(tr("&Browser"), this); ToolMenu->addAction(refreshAct); @@ -1968,7 +2023,8 @@ toMainWidget()->addCustomMenu(ToolMenu); } } - else { + else + { delete ToolMenu; ToolMenu = NULL; } @@ -1990,7 +2046,8 @@ void toBrowser::dropUser() { #ifdef TOEXTENDED_MYSQL - try { + try + { AccessPanel->dropCurrentAccess(); connection().execute(SQLDropUser, selectedItem()->text(0)); flushPrivs(); @@ -2014,20 +2071,25 @@ void toBrowser::refresh(void) { - try { + try + { Schema->refresh(); - if(FirstTab) { + if (FirstTab) + { toQList pars = FirstTab->params(); - if (pars.empty()) { + if (pars.empty()) + { updateTabs(); return; } FirstTab->refresh(); } - if (SecondTab) { + if (SecondTab) + { toQList pars = SecondTab->params(); - if (pars.empty()) { + if (pars.empty()) + { updateTabs(); return ; } @@ -2058,7 +2120,8 @@ void toBrowser::updateTabs(void) { - try { + try + { if (!Schema->selected().isEmpty() && FirstTab) FirstTab->changeParams( schema(), @@ -2070,13 +2133,17 @@ TOCATCH; } -void toBrowser::firstDone(void) { - if(!SecondText.isEmpty() && FirstTab) { - for(int row = 0; row < FirstTab->model()->rowCount(); row++) { +void toBrowser::firstDone(void) +{ + if (!SecondText.isEmpty() && FirstTab) + { + for (int row = 0; row < FirstTab->model()->rowCount(); row++) + { QModelIndex index = FirstTab->model()->index(row, 1); - if(FirstTab->model()->data( - index, - Qt::DisplayRole).toString() == SecondText) { + if (FirstTab->model()->data( + index, + Qt::DisplayRole).toString() == SecondText) + { FirstTab->setCurrentIndex(index); // FirstTab->setSelected((*it), true); // FirstTab->setCurrentItem((*it)); @@ -2085,9 +2152,10 @@ } } } - else { + else + { QModelIndex item = selectedItem(); - if(item.isValid()) + if (item.isValid()) SecondText = item.data(Qt::EditRole).toString(); } } @@ -2095,27 +2163,32 @@ void toBrowser::changeItem() { QModelIndex item = selectedItem(); - if(item.isValid()) { + if (item.isValid()) + { SecondText = item.data(Qt::EditRole).toString(); - if(SecondTab && !SecondText.isEmpty()) + if (SecondTab && !SecondText.isEmpty()) changeSecond(); } } -void toBrowser::changeSecond() { +void toBrowser::changeSecond() +{ QWidget *tab = TopTab->currentWidget(); QWidget *tab2 = dynamic_cast<QWidget *>(SecondTab); - if (tab && tab->objectName() == TAB_SYNONYM) { + if (tab && tab->objectName() == TAB_SYNONYM) + { QString owner; QString name; int pos = SecondText.indexOf(QString(".")); - if (pos >= 0) { + if (pos >= 0) + { owner = SecondText.mid(0, pos); name = SecondText.mid(pos + 1); } - else { + else + { owner = QString::fromLatin1("PUBLIC"); name = SecondText; } @@ -2125,20 +2198,23 @@ #ifdef TOEXTENDED_MYSQL } else if (tab && tab->objectName() == TAB_ACCESS && - tab2->objectName() == TAB_ACCESS_CONTENT) { + tab2->objectName() == TAB_ACCESS_CONTENT) + { SecondTab->changeParams("mysql", "host"); #else } - else if (tab && tab->objectName() == TAB_ACCESS) { + else if (tab && tab->objectName() == TAB_ACCESS) + { SecondTab->changeParams("mysql", SecondText); #endif } else if (tab && tab->objectName() == TAB_INDEX && - tab2->objectName() == TAB_INDEX_EXTRACT) { + tab2->objectName() == TAB_INDEX_EXTRACT) + { QModelIndex item = selectedItem(); - if(item.isValid()) + if (item.isValid()) SecondTab->changeParams(schema(), item.data(Qt::EditRole).toString()); } @@ -2148,11 +2224,11 @@ void toBrowser::changeSecondTab(QWidget *tab) { - if(!tab) + if (!tab) return; toResult *result = dynamic_cast<toResult *>(tab); - if(!result) + if (!result) return; SecondTab = result; @@ -2163,9 +2239,10 @@ void toBrowser::changeTab(QWidget *tab) { - if (tab && this == toMainWidget()->workspace()->activeWindow()) { + if (tab && this == toMainWidget()->workspace()->activeWindow()) + { toResultTableView *newtab = Map[tab->objectName()]; - if(newtab == FirstTab) + if (newtab == FirstTab) return ; CurrentTop = tab; setFocusProxy(newtab); @@ -2178,23 +2255,27 @@ } } -void toBrowser::clearFilter(void) { +void toBrowser::clearFilter(void) +{ setNewFilter(NULL); } -void toBrowser::defineFilter(void) { - if (Filter) { +void toBrowser::defineFilter(void) +{ + if (Filter) + { toBrowserFilterSetup filt(false, *Filter, this); - if(filt.exec()) + if (filt.exec()) setNewFilter(filt.getSetting()); } - else { + else + { toBrowserFilterSetup filt(false, this); - if(filt.exec()) + if (filt.exec()) setNewFilter(filt.getSetting()); } - if(!Filter) + if (!Filter) FilterButton->setChecked(false); else FilterButton->setChecked(!Filter->isEmpty()); @@ -2203,9 +2284,9 @@ bool toBrowser::canHandle(toConnection &conn) { return toIsOracle(conn) || - toIsPostgreSQL(conn) || - toIsMySQL(conn) || - toIsSapDB(conn); + toIsPostgreSQL(conn) || + toIsMySQL(conn) || + toIsSapDB(conn); } void toBrowser::modifyTable(void) @@ -2238,10 +2319,11 @@ { QString index; QModelIndex item = selectedItem(1); - if(FirstTab->model()->columnCount() > 1 && item.isValid()) + if (FirstTab->model()->columnCount() > 1 && item.isValid()) index = item.data(Qt::EditRole).toString(); - if(item.isValid()) { + if (item.isValid()) + { toBrowserIndex::modifyIndex(connection(), Schema->selected(), item.data(Qt::EditRole).toString(), @@ -2260,7 +2342,8 @@ refresh(); } -void toBrowser::displayTableMenu(QMenu *menu) { +void toBrowser::displayTableMenu(QMenu *menu) +{ menu->addSeparator(); menu->addAction(dropTableAct); @@ -2268,7 +2351,8 @@ menu->addSeparator(); - if(toIsMySQL(connection())) { + if (toIsMySQL(connection())) + { menu->addAction(tr("Check table"), this, SLOT(checkTable())); menu->addAction(tr("Optimize table"), this, SLOT(optimizeTable())); menu->addAction(tr("Analyze table"), this, SLOT(analyzeTable())); @@ -2286,7 +2370,8 @@ menu->addAction(refreshAct); } -void toBrowser::displayIndexMenu(QMenu *menu) { +void toBrowser::displayIndexMenu(QMenu *menu) +{ menu->addSeparator(); menu->addAction(QIcon(trash_xpm), tr("Drop index"), this, SLOT(dropIndex())); @@ -2305,18 +2390,21 @@ if (TOMessageBox::warning(this, tr("Dropping %1?").arg(tr(type.toAscii().constData())), tr("Are you sure you want to drop the %1 %2.%3,\n" "this action can not be undone?").arg(tr(type.toAscii().constData())).arg( - Schema->selected()).arg(what), - tr("&Yes"), tr("&Cancel"), QString::null, 0) == 0) { + Schema->selected()).arg(what), + tr("&Yes"), tr("&Cancel"), QString::null, 0) == 0) + { std::list<QString> ctx; toPush(ctx, Schema->selected()); toPush(ctx, QString(type.toUpper())); QStringList parts = what.split("."); - if (parts.count() > 1) { + if (parts.count() > 1) + { toPush(ctx, parts[1]); toPush(ctx, QString("ON")); toPush(ctx, parts[0]); } - else { + else + { toPush(ctx, what); } @@ -2325,7 +2413,8 @@ std::list<QString> empty; - try { + try + { toExtract extractor(connection(), NULL); extractor.setIndexes(false); extractor.setConstraints(false); @@ -2340,7 +2429,8 @@ statements.size(), this); prog.setWindowTitle(tr("Performing %1 changes").arg(tr(type.toAscii().constData()))); - for (std::list<toSQLParse::statement>::iterator j = statements.begin();j != statements.end();j++) { + for (std::list<toSQLParse::statement>::iterator j = statements.begin();j != statements.end();j++) + { QString sql = toSQLParse::indentStatement(*j, connection()); int i = sql.length() - 1; while (i >= 0 && (sql.at(i) == ';' || sql.at(i).isSpace())) @@ -2365,14 +2455,17 @@ void toBrowser::truncateTable(void) { bool force = false; - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if(FirstTab->isRowSelected(*it)) { + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { switch (force ? 0 : TOMessageBox::warning(this, tr("Truncate table?"), tr("Are you sure you want to truncate the table %2.%3,\n" "this action can not be undone?").arg( - Schema->selected()).arg((*it).data(Qt::EditRole).toString()), - tr("&Yes"), tr("Yes to &all"), tr("&Cancel"), 0)) { - case 1: + Schema->selected()).arg((*it).data(Qt::EditRole).toString()), + tr("&Yes"), tr("Yes to &all"), tr("&Cancel"), 0)) + { + case 1 : force = true; // Intentionally no break here. case 0: @@ -2390,7 +2483,8 @@ void toBrowser::flushPrivs(void) { - try { + try + { connection().execute("FLUSH PRIVILEGES"); } TOCATCH @@ -2400,18 +2494,21 @@ { QString sql; - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if(FirstTab->isRowSelected(*it)) { + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { if (sql.isEmpty()) sql = "CHECK TABLE "; else sql += ", "; sql += connection().quote(Schema->selected()) + "." + - connection().quote((*it).data(Qt::EditRole).toString()); + connection().quote((*it).data(Qt::EditRole).toString()); } } - if (!sql.isEmpty()) { + if (!sql.isEmpty()) + { toResultTableView *result = new toResultTableView(true, false, this); result->setWindowFlags(Qt::Window); result->setAttribute(Qt::WA_DeleteOnClose); @@ -2421,21 +2518,25 @@ } -void toBrowser::optimizeTable(void) { +void toBrowser::optimizeTable(void) +{ QString sql; - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if(FirstTab->isRowSelected(*it)) { + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { if (sql.isEmpty()) sql = "OPTIMIZE TABLE "; else sql += ", "; sql += connection().quote(Schema->selected()) + "." + - connection().quote((*it).data(Qt::EditRole).toString()); + connection().quote((*it).data(Qt::EditRole).toString()); } } - if (!sql.isEmpty()) { + if (!sql.isEmpty()) + { toResultTableView *result = new toResultTableView(true, false, this); result->setWindowFlags(Qt::Window); result->setAttribute(Qt::WA_DeleteOnClose); @@ -2453,14 +2554,18 @@ QLineEdit::Normal, "MyISAM", &ok); - if (ok && !text.isEmpty()) { - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if (FirstTab->isRowSelected(*it)) { + if (ok && !text.isEmpty()) + { + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { QString sql = "ALTER TABLE "; sql += connection().quote(Schema->selected()) + "." + - connection().quote((*it).data(Qt::EditRole).toString()); + connection().quote((*it).data(Qt::EditRole).toString()); sql += " TYPE = " + text; - try { + try + { connection().execute(sql); } TOCATCH @@ -2469,21 +2574,25 @@ } } -void toBrowser::analyzeTable(void) { +void toBrowser::analyzeTable(void) +{ QString sql; - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if(FirstTab->isRowSelected(*it)) { + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { if (sql.isEmpty()) sql = "ANALYZE TABLE "; else sql += ", "; sql += connection().quote(Schema->selected()) + "." + - connection().quote((*it).data(Qt::EditRole).toString()); + connection().quote((*it).data(Qt::EditRole).toString()); } } - if (!sql.isEmpty()) { + if (!sql.isEmpty()) + { toResultTableView *result = new toResultTableView(true, false, this); result->setWindowFlags(Qt::Window); result->setAttribute(Qt::WA_DeleteOnClose); @@ -2492,16 +2601,20 @@ } } -QModelIndex toBrowser::selectedItem(int col) { +QModelIndex toBrowser::selectedItem(int col) +{ return FirstTab->selectedIndex(col); } -void toBrowser::dropIndex(void) { - for(toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) { - if(FirstTab->isRowSelected(*it)) { +void toBrowser::dropIndex(void) +{ + for (toResultTableView::iterator it(FirstTab); (*it).isValid(); it++) + { + if (FirstTab->isRowSelected(*it)) + { QModelIndex sec = FirstTab->model()->index((*it).row(), 2); QString index = sec.data(Qt::EditRole).toString(); - if(index != "PRIMARY" && !(*it).data(Qt::EditRole).toString().isEmpty()) + if (index != "PRIMARY" && !(*it).data(Qt::EditRole).toString().isEmpty()) dropSomething("index", (*it).data(Qt::EditRole).toString() + "." + index); else ... [truncated message content] |