How should Puppy look like?

Puppy related raves and general interest that doesn't fit anywhere else
Message
Author
User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

How should Puppy look like?

#1 Post by zigbert »

To the managers of Puppy
I need an advice, but first some bla bla...

I have lately made some use of svg in gtkdialog. It really gives some new possibilities when it comes look'n feel. My initial studie was to upgrade pmount. Now I have done more vector-graphics for the next Pmusic. It really start looking like something else than windows95...
Ok, so I wanted to fullfill this, and started the work on a unique gtk-theme. - Not only for the bloat, but because Pmusic (with gtkdialog) takes advantage of a clearer gui. ie.
  • The <table> headers are not clickable, so I have removed the hightlightning.
  • A splash-box without jwm-border, needs a different background color than its parent.
  • Important text can be larger (another color) than ie the statusbar.
  • Widgets belonging together (search-field and sourcelist) can be unified by outfit.
  • ...
Image

I don't see this purely as bloat (we are talking about 10kb with SVGs and gtk-theme), but as a way to make the gui more intuitive for the user. But it arise a fundamental question?

One of the main goals for Puppy 4 was to use gtk2 - only. This would give an unified look of all programs in Puppy, and this fits my mind perfectly.
On the other side, the apps are evolving, and like Pmusic - evolving gives complexity. Nowadays we see that bigger apps (Chrome, Ardour, Spotify, LibreOffice, ...) uses their own api/theming.

I wonder how you look at this. Should svg/theming be kept to a minimum to stick to a unified look, or...?


Sigmund

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#2 Post by 01micko »

My opinion FWIW..

With Pmusic being an "artist" type app and you being an artist I think you should take artistic license, in other words, do what you can :) . Similar for Pburn.

I guess with core apps they should be a little on the conservative side, perhaps detecting the colours in the default gtk theme and adjusting the svg code to suit? [not sure of the possibilities there].

Svg is wonderful and Barry knows it too, his Eve work took him along that path. I have only scratched the surface myself but it also appears to have great support for all fonts too, a bonus. I did delve into writing a splash app in C but my abilities were short of my ambitions at the time.

I look forward to your future using svg in gtkdialog and hope it will pave the way for such comments as "it looks too much like windows 7" .. :lol:

Cheers
Puppy Linux Blog - contact me for access

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#3 Post by Flash »

The color looks good except white or light-colored characters on a dark background are not as easy to read as dark characters on a light background. It's not just me; the readability was measured in laboratories by tall serious people wearing long white coats. :lol:

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#4 Post by zigbert »

Flash wrote:white or light-colored characters on a dark background are not as easy to read as dark characters on a light background
You might be right about that better paid people have found the answer. But for me, living in a country where it is dark half the year - even in the middle of the day, the contrast is so damn huge, I wear sun-glasses when looking at a fresh installed Australian distro. :)


Sigmund

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#5 Post by zigbert »

Let's clear up a few things.
It is possible to adjust the running gtk-theme. - But with limitations. You can ie set some specific text to be bold, have fancy radiobuttons as in Pburn...

Here you can see the Startdust theme in combination with a mini-Pmusic-gtk-theme and how it is looking with the new complete theme.
The header is plain svg, and the text-color is set in the themerc file.
Image

The point of using a global theme is still to have full control.
As seen here, the Stardust theme wants the <table> header to be visible (the blue one), while Pmusic actually don't want it to be shown.
Image

More examples
- splitting areas for user interaction (green) and passive informative fields.
- unimportant information (albumart source - here; not found) gets attention because the gtk-theme either miss complete set of settings or the theme-creator have another idea.
...And isn't it lovely with a crystal clear 400x400px svg logo. Or do you think it is just to much in a system like Puppy?
Image

Both these themes will available, but when I should decide which one should be the default one, I really couldn't make up my mind.... What is the logical Puppy-choice. Thanks to Mick and Flash for their opinions.

The tracks in the playlist mirrors what a metal-head is listening to the weeks before he get a free ticket to the psychiatric ward.


Sigmund

User avatar
technosaurus
Posts: 4853
Joined: Mon 19 May 2008, 01:24
Location: Blue Springs, MO
Contact:

#6 Post by technosaurus »

The greatest part about using svg base themes, is the near infinite reconfigurability options... if you set it up right from the beginning. What I mean is that you may create a really nice theme that is based on hard-coded SVG, but then even small modifications require a the user try and read code and hope he can modify the right thing or a talented developer wasting a lot of time trying to cleverly grok the proper details out of and back into several different files. On the other hand if you set it up from the beginning to use a config file of sorts to auto-generate the entire theme, then it would actually save a lot of code in the long run and make it more easily customizable.
(for instance you could have an option for a background image in any format supported by gtk, fill options for any sub-shape, text size/style color, opacity....the list goes on and on and could even default to a system default)

P.S. If you would like to standardize various system defaults (variable names, not necessarily values) I would be happy work to try and incorporate them into jwm_tools (I already have some code that pulls some of these from the gtkrc, but haven't used it because the defaults looked kinda bad with jwm)
Check out my [url=https://github.com/technosaurus]github repositories[/url]. I may eventually get around to updating my [url=http://bashismal.blogspot.com]blogspot[/url].

User avatar
DaveS
Posts: 3685
Joined: Thu 09 Oct 2008, 16:01
Location: UK

#7 Post by DaveS »

FWIW, not much in to Conservatism myself. Everything needs to move forward.
Spup Frugal HD and USB
Root forever!

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#8 Post by zigbert »

General look and feel is always a matter of taste, so I agree we should stay a bit greyish to avoid someone turn the back on us.

I made some changes to pmount and made every color adjustable in $HOME/.pmountrc (thank you technosaurus). For Pmusic it is a bit different, because the svgs are built around the logo. And since its shape and colors are static, I don't find it logical that the artwork should be themable.

Image

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#9 Post by zigbert »

technosaurus wrote:On the other hand if you set it up from the beginning to use a config file of sorts to auto-generate the entire theme, then it would actually save a lot of code in the long run and make it more easily customizable.
For Pmusic some svg-settings are set with the graphical theme - /usr/local/pmusic/themes/$THEME/themerc. Else, I don't see the reason for user interaction. But all svg coding is placed together in /usr/local/pmusic/func_svg.
technosaurus wrote:P.S. If you would like to standardize various system defaults (variable names, not necessarily values) I would be happy work to try and incorporate them into jwm_tools (I already have some code that pulls some of these from the gtkrc, but haven't used it because the defaults looked kinda bad with jwm)
What do you mean by standardize various system defaults. What would be cool if we had a command that returned basic fg/bg color from the active gtk-theme. It would be no need of unique theming of many SVGs.


Sigmund

User avatar
technosaurus
Posts: 4853
Joined: Mon 19 May 2008, 01:24
Location: Blue Springs, MO
Contact:

#10 Post by technosaurus »

@zigbert: this is what I had come up with, it has been in jwm_tools for a while but haven't had a chance to use it yet

Code: Select all

#!/bin/sh
. /root/.jwm/jwm_colors
while read LINE ; do #go through trayfile line by line
   case $LINE in
      include*/usr/share/themes*)GTKRC=${LINE#include };GTKRC=${GTKRC//\"/};break;;
   esac
done < ${HOME}/.gtkrc-2.0

while read LINE || [ "$LINE" ]; do #go through gtkrc file line by line
   case $LINE in
      *bg?NORMAL*)MENU_BG=${LINE##* };;
      *bg?SELECTED*)ACTIVE_BG=${LINE##* };;
      *fg?NORMAL*)FOREGROUND=${LINE##* };;
      *bg?ACTIVE*)PAGER_BG=${LINE##* };;
      *fg?SELECTED*)FG_SELECTED=${LINE##* };;
   esac
done < $GTKRC

 #save them...
echo '#This is written to by '$0'
MENU_BG='${MENU_BG}'
ACTIVE_BG='${ACTIVE_BG}'
FOREGROUND='${FOREGROUND}'
PAGER_BG='${PAGER_BG}'
FG_SELECTED='${FG_SELECTED} > ${HOME}/.jwm/jwm_colors
The user interaction I was hinting at would be the ability for the user to change parts of the theme so they match better with their color schemes ... an orange triangle on the play button vs. green for instance... the default could even be to check if the user had a specific variable(s) for set for their color palette, and use that or fall back to standard green. I'm not sure exactly how those would be set up, but I am reminded of AIcons for some reason. (AIcons was a collection of xbm/xpm images that was set up using an intentionally limited color pallet)

In jwm_tools everything can be set using a simple shell variable in $HOME/.jwm/JWMRC ... it would be nice if gtk programs could do something similar, but I would need to learn a few more things about gtkrc files in order to auto-generate them from user defined variables, possibly by mapping similar configuration variables to similar configs (like menu background and fonts for jwm matching up with menus in gtk, or using the default font for the next higher level or global default if a specific one is not set ... or something like that) It shouldn't be difficult to generate and dump a custom gtkrc to disk (including some custom SVGs) ... I'd just need a couple of gtkrc files with some comments on what may need to be changed - I just get bogged down and lose focus/interest when it comes to creating the gui tools, so it would likely be a CLI interface that is easy to interface with gtkdialog.
Attachments
JWMRC.gz
example $HOME/.jwm/JWMRC file
(2.63 KiB) Downloaded 702 times
Check out my [url=https://github.com/technosaurus]github repositories[/url]. I may eventually get around to updating my [url=http://bashismal.blogspot.com]blogspot[/url].

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#11 Post by zigbert »

technosaurus
Your idea is ok, but my experience with gtk-themes is that they are not as straightforward as we are used to in Puppy. We must allow users to install external gtk-themes found on the web, and your detection-code would fail in many cases. Look at the Nad4 gtk-theme for Pmusic, and you will find several 'fg [Normal]' set for unique widgets or classes. - And they are not having a specific order. If the detected color really matched is pure luck (well not quite - it would work for simple gtk-themes, like those we are used to in Puppy). When I worked on Puppy Stardust, my assumption was that all themes had a 'default' style setting, but no go. - the diversity is huge.

Your example of changing the color of the triangle is also nice, but I personally think we should stay away from dedicated logos (as for Pmusic). For general icons this would be great.


Sigmund

User avatar
technosaurus
Posts: 4853
Joined: Mon 19 May 2008, 01:24
Location: Blue Springs, MO
Contact:

#12 Post by technosaurus »

zigbert wrote:technosaurus
Your idea is ok, but my experience with gtk-themes is that they are not as straightforward as we are used to in Puppy. We must allow users to install external gtk-themes found on the web, and your detection-code would fail in many cases. Look at the Nad4 gtk-theme for Pmusic, and you will find several 'fg [Normal]' set for unique widgets or classes. - And they are not having a specific order. If the detected color really matched is pure luck (well not quite - it would work for simple gtk-themes, like those we are used to in Puppy). When I worked on Puppy Stardust, my assumption was that all themes had a 'default' style setting, but no go. - the diversity is huge.
you are correct about the possibility of having no default, which was the reason why I removed the "default" check which was overly complex anyways - my assumption was that theme makers would not make drastic style transitions from one widget to the next or it really wouldn't be much of a "theme"... I figured it would be fine to just use the last occurrence as long as the theme wasn't intentionally set up to distract the user from the content.
Your example of changing the color of the triangle is also nice, but I personally think we should stay away from dedicated logos (as for Pmusic). For general icons this would be great.
Your original points just convinced me (whether or not that was the intention) that it would give puppy uniquely unified look if we could sync the style of icons in the applications and the system, but do it without having to include giant custom icon sets. Doing this with SVG while using theme-able variables could unify the whole system. It would be up to individual developers whether or not to use the system settings for things like: {FG,BG}_FillColor_{Solid,Primary,Secondary} {FG,BG}_Font_{Name,Color,...} and so on. It could start off as basic as only the primary "default"s as in Puppy or grow to have enough variables for every gtk widget type such that we could auto-regenerate the full gtkrc file (imagine a desktop that could even automagically morph with your preferences or your mood)
Check out my [url=https://github.com/technosaurus]github repositories[/url]. I may eventually get around to updating my [url=http://bashismal.blogspot.com]blogspot[/url].

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#13 Post by zigbert »

technosaurus wrote:Your original points just convinced me (whether or not that was the intention) that it would give puppy uniquely unified look if we could sync the style of icons in the applications and the system, but do it without having to include giant custom icon sets. Doing this with SVG while using theme-able variables could unify the whole system. It would be up to individual developers whether or not to use the system settings for things like: {FG,BG}_FillColor_{Solid,Primary,Secondary} {FG,BG}_Font_{Name,Color,...} and so on. It could start off as basic as only the primary "default"s as in Puppy or grow to have enough variables for every gtk widget type such that we could auto-regenerate the full gtkrc file (imagine a desktop that could even automagically morph with your preferences or your mood)
Let's get going :D

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#14 Post by nooby »

For some the look of a Linux distro is a very important thing.
I both agree and disagree. To me function is my fave.
But sure looks are very important generally.

I guess it is my poor grasp of English that even bark loud at the title.

How should Puppy look like?

Does it change meaning if one make that look like this suggestion?

What should Puppy look like?

My gut feeling is that asking how are after one have decided on what looks that one prefer, that which one decide upon, after ask what.

A bit like "If - Then" What look then How to accomplish it.

No big deal just my gut feeling I can be wrong. I'm known to be confused.
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
miriam
Posts: 373
Joined: Wed 06 Dec 2006, 23:46
Location: Queensland, Australia
Contact:

#15 Post by miriam »

Just a word of caution: there is often a temptation to make things look uniform because people think it looks neat or pretty. I am an artist and understand how much of a temptation that can be, but I'm also a computer user and programmer who is very concerned with usability and psychology.

The look of a computer's interface is not just there for glamour. That is only a small aspect of it. The practical purpose is to enhance the use of the computer. Uniform shapes and colors can actually make it harder to use a GUI because we need difference in color, size, angle, and shape to differentiate between things.

If you look at a screen filled with 100 icons that all have a matching color theme, and very similar shapes and sizes then it can take a long time to find the icon you want, it's even quite likely you'll miss it entirely -- it will be "hiding in plain sight". In that situation a non-graphical text list is actually superior to a graphical interface. Not good. We've all seen examples of icon themes that fall into this trap. Macintosh interfaces are often an example of pretty interfaces that focus on looking cool, but which lose out on usability as a result.

On the other hand if the size, color, shape, and angles of the icons differ widely our wonderful pattern-matching visual system can find one item out of a hundred in a split second.

But it is not enough to have simply distinctive shapes, sizes, colors, and angles. The icons work best if they have an intuitive meaning -- clarity is not enough.

There has been some movement towards using smooth, photographic-looking icons. They do look pretty, but in my opinion I think this is a mistake. There is a lot to be said for the crispness and clarity of cartoon-style images. They condense a lot of meaning into a simplified graphic. There are very good psychological reasons why we draw things with lines. Even though the real world has very few lines, our eyes see much of it as if it has lines. The retinas of our eyes have special pattern-detectors that look for edges and they fire for lines too. We should capitalise on that. Smooth, blurry icons just don't trigger those detectors the same way.

SVG icons are wonderful for their ability to scale, fitting nicely with Puppy's aim for small size because we don't need lots of different sized icons. I'm just starting to delve into SVG myself, but I'd wondered if it was possible to define colors for a theme that could then be altered inside the icons -- after all SVG graphics are just text. That would mean we could use the same set of SVG icons for dark themed desktops as for light-themed desktops by simply rewriting some of the colors inside the icons.

Some thought would have to go into that though, of course. For instance you might think to swap black and white in an image to maintain contrast if on a black background or a white background, but if the image was of a pair of eyes that would just look silly.

Anyway... just my two cents. :)
[color=blue]A life! Cool! Where can I download one of those from?[/color]

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#16 Post by 01micko »

Ok, interesting topic.. look can add function and sex appeal, I guess the balance needs to be correct.

-

I have used zigbert's svg ideas to go global with svg gtk theming.. not too intrusive though (and not too professional either, but it's a start).

I have utilised the $HOME/.gtkrc.mine file which is usually included if existing in Puppy's gtkrc by default and made a simple little engine to add svg themes to existing gtk themes. The best way for me to explain this is by posting the code, in pet form (just untar if you don't want to install).

I have taken a very simple approach, a rip off of zigbert's work actually . I'm not an artist , zigbert is, so why would I try to design such!

Anyway, here's the pet and some pics.

EDIT: svg background adjusts to screen size
Attachments
gtk_themes_extra-0.2.pet
experimental
(1.94 KiB) Downloaded 342 times
country.png
(27.15 KiB) Downloaded 621 times
pupmd5new.png
(23.45 KiB) Downloaded 667 times
Last edited by 01micko on Sun 13 May 2012, 20:58, edited 1 time in total.
Puppy Linux Blog - contact me for access

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#17 Post by Lobster »

Important and useful debate.
I particularly found Miriams points useful . . .
Form follows function
If the form detracts or interferes with the
function, it is a bug.

If you can not find or see the components of the greatest
program ever created, or if it slows you down because it is unclear.
Then the program is flawed, slow or buggy.

The program is a whole.

Thinking of the design in this way helps programmers
understand that end users and their needs and responses
are very useful feedback.

Any program should look 'obvious'.
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
zigbert
Posts: 6621
Joined: Wed 29 Mar 2006, 18:13
Location: Valåmoen, Norway
Contact:

#18 Post by zigbert »

Mick
I find your glowing gtk-extra to be in the very best Puppy tradition - of giving Puppy the most toyish look possible :lol: I can't help it, but the taste of design is sure not equal for all humans.

I made another approach, and added a (not distracting) glow as a part of the Stardust gtk-theme.

Image

If we could settle on a couple of themes, we could rebuild them with svg. The user could then pick fg/bg from a color-chooser (maybe only fg color). That would be very cool. I suggest Flat-grey-rounded and Stardust since they have survived many releases and are totally different but still similar built. Both are extremely small, good looking, and easy to define alternative fg/bg

Back to the technical part, there is a speed-issue by using a svg as background image. To avoid tiling, the svg has to be huge and that renders slow even on my new machine. But to be honest, - there must be a way to set bg-image NOT as tile. WHERE IS THE SETTING?


Sigmund
Attachments
Stardust_gradient.tar.gz
(10.06 KiB) Downloaded 348 times

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#19 Post by 01micko »

zigbert wrote:- of giving Puppy the most toyish look possible :lol:
:lol: I'm no artist! (and it shows :oops: )
- there must be a way to set bg-image NOT as tile. WHERE IS THE SETTING?
Yes, did give it some thought, maybe based on screen size? But it takes a performance hit at hi-res however the image generates once only. Edited attachment above.
Puppy Linux Blog - contact me for access

User avatar
Argolance
Posts: 3767
Joined: Sun 06 Jan 2008, 22:57
Location: PORT-BRILLET (Mayenne - France)
Contact:

#20 Post by Argolance »

Hello,
I discover this thread by chance... and see (:? :D) that pmount has already been re-looked by zigbert, exactly as I tried to do it on my side for the next release of Toutou LINUX! I thought indeed it was a pity not to see occupied space of every peripheral directly here and then to be constrained to run partview. So it is no use anymore to make freememapplet run partview while clicking on: better is the script to let user resize his personal storage file...

Cordialement.
Attachments
Pmount_2.jpg
(29.49 KiB) Downloaded 421 times
Pmount.jpg
(25.11 KiB) Downloaded 477 times

Post Reply