Themed Wimp
Chris (121) 472 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. |
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 ;) |
Chris (121) 472 posts |
Yes, that’s the intention. |
Chris (121) 472 posts |
[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. |
Fred Graute (114) 645 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. |
Michael Drake (88) 336 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. :) |
Chris Terran (97) 7 posts |
Excellent work—thanks! Couple of problems:
I don’t understand why the font stuff is changing. Surely the themes app shouldn’t touch that? |
Andrew Hodgkinson (6) 465 posts |
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. |
Alan Robertson (52) 420 posts |
Good work guys. I am looking forward to trying this out later today. Nice one. |
Michael Drake (88) 336 posts |
Yes, I think it would be better if the theme manager didn’t override the options already configurable in other parts of Configure. |
Chris (121) 472 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. |
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? |
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! |
Fred Graute (114) 645 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. |
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. |
James Lampard (51) 120 posts |
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. |
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. |
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. |
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. :) |
Fred Graute (114) 645 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. |
James Lampard (51) 120 posts |
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. |
epistaxsis (54) 2 posts |
http://epistaxsis.co.uk/Themes/index.html We are setting up a repository of RISC OS themeing |
James Lampard (51) 120 posts |
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.
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? |
Chris (121) 472 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. |
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. |