PageRenderTime 26ms CodeModel.GetById 16ms RepoModel.GetById 1ms app.codeStats 0ms

/src/mpv5/ui/dialogs/PropertyDialog.java

http://mp-rechnungs-und-kundenverwaltung.googlecode.com/
Java | 131 lines | 80 code | 16 blank | 35 comment | 1 complexity | c75d24d85220459ffb27498369dfd5fd MD5 | raw file
Possible License(s): LGPL-3.0, Apache-2.0, GPL-3.0, GPL-2.0, AGPL-3.0, JSON, BSD-3-Clause
  1. /*
  2. * To change this template, choose Tools | Templates
  3. * and open the template in the editor.
  4. */
  5. /*
  6. * PropertyDialog.java
  7. *
  8. * Created on Sep 2, 2010, 3:02:18 PM
  9. */
  10. package mpv5.ui.dialogs;
  11. import java.awt.event.ActionEvent;
  12. import java.awt.event.ActionListener;
  13. import javax.swing.JDialog;
  14. import mpv5.db.objects.User;
  15. import mpv5.globals.GlobalSettings;
  16. import mpv5.globals.LocalSettings;
  17. import mpv5.globals.Messages;
  18. /**
  19. *
  20. * @author andreas.weber
  21. */
  22. public class PropertyDialog extends javax.swing.JDialog {
  23. /**
  24. * Change a Global property
  25. */
  26. public static final int GLOBAL = 0;
  27. /**
  28. * Change a Local property
  29. */
  30. public static final int LOCAL = 1;
  31. /**
  32. * Change a User property
  33. */
  34. public static final int USER = 2;
  35. private final int scope;
  36. /** Creates new form PropertyDialog
  37. * @param scope
  38. * @param property
  39. * @param value
  40. */
  41. public PropertyDialog(int scope, String property, Object value) {
  42. initComponents();
  43. setModalityType(JDialog.ModalityType.APPLICATION_MODAL);
  44. labeledTextField1.getTextField().setEditable(false);
  45. labeledTextField1.setText(Messages.PROPERTY);
  46. labeledTextField2.setText(Messages.VALUE);
  47. labeledTextField2.getTextField().addActionListener(new ActionListener() {
  48. public void actionPerformed(ActionEvent e) {
  49. dispose();
  50. }
  51. });
  52. labeledTextField1.setText(property);
  53. labeledTextField2.setText(value);
  54. this.scope = scope;
  55. setVisible(true);
  56. }
  57. @Override
  58. public void dispose() {
  59. save();
  60. super.dispose();
  61. }
  62. private void save() {
  63. switch (scope) {
  64. case GLOBAL:
  65. GlobalSettings.setProperty(labeledTextField1.getText(), labeledTextField2.getText());
  66. break;
  67. case LOCAL:
  68. LocalSettings.setProperty(labeledTextField1.getText(), labeledTextField2.getText());
  69. break;
  70. case USER:
  71. User.getCurrentUser().getProperties().changeProperty(labeledTextField1.getText(), labeledTextField2.getText());
  72. break;
  73. default:;
  74. }
  75. }
  76. /** This method is called from within the constructor to
  77. * initialize the form.
  78. * WARNING: Do NOT modify this code. The content of this method is
  79. * always regenerated by the Form Editor.
  80. */
  81. @SuppressWarnings("unchecked")
  82. // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  83. private void initComponents() {
  84. labeledTextField1 = new mpv5.ui.beans.LabeledTextField();
  85. labeledTextField2 = new mpv5.ui.beans.LabeledTextField();
  86. setName("Form"); // NOI18N
  87. labeledTextField1.setName("labeledTextField1"); // NOI18N
  88. labeledTextField2.setName("labeledTextField2"); // NOI18N
  89. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  90. getContentPane().setLayout(layout);
  91. layout.setHorizontalGroup(
  92. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  93. .addGroup(layout.createSequentialGroup()
  94. .addContainerGap()
  95. .addComponent(labeledTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  96. .addGap(18, 18, 18)
  97. .addComponent(labeledTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE)
  98. .addContainerGap())
  99. );
  100. layout.setVerticalGroup(
  101. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  102. .addGroup(layout.createSequentialGroup()
  103. .addContainerGap()
  104. .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  105. .addComponent(labeledTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  106. .addComponent(labeledTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  107. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  108. );
  109. pack();
  110. }// </editor-fold>//GEN-END:initComponents
  111. // Variables declaration - do not modify//GEN-BEGIN:variables
  112. private mpv5.ui.beans.LabeledTextField labeledTextField1;
  113. private mpv5.ui.beans.LabeledTextField labeledTextField2;
  114. // End of variables declaration//GEN-END:variables
  115. }