------------------------------------------------
Copyright 2003 Matthew Kay (matthew_kay@ml1.net)
Licensed Under GPL
------------------------------------------------
http://www.unrandom.com/Projects/slickbar.php
------------------------------------------------
--------------------------------------------
NEW VERSION 0.9.2!
This version includes a few bug fixes, and some small feature improvements. I haven't actively worked on SlickBar for about 2 months, so I'm "getting back into it" with a small updated release in the 0.9 series. (On that note, anyone who has tried to email me and hasn't gotten a response, it is because of my "hiatus" in SlickBar development -- just drop me another message). Don't worry, 1.x is still coming, it's just a matter of how/when/in what form.
Anyway, this new version makes the config menu more obvious with a tooltip (middle-click on the K-Button), improves on the systray auto-resize and moving, and fixes an XMMSPanel crash that was caused by streaming media.
Also: for everyone who's been asking for it forever, KICKER AUTO-HIDING IS HERE! Simply go into the configurator and turn the "Hide Kicker" option to On. Then, SlickBar will hide the main kicker panel when started and re-show it when closed. Note that this does NOT disable dcop access to kicker functions!
--------------------------------------------
SlickBar is intended to go a little farther than just being a SuperKaramba "theme". It consists of individual "Panel"s, which can be placed independently of one another using the XML configuration file. As of v0.9, SlickBar now includes a config GUI so you no longer have to edit the config file by hand. The config GUI includes a preview display (with drag and drop panels), and the ability to apply changes without restarting SuperKaramba! To take a look at some of the features lined up for future versions, see the TODO section on the slickbar website: http://www.unrandom.com/Projects/slickbar.php#todo.
Features
--------
- each Panel can be placed independently of the others (the last screenshot has an example of a configuration different than the default)
- the NoatunPanel and XMMSPanel allow you to: go back/fwd, stop, play/pause, open/close the playlist, and do a song seek using the progress bar.
- The QuickLaunchPanel creates an auto-sized panel using KDE links in the QuickLaunch directory, and finds the *right* icons using PyKDE!
- The TaskPanel can be set to any size, and each task button sizes itself to fit inside the bar. As well, it automatically finds the appropriate icon for each task (and is pretty successful) as well as grouping related tasks into single buttons (see screenshot #2).
- The PagerPanel automatically detects the number of desktops you are using and sizes itself to fit!
- Fonts and colours are customizable all from one configuration file.
Known Bugs
----------
I am aware of the following bugs, and will work to fix them soon, don't worry

1. If the title of an application changes, the TaskPanel will not update it until another task-related change occurs.
2. The Config GUI preview will not update when you change the size of a panel -- you must apply your changes, close the GUI, and start it again for width-related changes to affect the panels in the preview
4. There are no icons for grouped tasks if you don't have the addMenuTaskItem superkaramba patch installed. This isn't really a bug, but an FIY

Screenshots
-----------
1. Shows the default configuration with the config GUI alongside
2. Shows use of grouped tasks
3. Shows another configuration I threw together, also demonstrates having a different number of desktops. As well, it shows the configuration panel open.
I welcome people to try their hand at writing SlickBar Panels, however I would suggest waiting for version 1.0 to be released. Version 1.0 will be (or is, if you consider the unstable version on my computer) based on Skoot, and therefore has a number of API changes. There will be complete SlickBar API documentation for version 1.0, along with a useful tutorial.
If you create a nice Panel that could be useful to lots of people, I'd be glad to distribute it with SlickBar (with your permission, of course).
Requirements
------------
SlickBar requires SuperKaramba 0.33, the Python XML libraries, and Tkinter (Tcl/Tk) for the config GUI. Most people probably have the python libs already, most python installations should have them.
The XMMSPanel requires the PyXMMS module. It is available here: http://www.via.ecp.fr/~flo/. Don't worry if you don't have it and you intend to use the NoatunPanel.
NoatunPanel (but not NoatunPanelSlow) requires the PyKDE module. You can get it here: http://www.riverbankcomputing.co.uk/pykde/. Alternatively, you can use NoatunPanelSlow, but the "Slow" means REALLY REALLY SLOW. You have been warned.
QuickLaunchPanel, TaskPanel, and PagerPanel also require PyKDE.
TODO
----
The TODO is now much larger and more extensive. It has moved to the SlickBar website, here:
http://www.unrandom.com/Projects/slickbar.php#todo
Ratings & Comments
281 Comments
How I have to do to run the configuration GUI? Sorry but I' m new!!! Fede
I'm unable to run the configurator as well. I middle click on the big K, and a button appears saying "configure slickbar', but clicking that only makes the button go away. Nothing else happens. What do I do?
the screenshots look great - unfortunatelly it crashes on opening on my box
I really love the work und i am going to use it by default. But what about going on developing it? Is there anyone who is able to? Please!!!;-)
I am on debian and have installed the debian packages python-xmms and python-kde, yet slickbar still does not detect PyKDE. Any ideas?
concerning crash problem, i know how to fix. had the same problem of karamba crashing upon opening slickbar. all you got to do is remove the system tray from your taskbar. rightclick taskbar --> remove --> applet --> system tray should work then. but im still having problems to configure slickbar. i cant open the config gui. when middleclicking the kde button, the button turns 90° right, and on top panel a "configure slickbar" button appears. when clicking the configure button it just disappears, nothing more.
crash superkaramba and KDE when it's loaded. (i've got superkaramba 0.36, PyKDE-3.11.1-1mdk10.i586.rpm and the devel package on a Mandrake 10.1 installed) i've try many things but... well, i don't see. what can i do ?
crashes superkaramba 0.36 just opening the theme.
there is only 3 sort of panels wiches i can add, is it normal ?
When I open slickbar only the clock is displayed.What should I do to make it look like the screenshot?(I have PyKDE,PyQt installed.).Also, how do you open the GUI config tool?
to open the gui menu just double click with the center mouse button on the kde logo in the slickbar.
I am having the same problem, I can only see the clock when I open Slickbar, nothing else. There is no KDE logo I could click on, and I don't have a middle mouse button anyway. :( What can I do to see this GUI??
I also have the same problem.. And I can't ever see the logo.. What should I do??
Lol.. my mistake.. Before this I put it on fat32 partition.. now I put it on root and it's work.. Nice :)
I tried to get slickbar working, but have some problems with it. The non-python part works, I see the date and clock. But the rest is not working. The configure option in the context-menu is greyed out. Any idea what I have to configure or update? (I'm on Suse9.2, KDE3.3.2)
I got the same preblems (suse 9.1 KDE 3.3.2)
Hmm, try installing the python-xml RPM. Then go to the folder where you unpacked slickbar and call 'python config.py'. That'll at least give you the control options for the slickbar.
is pykde 3.11.3 working with kde3.3.1 ? thanks in advanced :)
Hi guys, i installed slickbar, but when i start slickbar my principal panel going crazy, the slickbar start....but when i open or close a panel, superkaramba launch an error saying that superkaramba failed and produce a siganl 11 (SIGSEGV), and died....thx guys :D
I got exactly the same problem
This theme is the #1 reason I use SuperKaramba, I hope this crashing can get sorted out. Slickbar 0.9.2 is giving this problem with 0.33: X Error: BadWindow (invalid Window parameter) 3 Major opcode: 20 Minor opcode: 0 Resource id: 0x7a8def Eventually (after a few hours) this will cause SuperKaramba to crash. Same theme in 0.34 crashes after a few seconds with this: Traceback (most recent call last): File "/home/brian/tmp/superk-themes/slickbar-0.9.2/slickbar.py", line 286, in activeTaskChanged for handler in SlickBar.taskHandlers["activated"]: handler(task) File "/home/brian/tmp/superk-themes/slickbar-0.9.2/SlickBar/Panels/TaskPanel.py", line 217, in taskHandler self.unloadTasks() File "/home/brian/tmp/superk-themes/slickbar-0.9.2/SlickBar/Panels/TaskPanel.py", line 314, in unloadTasks for taskList in self.taskGroupList: taskList[0].remove() File "/home/brian/tmp/superk-themes/slickbar-0.9.2/SlickBar/Panels/TaskPanel.py", line 112, in remove karamba.deleteImage(SlickBar.widget, self.arrowImage) SystemError: error return without exception set KCrash: Application 'superkaramba' crashing... I've downgraded to 0.33. Any ideas?
Im using Fedora Core 2, with KDE 3.2 I have the Dependencies needed for slickbar isntalled However when i run it from shell i get this error: Call to widgetUpdated failed Traceback (most recent call last): File "/home/bilal/slickbar-0.9.2/slickbar.py", line 64, in initWidget logger = Logger() File "/home/bilal/slickbar-0.9.2/slickbar.py", line 32, in __init__ self.logFile = file(karamba.getThemePath(SlickBar.widget) + "slickbar.log", "w") IOError: [Errno 13] Permission denied: '/home/bilal/slickbar-0.9.2/slickbar.log' Exception exceptions.AttributeError: "'NoneType' object has no attribute 'close'" in ignored
oh! ok, I'll do that then!
Ok, I have been using xplastik bar, but want to switch to this slicker. The only think keeping me from it is that when I runt he taskpanel, it just crashes the program, or it will run it and look pretty, but as soona s I click on something, it crashes. I'm running mandrake 10 with all the necessary files installed. What am I doing wrong or is it a bug in the software?