summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerlib.pro4
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerplugin.cpp7
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp11
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h2
4 files changed, 17 insertions, 7 deletions
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerlib.pro b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerlib.pro
index 28ef072..5281373 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerlib.pro
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerlib.pro
@@ -1,27 +1,27 @@
TEMPLATE = lib
CONFIG -= moc
CONFIG += qt debug
-HEADERS = stocktickerplugin.h stocktickeruginimpl.h stocktickerpluginwidget.h ticker.h \
+HEADERS = stocktickerplugin.h stocktickeruginimpl.h stocktickerpluginwidget.h ticker.h stocktickerconfig.h \
../libstocks/csv.h \
../libstocks/http.h \
../libstocks/lists.h \
../libstocks/stocks.h
-SOURCES = stocktickerplugin.cpp stocktickerpluginimpl.cpp stocktickerpluginwidget.cpp ticker.cpp \
+SOURCES = stocktickerplugin.cpp stocktickerpluginimpl.cpp stocktickerpluginwidget.cpp ticker.cpp stocktickerconfig.cpp \
../libstocks/csv.c \
../libstocks/currency.c \
../libstocks/history.c \
../libstocks/http.c \
../libstocks/lists.c \
../libstocks/stocks.c
INCLUDEPATH += $(OPIEDIR)/include \
../ ../library
DEPENDPATH += $(OPIEDIR)/include \
../ ../library
LIBS+= -lqpe -lopie
TMAKE_CFLAGS += -D__UNIX__
DESTDIR = $(OPIEDIR)/plugins/today
TARGET = todaystocktickerplugin
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerplugin.cpp b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerplugin.cpp
index 24c151b..2eb1697 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerplugin.cpp
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerplugin.cpp
@@ -1,59 +1,60 @@
/*
* stocktickerplugin.cpp
*
* copyright : (c) 2002 by L.J. Potter
* email : llornkcor@handhelds.org
*
*/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include "stocktickerplugin.h"
#include "stocktickerpluginwidget.h"
-
+#include "stocktickerconfig.h"
StockTickerPlugin::StockTickerPlugin() {
}
StockTickerPlugin::~StockTickerPlugin() {
}
QString StockTickerPlugin::pluginName() const {
return QObject::tr( "StockTicker plugin" );
}
double StockTickerPlugin::versionNumber() const {
return 0.6;
}
QString StockTickerPlugin::pixmapNameWidget() const {
return "pass";
}
QWidget* StockTickerPlugin::widget( QWidget * wid ) {
return new StockTickerPluginWidget( wid, "StockTicker " );
}
QString StockTickerPlugin::pixmapNameConfig() const {
return 0l;
}
TodayConfigWidget* StockTickerPlugin::configWidget( QWidget* wid ) {
- return 0l;
+ return new StocktickerPluginConfig( wid , "Stockticker" );
}
QString StockTickerPlugin::appName() const {
return "stockticker";
}
bool StockTickerPlugin::excludeFromRefresh() const {
-//return false;
+
return true;
}
+
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
index aabb4d2..e178338 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
@@ -9,163 +9,170 @@
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include <qvaluelist.h>
#include <qtl.h>
#include <qstring.h>
#include <qstringlist.h>
#include <qobject.h>
#include <qlayout.h>
#include <qlineedit.h>
#include <qregexp.h>
#include <qtimer.h>
#include <qpe/config.h>
#include <qpe/timestring.h>
#include <qpe/qcopenvelope_qws.h>
#include "ticker.h"
extern "C" {
#include "libstocks/stocks.h"
}
#include "stocktickerpluginwidget.h"
StockTickerPluginWidget::StockTickerPluginWidget( QWidget *parent, const char* name)
: QWidget(parent, name ) {
init();
startTimer(1000);
}
StockTickerPluginWidget::~StockTickerPluginWidget() {
}
void StockTickerPluginWidget::init() {
QHBoxLayout* layout = new QHBoxLayout( this );
stocktickerTicker = new Ticker(this);
stocktickerTicker->setMinimumHeight(15);
connect( stocktickerTicker, SIGNAL( mousePressed()), this, SLOT( doStocks() ));
layout->addWidget( stocktickerTicker);
+
+ Config cfg( "stockticker");
+ cfg.setGroup("Timer");
+ timerDelay= cfg.readNumEntry("Delay",0);
+ if(timerDelay > 0)
+ startTimer(timerDelay*60000);
+
}
void StockTickerPluginWidget::doStocks() {
Config cfg( "stockticker");
cfg.setGroup( "Symbols" );
QString symbollist;
symbollist = cfg.readEntry("Symbols", "");
symbollist.replace(QRegExp(" "),"+");//seperated by +
// qDebug(symbollist);
getStocks( symbollist.latin1());
stocktickerTicker->setText( output );
}
void StockTickerPluginWidget::getStocks( const char *blah) {
stock *stocks_quotes=NULL;
stock *stocks_tmp;
QString tempString;
output = "";
libstocks_return_code error;
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);
DefProxy();
char *stock_liste = (char *)blah;
/* Get the stocks and process errors */
error = get_stocks( stock_liste, &stocks_quotes);
if (error) {
printf("Error in getting stocks (%d)\n", error);
tempString.sprintf("Error in getting stocks (%d)\n", error);
output =tempString;
return;
// exit(1);
}
stocks_tmp = stocks_quotes;
/* Displays the stocks */
while(stocks_tmp!=0){
if (stocks_tmp->Time) {
// printf("%s ", stocks_tmp->Time);
- tempString.sprintf("|| %s ", stocks_tmp->Time);
+ tempString.sprintf("| %s ", stocks_tmp->Time);
tempString.replace(QRegExp("\""),"");
if( dotimeCheck)
output +=tempString;
}
if (stocks_tmp->Date) {
// printf("%s ", stocks_tmp->Date);
tempString.sprintf("| %s ", stocks_tmp->Date);
tempString.replace(QRegExp("\""),"");
if(dodateCheck)
output +=tempString;
}
// printf("\n");
// printf("----------------------------------------\n");
if ( strlen(stocks_tmp->Symbol) > 20 ) {
// printf("| Symbol | %.20s |\n",stocks_tmp->Symbol);
tempString.sprintf("| Symbol %s ",stocks_tmp->Symbol);
if(dosymbolCheck)
output +=tempString;
}
else {
// printf("| Symbol | %-20s |\n",stocks_tmp->Symbol);
tempString.sprintf("| Symbol %s ",stocks_tmp->Symbol);
if(dosymbolCheck)
output +=tempString;
}
if (stocks_tmp->Name) {
if ( strlen(stocks_tmp->Name) > 20 ) {
// printf("| Name %.20s |\n",stocks_tmp->Name);
tempString.sprintf("| Name %s ",stocks_tmp->Name);
tempString.stripWhiteSpace();
if(donameCheck)
output +=tempString;
} else {
// printf("| Name | %-20s |\n",stocks_tmp->Name);
tempString.sprintf("| Name %s ",stocks_tmp->Name);
tempString.stripWhiteSpace();
if(donameCheck)
output +=tempString;
}
}
else {
// printf("| Name | |\n");
tempString.sprintf("| Name | |");
if(donameCheck)
output +=tempString;
@@ -198,49 +205,51 @@ void StockTickerPluginWidget::getStocks( const char *blah) {
// printf("| Var | %-6.2f (%5.2f %%) |\n", stocks_tmp->Variation, stocks_tmp->Pourcentage);
tempString.sprintf("| Var %-6.2f (%5.2f %%) ", stocks_tmp->Variation, stocks_tmp->Pourcentage);
if(dovariationCheck)
output +=tempString;
// printf("| Volume | %-9d |\n", stocks_tmp->Volume);
tempString.sprintf("| Volume %-9d ", stocks_tmp->Volume);
if(dovolumeCheck)
output +=tempString;
// printf("----------------------------------------\n\n");
tempString.sprintf("||==++==|");
output +=tempString;
/* Simple function which help to browse in the stocks list */
stocks_tmp = next_stock(stocks_tmp);
}
/* frees stocks */
free_stocks(stocks_quotes);
}
void StockTickerPluginWidget::DefProxy(void) {
char *proxy;
libstocks_return_code error;
/* Proxy support */
/* Checks for "http_proxy" environment variable */
proxy = getenv("http_proxy");
if(proxy) {
/* 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;
return;
// exit(1);
}
}
}
void StockTickerPluginWidget::timerEvent( QTimerEvent *e ) {
killTimer(e->timerId());
doStocks();
+ if(timerDelay > 0)
+ startTimer(timerDelay*1000);
}
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
index 6a15f56..8f3441d 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
@@ -13,52 +13,52 @@
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef STOCKTICKERL_PLUGIN_WIDGET_H
#define STOCKTICKERL_PLUGIN_WIDGET_H
#include <qstring.h>
#include <qwidget.h>
#include <qlineedit.h>
#include <opie/tododb.h>
#include <opie/oclickablelabel.h>
#include <sys/types.h>
#include <sys/uio.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "ticker.h"
/* extern "C" { */
/* #include "stocks.h" */
/* } */
class QTimer;
class StockTickerPluginWidget : public QWidget {
Q_OBJECT
public:
StockTickerPluginWidget( QWidget *parent, const char *name );
~StockTickerPluginWidget();
QString output;
protected slots:
void doStocks();
private:
Ticker *stocktickerTicker;
void timerEvent( QTimerEvent * );
void init();
void getStocks( const char *stock_liste);
void DefProxy(void);
-
+ int timerDelay;
};
#endif