Description: Lets you display any number of stocks on your KDE 4.1 desktop. Note requires KDE 4.1 ( I tested on Kubuntu + KDE 4.1 )
The stock ticker symbols to use can be looked up through finance.yahoo.com. Composite indexes typically start with ^ (IE: ^DJI, ^IXIC ) I've only tested with DJ & NASDAQ listings but it should work with anything that yahoo supports.
The data source is polled every 60 seconds. This can be changed in the source if needed, though I would not recommend less than 30 seconds as it can take yahoo a bit of time to spit out the data at peek hours.Last changelog:
0.4 Changed text Alignment method a bit Added last update time. 0.3 Some More cleanups German Translation by Phobeus
But i just needed to add some try catch clauses to avoid plasma crashes and as i'm french the decimal point was not good: i made an ugly replace '.' to ',' but it would be good to make it work internationally.
Hello,
thank you for your great plasmoid. I like it at most in the "stock" category.
Here are some minor bugs:
* it can't read Sun's stocks (JAVA) because of a comma in the company title
* when downloading CSV file from yahoo a copy dialog is shown on my desktop
* update period cannot be configured so I can see copy dialog every minute
Do you think you'll have a chance to fix those?
Thanks!
stockoid caused plasma to crash. The plasmoid was working fine until I logged out and logged back in.
Using openSUSE 11.0 with the KDE4:Factory stockoid is packaged as plasmoid-stockoid-0.4-2.36
openSUSE bug report: https://bugzilla.novell.com/show_bug.cgi?id=427112
Debug info:
Application: Plasma Workspace (plasma), signal SIGSEGV
[?1034h[Thread debugging using libthread_db enabled]
[New Thread 0xb56e46d0 (LWP 4691)]
[New Thread 0xb38b9b90 (LWP 4692)]
[KCrash handler]
#6 QGraphicsLinearLayout::setSpacing (this=0x15, spacing=17.066666666666666)
at graphicsview/qgraphicslinearlayout.h:115
#7 0xb3d43498 in ?? () from /usr/lib/kde4/plasma_applet_notes.so
#8 0xb3d43540 in ?? () from /usr/lib/kde4/plasma_applet_notes.so
#9 0xb7f3ab35 in Plasma::Applet::flushPendingConstraintsEvents (
this=0x8160d80)
at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/applet.cpp:850
#10 0xb7f3b176 in Plasma::Applet::timerEvent (this=0x8160d80, event=0xbfd9ebf0)
at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/applet.cpp:1484
#11 0xb6b4ab9f in QObject::event (this=0x8160d80, e=0xbfd9ebf0)
at kernel/qobject.cpp:1105
#12 0xb647cb07 in QGraphicsWidget::event (this=0x8160d80, event=0xbfd9ebf0)
at graphicsview/qgraphicswidget.cpp:1235
#13 0xb5ebf08c in QApplicationPrivate::notify_helper (this=0x8068c98,
receiver=0x8160d80, e=0xbfd9ebf0) at kernel/qapplication.cpp:3800
#14 0xb5ec6eee in QApplication::notify (this=0x805ea80, receiver=0x8160d80,
e=0xbfd9ebf0) at kernel/qapplication.cpp:3392
#15 0xb7a8de0d in KApplication::notify (this=0x805ea80, receiver=0x8160d80,
event=0xbfd9ebf0)
at /usr/src/debug/kdelibs-4.1.1/kdeui/kernel/kapplication.cpp:311
#16 0xb6b3b4c1 in QCoreApplication::notifyInternal (this=0x805ea80,
receiver=0x8160d80, event=0xbfd9ebf0) at kernel/qcoreapplication.cpp:591
#17 0xb6b681b6 in QTimerInfoList::activateTimers (this=0x80698c4)
at kernel/qcoreapplication.h:215
#18 0xb6b688bb in QEventDispatcherUNIX::processEvents (this=0x80680a8, flags=
{i = -1076237032}) at kernel/qeventdispatcher_unix.cpp:913
#19 0xb5f57d22 in QEventDispatcherX11::processEvents (this=0x80680a8, flags=
{i = -1076236584}) at kernel/qeventdispatcher_x11.cpp:154
#20 0xb6b39b9a in QEventLoop::processEvents (this=0xbfd9ef54, flags=
{i = -1076236520}) at kernel/qeventloop.cpp:149
#21 0xb6b39d5a in QEventLoop::exec (this=0xbfd9ef54, flags={i = -1076236452})
at kernel/qeventloop.cpp:200
#22 0xb7d41d7b in KIO::NetAccess::enter_loop (this=0xbfd9efec)
at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:494
#23 0xb7d42109 in KIO::NetAccess::filecopyInternal (this=0xbfd9efec,
src=@0xbfd9f09c, target=@0xbfd9f004, permissions=-1, flags=
{i = -1076236264}, window=0x0, move=false)
at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:316
#24 0xb7d43374 in KIO::NetAccess::download (u=@0xbfd9f09c, target=@0xbfd9f0cc,
window=0x0) at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:125
#25 0xb3dc5e4a in PlasmaStockoid::UpdateStockData ()
from /usr/lib/kde4/plasma_applet_stockoid.so
#26 0xb3dc643a in PlasmaStockoid::init ()
from /usr/lib/kde4/plasma_applet_stockoid.so
#27 0xb7f62f6f in Plasma::Corona::loadLayout (this=0x80e4940,
configName=@0xbfd9f348)
at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/corona.cpp:293
#28 0xb7f63311 in Plasma::Corona::initializeLayout (this=0x80e4940,
configName=@0xbfd9f348)
at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/corona.cpp:239
#29 0xb8057f89 in PlasmaApp::corona (this=0x805ea80)
at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:404
#30 0xb805a2af in PlasmaApp (this=0x805ea80, display=0x8057bc8,
visual=134604992, colormap=31457281)
at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:228
#31 0xb805a3d1 in PlasmaApp::self ()
at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:114
#32 0xb804e0fa in kdemain (argc=1, argv=0xbfd9f5e4)
at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/main.cpp:55
#33 0x08048802 in main (argc=85, argv=0x0)
at /usr/src/debug/kdebase-workspace-4.1.1/build/plasma/plasma/plasma_qgv_dummy.cpp:3
#0 0xffffe430 in __kernel_vsyscall ()
As already mentioned in the openSUSE Bug Report, plasma from KDE 4.2 trunk does not crash with this plasmoid. So I think its either a problem with the plasmoid or a problem wirh plasma in KDE 4.1.1.
Hi, first of all, thanks for this usefull widget.
I have some request although:
* First, even if the stock is negative ( -X%), the line stay green.
*Then, What about having the choice to show or hide some informations, like absolute change of the stock, market capitalization..
*Maybe user can make groups of stocks which are separate by a line or something else.
Thanks, and excuse me for my poor english :/
Works nice, but isn't already a stock plasmoid on the works for KDE 4.2?
It hasn't been updated in 3 months, though: http://websvn.kde.org/trunk/playground/base/plasma/applets/stockwidget/
Anyway, thanks for your work.
Yes, there is but I needed something quick and dirty for 4.1. And this took on a whole, about ~5 hours so far. ( And it's a nice learning platform for the plasmoid stuff )
As a linux user who trades on the TSX, I just have to thank you for thinking of this little gem. I am not yet converted to KDE 4.x yet, but I have already reviewed and saved your code for the day I do. Just seeing your screen shot makes me want to upgrade a.s.a.p.
kudos!
Ratings & Comments
11 Comments
But i just needed to add some try catch clauses to avoid plasma crashes and as i'm french the decimal point was not good: i made an ugly replace '.' to ',' but it would be good to make it work internationally.
[url]http://hello[/url]
Hello, thank you for your great plasmoid. I like it at most in the "stock" category. Here are some minor bugs: * it can't read Sun's stocks (JAVA) because of a comma in the company title * when downloading CSV file from yahoo a copy dialog is shown on my desktop * update period cannot be configured so I can see copy dialog every minute Do you think you'll have a chance to fix those? Thanks!
This has been fixed in an alternative stock plasmoid: http://kde-look.org/content/show.php/Stock+Quote?content=90695
This plasmoid works great. The only issue I have is that everytime it updates, I get a copying dialog appear.
stockoid caused plasma to crash. The plasmoid was working fine until I logged out and logged back in. Using openSUSE 11.0 with the KDE4:Factory stockoid is packaged as plasmoid-stockoid-0.4-2.36 openSUSE bug report: https://bugzilla.novell.com/show_bug.cgi?id=427112 Debug info: Application: Plasma Workspace (plasma), signal SIGSEGV [?1034h[Thread debugging using libthread_db enabled] [New Thread 0xb56e46d0 (LWP 4691)] [New Thread 0xb38b9b90 (LWP 4692)] [KCrash handler] #6 QGraphicsLinearLayout::setSpacing (this=0x15, spacing=17.066666666666666) at graphicsview/qgraphicslinearlayout.h:115 #7 0xb3d43498 in ?? () from /usr/lib/kde4/plasma_applet_notes.so #8 0xb3d43540 in ?? () from /usr/lib/kde4/plasma_applet_notes.so #9 0xb7f3ab35 in Plasma::Applet::flushPendingConstraintsEvents ( this=0x8160d80) at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/applet.cpp:850 #10 0xb7f3b176 in Plasma::Applet::timerEvent (this=0x8160d80, event=0xbfd9ebf0) at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/applet.cpp:1484 #11 0xb6b4ab9f in QObject::event (this=0x8160d80, e=0xbfd9ebf0) at kernel/qobject.cpp:1105 #12 0xb647cb07 in QGraphicsWidget::event (this=0x8160d80, event=0xbfd9ebf0) at graphicsview/qgraphicswidget.cpp:1235 #13 0xb5ebf08c in QApplicationPrivate::notify_helper (this=0x8068c98, receiver=0x8160d80, e=0xbfd9ebf0) at kernel/qapplication.cpp:3800 #14 0xb5ec6eee in QApplication::notify (this=0x805ea80, receiver=0x8160d80, e=0xbfd9ebf0) at kernel/qapplication.cpp:3392 #15 0xb7a8de0d in KApplication::notify (this=0x805ea80, receiver=0x8160d80, event=0xbfd9ebf0) at /usr/src/debug/kdelibs-4.1.1/kdeui/kernel/kapplication.cpp:311 #16 0xb6b3b4c1 in QCoreApplication::notifyInternal (this=0x805ea80, receiver=0x8160d80, event=0xbfd9ebf0) at kernel/qcoreapplication.cpp:591 #17 0xb6b681b6 in QTimerInfoList::activateTimers (this=0x80698c4) at kernel/qcoreapplication.h:215 #18 0xb6b688bb in QEventDispatcherUNIX::processEvents (this=0x80680a8, flags= {i = -1076237032}) at kernel/qeventdispatcher_unix.cpp:913 #19 0xb5f57d22 in QEventDispatcherX11::processEvents (this=0x80680a8, flags= {i = -1076236584}) at kernel/qeventdispatcher_x11.cpp:154 #20 0xb6b39b9a in QEventLoop::processEvents (this=0xbfd9ef54, flags= {i = -1076236520}) at kernel/qeventloop.cpp:149 #21 0xb6b39d5a in QEventLoop::exec (this=0xbfd9ef54, flags={i = -1076236452}) at kernel/qeventloop.cpp:200 #22 0xb7d41d7b in KIO::NetAccess::enter_loop (this=0xbfd9efec) at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:494 #23 0xb7d42109 in KIO::NetAccess::filecopyInternal (this=0xbfd9efec, src=@0xbfd9f09c, target=@0xbfd9f004, permissions=-1, flags= {i = -1076236264}, window=0x0, move=false) at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:316 #24 0xb7d43374 in KIO::NetAccess::download (u=@0xbfd9f09c, target=@0xbfd9f0cc, window=0x0) at /usr/src/debug/kdelibs-4.1.1/kio/kio/netaccess.cpp:125 #25 0xb3dc5e4a in PlasmaStockoid::UpdateStockData () from /usr/lib/kde4/plasma_applet_stockoid.so #26 0xb3dc643a in PlasmaStockoid::init () from /usr/lib/kde4/plasma_applet_stockoid.so #27 0xb7f62f6f in Plasma::Corona::loadLayout (this=0x80e4940, configName=@0xbfd9f348) at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/corona.cpp:293 #28 0xb7f63311 in Plasma::Corona::initializeLayout (this=0x80e4940, configName=@0xbfd9f348) at /usr/src/debug/kdebase-workspace-4.1.1/libs/plasma/corona.cpp:239 #29 0xb8057f89 in PlasmaApp::corona (this=0x805ea80) at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:404 #30 0xb805a2af in PlasmaApp (this=0x805ea80, display=0x8057bc8, visual=134604992, colormap=31457281) at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:228 #31 0xb805a3d1 in PlasmaApp::self () at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/plasmaapp.cpp:114 #32 0xb804e0fa in kdemain (argc=1, argv=0xbfd9f5e4) at /usr/src/debug/kdebase-workspace-4.1.1/plasma/plasma/main.cpp:55 #33 0x08048802 in main (argc=85, argv=0x0) at /usr/src/debug/kdebase-workspace-4.1.1/build/plasma/plasma/plasma_qgv_dummy.cpp:3 #0 0xffffe430 in __kernel_vsyscall ()
As already mentioned in the openSUSE Bug Report, plasma from KDE 4.2 trunk does not crash with this plasmoid. So I think its either a problem with the plasmoid or a problem wirh plasma in KDE 4.1.1.
Hi, first of all, thanks for this usefull widget. I have some request although: * First, even if the stock is negative ( -X%), the line stay green. *Then, What about having the choice to show or hide some informations, like absolute change of the stock, market capitalization.. *Maybe user can make groups of stocks which are separate by a line or something else. Thanks, and excuse me for my poor english :/
Works nice, but isn't already a stock plasmoid on the works for KDE 4.2? It hasn't been updated in 3 months, though: http://websvn.kde.org/trunk/playground/base/plasma/applets/stockwidget/ Anyway, thanks for your work.
Yes, there is but I needed something quick and dirty for 4.1. And this took on a whole, about ~5 hours so far. ( And it's a nice learning platform for the plasmoid stuff )
As a linux user who trades on the TSX, I just have to thank you for thinking of this little gem. I am not yet converted to KDE 4.x yet, but I have already reviewed and saved your code for the day I do. Just seeing your screen shot makes me want to upgrade a.s.a.p. kudos!