What GUI libraries are the JetBrains using?
IntelliJ IDEA is a pure Java Swing application. All the custom components like editor tabs are created manually, no third-party libraries are used for this. You can find all the details by looking at the IntelliJ IDEA Community Source code.
Levi Putna
Programming is my passion, I’m primarily a Java developer working with GIS, I also do some work with JavaScript, jquert, EXT JS , HTML and CSS developing front end mobile and web applications.
Updated on September 11, 2021Comments
-
Levi Putna almost 3 years
Background
I am somewhat new to Java and am enjoying using IntelliJ IDE developed by the JetBrains team.
I have downloaded the source for the Community Edition, and I am trying to work out what GUI libraries they are using to get the look-and-feel.
Question
What libraries (if any) are they using to get the non-native tabs, toolbars and breadcrumb component?
The panels they are using are also interesting, however I get the feeling they were developed for the project and are not a library. Is this true?
Can someone provide a breakdown of what is needed to produce a similar look-and-feel in a GUI project?
Does anyone have tutorials for that? All I have been able to work out so far is that they are using Swing and jGoodies.
What I Think So Far
They are using Swing and jGoodies. The MyDoggy project is attempting to produce a similar docking framework, however I don't think this is used by IntelliJ.
-
Witold Kaczurba almost 7 yearsWhy would they not use JavaFX-8 for it?
-
CrazyCoder almost 7 years@Vito maybe because IntelliJ IDEA was created back in 2000 when JavaFX didn't exist and now it's not feasible rewriting millions of lines of code and redesigning thousands of dialogs and UI elements for the doubtable benefits?
-
Zack Macomber almost 5 yearsReally impressive what you've built with Java Swing. So many people speak ill of it but you've given the world a tremendous example that proves Java Swing is a very viable tool for building desktop apps.
-
majurageerthan over 4 years@CrazyCoder Still are you using swing and Java for Idea projects? (A doubt in 2020)
-
CrazyCoder over 4 years@majuran yes, if you don't believe my word, the source code is open and linked in the answer.
-
majurageerthan over 4 yearsYeah yeah I saw it, But still i am a junior kid, I am unable to understand it sir. That's why i asked
-
J. M. Becker about 4 years@WitoldKaczurba, It would slow the interface to a crawl.
-
xpusostomos over 3 yearsI once tried to convert a swing application to FX, and found FX was in many ways more poorly designed than Swing. Unless you need the specific features that FX has, which as I recall were animation and special effects, Swing seemed like a better library to use. Of course, in 2020 both look a lot like abandonwear, and maybe Swing is actually less abandoned and more used, and so is a better option. My 2 cents.
-
ATL_DEV about 3 yearsJetBrains IDEs are a lot snappier than Visual Studio on both Windows and Mac. While it doesn't have a native appearance on either platform, it's at least not glitchy, laggy nor ugly like so many cross platform applications. I hope JetBrains adopts Avalonia and assists its developers in turning it into a first class UI cross platform framework.
-
Brain almost 3 yearsIf you use Swing in the right way it is still powerful. The only other real option is to use OpenGL for java. JavaFX is no option at all.
-
cogmission over 2 years@Brain You are seriously in err. JavaFX is 1000 times more powerful; faster; more expressive and infinitely better designed than Swing (though I grew up on Swing, and love it as well).