From: <mrj...@us...> - 2008-02-11 00:40:09
|
Revision: 2563 http://tora.svn.sourceforge.net/tora/?rev=2563&view=rev Author: mrjohnson0 Date: 2008-02-10 16:40:14 -0800 (Sun, 10 Feb 2008) Log Message: ----------- port 'activated' signal Modified Paths: -------------- trunk/tora/src/toworksheetstatistic.cpp trunk/tora/src/toworksheetstatistic.h Modified: trunk/tora/src/toworksheetstatistic.cpp =================================================================== --- trunk/tora/src/toworksheetstatistic.cpp 2008-02-10 23:29:02 UTC (rev 2562) +++ trunk/tora/src/toworksheetstatistic.cpp 2008-02-11 00:40:14 UTC (rev 2563) @@ -55,6 +55,7 @@ #include <QPixmap> #include <QMenu> #include <QVBoxLayout> +#include <QAction> #include "icons/fileopen.xpm" #include "icons/filesave.xpm" @@ -84,7 +85,7 @@ SaveMenu->setTitle(tr("Save statistics to file")); toolbar->addAction(SaveMenu->menuAction()); connect(SaveMenu, SIGNAL(aboutToShow()), this, SLOT(displayMenu())); - connect(SaveMenu, SIGNAL(activated(int)), this, SLOT(save(int))); + connect(SaveMenu, SIGNAL(triggered(QAction *)), this, SLOT(save(QAction *))); toolbar->addSeparator(); @@ -93,7 +94,7 @@ RemoveMenu->setTitle(tr("Remove statistics")); toolbar->addAction(RemoveMenu->menuAction()); connect(RemoveMenu, SIGNAL(aboutToShow()), this, SLOT(displayMenu())); - connect(RemoveMenu, SIGNAL(activated(int)), this, SLOT(remove(int))); + connect(RemoveMenu, SIGNAL(triggered(QAction *)), this, SLOT(remove(QAction *))); Splitter = new QSplitter(Qt::Vertical, this); vlayout->addWidget(Splitter); @@ -160,6 +161,8 @@ QSizePolicy::Fixed)); vbox->addWidget(hcontainer); + cur.Action = new QAction(stats["Description"], cur.Top); + cur.Label = new QLabel(stats["Description"], hcontainer); cur.Label->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred)); box->addWidget(cur.Label); @@ -245,10 +248,9 @@ } } -void toWorksheetStatistic::save(int selid) { - int id = 1; +void toWorksheetStatistic::save(QAction *action) { for (std::list<data>::iterator i = Open.begin();i != Open.end();i++) { - if (selid == id) { + if((*i).Action == action) { QString fn = toSaveFilename(QString::null, QString::fromLatin1("*.stat"), this); if (!fn.isEmpty()) { std::map<QString, QString> stat; @@ -261,18 +263,16 @@ try { toConfigurationSingle::Instance().saveMap(fn, stat); } - TOCATCH + TOCATCH; } break; } - id++; } } -void toWorksheetStatistic::remove(int selid) { - int id = 1; +void toWorksheetStatistic::remove(QAction *action) { for (std::list<data>::iterator i = Open.begin();i != Open.end();i++) { - if (selid == id) { + if ((*i).Action == action) { delete(*i).Top; if (Open.size() == 1) { Dummy = new QWidget(Splitter); @@ -281,7 +281,6 @@ Open.erase(i); break; } - id++; } } @@ -300,10 +299,8 @@ void toWorksheetStatistic::displayMenu(void) { SaveMenu->clear(); RemoveMenu->clear(); - int id = 1; - for (std::list<data>::iterator i = Open.begin();i != Open.end();i++) { - SaveMenu->addAction((*i).Label->text()); - RemoveMenu->addAction((*i).Label->text()); - id++; + for (std::list<data>::iterator i = Open.begin(); i != Open.end(); i++) { + SaveMenu->addAction((*i).Action); + RemoveMenu->addAction((*i).Action); } } Modified: trunk/tora/src/toworksheetstatistic.h =================================================================== --- trunk/tora/src/toworksheetstatistic.h 2008-02-10 23:29:02 UTC (rev 2562) +++ trunk/tora/src/toworksheetstatistic.h 2008-02-11 00:40:14 UTC (rev 2563) @@ -56,12 +56,14 @@ class toBarChart; class toListView; class toWorksheetStatistic; +class QAction; class toWorksheetStatistic : public QWidget { Q_OBJECT; struct data { + QAction *Action; QWidget *Top; QLabel *Label; QSplitter *Charts; @@ -97,8 +99,8 @@ virtual void showPlans(bool); virtual void showCharts(bool); - virtual void save(int); - virtual void remove(int); + virtual void save(QAction *); + virtual void remove(QAction *); virtual void load(void); virtual void displayMenu(void); }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |