All Downloads are FREE. Search and download functionalities are using the official Maven repository.

test.SheetTest Maven / Gradle / Ivy

Go to download

A Mavenisation of the Quaqua Mac OSX Swing Look and Feel (Java library) Quaqua Look and Feel (C) 2003-2010, Werner Randelshofer. Mavenisation by Matt Gumbley, DevZendo.org - for problems with Mavenisation, see Matt; for issues with Quaqua, see the Quaqua home page. For full license details, see http://randelshofer.ch/quaqua/license.html

The newest version!
/*
 * @(#)SheetTest.java
 *
 * Copyright (c) 2004-2010 Werner Randelshofer, Immensee, Switzerland.
 * All rights reserved.
 *
 * You may not use, copy or modify this file, except in compliance with the
 * license agreement you entered into with Werner Randelshofer.
 * For details see accompanying license terms.
 */

package test;

import ch.randelshofer.quaqua.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
/**
 * SheetTest.
 *
 * @author  Werner Randelshofer
 * @version $Id: SheetTest.java 363 2010-11-21 17:41:04Z wrandelshofer $
 */
public class SheetTest extends javax.swing.JPanel {
private JFileChooser saveFile;

    /** Creates new form. */
    public SheetTest() {
        initComponents();
    }
    
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // //GEN-BEGIN:initComponents
    private void initComponents() {
        java.awt.GridBagConstraints gridBagConstraints;

        confirmSheetButton = new javax.swing.JButton();
        inputSheetButton = new javax.swing.JButton();
        messageSheetButton = new javax.swing.JButton();
        saveChangesSheetButton = new javax.swing.JButton();
        saveFileSheetButton = new javax.swing.JButton();
        messageSheetButton1 = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();

        FormListener formListener = new FormListener();

        setLayout(new java.awt.GridBagLayout());

        confirmSheetButton.setText("Confirm Sheet");
        confirmSheetButton.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 0;
        add(confirmSheetButton, gridBagConstraints);

        inputSheetButton.setText("Input Sheet");
        inputSheetButton.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 0;
        add(inputSheetButton, gridBagConstraints);

        messageSheetButton.setText("Message Sheet");
        messageSheetButton.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 0;
        add(messageSheetButton, gridBagConstraints);

        saveChangesSheetButton.setText("Save Changes Sheet");
        saveChangesSheetButton.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 1;
        add(saveChangesSheetButton, gridBagConstraints);

        saveFileSheetButton.setText("Save File Sheet");
        saveFileSheetButton.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 1;
        add(saveFileSheetButton, gridBagConstraints);

        messageSheetButton1.setText("Delayed Message Sheet");
        messageSheetButton1.addActionListener(formListener);
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 1;
        add(messageSheetButton1, gridBagConstraints);

        jLabel1.setText("Note: The Delayed Message Sheet appears after two seconds, so that you can deactivate the window in order to see the application icon bounce, when the application requests user attention.");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridy = 2;
        gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(10, 0, 0, 0);
        add(jLabel1, gridBagConstraints);
    }

    // Code for dispatching events from components to event handlers.

