32
32
package com .jme3 .gde .shadernodedefinition .wizard ;
33
33
34
34
import java .awt .EventQueue ;
35
+ import javax .swing .DefaultCellEditor ;
36
+ import javax .swing .JComboBox ;
35
37
import javax .swing .JPanel ;
36
38
import javax .swing .JTextField ;
37
39
import javax .swing .event .ListSelectionEvent ;
40
42
41
43
@ SuppressWarnings ({"unchecked" , "rawtypes" })
42
44
public final class SNDefVisualPanel2 extends JPanel {
43
-
44
- private final Object [] emptyObj = {"" , "" , "" };
45
+
46
+ private final Object [] emptyObj = {"float " , "" , "" };
45
47
private final String type ;
48
+ private final String [] varTypes = new String []{"bool" , "int" , "float" , "vec2" ,
49
+ "vec3" , "vec4" , "sampler" , "sampler2D" , "sampler3D" , "mat3" , "mat4" };
46
50
47
51
/**
48
52
* Creates new form SNDefVisualPanel2
@@ -51,7 +55,10 @@ public SNDefVisualPanel2(String type) {
51
55
initComponents ();
52
56
this .type = type ;
53
57
titleLabel .setText (type );
54
- varTable .getColumnModel ().getSelectionModel ().addListSelectionListener (new ExploreSelectionListener ());
58
+ varTable .getColumnModel ().getSelectionModel ().addListSelectionListener (
59
+ new ExploreSelectionListener ());
60
+ varTable .getColumn ("Type" ).setCellEditor (new DefaultCellEditor (
61
+ new JComboBox (varTypes )));
55
62
}
56
63
57
64
@ Override
@@ -107,7 +114,9 @@ public void run() {
107
114
// Edit.
108
115
if (varTable .isCellEditable (row , col )) {
109
116
varTable .editCellAt (row , col );
110
- ((JTextField ) varTable .getEditorComponent ()).selectAll ();
117
+ if (col != 0 ) {
118
+ ((JTextField ) varTable .getEditorComponent ()).selectAll ();
119
+ }
111
120
varTable .getEditorComponent ().requestFocusInWindow ();
112
121
}
113
122
}
@@ -149,7 +158,6 @@ public Class getColumnClass(int columnIndex) {
149
158
});
150
159
jScrollPane1 .setViewportView (varTable );
151
160
152
- jToolBar1 .setFloatable (false );
153
161
jToolBar1 .setRollover (true );
154
162
155
163
org .openide .awt .Mnemonics .setLocalizedText (titleLabel , org .openide .util .NbBundle .getMessage (SNDefVisualPanel2 .class , "SNDefVisualPanel2.titleLabel.text" )); // NOI18N
0 commit comments