summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.cpp32
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.h2
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp11
-rw-r--r--noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h1
4 files changed, 40 insertions, 6 deletions
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.cpp b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.cpp
index 11b615b..fdabd5c 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.cpp
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.cpp
@@ -111,71 +111,101 @@ StocktickerPluginConfig::StocktickerPluginConfig( QWidget *parent, const char*
variationCheck= new QCheckBox ( "Variation", this );
variationCheck->setChecked( cfg.readBoolEntry("variationCheck",1));
layout->addMultiCellWidget( variationCheck, 5, 5, 0, 0 );
QWhatsThis::add(variationCheck, tr("Toggles daily variation of price field"));
volumeCheck= new QCheckBox ( "Volume", this );
volumeCheck->setChecked( cfg.readBoolEntry("volumeCheck",1));
layout->addMultiCellWidget( volumeCheck , 5, 5, 1, 1);
QWhatsThis::add(volumeCheck, tr("Toggles volume of trading field"));
timerDelaySpin = new QSpinBox( this, "timer spin" );
QWhatsThis::add( timerDelaySpin , tr( "How often stocks prices should be looked up. In minutes" ) );
timerDelaySpin->setMaxValue( 60);
cfg.setGroup("Timer");
timerDelaySpin->setValue( cfg.readNumEntry("Delay",0));
layout->addMultiCellWidget( timerDelaySpin , 6, 6, 0, 0);
QLabel *label2;
label2 = new QLabel(this);
label2->setText( tr("Minutes between lookups."));
label2->setMaximumHeight(60);
layout->addMultiCellWidget( label2, 6, 6, 1, 2);
+ scrollSpeed = new QSpinBox( this, "Scrollspin" );
+ QWhatsThis::add( timerDelaySpin , tr( "Speed of scrolling action, in milliseconds" ) );
+ scrollSpeed->setMaxValue( 1000);
+ scrollSpeed->setSteps(50,50);
+ cfg.setGroup("Timer");
+ scrollSpeed->setValue( cfg.readNumEntry("ScrollSpeed",50));
+ layout->addMultiCellWidget( scrollSpeed , 7, 7, 0, 0);
+
+ QLabel *label3;
+ label3 = new QLabel(this);
+ label3->setText( tr("Scroll Speed, in milliseconds"));
+ label3->setMaximumHeight(60);
+ layout->addMultiCellWidget( label3, 7, 7, 1, 2);
+
+ scrollLength = new QSpinBox( this, "ScrollLength" );
+ QWhatsThis::add( timerDelaySpin , tr( "Length of scrolling" ) );
+ scrollLength->setMaxValue( 10);
+// scrollLength->setSteps(5,5);
+ cfg.setGroup("Timer");
+ scrollLength->setValue( cfg.readNumEntry("ScrollLength",1));
+ layout->addMultiCellWidget( scrollLength , 8, 8, 0, 0);
+
+ QLabel *label4;
+ label4 = new QLabel(this);
+ label4->setText( tr("Scroll Length"));
+ label4->setMaximumHeight(60);
+ layout->addMultiCellWidget( label4, 8, 8, 1, 2);
+
// lookupButton = new QPushButton(this, "LookupButton");
// lookupButton->setText(tr("Symbol Lookup"));
// connect(lookupButton,SIGNAL(clicked()),SLOT( doLookup()));
// layout->addMultiCellWidget( lookupButton , 9, 9, 0, 0);
QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding );
- layout->addItem( spacer, 8, 0 );
+ layout->addItem( spacer, 9, 0 );
}
void StocktickerPluginConfig::writeConfig() {
Config cfg( "stockticker");
cfg.setGroup( "Symbols" );
QString outText = text().upper();
outText.stripWhiteSpace();
cfg.writeEntry("Symbols", outText );
cfg.setGroup( "Fields" );
cfg.writeEntry("timeCheck",timeCheck->isChecked());
cfg.writeEntry("dateCheck",dateCheck->isChecked());
cfg.writeEntry("symbolCheck",symbolCheck->isChecked());
cfg.writeEntry("nameCheck",nameCheck->isChecked());
cfg.writeEntry("currentPriceCheck",currentPriceCheck->isChecked());
cfg.writeEntry("lastPriceCheck",lastPriceCheck->isChecked());
cfg.writeEntry("openPriceCheck",openPriceCheck->isChecked());
cfg.writeEntry("minPriceCheck",minPriceCheck->isChecked());
cfg.writeEntry("maxPriceCheck",maxPriceCheck->isChecked());
cfg.writeEntry("variationCheck",variationCheck->isChecked());
cfg.writeEntry("volumeCheck",volumeCheck->isChecked());
cfg.setGroup("Timer");
cfg.writeEntry("Delay",timerDelaySpin->value());
+ cfg.writeEntry("ScrollLength",scrollLength->value());
+ cfg.writeEntry("ScrollSpeed",scrollSpeed->value());
cfg.write();
}
StocktickerPluginConfig::~StocktickerPluginConfig() {
}
QString StocktickerPluginConfig::text() const {
return LineEdit1->text();
}
void StocktickerPluginConfig::doLookup() {
system("stockticker");
}
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.h b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.h
index 33aed86..2b67a8b 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.h
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerconfig.h
@@ -17,30 +17,30 @@
#ifndef STOCKTICKER_PLUGIN_CONFIG_H
#define STOCKTICKER_PLUGIN_CONFIG_H
#include <qwidget.h>
#include <opie/todayconfigwidget.h>
#include <qstring.h>
class QLineEdit;
class QCheckBox;
class QPushButton;
class QCheckBox;
class QSpinBox;
class StocktickerPluginConfig : public TodayConfigWidget {
//Q_OBJECT
public:
StocktickerPluginConfig( QWidget *parent, const char *name );
~StocktickerPluginConfig();
QString text() const;
void writeConfig();
private:
QLineEdit* LineEdit1;
QCheckBox *timeCheck, *dateCheck, *symbolCheck, *nameCheck, *currentPriceCheck, *lastPriceCheck, *openPriceCheck, *minPriceCheck, *maxPriceCheck, *variationCheck, *volumeCheck;
QPushButton *lookupButton;
- QSpinBox *timerDelaySpin;
+ QSpinBox *timerDelaySpin, *scrollSpeed, *scrollLength;
private slots:
void doLookup();
};
#endif
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
index 18c9e51..0d90d0f 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.cpp
@@ -191,86 +191,89 @@ void getStocks( const QString *blah) {
tempString.sprintf("| Max %-7.2f ",stocks_tmp->MaxPrice);
if(domaxPriceCheck)
output +=tempString;
// 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);
- stocktickerTicker->setText( output );
+ stocktickerTicker->setText( output.latin1() );
}
StockTickerPluginWidget::StockTickerPluginWidget( QWidget *parent, const char* name)
: QWidget(parent, name ) {
init();
startTimer(1000);
+
+ stocktickerTicker->setTextFormat(Qt::RichText);
// checkConnection();
}
StockTickerPluginWidget::~StockTickerPluginWidget() {
}
void StockTickerPluginWidget::init() {
QHBoxLayout* layout = new QHBoxLayout( this );
stocktickerTicker = new OTicker(this);
// stocktickerTicker->setMinimumHeight(15);
connect( stocktickerTicker, SIGNAL( mousePressed()), this, SLOT( checkConnection() ));
layout->addWidget( stocktickerTicker);
wasError = true;
}
void StockTickerPluginWidget::doStocks() {
Config cfg( "stockticker");
cfg.setGroup( "Symbols" );
symbollist="";
symbollist = cfg.readEntry("Symbols", "");
symbollist.replace(QRegExp(" "),"+");//seperated by +
-// qDebug(symbollist);
+ cfg.setGroup("Timer");
+ stocktickerTicker->setUpdateTime( cfg.readNumEntry("ScrollSpeed",50));
+ stocktickerTicker->setScrollLength( cfg.readNumEntry("ScrollLength",10));
+
if (!symbollist.isEmpty()) {
pthread_t thread1;
pthread_create(&thread1,NULL, (void * (*)(void *))getStocks, &symbollist);
}
-// pthread_join(thread1,NULL);
-// getStocks( symbollist.latin1() );
}
void StockTickerPluginWidget::timerEvent( QTimerEvent *e ) {
killTimer(e->timerId());
checkConnection();
}
void StockTickerPluginWidget::checkConnection() {
// qDebug("checking connection");
// Sock = new QSocket( this );
// if( wasError)
// stocktickerTicker->setText("Checking connection");
// if(Sock->state() == QSocket::Idle) {
// Sock->connectToHost("finance.yahoo.com", 80);
// connect( Sock, SIGNAL( error(int) ), SLOT(socketError(int)) );
// connect( Sock, SIGNAL( hostFound() ), SLOT(isConnected()) );
// } else {
// qDebug("State is not Idle");
isConnected();
// }
}
diff --git a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
index 8776bff..1189bf5 100644
--- a/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
+++ b/noncore/todayplugins/stockticker/stocktickerlib/stocktickerpluginwidget.h
@@ -29,34 +29,35 @@
#include <sys/types.h>
#include <sys/uio.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
class QTimer;
class StockTickerPluginWidget : public QWidget {
Q_OBJECT
public:
StockTickerPluginWidget( QWidget *parent, const char *name );
~StockTickerPluginWidget();
protected slots:
void doStocks();
void isConnected();
void socketError(int);
void checkConnection();
private:
+ int updateSpeed;
QString symbollist;
bool wasError;
QSocket *Sock;
void timerEvent( QTimerEvent * );
void init();
// void DefProxy(void);
int timerDelay;
};
#endif