SlickBar Changelog

- Oct 19 2003 - 0.9.1
* SlickBar should now be able to detect when a previously opened config
  GUI has closed abnormally, and will not prevent you from opening
  another GUI in this case.
* The TaskPanel now includes an option to disable task grouping.
* QuickLaunchPanel now uses a home-grown kdesktop file parser because
  PyKDE's was causing some weird bugs in SuperKaramba. (Note that it
  still requires PyKDE for icon discovery)
* SlickBar now includes a mechanism that allows panels to trigger a
  reloading of all the panels. This is a quick-n-dirty, *temporary*
  solution that will allow panels to resize on-the-fly. A much better
  inline resizing solution has already been implemented in the SlickBar
  1.0 development code, but unfortunately it isn't in a state to be
  released yet :(.
* first version of (buggy) auto-resize code implemented in SysTrayPanel.
  This won't work well until superkaramba introduces a way to resize
  system trays.
* The PagerPanel now automatically resizes when the number of virtual
  desktops changes.
* The PagerPanel display routines have been reorganized to make it more
  responsive.
* The TaskBar now uses createTaskIcon() and addMenuTaskItem() to handle
  task icons, thus making them much more accurate (and has also improved
  the general responsiveness of the taskbar). Task icons for grouped tasks
  are only available if you have applied the addMenuTaskItem superkaramba
  patch.
* The TaskBar now provides a visual indication of which window is
  currently in focus. I am not sure I like how it looks at the moment,
  I will think about it more (and hopefully get some feedback from
  users..... hint hint :) ), so it might change.
* SlickBar now handles errors/exceptions in panels' updating routines
  gracefully -- panels that do not have errors are still able to update
  despite other panels having problems.
* SlickBar now handles exceptions in panel display() routines much
  more gracefully (ie, all other panels are still displayed; as well,
  the offending panel is not allowed to update() anymore)
* All output is now saved in a logfile (slickbar.log) for easy access
  (This should help with troubleshooting errors)
* A dialog now pops up to inform you if any of the panels failed to load
  successfully. This should help people who aren't running from a
  terminal and therefore can't see the error messages right away.
* Minor font tweaks due to the new SuperKaramba pixel-based font sizing.
* All code using KWinModule that can instead use KWin now uses Kwin.

- Sep 7 2003 - 0.9
* This is a big set of changes..... here we go!
* CONFIG GUI! The config GUI is now working. I can't guarantee it will
  work perfectly, or that it won't crash, but at least its there! It
  includes a panel preview (with drag and drop panels!), and a help
  sidebar. Plus a nifty flat appearance :). It requires Tkinter (the
  python Tk libraries) to run. Most people have this already.
* The main panel (time/date) fonts can now be configured from slickbar's
  config file (and therefore, also from the gui)
* The TaskPanel now uses the event-driven task API, and is therefore much
  more responsive. However, the code for this is not fully complete, and
  there is at least one (small) bug I know of: if a task's title bar changes,
  TaskPanel will not be updated immediately. Don't worry, I already have a
  fix coming.
* SlickBar now includes a SysTrayPanel! That's right, every basic panel
  (TaskPanel, QuickLaunchPanel, and SysTrayPanel) has been implemented, so
  SlickBar is now a much more useful Kicker replacement!
* Optimizations of MusicPanels so that they don't needlessly cause slickbar
  to redraw (should be a little less CPU-intensive now)
* The QuickLaunchPanel now uses KDE's visual feedback mechanism when
  launching apps (Thanks to Eric Grenier for the patch)
* The TaskPanel no longer crashes on desktops with no tasks (Thanks to Eric
  Grenier for spotting the error. And to Sam Sharpe, for spotting the error
  in parallel :) )
* SlickBar no longer messes with its own positioning on the screen.
  Superkaramaba handles it now, so it remembers where you put it!
* QuickLaunchPanel's init code has been slightly reorganized and a bit of
  a hack has been employed to get it to play nice without crashing stuff
  (Though, I'm not going to guarantee it won't crash something :) )
* The config panel no longer "falls behind" other panels if they redraw
  parts of themselves
* Some code cleanups in slickbar.py (not as much as I want, but its a start)
  as some code has been moved to new functions in the SlickBar module
* Panels now have a destroy() method that is used to remove them from the
  display.
* The config panel now auto-closes when you click on one of the config
  buttons ("Configure SlickBar" or "Edit K-Menu")

- Aug 18 2003 - 0.8.10
* Not a huge set of changes; the next release will be a big one. Most of
  my work lately has been on the (currently unfinished) config GUI.
* More performance enhancements:
  1. The widget is redrawn much less (as SlickBar doesn't update it unless
   the GUI appears to have changed). Unfortunately, if you are running a
   MusicPanel this enhancement won't affect you much, as they constantly
   are updated the display :). However, for me closing XMMS reduces CPU
   load from SlickBar by 7% (whereas before that decrease would not have
   occurred at all).
  2. Even more background image use to improve performance!