    private class FormListener implements java.awt.event.ActionListener {
        FormListener() {}
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            if (evt.getSource() == confirmSheetButton) {
                SheetTest.this.confirmSheet(evt);
            }
            else if (evt.getSource() == inputSheetButton) {
                SheetTest.this.inputSheet(evt);
            }
            else if (evt.getSource() == messageSheetButton) {
                SheetTest.this.messageSheet(evt);
            }
            else if (evt.getSource() == saveChangesSheetButton) {
                SheetTest.this.saveChangesSheet(evt);
            }
            else if (evt.getSource() == saveFileSheetButton) {
                SheetTest.this.saveFileSheet(evt);
            }
            else if (evt.getSource() == messageSheetButton1) {
                SheetTest.this.delayedMessageSheet(evt);
            }
        }
    }// //GEN-END:initComponents

    private void delayedMessageSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_delayedMessageSheet
 Timer t = new Timer(2000, new ActionListener() {
           public void actionPerformed(ActionEvent evt) {
                       JSheet.showMessageSheet(SheetTest.this, "You have got a message.");
           }
       });
       t.setRepeats(false);
       t.start();
    }//GEN-LAST:event_delayedMessageSheet

    private void saveFileSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveFileSheet
        if (saveFile == null) {
            JFileChooser chooser = new JFileChooser();
            chooser.setDialogTitle("This is some title text");
            //fc.setSelectedFile(new File("/Users/werni"));
            chooser.setCurrentDirectory(new File("/Users/werni"));
            chooser.setApproveButtonText("btnText");
            chooser.setApproveButtonMnemonic("btnText".charAt(0));
            chooser.setMultiSelectionEnabled(false);
            chooser.setAcceptAllFileFilterUsed(false);
            chooser.setFileHidingEnabled(true);
            //chooser.setSelectedFile(new File(resetTextField.getText()));
            saveFile = chooser;
        }
        //int option = saveFile.showSaveDialog(this);
        JSheet.showSaveSheet(saveFile, this, new SheetListener() {
            public void optionSelected(SheetEvent evt) {
                System.out.println("optionSelected "+ evt.getOption());
                //analyzeOption(saveFile, evt.getOption());
            }
        });
    }//GEN-LAST:event_saveFileSheet
    
    private void messageSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_messageSheet
      
        JSheet.showMessageSheet(this, "You have got a message.");
    }//GEN-LAST:event_messageSheet
        
    private void inputSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_inputSheet
        JSheet.showInputSheet(this, "Enter your name.", new SheetListener() {
            public void optionSelected(SheetEvent evt) {
                System.out.println("user entered "+evt.getInputValue());
            }
        });
    }//GEN-LAST:event_inputSheet
        
    private void confirmSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_confirmSheet
        JSheet.showConfirmSheet(this, "Do you want to confirm this dialog?", new SheetListener() {
            public void optionSelected(SheetEvent evt) {
                analyzeOption(evt.getOption());
            }
        });
    }//GEN-LAST:event_confirmSheet
                
    private void saveChangesSheet(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveChangesSheet
        // Example taken from
        // http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGWindows/chapter_17_section_6.html#//apple_ref/doc/uid/20000961-TPXREF11
        JOptionPane pane = new JOptionPane(
        ""+
        ""+
        ""+
        ""+
        "Do you want to save changes to this document
"+ "before closing?

"+ "If you don't save, your changes will be lost.", JOptionPane.WARNING_MESSAGE ); Object[] options = { "Save", "Cancel", "Don't Save" }; pane.setOptions(options); pane.setInitialValue(options[0]); pane.putClientProperty("Quaqua.OptionPane.destructiveOption", 2); JSheet.showSheet(pane, this, new SheetListener() { public void optionSelected(SheetEvent evt) { analyzeValue(evt.getValue()); } }); }//GEN-LAST:event_saveChangesSheet private void experimentalSheetChange(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_experimentalSheetChange // UIManager.put("Sheet.experimentalSheet", new Boolean(experimentalSheetCheckbox.isSelected())); }//GEN-LAST:event_experimentalSheetChange private void analyzeOption(int option) { switch (option) { case JOptionPane.CANCEL_OPTION: System.out.println("user canceled option pane"); break; case JOptionPane.CLOSED_OPTION : System.out.println("user closed option pane"); break; case JOptionPane.NO_OPTION : System.out.println("user chose no"); break; case JOptionPane.OK_OPTION : //case JOptionPane.YES_OPTION : (same as OK_OPTION) System.out.println("user chose ok or yes"); break; default : System.out.println("user chose "+option); break; } } private void analyzeValue(Object value) { System.out.println("user chose "+value); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton confirmSheetButton; private javax.swing.JButton inputSheetButton; private javax.swing.JLabel jLabel1; private javax.swing.JButton messageSheetButton; private javax.swing.JButton messageSheetButton1; private javax.swing.JButton saveChangesSheetButton; private javax.swing.JButton saveFileSheetButton; // End of variables declaration//GEN-END:variables }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy