FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

redo the dreadful layout for the Rename dialog · anunknownerror/processing@7078199 · GitHub

Repository navigation

Commit 7078199

Browse files
committed
redo the dreadful layout for the Rename dialog
1 parent df47a5f commit 7078199

3 files changed

Lines changed: 77 additions & 50 deletions

File tree

‎app/src/processing/app/ui/PreferencesFrame.java‎

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,6 @@ public PreferencesFrame(Base base) {
9898

9999
pain.setLayout(layout);
100100

101-
final int BORDER = Toolkit.zoom(Platform.isMacOS() ? 20 : 13);
102-
103101
JLabel sketchbookLocationLabel;
104102
JLabel languageRestartLabel;
105103
JLabel zoomRestartLabel;
@@ -127,7 +125,7 @@ public void actionPerformed(ActionEvent e) {
127125
// Language: [ English ] (requires restart of Processing)
128126

129127
JLabel languageLabel = new JLabel(Language.text("preferences.language")+": ");
130-
languageSelectionBox = new JComboBox<String>();
128+
languageSelectionBox = new JComboBox<>();
131129

132130
Map<String, String> languages = Language.getLanguages();
133131
String[] languageSelection = new String[languages.size()];
@@ -138,7 +136,7 @@ public void actionPerformed(ActionEvent e) {
138136
languageSelection[i++] = lang.getValue();
139137
}
140138
}
141-
languageSelectionBox.setModel(new DefaultComboBoxModel<String>(languageSelection));
139+
languageSelectionBox.setModel(new DefaultComboBoxModel<>(languageSelection));
142140
languageRestartLabel = new JLabel(" (" + Language.text("preferences.requires_restart") + ")");
143141

144142

@@ -148,18 +146,18 @@ public void actionPerformed(ActionEvent e) {
148146
final String fontTip = "<html>" + Language.text("preferences.editor_and_console_font.tip");
149147
fontLabel.setToolTipText(fontTip);
150148
// get a wide name in there before getPreferredSize() is called
151-
fontSelectionBox = new JComboBox<String>(new String[] { Toolkit.getMonoFontName() });
149+
fontSelectionBox = new JComboBox<>(new String[] { Toolkit.getMonoFontName() });
152150
fontSelectionBox.setToolTipText(fontTip);
153151
fontSelectionBox.setEnabled(false); // don't enable until fonts are loaded
154152

155153

156154
// Editor font size [ 12 ] Console font size [ 10 ]
157155

158156
JLabel fontSizelabel = new JLabel(Language.text("preferences.editor_font_size")+": ");
159-
fontSizeField = new JComboBox<Integer>(FONT_SIZES);
157+
fontSizeField = new JComboBox<>(FONT_SIZES);
160158

161159
JLabel consoleFontSizeLabel = new JLabel(Language.text("preferences.console_font_size")+": ");
162-
consoleFontSizeField = new JComboBox<Integer>(FONT_SIZES);
160+
consoleFontSizeField = new JComboBox<>(FONT_SIZES);
163161
fontSizeField.setSelectedItem(Preferences.getFont("editor.font.size"));
164162

165163

@@ -175,8 +173,8 @@ public void stateChanged(ChangeEvent e) {
175173
}
176174
});
177175

178-
zoomSelectionBox = new JComboBox<String>();
179-
zoomSelectionBox.setModel(new DefaultComboBoxModel<String>(Toolkit.zoomOptions.array()));
176+
zoomSelectionBox = new JComboBox<>();
177+
zoomSelectionBox.setModel(new DefaultComboBoxModel<>(Toolkit.zoomOptions.array()));
180178
zoomRestartLabel = new JLabel(" (" + Language.text("preferences.requires_restart") + ")");
181179

