@@ -36,6 +36,8 @@ public class SettingsUI extends JPanel {
3636 private JCheckBox insertTemplate ;
3737 private JCheckBox insertAsCode ;
3838 private JCheckBox insertBraces ;
39+ private JCheckBox sortByImportance ;
40+ private JCheckBox sortByName ;
3941
4042 SettingsUI () {
4143 init ();
@@ -78,6 +80,23 @@ private void init() {
7880 insertPanel .add (insertAsCode , BorderLayout .NORTH );
7981 insertPanel .add (insertPanel = new JPanel (new BorderLayout ()), BorderLayout .SOUTH );
8082 insertPanel .add (insertBraces );
83+
84+ sortByImportance = new JCheckBox ("Sort by importance" );
85+ sortByImportance .setMnemonic ('I' );
86+ sortByName = new JCheckBox ("Sort by name" );
87+ sortByName .setMnemonic ('N' );
88+
89+ ButtonGroup g2 = new ButtonGroup ();
90+ g2 .add (sortByImportance );
91+ g2 .add (sortByName );
92+
93+ JPanel sortPanel = new JPanel (new BorderLayout ());
94+ sortPanel .setBorder (IdeBorderFactory .createTitledBorder ("Sorting of completion entries" ));
95+ panel .add (panel = new JPanel (new BorderLayout ()), BorderLayout .SOUTH );
96+ panel .add (sortPanel , BorderLayout .SOUTH );
97+
98+ sortPanel .add (sortByImportance , BorderLayout .NORTH );
99+ sortPanel .add (sortByName , BorderLayout .SOUTH );
81100 }
82101
83102 public MathematicaSettings getSettings () {
@@ -89,6 +108,7 @@ public MathematicaSettings getSettings() {
89108 } else if (insertTemplate .isSelected ()) {
90109 settings .setSmartEnterResult (SmartEnterResult .INSERT_TEMPLATE );
91110 }
111+ settings .setSortCompletionEntriesLexicographically (sortByName .isSelected ());
92112 return settings ;
93113 }
94114
@@ -101,5 +121,11 @@ public void setSettings(MathematicaSettings settings) {
101121 insertTemplate .setSelected (
102122 settings .getSmartEnterResult ().equals (SmartEnterResult .INSERT_TEMPLATE )
103123 );
124+ sortByName .setSelected (
125+ settings .isSortCompletionEntriesLexicographically ()
126+ );
127+ sortByImportance .setSelected (
128+ !settings .isSortCompletionEntriesLexicographically ()
129+ );
104130 }
105131}
0 commit comments