summaryrefslogtreecommitdiff
path: root/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
Side-by-side diff
Diffstat (limited to 'noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp88
1 files changed, 57 insertions, 31 deletions
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
index c3ca52d..fedc79c 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
@@ -30,45 +30,60 @@ extern "C" {
QString output;
OTicker *stocktickerTicker;
+ QCString stock_liste;
+ bool dotimeCheck, dodateCheck, dosymbolCheck, donameCheck;
+ bool docurrentPriceCheck, dolastPriceCheck, doopenPriceCheck;
+ bool dominPriceCheck, domaxPriceCheck, dovariationCheck, dovolumeCheck;
void getStocks(char *blah) {
// stocktickerTicker->setText( "Downloading stock data.");
stock *stocks_quotes=NULL;
stock *stocks_tmp;
- QCString stock_liste = blah;
+ stock_liste = blah;
::free ( blah );
// char *stock_liste = (char *)blah->latin1();
- qDebug("%s", stock_liste.data() );
- QString tempString;
+ // qDebug("%s", stock_liste.data() );
output = "";
-
+ QString tempString;
libstocks_return_code error;
- Config cfg( "stockticker");
- cfg.setGroup( "Fields" );
- bool dotimeCheck, dodateCheck, dosymbolCheck, donameCheck;
- bool docurrentPriceCheck, dolastPriceCheck, doopenPriceCheck;
- bool dominPriceCheck, domaxPriceCheck, dovariationCheck, dovolumeCheck;
+// Config cfg( "stockticker");
+// cfg.setGroup( "Fields" );
+// bool dotimeCheck, dodateCheck, dosymbolCheck, donameCheck;
+// bool docurrentPriceCheck, dolastPriceCheck, doopenPriceCheck;
+// bool dominPriceCheck, domaxPriceCheck, dovariationCheck, dovolumeCheck;
dotimeCheck=dodateCheck=dosymbolCheck=donameCheck= docurrentPriceCheck=dolastPriceCheck=doopenPriceCheck=dominPriceCheck=domaxPriceCheck=dovariationCheck=dovolumeCheck=false;
- dotimeCheck=cfg.readBoolEntry("timeCheck",1);
- dodateCheck=cfg.readBoolEntry("dateCheck",1);
- dosymbolCheck=cfg.readBoolEntry("symbolCheck",1);
- donameCheck=cfg.readBoolEntry("nameCheck",1);
- docurrentPriceCheck=cfg.readBoolEntry("currentPriceCheck",1);
- dolastPriceCheck=cfg.readBoolEntry("lastPriceCheck",1);
- doopenPriceCheck=cfg.readBoolEntry("openPriceCheck",1);
- dominPriceCheck=cfg.readBoolEntry("minPriceCheck",1);
- domaxPriceCheck=cfg.readBoolEntry("maxPriceCheck",1);
- dovariationCheck=cfg.readBoolEntry("variationCheck",1);
- dovolumeCheck=cfg.readBoolEntry("volumeCheck",1);
+ dotimeCheck=1;
+ dodateCheck=1;
+ dosymbolCheck=1;
+ donameCheck=1;
+ docurrentPriceCheck=1;
+ dolastPriceCheck=1;
+ doopenPriceCheck=1;
+ dominPriceCheck=1;
+ domaxPriceCheck=1;
+ dovariationCheck=1;
+ dovolumeCheck=1;
+
+// dotimeCheck=cfg.readBoolEntry("timeCheck",1);
+// dodateCheck=cfg.readBoolEntry("dateCheck",1);
+// dosymbolCheck=cfg.readBoolEntry("symbolCheck",1);
+// donameCheck=cfg.readBoolEntry("nameCheck",1);
+// docurrentPriceCheck=cfg.readBoolEntry("currentPriceCheck",1);
+// dolastPriceCheck=cfg.readBoolEntry("lastPriceCheck",1);
+// doopenPriceCheck=cfg.readBoolEntry("openPriceCheck",1);
+// dominPriceCheck=cfg.readBoolEntry("minPriceCheck",1);
+// domaxPriceCheck=cfg.readBoolEntry("maxPriceCheck",1);
+// dovariationCheck=cfg.readBoolEntry("variationCheck",1);
+// dovolumeCheck=cfg.readBoolEntry("volumeCheck",1);
// DefProxy();
- {
+ // {
char *proxy;
- libstocks_return_code error;
+ // libstocks_return_code error;
/* Proxy support */
/* Checks for "http_proxy" environment variable */
@@ -77,16 +92,17 @@ void getStocks(char *blah) {
/* printf("proxy set\n"); */
error = set_proxy(proxy);
if (error) {
- printf("Proxy error (%d)\n", error);
- QString tempString;
- tempString.sprintf("Proxy error (%d)\n", error);
- output = tempString;
+// printf("Proxy error (%d)\n", error);
+// QString tempString2;
+// tempString2.sprintf("Proxy error (%d)\n", error);
+// output = tempString2;
+ // delete tempString2;
return;
// exit(1);
}
}
- }
-// char *stock_liste = (char *)blah;
+ ::free(proxy);
+ // }
/* Get the stocks and process errors */
error = get_stocks( stock_liste.data(), &stocks_quotes);
@@ -95,7 +111,6 @@ void getStocks(char *blah) {
tempString.sprintf("Error in getting stocks (%d)\n", error);
output =tempString;
return;
-// exit(1);
}
stocks_tmp = stocks_quotes;
@@ -199,10 +214,16 @@ void getStocks(char *blah) {
stocks_tmp = next_stock(stocks_tmp);
}
+ stocktickerTicker->setText( output.latin1() );
+
/* frees stocks */
free_stocks(stocks_quotes);
- stocktickerTicker->setText( output.latin1() );
+ free_stocks(stocks_tmp);
+ stock_liste="";
+ //delete stock_liste;
+ tempString="";
+ output="";
}
StockTickerPluginWidget::StockTickerPluginWidget( QWidget *parent, const char* name)
@@ -242,6 +263,10 @@ void StockTickerPluginWidget::doStocks() {
pthread_t thread1;
char *blah = ::strdup(symbollist.latin1());
pthread_create(&thread1,NULL, (void * (*)(void *))getStocks, (void *) blah);
+ pthread_detach( thread1);
+
+ //::free((void*)thread1);
+ //getStocks(blah);
}
}
@@ -269,6 +294,7 @@ void StockTickerPluginWidget::checkConnection() {
void StockTickerPluginWidget::isConnected() {
// qDebug("We connect, so ok to grab stocks");
+ if(this->isVisible())
doStocks();
Config cfg( "stockticker");
@@ -276,7 +302,7 @@ void StockTickerPluginWidget::isConnected() {
timerDelay= cfg.readNumEntry("Delay",0);
if(timerDelay > 0)
startTimer(timerDelay*60000);
- qDebug("timer set for %d",(timerDelay*60000)/60000);
+ // qDebug("timer set for %d",(timerDelay*60000)/60000);
wasError = false;
// Sock->close();