Wednesday, April 25, 2007

mmmmm Themes

Thanks to the work of Darius Brewka and Georg Steiger AROS recently got support for some nice themed windows =D

A few people have been bevering away on nice replacement themes, and ive even had the bug myself ;p

Heres a quick preview of its progress ..

comming along nicely I think though theres still a lot of fine tunning to be done =)

Theres also some of my more recent wanderer changes visible, and work is comming along nicely on that front also (albeit slowly with this theme stuff)

Tuesday, April 10, 2007

Possible changes to come (my "plans" for wanderer) ...

Ive been thinking about what i would like to do next in wanderer and decided the following things are needing some time ..

Rework some existing classes and provide new headers/code ..

Wanderer :

# Create Wanderer\Classes\FileArea.c/.h/_mcc.h based on generic volume/directory code from the current iconlist class
# Rename Wanderer\iconwindowcontents.c/.h to Wanderer\Classes\IconWindowFileArea.c/.h and use methods/attributes defined in FileArea_mcc.h
# Rename Wanderer\iconwindowbackfill.c/.h to Wanderer\Classes\IconWindowImageBackfill.c/.h
# Create Wanderer\Classes\IconWindowToolbarExtension.c/.h using the current code for the toolbar in wanderer.c
# Create Wanderer\Classes\FileListArea.c/.h based on Georges example list view mode code


# Rename MUIMaster\Classes\IconList.c/.h to Wanderer\Classes\FileIconArea.c/.h using the methods/attributes defined in FileArea_mcc.h
# Rename MUIMaster\Classes\IconListview.c/.h to Wanderer\Classes\FileAreaView.c/.h using the methods/attributes defined in FileArea_mcc.h

And a bunch of TODOs for things ive already done ....

# (NEW) Make IconList derived classes support buffered display to remove flickering ..
# Import "View all files" changes ..
# Import IconLabel state changes ..
# Import IconLabel wrapped display changes ..
# Import Keyboard navigation changes ..
# Import Extended "New.." changes ..
# Import Fixed Icon Position changes ..
# Import Inline Name Editing changes ..

The desired end result is to have the following files :-


* Provides IconWindowFileArea class
# Automatically loads files matching "IconWindowFileArea#?.wcc"
# Automatically loads FileAreaView.wui
* Provides an "IconWindowVolume#?" and "IconWindowDirectory#?" class for each class registered with FileAreaView.wcc
* Automatically loads files matching "File#?Area.wcc"
* Provides VolumeArea and DirectoryArea classes
* Provides VolumeListArea and DirectoryListArea classes
* Provides VolumeIconArea and DirectoryIconArea classes

Wanderer Backgrounds ...

Ive just commited the fruits of the last 3 weeks work... replacing how wanderer handles backgrounds and support for further background types.

Took a lot of work to get it going correctly:

# Reworked wanderers prefs file format so global data is stored in one chunk, while background image data gets a chunk per background type (only "Workbench" and "Drawer types get used atm ..) - and each data chunk gets a header chunk to define it =D
# Changed the prefs app so that it uses the new format, aswell as the main wanderer app.
# Implemented a small plugin like system for adding backfill modules - and made the support code fallback to using Zune with more sane settings ..
# wrote a backfill module to handle custom image rendering including fixed place tiling/ floating place tiling/ scaled image rendering aswell as using offsets for tiles/patterns.
# Tidied up the existing iconlist class(es) to work better for different background rendering needs.

Ive also implemented preliminary support for internal handling of Workbench Backdrop mode so we no longer need a hacky (eww) extra attribute in zune (MUIA_Window_WandererBackdrop) but just now it seems to be having stability issues ..

Happy Wandering =D