I'll start this off by saying "You guys rock!" I love eyecandy and what more unusual eyecandy than console eyecandy.
Let me kick off the wish list with a few things:
1. multiple fonts - we can set window contents/color/size but all have to use the same font
2. screensaver timeouts - allow setting in either the primary settings file or theme itself, this may mean seperate timeout for photo-to-photo spacing too or even a range for randomizing
3. borders - the windows for each resource could also allow bordering, seperate for each side with defined thickness/color/alpha
4. animation - .mng is a good animation format that works well on the framebuffer. a well created file uses very little system resources during playback
Anyone else?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
> 1. multiple fonts - we can set window contents/color/size
> but all have to use the same font
mmh... thought of that... Might already consider it in next release...
> 2. screensaver timeouts - allow setting in either the primary
> settings file or theme itself, this may mean seperate
> timeout for photo-to-photo spacing too or even a range for
> randomizing
Well... Screensaver support was totally rewritten in CVS version.. Now we have modular screensavers, so you can 'roll your own'.. So now settings of a screensaver depend on how you write it and the params you pass it.
> 3. borders - the windows for each resource could also allow
> bordering, seperate for each side with defined
> thickness/color/alpha
As well as nested windows, I think... Windows should be called widgets and we should introduce panes, I think.
> 4. animation - .mng is a good animation format that works
> well on the framebuffer. a well created file uses very little
> system resources during playback
ah... Never thought of that, might give it a shot..
Thanks for the big help and go on contributing.. :)
cheers
paolino
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
5. multi-mode theme - need some elegant way to handle themed window locations. right now everything is by absolute x.y location. when going from one fb size to another, the theme looks different. maybe set location by percentages or include mode checking in the theme file and multiple cases for that. or even multiple theme files; theme6, theme8, theme10, theme12, should cover them all
6. multi-card/monitor support - this may actually be outside your realm as I'm not sure that directfb even supports it yet.
later
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I live in front of a computer :P and get follow-ups via email...
> A couple more;
sure, more if you can ;)
> 5. multi-mode theme - need some elegant way to handle
> themed window locations. right now everything is by
> absolute x.y location. when going from one fb size to
> another, the theme looks different. maybe set location by
> percentages or include mode checking in the theme file and
> multiple cases for that. or even multiple theme files;
> theme6, theme8, theme10, theme12, should cover them all
Mmmh... Did you actually tried that? Actually, in a theme, window locations should be virtually mapping to a 800x600 canvas: that is, qingy does translation. So, same theme should look quite the same on different resolutions (this, afaik, doesn't work for images,though...)
Ah, btw I was looking for a way to use mng's as background, so that you could have them animated... Didn't find anything, though: looks like directfb image handlers don't support mng's even with the extra- extensions.. :( Maybe you know where I can find pointers?
cheers
paolino
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Oh yeah, check out suse's bootsplash package. There's a good LFS mail message < http://linuxfromscratch.org/pipermail/hints/2003-April/001608.html > that gives some basic info about usage, not the depth you probably need. But you could get some hints from the bootsplash code itself. I'm not absolutly sure that it is using directfb though.
There's also lots of info on gentoo's forum about bootsplash.
As for the theme=mode, yes the text is fine but the icons get bigger as your framebuffer gets smaller. When you hack out a portion of a background and make it into an icon, you want it to stay the same relative size in each fb size. Sorry, this is the part I was more interested in and I didn't clarify that.
I've also requested info on cursor changes on the directfb.org maillist. They are a raw ARGB format, whatever that is. I guess we'll see what happens.
later
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Well I finally got a response from someone on the direcfb.org maillist about changing the cursor but I can't seem to hit their main site just now. Here is the relevant text:
The preferred way to exchange the cursor is not to replace cursor.dat but to use IDirectFBDisplayLayer::SetShape. The file cursor.dat just defines the DirectFB fallback cursor but DirectFB application are supposed to set their own cursor shape. This function takes an IDirectFBSurface pointer. Of course you can create such a surface from image files. PNG would be a good file format since it allows to store an alpha channel. Alternatively you can use directfb-csource to create a surface that you can compile into your application.
From the sound of that it seems that it shouldn't be too much to add the IDirectFBDisplayLayer::SetShape part into your existing code and point to a "cursor.png" in the current theme directory.
Of course if I'm completely off my nut just say so, like I said before I'm not a programmer.
later
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I know the RGB stands for Red Blue Green,
This implies that this format is of raw data with no compression.
Put simply this file contains nothing more than a pixel location and what color it should be.
If you look at your monitor under a microscope you will see thousands of tiny octagonal structures, these are called pixels.
These different colored pixels of light spread accros your screen and mix together to form all the colours of the rainbow, when certain ones are activated they form the picture you are now looking at.
Now folks the moment you've all been waiting for,
my idea,
I often find it quite annoying when I and / or friend's are watching a movie on my pc and the screen saver goes on or the monitor shuts off.
Would it be possible to base the screen saver on changes in video memory instead of keyboard / mouse IO?
-Best Wishes
Max
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'll start this off by saying "You guys rock!" I love eyecandy and what more unusual eyecandy than console eyecandy.
Let me kick off the wish list with a few things:
1. multiple fonts - we can set window contents/color/size but all have to use the same font
2. screensaver timeouts - allow setting in either the primary settings file or theme itself, this may mean seperate timeout for photo-to-photo spacing too or even a range for randomizing
3. borders - the windows for each resource could also allow bordering, seperate for each side with defined thickness/color/alpha
4. animation - .mng is a good animation format that works well on the framebuffer. a well created file uses very little system resources during playback
Anyone else?
> 1. multiple fonts - we can set window contents/color/size
> but all have to use the same font
mmh... thought of that... Might already consider it in next release...
> 2. screensaver timeouts - allow setting in either the primary
> settings file or theme itself, this may mean seperate
> timeout for photo-to-photo spacing too or even a range for
> randomizing
Well... Screensaver support was totally rewritten in CVS version.. Now we have modular screensavers, so you can 'roll your own'.. So now settings of a screensaver depend on how you write it and the params you pass it.
> 3. borders - the windows for each resource could also allow
> bordering, seperate for each side with defined
> thickness/color/alpha
As well as nested windows, I think... Windows should be called widgets and we should introduce panes, I think.
> 4. animation - .mng is a good animation format that works
> well on the framebuffer. a well created file uses very little
> system resources during playback
ah... Never thought of that, might give it a shot..
Thanks for the big help and go on contributing.. :)
cheers
paolino
You're quick!
A couple more;
5. multi-mode theme - need some elegant way to handle themed window locations. right now everything is by absolute x.y location. when going from one fb size to another, the theme looks different. maybe set location by percentages or include mode checking in the theme file and multiple cases for that. or even multiple theme files; theme6, theme8, theme10, theme12, should cover them all
6. multi-card/monitor support - this may actually be outside your realm as I'm not sure that directfb even supports it yet.
later
> You're quick!
I live in front of a computer :P and get follow-ups via email...
> A couple more;
sure, more if you can ;)
> 5. multi-mode theme - need some elegant way to handle
> themed window locations. right now everything is by
> absolute x.y location. when going from one fb size to
> another, the theme looks different. maybe set location by
> percentages or include mode checking in the theme file and
> multiple cases for that. or even multiple theme files;
> theme6, theme8, theme10, theme12, should cover them all
Mmmh... Did you actually tried that? Actually, in a theme, window locations should be virtually mapping to a 800x600 canvas: that is, qingy does translation. So, same theme should look quite the same on different resolutions (this, afaik, doesn't work for images,though...)
Ah, btw I was looking for a way to use mng's as background, so that you could have them animated... Didn't find anything, though: looks like directfb image handlers don't support mng's even with the extra- extensions.. :( Maybe you know where I can find pointers?
cheers
paolino
Pointers, huh? Let me think...
Oh yeah, check out suse's bootsplash package. There's a good LFS mail message < http://linuxfromscratch.org/pipermail/hints/2003-April/001608.html > that gives some basic info about usage, not the depth you probably need. But you could get some hints from the bootsplash code itself. I'm not absolutly sure that it is using directfb though.
There's also lots of info on gentoo's forum about bootsplash.
As for the theme=mode, yes the text is fine but the icons get bigger as your framebuffer gets smaller. When you hack out a portion of a background and make it into an icon, you want it to stay the same relative size in each fb size. Sorry, this is the part I was more interested in and I didn't clarify that.
I've also requested info on cursor changes on the directfb.org maillist. They are a raw ARGB format, whatever that is. I guess we'll see what happens.
later
Well I finally got a response from someone on the direcfb.org maillist about changing the cursor but I can't seem to hit their main site just now. Here is the relevant text:
The preferred way to exchange the cursor is not to replace cursor.dat but to use IDirectFBDisplayLayer::SetShape. The file cursor.dat just defines the DirectFB fallback cursor but DirectFB application are supposed to set their own cursor shape. This function takes an IDirectFBSurface pointer. Of course you can create such a surface from image files. PNG would be a good file format since it allows to store an alpha channel. Alternatively you can use directfb-csource to create a surface that you can compile into your application.
From the sound of that it seems that it shouldn't be too much to add the IDirectFBDisplayLayer::SetShape part into your existing code and point to a "cursor.png" in the current theme directory.
Of course if I'm completely off my nut just say so, like I said before I'm not a programmer.
later
>They are a raw ARGB format, whatever that is.
I know the RGB stands for Red Blue Green,
This implies that this format is of raw data with no compression.
Put simply this file contains nothing more than a pixel location and what color it should be.
If you look at your monitor under a microscope you will see thousands of tiny octagonal structures, these are called pixels.
These different colored pixels of light spread accros your screen and mix together to form all the colours of the rainbow, when certain ones are activated they form the picture you are now looking at.
Now folks the moment you've all been waiting for,
my idea,
I often find it quite annoying when I and / or friend's are watching a movie on my pc and the screen saver goes on or the monitor shuts off.
Would it be possible to base the screen saver on changes in video memory instead of keyboard / mouse IO?
-Best Wishes
Max
what about support for different x-server layouts?
could be very practical on notebooks, so that you can enable/ disable TV-out,xinerma,dualview, etc for the x-session?
mfg
olli