Posted: Thu 04 Oct 2007, 02:32 Post subject:
Creating a buttonbar for use in PuppyLinuxSubject description: Buttonbars are good for Removing Desktop Clutter...

Creating a buttonbar (or two) for use in PuppyLinux

I had this idea while updating Puppy v2.10 Professional to as near current as possible, to run on earlier computers I had acquired either for nothing, or for next-to-nothing, as I was engaged in a recycling programme, so to speak.

I had found that the version after - which was 2.11 - was the last that would run on a series of older, yet still very usable, computers.

Version 2.12 and later won't, unfortunately, and that includes some of the IBM Aptiva models, HP Pavilions and a range of other computers built in Taiwan by Lenovo are such. Not all of them; depends entirely on the BIOS and other things internal. In some cases they are Celerons just under the 1 GHz speed, so we aren't talking about antiques...

For a while, I've been looking at removing some of the desktop icons, and replacing them with button bars, similar to, or smaller than the 40 pixel standard pinboard ones. Creating floating button bars is a great way to eliminate desktop clutter.

I got the idea from this cluster of buttons, which was part of 2.10pro...
I experimented with one for the "other" office applications (i.e. not OpenOffice.org), including stand-alone word processor and spreadsheet, and a close look at 2.15 and EZ showed me that the word "Documents" was used there succesfully. So I created one like this...
But the 48 pixel icons were really large and they still looked awkward with text underneath that seemed unable to be resized, even with the icon size dropped to 32 px...

Removing the text altogether created a better look, as we can see here...

and here, finally, we have 24 pixel icons which are starting to look more like it. Small icons without a legend can more easily be done as a single bar, after all.

One has to wonder if human people can use images alone productively; of
course in Windows they have done so for years, so I'm open to suggestions here.

I went on to create a "Shut Down" bar

and a "Control Panel" which seemed to work quite nicely; and these buttons give an indication if they are being pressed. I should mention that items that are not installed just plain don't work; if they are subsequently installed, the links work correctly.

Encouraged by success, I created others...

Then came this, just a "parent" one that can initiate all the "children" created... which can just as easily be picked from a taskbar icon, or a menu call, or even a desktop icon (although getting away from desktop clutter was the object of the exercise).

The concept - for simplicity - has incorporated many of the menu default applications (which the menu - of course - does not display because they are remarked out until installed as dotpups or pupgets); this means that while some buttons may well not work initially (because the applications have not been installed as extras yet), when installed, the associated buttons will work. Obviously this can't be guaranteed in every case, but the standard syntax employed in the scripts makes modification straight forward. Extra icons are provided for some other applications, and in a number of cases there is a choice of different icons... as you can see in a capture below I have created three for AbiWord.

The design has everything for each particular buttonbar in its own directory (icons and script), which can be zipped up and unzipped simply; there is a seperate folder for each string of buttons, with its own icons, including several extras and duplicates...

ALL of these button bars also work successfully in versions 2.02, 2.11, and are forwards-compatible with "later" versions of 2.12, 2.14, 2.15. and 2.16, even though created in v2.11 initially as part of the modernising of v2.10pro

They even work in v 1.09 for Windows98 which I have installed in a number of machines, with very great success. The script file for the shutdown dialogue describes a minor command-line change of syntax needed in version 1.

You can download the basic self-contained directories with both 48x48 pixel icons and 24x24pixel icons, plus associated scripts from herein a zipped format.

Unzip (extract) them to the filesystem root, and they will end up correctly under /usr/local/buttonbars/. As mentioned, all of the button bars are grouped in the one directory for easy installation and removal.

If you use the basic scripts, you will end up with 24x24 icons without text; if you use the scripts ending in "-text" you will have 48pixel icons with a text legend below.

Be warned that if you make your own, and you need to remove text from under an icon, you will cause the script to fail if you leave any of the line's content behind... it seems that a blank instruction causes a hernia

Buttonbars are good for Removing Desktop Clutter...
Compare these desktops... The left one is the worst-case scenario... a 1024x768 pixel desktop (used with small nonitors), with considerable real estate taken up by icons; on the right is the tidied-up version at 1600x1200 resolution with the icons round the edge, with as an option showing the master iconbar.

While nothing whatsoever to do with button bars, I thought I'd mention another customisation. I've discovered it isn't difficult to enable the Print/Screen button (like WhoDo did in 2.15ce) to initiate taking a screen capture - which is also used in several other operating systems, including Windows, but surprisingly in few Linuxes.

All it needs is a single line of code in the /root/.jwmrc file, near the bottom, in the key redefinition section...

<Key key="Print">exec:mtpaint -s</Key>

It doesn't seem to work in Ver 1.09 for Windows, where it locks the keyboard up, totally inoperable, if you try it (needs quitting X to the prompt to fix).

And the capture below is from v1.0.9 for Windows98 running under Grub from within SuSE ...

What about the code? I hear you say...
This is the code for a two-line display with text underneath. It is pretty straightforward to work out how to modify it...

Hi! I'm working on a project called Puppy Linux Portable, for tablet PCs, and I've been thinking about having a button bar at the bottom for easy access to your favorite programs. I have a few suggestions:
What if you make the sub-bars from the home bar disappear after x amount of seconds, so they don't clutter the screen?
I don't know if you can, but the bar having no title and a transparent background would give it a nice clean look, like it was part of the desktop.

Note that JWM allows multiple "trays" (panels), so you can just add at the bottom of jwmrc an include for jwmrc-tray2, then create it with only buttons -- it can be positioned anywhere along the edges of the screen, vertical or horizontal._________________What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

