* Initial theme
* JSON theme construction and integration with sdk project. Added theme documentation.
* Added images and review feedback
* Added internal mode and internal actions documentation
* More feedback
* Removed stub internal menu entries.
* Reduced use of images, clarified IntelliJ Platform, IDE.
* OlyaB feedback and compress images
* Moved json file to resources folder
* 19.1 -> 2019.1
* Strong note about availability of Custom UI Themes
* Removed reference to UiDefaultsHardcodedKeys.java
* Added IJSDK-567 content + cautioning UI Control keys may be deprecated.
* Better SVG icons, clarify macOS scroll bar name attributes.
* Generalize IntelliJ references, soften description of High Contrast scheme file as reference.
* Updated custom color editor scheme descriptions.
* Corrected position of editor scheme declaration.
Given the advent of Java 8, anonymous classes for one-line commands are more visual distraction than they are helpful.
I replaced the two used here as action listeners for buttons with equivalent lambdas.
Hello!
In this code, the `SimpleFileType` instance passed as the first argument and the `"simple"` file extension as the second parameter.
As far as I can see in FileTypeManagerImpl:263:
```java
@Override
public void consume(@NotNull FileType fileType) {
register(fileType, parse(fileType.getDefaultExtension()));
}
```
There is no need to declare it explicitly as it is taken by calling `SimpleFileType.#getDefaultExtension()` by default, so this parameter is redundant.
To make tutorial more simple, I suggest this removal: seeing the second parameter is a bit confusing when we're passing the same value, returned from `getDefaultExtension()`.
Since the tutorial shows the basics, not a flexibility of an API, the parameter can be removed.
Thanks!
The use of `Language.findInstance()` implicitly depended on the fact that
`SimpleLanguage.INSTANCE` was referenced at some earlier point in time. In this
case, that happens because the instantiation of `SimpleParserDefinition`
triggers the instantiation of `COMMENTS`, which relies on
`SimpleTypes.COMMENT`.
When basing one's work on this sample project, however, one may run into
issues. Specifically, the absence of a custom comment token type will mean a
failure to correctly instantiate the singleton language object. Making the
dependence on `SimpleLanguage.INSTANCE` explicit prevents that issue from
occurring.