Sorry this commit is so big, but I couldn't figure out how to do this
incrementally without breaking things.
I wasn't able to just merge Aldeck's branch, as it was a partial refactor
of Tracker and didn't just rewrite the UI creation code to use layouts,
and the changes for PM (e.g. addon loading, virtual directories) made it
very hard to merge (it doesn't even compile after an automerge) so rather
than spending time on that, I decided it'd be better to recreate his work.
Miscellaneous notes:
- This partially cleans up BPoseView & subclasses and BContainerWindow &
subclasses -- none of the subclasses and child views abuse the parent's
state, child views, or layout now.
- BFilePanel and BDeskWindow are not on layouts, because:
* BFilePanel docs in the Be Book instructed developers that wanted to
modify BFilePanel's layout to just use FindView() and then move the
views around. Obviously making it use layouts will break all BeOS
apps that do this, and there are a lot of them (Pe, WonderBrush are
just two examples.) I've added a note to the TODO list for R2 to create
a layout-compatible API for this.
* Some replicants (Workspaces, for example) rely on manipulating
BDeskWindow's drawing state. This is incompatible with layouts, as
at least in the case of Workspaces, it breaks a layouted version
of BDeskWindow entirely.
- I noticed a lot of #ifdef BEOS_VERSION ... gunk in the code. Tracker
probably didn't build on BeOS just before this commit, and now it
won't for sure, so I intend to go through and clean that out in the
near future.
This commit also fixes:
- enhancement #4996 (make Tracker's navigator use vector icons)
- bug #3039 (resizing OpenWithWindow flashes the blue border)
- bug #3889 (OpenWithWindow redraw errors)
- a regression that was a side effect of "dynamic_cast<BDeskWindow*>(this)"
always returning NULL when run in the constructor. I just added a "bool
isDeskWindow" to BContainerWindow's constructor that is only set to true
by BDeskWindow.
- a copy&paste error in VirtualDirectoryPoseView that was passing "uint32
resizeMode" as "uint32 viewMode".
Thanks to Alexandre for his original branch (it was a very useful
reference), Axel (for some miscellaneous advice & encouragement),
Adrien & Humdinger (for user interface review), and Diver (for user
interface review & testing).
It shows a notification once the "low percentage" is reached (currently
at 15 percent) and once when the battery is about to die. This logic
should probably be revised to be based on remaining time instead. The
notification icons are simple variations of the PowerStatus icon.
Similar to stored queries, files of the virtual directory type behave
like directories -- i.e. they open in a list-mode Tracker window and
show up as an item with submenu in navigation menus. The file itself is
a plain text file in driver settings format. It can have an arbitrary
number of "directory" entries, which specify the paths of (actual)
directories for which the virtual directory provides a merged view. The
view will not show duplicate entries. For non-directory entries the
first one encountered (according to the order the directory paths are
specified in the file) will be shown. A subdirectory entry will again
behave like a virtual directory.
The support in Tracker isn't perfect yet. I'm afraid major refactoring
would be necessary to get it there.
The virtual directory file type uses a differently colored version of
the folder icon. Alternatives welcome.
* Just some examples
* Trying to identify drivers without using
trademarks, etc.
* Feel free to improve if your icon-o-matic
skills are better then mine :P
* GS, KY and PN all share the same flag, because I'm too lazy to add their
specific code of arms, which one wouldn't recognize in the small flag
anyway... At least every country is now listed in CountryFlags.rdef, so
anyone can improve flags and simply replace the rdef data there.
* Added newly generated CountryFlags.rdef
* Added little script to create CountryFlags.rdef to build/scripts/ just in
case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41292 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added around 75 new flags. I didn't go into too much detail (some flags are
insane!), since they are currently only used in 16px size in Locale prefs.
Faster loading and rendering seems more important.
* All flags now have an aspect ratio of 16:14, which may not always be the
official proportions, but looks more consistent.
* All flags got a half-transparent grey frame to prevent some flag colours
bleeding into the background.
* Renamed all flags with their country code as prefix. This will make them
easier to use in scripts.
I'll yet have to update LocaleKit's CountryFlags.rdef, for which I did write
a little script, but I'll wait a few more days to see if I can motivate myself
to include a few more flags...
If anyone wants to have a go, http://en.wikipedia.org/wiki/ISO_3166-1 has
a nice list with all needed info.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41281 a95241bf-73f2-0310-859d-f6bbb57e9c96
The floppy icon is based on zumi's one. changes done :
* I made the floppy a bit thinner, it looked more like a zip100 cartridge
* I added an USB logo (or something that more or less looks like one) on the floppy label
* The logo only shows at big icon sizes since I couldn't get it looking good at small ones.
Feel free to improve.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38407 a95241bf-73f2-0310-859d-f6bbb57e9c96
is a slight difference in BMessage storage, or there is no actual
change at all...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37147 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added HAIKU logo - white on black, which is based on the boot logo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36970 a95241bf-73f2-0310-859d-f6bbb57e9c96
version looks better than the previous version, and the other sizes look good,
too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36852 a95241bf-73f2-0310-859d-f6bbb57e9c96
commit, with the following message:
* Improved speaker icon.
* Replaced speaker bitmap icon with vector version in desklink.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36804 a95241bf-73f2-0310-859d-f6bbb57e9c96
about on the mailing list.
Stephan if you want to adjust the colors of the Touchpad or whatever else, feel
free.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36611 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use the country name instead of the language name to identify each icon
* Cleanup, fixed copyrights, and some more checks to avoid crashing in case of a missing icon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36321 a95241bf-73f2-0310-859d-f6bbb57e9c96
Test french flag took from http://www.bastisoft.de/misc/flags/ (licence is very permissive), converted to HVIF with Icon O Matic.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36314 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Properly register playlist mimetype in MediaPlayer. Double clicking them
will now open them in MediaPlayer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34143 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Color icons which can serve as something like the preferred color palette
for Haiku icons.
* Variation of the hard disk icon which you can use on the drive holding your
code.
* App icon variations for DOS-Box, YAB (or YAB applications?) and old apps.
* A Book icon
* A MemoryStick icon (Sony)
* Two variations for the Image icon
* Two USB connector icons
* A R.I.P. icon :-)
* A variation for the Devices icon which has more contrast and better
coloring
* A variation of the TV icon (I find it too dark)
* Icons for use inside Deskbar and Tracker panels
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32776 a95241bf-73f2-0310-859d-f6bbb57e9c96