Dougal: does JWM accept quick access buttons again? They were removed on older version of Puppy due to conflicts...

I'm not sure what you mean by "quick access" buttons... it's what is usually called "launchers" -- buttons that you set an icon for and which launch an app -- works ok for me._________________What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

The buttonbar is a nice idea for cleaning up clutter. You might also consider using wbar. Wbar works very well in Puppy and it looks very nice. Check it out here._________________Visit the Puppy Linux Video Tutorials @ http://rhinoweb.us

It's that. I just edit /root/.jwmrc-tray, uncomment the line for the buttons, restart JWM and they are there now!
Why are this feature turn off from so long ago?

I'm not sure really. I know the "show desktop" one was removed because there was a problem with it minimizing the Rox pinboard (which can be solved by ticking the "override WM control of desktop" option in the Rox settings)._________________What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

I've just discovered that this forum does not keep me logged in even though I've checked the box, so after visiting when I got the email, it didn't know I'd been, and sent me no more reminders. Sorry folks, rude of me to appear to ignore your suggestions.

PuppyLinuxGuy wrote:

I don't know if you can, but the bar having no title and a transparent background would give it a nice clean look, like it was part of the desktop.

I agree. While the idea was just a concept, it's growing on me slowly

Dougal wrote:

Note that JWM allows multiple "trays" (panels), so you can just add at the bottom of jwmrc an include for jwmrc-tray2, then create it with only buttons -- it can be positioned anywhere along the edges of the screen, vertical or horizontal.

I couldn't find any reference to this, and the nearest I could find was the ability to add limited Gnome features which I found in another thread.
Might be good to revisit this with your suggestion; can you point me anywhere where I can read about how this is or can be done?

Dougal wrote:

T_Hobbit wrote:

Dougal: does JWM accept quick access buttons again? They were removed on older version of Puppy due to conflicts...

I'm not sure what you mean by "quick access" buttons... it's what is usually called "launchers" -- buttons that you set an icon for and which launch an app -- works ok for me.

These are what in MS Windows is called a "Quick Launch" section of the taskbar. Warren's magnificent IceWM Puppy 2.15 has these by default. I noticed they had been disabled on new releases a while back, and ever since they were turned off by Barry, I've re-enabled them by removing the remarking at the start of those lines in .jwmrc - and had no problems

Rhino wrote:

The buttonbar is a nice idea for cleaning up clutter. You might also consider using wbar. Wbar works very well in Puppy and it looks very nice. Check it out here.

Thanks for the pointer; I will when I get a handful of round tuits _________________Have you noticed editing is always needed for the inevitable typos that weren't there when you hit the "post" button?

I discovered this product by accident during the 24 hours notice they gave all users of closing the server.

It is an installable after-market desktop option that puts the group of most frequently used functions on the entire desktop - ideal for small and/or low resolution screens, and it works extremely well. Seems to be a flash thing.

I also wonder if the Linspire product is open source and adaptable as it stands, and able to be modified.

I'm so taken with it that I've started playing with a sort of look-alike, and then along came your post, so I might try and create something that's the best of a bit of both worlds. That is a bit out of my league, probably

Richard_________________Have you noticed editing is always needed for the inevitable typos that weren't there when you hit the "post" button?

Good work indeed. I don't like Linspire as i don't like what they stand for. I just feel they have mixed up the realm of what linux stands for. Anyway, that's my say. I'm sure there a bunch of good guys!

Back on track......

That linspire mini desktop setup does look good. It would be great if you could find the code.

I think you get what i'm looking at, my belief is that puppy can move away from this windows UI to market itself seperate from it's contendors and this would be a major step forward down that path.

I've written to John Murga (the main man) for advice as to how we could start doing something like this.

Off the top of my head this really shouldn't be too difficult, esp. if we go down the Linpus route. Linpus's add-on is just an applications that stays ontop of the desktop and maximised. All the application is, is a bunch of pretty buttons that open applictions and the ability to change the buttons, by clicking buttons at the top of the screen.

My thoughts is to write an app in either qt4, gtk2 or murgalua(tlk) that does this.
Any help from the community would be great to aid my decision?????

Great work.. that's the kind of ideas i'm looking for.
Stacks are very popular in the new Mac OS X Leapord.
Ubuntu has been looking into them

So here's the list. Alot require Beryl/ Compiz. I think these should be out of the question for obvious reasons.

AWN - (avant-window-navigator) New version needs Compiz, they have a non Compiz version in the pipeline:
https://launchpad.net/awn
http://www.helium.com/items/929312-first-think-apple-first

gDesklet's StarterBar : Doesn't seem to have stacks so no go there.

kiba-dock: This looks like gtk, but with some special libs. http://www.kiba-dock.org/. BUT AGAIN NO STACKS yet.

Gimmie:
http://www.beatniksoftware.com/gimmie/Main_Page
This is most interesting of them all and i think it looks great. It seems to be gnome specific, i'm not sure if that means, just gnome panel or what.

I've done a little more delving. AWN just needs a transparency engine. compiz/beryl are good for this. But this can be acheived using XFCE with that option switched on at compile time. I doubt this is case for our xfce's.

So if puppy is used with XFCE with transparency, we are good to go.

Gimmie, seems to be built using pygtk, which isn't too bad. But doesn't need tranparency. It seems to be a very alternative way of managing the desktop.

To answer your question about wbar. No wbar doesn't have stacking. It's just a simple OS like panel. Nothing more fancy. But it is small!

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum