RISC OS Open
Safeguarding the past, present and future of RISC OS for everyone
ROOL
Home | News | Downloads | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account
Forums → Code review →

Themed Wimp

Subscribe to Themed Wimp 63 posts, 19 voices

Posts per page:

Pages: 1 2 3

 
Dec 21, 2007 4:50pm
Avatar Chris (121) 470 posts

This is just to note that Fred Graute and myself have started work on changes to make the Window Manager more themeable, in case others were planning to have a go at the same thing. Fred’s making great progress, and any changes to the Wimp or Theme Manager software will be made available in due course.

 
Dec 23, 2007 2:14pm
Avatar Steve Revill (20) 1361 posts

Cool. If you add APIs, can I ask you to keep an eye on the ones ROL have introduced to avoid making your new features incompatible? (I’m sure you already knew that ;)

 
Dec 23, 2007 7:22pm
Avatar Chris (121) 470 posts

Yes, that’s the intention.

 
Jan 29, 2008 6:06pm
Avatar Chris (121) 470 posts

If you’re interested in producing alternative themes, it’s worth pointing out two mechanisms that may be useful. One is the UserIF build environment variable, set in your Env file (which corresponds to the Environment menu from !Builder) which controls which subdirectory of Wimp/Resources/<locale> is built into the ROM . There have been many of these – the embedded ones had to be withheld from release, but you’ll see that the published sources include Morris (RISC OS 3 .71), Ursula (RISC OS 4 .00), RO400 (RISC OS 4 .02) and Iyonix (RISC OS 5 ) UserIF subdirectories. The other mechanism is the Wimp$IconTheme system variable which is used by the Wimp (for *IconSprites) and the Toolbox (for Toolbox sprites files), and is intended to allow applications to ship with alternative icon sets to fit in with the system theme. This hasn’t been widely publicised and consequently hasn’t been much used, but it’s there in the sources for all to see now. There’s no convention yet as to how it’s used. Historic filename length limitations might favour short strings, maybe even single characters, but there’s also an argument for using the same namespace as the UserIF variable. May I invite discussion from the floor?

[post lifted from another discussion]

I am updating my Theme Manager application. Is there any objection to my setting Wimp$IconTheme to a string with the name of the currently selected theme? It has no use within the Theme Manager system itself, but could be read by third-party applications should they wish to fit in with a desktop theme.

 
Feb 6, 2008 2:19pm
Avatar Fred Graute (114) 587 posts

Chris and I feel that we’ve reached a point where we can make a first release of the updated Window Manager with the hope of generating feedback.

In short; the Window Manager can now use different tool icons for the window with the input focus. This means that solid tool icons can be used without losing indication of focus providing more freedom in designing themes.

Included in the release are an updated version of Chris’ Theme Manager along with new themes that make use of the Wimp’s new capabilities.

See the ReadMe file for further details. http://home.casema.nl/fjgraute/testwimp.zip

All feedback is welcome.

 
Feb 7, 2008 2:19pm
Avatar Michael Drake (88) 331 posts

I love it. I particularly like the way that the window border isn’t always black now. If I have two overlapping (black backgrounded) Zap windows, I can now tell where one window ends and the other begins.

I’ve not had any problems so far and the new toolsprite system certainly gives us the oppertunity for nice new themes with better looking active title bars.

I’ve been running the Steel theme, which I think looks great, although I think the difference in colour between the active and inactive windows is too subtle.

Thanks for doing this work, I think it’s a great improvement. :)

 
Feb 7, 2008 6:00pm
Avatar Chris Terran (97) 7 posts

Excellent work—thanks! Couple of problems:

  • The desktop font is reset; I have to use configure every boot to get it back to my preferred size
  • The font cache is reset to 1020K rather than my configured 10MB. Again, has to be changed every boot
  • I’ve had to put wimpvisualflags -all in a setup file to get rid of boxes around pinboard icons.

I don’t understand why the font stuff is changing. Surely the themes app shouldn’t touch that?

 
Feb 7, 2008 7:14pm
Avatar Andrew Hodgkinson (6) 451 posts

All feedback is welcome.

Very interesting work.

If the developers would find it useful, I can add a component to the bug tracker so you can log and track any bugs that crop up through the ROOL site. OTOH, you may prefer to use your own scheme.

 
Feb 7, 2008 9:25pm
Avatar Alan Robertson (52) 420 posts

Good work guys. I am looking forward to trying this out later today.

Nice one.

 
Feb 8, 2008 10:18am
Avatar Michael Drake (88) 331 posts

Yes, I think it would be better if the theme manager didn’t override the options already configurable in other parts of Configure.

 
Feb 8, 2008 10:38am
Avatar Chris (121) 470 posts

A brief reply, as I currently have only intermittent access to the internet.

Thanks for all these comments – much appreciated.

Chris: what OS are you using, please? And what font style is being reverted to? I’d like to try and address those glitches. Some themes do set a preferred font style in their Choices file, but I think, as Michael says, we should look into making this optional, or removing that feature altogether. The cache issue and pinboard borders look like bugs, however, and will hopefully be easy to track down.

 
Feb 8, 2008 12:13pm
Avatar Chris Terran (97) 7 posts

OS is 5.13. The font looks like 10pt Homerton (it’s the size that I need to adjust – just clicking “Set” in Configure>Fonts without changing anything sets it back to 12pt). I use MiscSetUp—is there some interaction with that? Just noticed a ”WimpStickyEdges” command. Is that new? ”Help” can’t find the token. Is it like WinSnap?

 
Feb 9, 2008 5:45pm
Avatar epistaxsis (54) 2 posts

MiscSetUp is definitely an issue.

Having just downloaded this I had all sorts of issues until I removed MiscSetUp from PreDesk.

My desktop font is also coming out small – I suspect that this is to do with the size set in the Choices file within the theme itself (DesktopFontSize line?)

Apart from that this is great – it is nice to lose the awful stone effect and regain window focus indication.

Nice work guys!

 
Feb 10, 2008 12:26pm
Avatar Fred Graute (114) 587 posts

Thanks to everyone for their comments.

MiscSetUp: I’ve got it in PreDesk and haven’t noticed any problems. Could those of you who’ve had problems please elobarate.

WimpVisualFlags: Themes need to set some of the options provided by it. Unfortunately this has the side-effect of unsetting all other options, and WimpVisualFlags doesn’t offer a means to read the current settings. For now the solution is to use MiscSetUp but I’ll have a look at extending WimpVisualFlags so that the current settings can be read.

WimpStickyEdges: The option is there but as far as I can see there’s no code that implements any kind of functionality. I believe it’s intended to be similar to WinSnap but the source is a bit vague on that.

 
Feb 10, 2008 1:38pm
Avatar Ben Avison (25) 445 posts

I’m not a particular fan of WimpVisualFlags, it’s not at all backward compatible (old Wimps will refuse the command if they see extra arguments they don’t understand). This means that an application issuing the command needs to know the capabilities of the installed Wimp before issuing the command. Yuck.

What would be much nicer is a traditional RISC OS API which uses a bitfield with AND mask and EOR toggle arguments which returns the previous settings of the flags. A new Wimp_Extend reason code would be the obvious place to add this. If a star command is provided as well for the sake of being able to include it in an Obey file, it absolutely shouldn’t place a limit on the number of parameters its accepts (unlike the current implementation of WimpVisualFlags).

StickyEdges: I can confirm that this was supposed to provide the same facility that WinSnap does. It was proposed at around the time of the Nested Wimp, but never got implemented.

 
Feb 13, 2008 10:37am
Avatar James Lampard (51) 120 posts

WimpVisualFlags: Themes need to set some of the options provided by it. Unfortunately this has the side-effect of unsetting all other options, and WimpVisualFlags doesn’t offer a means to read the current settings. For now the solution is to use MiscSetUp but I’ll have a look at extending WimpVisualFlags so that the current settings can be read

Not entirely true. Quite a while ago now I sent Chris the code to read a WimpVisualFlags obey file into an array – from this you can change some options add others and then finally write the whole command into a different obey file. This code is definitely still in Themes.RunImage and it should work.

I would agree that the WimpVisualFlags interface is an abomination, and I look forward to the day that it’s history.

 
Feb 16, 2008 9:51am
Avatar James Lampard (51) 120 posts

On RO4 the only way to get the ‘lost VisualFlags’ behaviour is by just having the WimpSA module softload or setting [No theme] in the theme manager window.

Even though the WinSetup file is later in the PreDesk directory than WimpSA, its command is not being acted on because of the new sofloaded wimp manager.

If anything here the theme manager is saving the softload by effectively re-running the WimpVisualFlags file later.

 
Feb 25, 2008 1:28pm
Avatar James Lampard (51) 120 posts

I’ve found that when running WindowManager 5.01 all the keyboard shortcuts have vanished from the menus. I assume this wasn’t deliberate.

 
Mar 1, 2008 2:15am
Avatar Steve Revill (20) 1361 posts

Hi guys. Watching the progress of the themed Wimp is interesting stuff and I would like to say keep up the good work. I would also like to remind Fred that a copy of the Castle license should be included in the zip archive – you should also be publishing your modified sources somewhere public. I don’t mind if you just put them on your site in a zip archive until such a time as they are ready to be folded back into the main tree.

Finally, we should probably have links in this forum thread to the various web sites for the themes stuff, e.g. the Theme Manager itself and some suggested themes. That would make it easier to get started for people who are interested in this development.

Thanks. :)

 
Mar 10, 2008 2:02pm
Avatar Fred Graute (114) 587 posts

Once again thanks to everyone for their comments.

A new version of the updated is available here: http://home.casema.nl/fjgraute/newwimp.zip

There are no functional changes but I’ve cleaned it up ready for submission to ROOL. I’d appreciate it if you could give a whirl and let me know if there are any problems.

The sources, and licence, are included (thanks for the reminder Steve).

Chris’ Theme Manager is no longer included but a new version should appear on Chris’ site (http://www.lym.iconbar.com/themes) in due course. The new version will address some of the issues raised (fonts and icon boxes).

James: Could yet let me know if this still causes the keyboard shortcuts to disappear. I can’t see how the new WM could cause this but if it does then this needs looking into.

 
Mar 10, 2008 4:26pm
Avatar James Lampard (51) 120 posts

James: Could yet let me know if this still causes the keyboard shortcuts to disappear. I can’t see how the new WM could cause this but if it does then this needs looking into.

Okay I will check this when I get the chance. My suspicion is that this is an option for STB builds of the WM.

I produced my own build of WM5.00 (to try out the automatic hourglass) and with this version the shortcuts are okay.

 
Mar 10, 2008 11:08pm
Avatar epistaxsis (54) 2 posts

http://epistaxsis.co.uk/Themes/index.html

We are setting up a repository of RISC OS themeing

 
Mar 11, 2008 5:09pm
Avatar James Lampard (51) 120 posts

James: Could yet let me know if this still causes the keyboard shortcuts to disappear. I can’t see how the new WM could cause this but if it does then this needs looking into.

Okay I will check this when I get the chance. My suspicion is that this is an option for STB builds of the WM.

I produced my own build of WM5.00 (to try out the automatic hourglass) and with this version the shortcuts are okay.

I’ve tried the new version and am still getting the same behaviour, but I have have found some items in !Boot that seem to be causing it.

If any of the following modules in !Boot.Choices.Boot.PreDesk are present then I lose the keyboard shortcuts.

  • Clipboard 0.05 (23 Mar 2000) Beta: A dodgy early version of the clipboard holder from ROL’s website.
  • SysLogRO40×0.39 (29 Oct 2001) Non-Select version: From Foundation RISC User a cut down version of the Select SysLog module
  • ROMPatch 0.01 (27 Jul 1999): ie the standard RO4 ROM Patches in !!ROMPatch and the ROMPatch directory
  • SSound 1.04 (22 Mar 2002): This is the only 32bit module of the 4

If I do a *Configure Wimpfont 0 or 1 (after removing Boot.Resources.!Themes which interferes with this) causing the system font to be used, then I always get the shortcuts no matter which modules are in PreDesk.

Weird or what?

 
Mar 12, 2008 12:23pm
Avatar Chris (121) 470 posts

With apologies for the delay, a new version of the Theme Manager software has been uploaded to http://www.lym.iconbar.com/themes. The main changes are:

- Installing themes is a bit tidier (no single-tasking error boxes used); - An Uninstall option has been added; - The Theme applications should no longer interfere with Font or Iconbox choices; - Some reliability changes have been added.

Feedback welcome. All future versions of the software will be hosted at my webspace. Fred’s WimpSA module is no longer included in the download, but can be downloaded from the address he specifies above.

 
Mar 12, 2008 4:40pm
Avatar James Lampard (51) 120 posts

Final answer: I think it’s ModSqz.

I base this on the fact that when I ModSqz’d my own build of WindowManager the shortcuts disappear. When I UnModSqz’d your window manager the shortcuts are restored.

You’ll be glad to know it’s nothing to do with your new code.

Next page

Pages: 1 2 3

Reply

To post replies, please first log in.

Forums → Code review →

Search forums

Social

Follow us on and

ROOL Store

Buy RISC OS Open merchandise here, including SD cards for Raspberry Pi and more.

Donate! Why?

Help ROOL make things happen – please consider donating!

RISC OS IPR

RISC OS is an Open Source operating system owned by RISC OS Developments Ltd and licensed primarily under the Apache 2.0 license.

Description

Developer peer review of proposed code alterations.

Voices

  • Chris (121)
  • Steve Revill (20)
  • Fred Graute (114)
  • Michael Drake (88)
  • Chris Terran (97)
  • Andrew Hodgkinson (6)
  • Alan Robertson (52)
  • epistaxsis (54)
  • Ben Avison (25)
  • James Lampard (51)

Options

  • Forums
  • Login
Site design © RISC OS Open Limited 2018 except where indicated
The RISC OS Open Beast theme is based on Beast's default layout

Valid XHTML 1.0  |  Valid CSS

Powered by Beast © 2006 Josh Goebel and Rick Olson
This site runs on Rails

Hosted by Arachsys