* Error messages are now much more detailed and actually attempt to explain
  what the problem could be. No more cryptic "Not a valid panel" messages!
* The auto-resizing bug which could cause the config panel to be cut off
  when expanded has been fixed.

- Jun 22 2003 - v0.8.9
* Huge set of changes here! (Sorry for the delay, if anyone was waiting :) )
* New requirement: SuperKaramba 0.27
* Numerous tweaks for speed, particularly using background images. Imagine
  this: more features, but faster SlickBar! I've got more performance tweaks
  up my sleeve, too.
* Two new panels: TaskPanel (A nice, custom-sizable, task-grouping, buttons-
  sized-to-fit-panel, icon'ed "taskbar" :) ) and the PagerPanel (A rather
  simplistic pager, though it auto-detects number of desktops and sizes itself
  to fit that number instantly!)
* The K-menu now always pops up at a fixed location, instead of at the mouse
  (its a small touch, but it makes things that little bit better).
* Most of the panels have new config options, mainly to allow you to change
  fonts and what-not easily. Check out the config file :)
* Bugfix: somewhere in one of the new SuperKarambas since the last result
  a bug seemed to crop up (for me, at least)-- when songs were at time 00:00,
  the progress bar would be full. Anyway, I fixed it :)

- May 17 2003 - v0.8.1
* Bugfix: The song seek was slightly off in 0.8.0 due to the switch to
  VariablePanel.
* Bugfix: Multiple panels on the same row would have gaps between them
* The Panel Tutorial now includes instructions on how to use the
  update() method (which allows you to perform specific actions each
  time the update interval passes).
* The QuickLaunchPanel has been added. It automatically reads KDE
  desktop links in the QuickLaunch directory to generate the icons, and
  automatically resizes itself to fit the number of icons you select.
  Note that it requires PyKDE.
* SlickBar now automatically resizes itself so that it is not longer than
  it needs to be to fit all the panels in. As well, it will now
  automatically position itself in the upper-left corner of the screen
  unless you specify otherwise (in slickbar-config.xml)

- May 16 2003
* SlickBar now includes a tutorial on panel creation. More to come!

- May 12 2003 - v0.8.0
* SlickBar can now be configured using a pretty simple XML file. Yay!
* I rewrote some of the API. This was done to accommodate the switch to an
  XML config file, and also to make me feel better inside, and also to make
  things more extensible for the future.....
* A new Panel base-class, VariablePanel, was created. This is cool, because
  it provides a simple interface for creating panels of arbitrary widths.
  It also fixes the problem of the K-menu button overlapping panel content
  (eg, you can now press the playlist button if you put a MusicPanel on the
  bottom row).
* XMMSPanel no longer uses the time python module to parse time elapsed.
  It now does so manually -- this (I hope) will fix an import error some
  people were getting due to what I think are buggy python libs. (If not,
  feel free to yell and scream!)
* NoatunPanel now uses PyKDE, and is infinitely faster. If you can't get
  PyKDE working, you can still use the old NoatunPanel, it is called
  NoatunPanelSlow now.

- May 5 2003 - v0.7.1
* OOPS! There appears to have been a problem with MusicPanel buttons
  working properly in 0.7.09. Sorry about that, I hadn't updated slickbar.py
  for that release. Anyway, everything should work now.

- May 4 2003 - v0.7.09
* complete re-write using SuperKaramba. XMMSPanel and NoatunPanel are the
  only working Panels.

- Apr 19 2003 - v0.5
* clicking on the date will now drop-down the calendar (clicking on the
  time still opens the date/time editor)
* the "big K" for the k-menu now has my attempt at an OSX graduated zoom :)

- Apr 12 2003 - v0.4
* added the optional desktop pager. Currently the update interval for this
  is 1000 (1 second), as even though this tends to give a small delay
  between changing desktops and the pager updating itself, repeatedly
  running "dcop" every .5 secs slows down my desktop a bit :) And sorry
  to people using more/less than 5 desktops -- its hardcoded :(

- Apr 11 2003 - v0.3.2
* updated xmms theme so that the equalizer is no longer toggled by the
  playlist toggle button

- Apr 11 2003 - v0.3.1
* OOPS! Minor snafu when I updated some of the images for v0.3

- Apr 11 2003 - v0.3
* added the playlist toggle button to the song display (press it to
  show/hide your playlist)
* music buttons are now only displayed if your music program is open
* tweaked icon appearances -- things look a little crisper now
* icons are now in a separate file, and editable -- slickbar-icons.png
* tweaked time/date text position
* clicking on the date/time region now launches the KDE Date/Time Editor

- Apr 10 2003 - v0.2
* added k-menu support to the "big K"
* added prev/next/stop/playpause buttons to the song display
* switched to using "kfmclient" instead of "konqueror" to launch browser and
  file management.
* added the captain podd font (used for the time display) to the package