Created
April 18, 2012 17:35
-
-
Save eiennohito/2415314 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package org.eiennohito.ui.components; | |
import org.eiennohito.transformations.ZByXShift; | |
import org.eiennohito.transformations.AbstractTransformation; | |
import org.eiennohito.transformations.ProjectiveTransformation; | |
import org.eiennohito.ui.GLDrawer; | |
import org.eiennohito.ui.verification.FloatInputVerifier; | |
import javax.swing.*; | |
import java.awt.event.MouseAdapter; | |
import java.awt.event.MouseEvent; | |
/** | |
* @author eiennohito | |
* /me Now Playing: [2006. Xenosaga III OST2 #16] 梶浦由記 - hepatica#3~I beliebe in you [1:53/7:52 | FLAC | 715kbps] | |
*/ | |
public class MiscPanel extends JPanel { | |
private GLDrawer drawer; | |
public MiscPanel(GLDrawer drawer) { | |
this.drawer = drawer; | |
initComponents(); | |
} | |
private void initComponents() { | |
shiftLbl = new javax.swing.JLabel(); | |
shiftParam = new javax.swing.JTextField(15); | |
shiftBtn = new javax.swing.JButton(); | |
shiftLbl.setText("z by x shift"); // NOI18N | |
shiftParam.setText("0"); // NOI18N | |
shiftParam.setInputVerifier(new FloatInputVerifier()); | |
shiftBtn.setText("do shift"); // NOI18N | |
shiftBtn.addMouseListener(new MouseAdapter() { | |
@Override | |
public void mouseClicked(MouseEvent e) { | |
float value = 0; | |
try { | |
value = Float.parseFloat(shiftParam.getText()); | |
} catch (NumberFormatException e1) { | |
JOptionPane.showMessageDialog(null, "Invalid value"); | |
} | |
ZByXShift shift = new ZByXShift(value); | |
drawer.addTransformation(shift); | |
} | |
}); | |
JLabel ppLbl = new javax.swing.JLabel("1pt proj trans"); | |
final JTextField ppParam = new javax.swing.JTextField(15); | |
JButton ppBtn = new javax.swing.JButton(); | |
ppParam.setInputVerifier(new FloatInputVerifier()); | |
ppBtn.setText("add transformation"); | |
shiftBtn.addMouseListener(new MouseAdapter() { | |
@Override | |
public void mouseClicked(MouseEvent e) { | |
float value = 0; | |
try { | |
value = Float.parseFloat(ppParam.getText()); | |
} catch (NumberFormatException e1) { | |
JOptionPane.showMessageDialog(null, "Invalid value"); | |
} | |
AbstractTransformation pt = new ProjectiveTransformation(value); | |
drawer.addTransformation(pt); | |
} | |
}); | |
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); | |
this.setLayout(layout); | |
layout.setHorizontalGroup( | |
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
.addGroup(layout.createSequentialGroup() | |
.addContainerGap() | |
.addComponent(shiftLbl) | |
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) | |
.addComponent(shiftParam, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
.addGap(18, 18, 18) | |
.addComponent(shiftBtn) | |
.addContainerGap(200, Short.MAX_VALUE)) | |
.addGroup(layout.createSequentialGroup() | |
.addContainerGap() | |
.addComponent(ppLbl) | |
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) | |
.addComponent(ppParam, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
.addGap(18, 18, 18) | |
.addComponent(ppBtn) | |
.addContainerGap(200, Short.MAX_VALUE)) | |
); | |
layout.setVerticalGroup( | |
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
.addGroup(layout.createSequentialGroup() | |
.addContainerGap() | |
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
.addComponent(shiftLbl) | |
.addComponent(shiftParam, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
.addComponent(shiftBtn)) | |
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
.addComponent(ppLbl) | |
.addComponent(ppParam, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
.addComponent(ppBtn)) | |
.addContainerGap(266, Short.MAX_VALUE)) | |
); | |
} | |
// Variables declaration - do not modify | |
private javax.swing.JButton shiftBtn; | |
private javax.swing.JLabel shiftLbl; | |
private javax.swing.JTextField shiftParam; | |
// End of variables declaration | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment