I am getting this error when dynamically changing theme at runtime. If I change to any of the 4 built-in themes, my code works but not if I load my custom theme by specifying the full path (w/o “.theme” extension).
The comment is old, will fix. It was like that before we realized that the designer couldn’t really scan the full hard disk for .theme files. 🙂
And the exception should also be a bit more informative.
The warnings are coming from the theme engine when it cannot find a specific appearance key in the theme. They can be ignored unless you are looking for the reason why a child widget doesn’t appear themed, if it needed to be themed. Errors are logged in red and should not be there at all. If you set “debug”:true in the application’s json file you will also see all events and responses logged in the console.
Child widgets are internal components that make up a bigger widgets and their appearance key is the path to the topmost container. For example, you can see “statusbar/panel/label”, that is the appearance key for the label inside a panel inside a status bar, but the control in Wisej is only the panel.
That is the beauty of the qooxdoo framework. All widgets are a composition of simpler widgets and powerful layout engines. In fact one of the most basic widget is the Atom which is composed with an Image and a Label using different layouts.
When I was typing the code, the Intellisense for LoadTheme says “It can be a fullpath, a relative filename or an embedded resource.” Yes. It works now if I just type the file name and not include the path.
By the way, what are these warnings I got in Chrome console. I have seen these before, only didn’t have the chance to ask you what these are.
STBS.theme? I just tried with your sample app, it works fine for me: changed the default to “Blue-1”, added two buttons to call Application.LoadTheme(“STBS”) and Application.LoadTheme(“Clear-2”). I also tried to call Application.LoadTheme(“STBS”) in Program.Main.
In Chrome, hit F12 and got Sources, then open “wisej.js” (should not be minimized in debug mode), then before loading the theme click the pause-looking button (should be blue) to enable “Pause on exceptions”, and then check the checkbox that says “Pause on caught exceptions”. Chrome should break when the exception is thrown and should show you the exact line and stack trace.
It’s the theme I used in the sample I sent you in https://wisej.com/support/question/datagridview-linkcolumn-and-cellformatting.