182180
//
@@ -349,7 +347,7 @@ public void stateChanged(ChangeEvent e) {
349347
JLabel displayLabel = new JLabel(Language.text("preferences.run_sketches_on_display") + ": ");
350348
final String tip = "<html>" + Language.text("preferences.run_sketches_on_display.tip");
351349
displayLabel.setToolTipText(tip);
352-
displaySelectionBox = new JComboBox<String>();
350+
displaySelectionBox = new JComboBox<>();
353351
updateDisplayList(); // needs to happen here for getPreferredSize()
354352

355353

@@ -406,7 +404,7 @@ public void actionPerformed(ActionEvent e) {
406404

407405
final int buttonWidth = Toolkit.getButtonWidth();
408406
layout.setHorizontalGroup(layout.createSequentialGroup() // sequential group for border + mainContent + border
409-
.addGap(BORDER)
407+
.addGap(Toolkit.BORDER)
410408
.addGroup(layout.createParallelGroup() // parallel group for rest of the components
411409
.addComponent(sketchbookLocationLabel)
412410
.addGroup(layout.createSequentialGroup()
@@ -468,11 +466,11 @@ public void actionPerformed(ActionEvent e) {
468466
.addComponent(okButton, buttonWidth, GroupLayout.DEFAULT_SIZE, buttonWidth) // Ok and Cancel buttton are now of size BUTTON_WIDTH
469467
.addComponent(cancelButton, buttonWidth, GroupLayout.DEFAULT_SIZE, buttonWidth)
470468
))
471-
.addGap(BORDER)
469+
.addGap(Toolkit.BORDER)
472470
);
473471

474472
layout.setVerticalGroup(layout.createSequentialGroup() // sequential group for border + mainContent + border
475-
.addGap(BORDER)
473+
.addGap(Toolkit.BORDER)
476474
.addComponent(sketchbookLocationLabel)
477475
.addGroup(layout.createParallelGroup()
478476
.addComponent(sketchbookLocationField)
@@ -524,7 +522,7 @@ public void actionPerformed(ActionEvent e) {
524522
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.CENTER)
525523
.addComponent(okButton)
526524
.addComponent(cancelButton))
527-
.addGap(BORDER)
525+
.addGap(Toolkit.BORDER)
528526
);
529527

530528
if (Platform.isWindows()){
@@ -802,7 +800,7 @@ void initFontList() {
802800
EventQueue.invokeLater(new Runnable() {
803801
@Override
804802
public void run() {
805-
fontSelectionBox.setModel(new DefaultComboBoxModel<String>(monoFontFamilies));
803+
fontSelectionBox.setModel(new DefaultComboBoxModel<>(monoFontFamilies));
806804
String family = Preferences.get("editor.font.family");
807805

808806
// Set a reasonable default, in case selecting the family fails
@@ -837,7 +835,7 @@ int updateDisplayList() {
837835
}
838836
items[i] = title;
839837
}
840-
displaySelectionBox.setModel(new DefaultComboBoxModel<String>(items));
838+
displaySelectionBox.setModel(new DefaultComboBoxModel<>(items));
841839

842840
// Disable it if you can't actually change the default display
843841
displaySelectionBox.setEnabled(displayCount != 1);

‎app/src/processing/app/ui/Toolkit.java‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -787,6 +787,15 @@ static public Dimension zoom(int w, int h) {
787787
}
788788

789789

790+
static public final int BORDER =
791+
Toolkit.zoom(Platform.isMacOS() ? 20 : 13);
792+
793+
794+
static public void setBorder(JComponent comp) {
795+
setBorder(comp, BORDER, BORDER, BORDER, BORDER);
796+
}
797+
798+
790799
static public void setBorder(JComponent comp,
791800
int top, int left, int bottom, int right) {
792801
comp.setBorder(new EmptyBorder(Toolkit.zoom(top), Toolkit.zoom(left),

‎java/src/processing/mode/java/pdex/Rename.java‎

Lines changed: 54 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package processing.mode.java.pdex;
22

3+
import java.awt.Dimension;
34
import java.awt.EventQueue;
45
import java.awt.event.ActionEvent;
56
import java.awt.event.ActionListener;
@@ -14,14 +15,13 @@
1415
import java.util.stream.Collectors;
1516

1617
import javax.swing.Box;
17-
import javax.swing.BoxLayout;
1818
import javax.swing.JButton;
1919
import javax.swing.JDialog;
2020
import javax.swing.JFrame;
2121
import javax.swing.JLabel;
2222
import javax.swing.JMenuItem;
2323
import javax.swing.JOptionPane;
24-
import javax.swing.JPanel;
24+
import javax.swing.JRootPane;
2525
import javax.swing.JTextField;
2626
import javax.swing.text.BadLocationException;
2727

@@ -33,6 +33,7 @@
3333
import org.eclipse.jdt.core.dom.SimpleName;
3434

3535
import processing.app.Language;
36+
import processing.app.Platform;
3637
import processing.app.Sketch;
3738
import processing.app.SketchCode;
3839
import processing.app.syntax.SyntaxDocument;
@@ -70,15 +71,16 @@ class Rename {
7071
editor.getTextArea().getRightClickPopup().add(renameItem);
7172

7273
window = new JDialog(editor);
73-
window.setTitle("Enter new name:");
74+
JRootPane rootPane = window.getRootPane();
75+
window.setTitle("Rename");
7476
window.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
75-
Toolkit.registerWindowCloseKeys(window.getRootPane(), new ActionListener() {
76-
77+
Toolkit.registerWindowCloseKeys(rootPane, new ActionListener() {
7778
@Override
7879
public void actionPerformed(ActionEvent e) {
7980
window.setVisible(false);
8081
}
8182
});
83+
Toolkit.setIcon(window);
8284

8385
window.setModal(true);
8486
window.setResizable(false);
@@ -89,31 +91,33 @@ public void componentHidden(ComponentEvent e) {
8991
ps = null;
9092
}
9193
});
92-
window.setSize(Toolkit.zoom(250, 130));
93-
window.setLayout(new BoxLayout(window.getContentPane(), BoxLayout.Y_AXIS));
94-
Toolkit.setIcon(window);
95-
96-
{ // Top panel
97-
98-
// Text field
99-
textField = new JTextField(40);
100-
//textField.setPreferredSize(Toolkit.zoom(150, 60));
101-
102-
// Old name label
103-
oldNameLabel = new JLabel();
104-
oldNameLabel.setText("Current Name: ");
94+
//window.setSize(Toolkit.zoom(250, 130));
95+
//window.setLayout(new BoxLayout(window.getContentPane(), BoxLayout.Y_AXIS));
96+
Box windowBox = Box.createVerticalBox();
97+
Toolkit.setBorder(windowBox);
98+
final int GAP = Toolkit.zoom(5);
99+
100+
{ // old name
101+
Box oldBox = Box.createHorizontalBox();
102+
oldNameLabel = new JLabel("Current Name: ");
103+
oldBox.add(oldNameLabel);
104+
//oldBox.add(Box.createHorizontalStrut(10));
105+
oldBox.add(Box.createHorizontalGlue());
106+
windowBox.add(oldBox);
107+
windowBox.add(Box.createVerticalStrut(GAP));
108+
}
105109

106-
// Top panel
107-
JPanel panelTop = new JPanel();
108-
panelTop.setLayout(new BoxLayout(panelTop, BoxLayout.Y_AXIS));
109-
Toolkit.setBorder(panelTop, 5, 5, 5, 5);
110-
panelTop.add(textField);
111-
panelTop.add(Box.createRigidArea(Toolkit.zoom(0, 10)));
112-
panelTop.add(oldNameLabel);
113-
window.add(panelTop);
110+
{ // new name
111+
Box newBox = Box.createHorizontalBox();
112+
JLabel newNameLabel = new JLabel("New Name: ");
113+
newBox.add(newNameLabel);
114+
newBox.add(textField = new JTextField(20));
115+
newBox.add(Box.createHorizontalGlue());
116+
windowBox.add(newBox);
117+
windowBox.add(Box.createVerticalStrut(GAP*2));
114118
}
115119

116-
{ // Bottom panel
120+
{ // button panel
117121
JButton showUsageButton = new JButton("Show Usage");
118122
showUsageButton.addActionListener(e -> {
119123
showUsage.findUsageAndUpdateTree(ps, binding);
@@ -137,17 +141,33 @@ public void componentHidden(ComponentEvent e) {
137141
}
138142
});
139143

140-
JPanel panelBottom = new JPanel();
141-
panelBottom.setLayout(new BoxLayout(panelBottom, BoxLayout.X_AXIS));
142-
Toolkit.setBorder(panelBottom, 5, 5, 5, 5);
144+
//JPanel panelBottom = new JPanel();
145+
//panelBottom.setLayout(new BoxLayout(panelBottom, BoxLayout.X_AXIS));
146+
Box panelBottom = Box.createHorizontalBox();
147+
//Toolkit.setBorder(panelBottom, 5, 5, 5, 5);
148+
143149
panelBottom.add(Box.createHorizontalGlue());
144150
panelBottom.add(showUsageButton);
145-
panelBottom.add(Box.createRigidArea(Toolkit.zoom(15, 0)));
151+
if (!Platform.isMacOS()) {
152+
panelBottom.add(Box.createHorizontalStrut(GAP));
153+
}
146154
panelBottom.add(renameButton);
147-
window.add(panelBottom);
148-
}
155+
panelBottom.add(Box.createHorizontalGlue());
149156

150-
window.setMinimumSize(window.getSize());
157+
Dimension showDim = showUsageButton.getPreferredSize();
158+
Dimension renameDim = renameButton.getPreferredSize();
159+
final int niceSize = Math.max(showDim.width, renameDim.width) + GAP;
160+
final Dimension buttonDim = new Dimension(niceSize, showDim.height);
161+
showUsageButton.setPreferredSize(buttonDim);
162+
renameButton.setPreferredSize(buttonDim);
163+
164+
windowBox.add(panelBottom);
165+
166+
//window.add(panelBottom);
167+
}
168+
window.add(windowBox);
169+
window.pack();
170+
//window.setMinimumSize(window.getSize());
151171
}
152172

153173

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL