Click here to Skip to main content
15,896,207 members
Articles / Desktop Programming / MFC

A Java Language IDE

Rate me:
Please Sign up or sign in to vote.
4.33/5 (26 votes)
13 May 2004CPOL3 min read 80.7K   3.4K   41  
This is a partially implemented IDE for the Java platform.
<SWING_TEXT_EDITOR>
import javax.swing.JToolBar;
import javax.swing.JButton;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JMenuBar;
import javax.swing.KeyStroke;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;

import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import javax.swing.JFrame;
import javax.swing.JPanel;

import java.awt.*;
import java.awt.event.*;

public class <CLASS_NAME> extends JFrame {
    JScrollPane scrollPane;
    protected JTextArea textArea;
    static JFrame frame;

    public <CLASS_NAME>() {
        JMenuBar menuBar;
        JMenu menu, submenu;
        JMenuItem menuItem;
        JCheckBoxMenuItem cbMenuItem;

        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });


        //Create the toolbar.
        JToolBar toolBar = new JToolBar();
        toolBar.setFloatable(true);
        addButtons(toolBar);
        
        //Create the text area used for output.
        textArea = new JTextArea(5, 30);
        JScrollPane scrollPane = new JScrollPane(textArea);

        //Lay out the content pane.
        JPanel contentPane = new JPanel();
        contentPane.setLayout(new BorderLayout());
        contentPane.setPreferredSize(new Dimension(400, 100));
        contentPane.add(toolBar, BorderLayout.NORTH);
        contentPane.add(scrollPane, BorderLayout.CENTER);
        setContentPane(contentPane);


        //Create the menu bar.
        menuBar = new JMenuBar();
        setJMenuBar(menuBar);

        //file menu.
        menu = new JMenu("File");
        menu.setMnemonic(KeyEvent.VK_F);

        //a group of JMenuItems
        menuItem = new JMenuItem("New");
        menuItem.setMnemonic(KeyEvent.VK_N); 
        menuItem.setAccelerator(KeyStroke.getKeyStroke                                                                      (KeyEvent.VK_N, ActionEvent.CTRL_MASK));

        menu.add(menuItem);

        menuItem = new JMenuItem("Open");
        menuItem.setMnemonic(KeyEvent.VK_O);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, ActionEvent.CTRL_MASK));
        menu.add(menuItem);

        menuItem = new JMenuItem("Save");
        menuItem.setMnemonic(KeyEvent.VK_S);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.CTRL_MASK));
        menu.add(menuItem);


        menuItem = new JMenuItem("Save As...");
        menu.add(menuItem);

        menu.addSeparator();
        menuItem = new JMenuItem("Print...");
        menuItem.setMnemonic(KeyEvent.VK_P);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P, ActionEvent.CTRL_MASK));
        menu.add(menuItem);


        menuItem = new JMenuItem("Print Preview");
        menuItem.setMnemonic(KeyEvent.VK_V);
        menu.add(menuItem);


        menuItem = new JMenuItem("Print Setup...");
        menuItem.setMnemonic(KeyEvent.VK_R);
        menu.add(menuItem);
        
        
        menu.addSeparator();
        menuItem = new JMenu("Recent File");
        menu.add(menuItem);
        menu.addSeparator();
       
        menuItem = new JMenuItem("Exit");
        menuItem.setMnemonic(KeyEvent.VK_X);
        menu.add(menuItem);

        menuBar.add(menu);
        
        //edit menu
        menu = new JMenu("Edit");
        menu.setMnemonic(KeyEvent.VK_E);
        
        
        menuItem = new JMenuItem("Undo");
        menuItem.setMnemonic(KeyEvent.VK_U);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, ActionEvent.CTRL_MASK));
        menu.add(menuItem);
        
        menu.addSeparator();
        menuItem = new JMenuItem("Cut");
        menuItem.setMnemonic(KeyEvent.VK_T);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, ActionEvent.CTRL_MASK));        
        menu.add(menuItem);     
        
        menuItem = new JMenuItem("Copy");
        menuItem.setMnemonic(KeyEvent.VK_C);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, ActionEvent.CTRL_MASK));        
        menu.add(menuItem);     

        menuItem = new JMenuItem("Paste");
        menuItem.setMnemonic(KeyEvent.VK_P);
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.CTRL_MASK));        
        menu.add(menuItem);     
        
        menuBar.add(menu);
        
        //view menu
        menu = new JMenu("View");
        menu.setMnemonic(KeyEvent.VK_V);
           
           
        cbMenuItem = new JCheckBoxMenuItem("Toolbar");
        menuItem.setMnemonic(KeyEvent.VK_T);
        menu.add(menuItem);
        
        cbMenuItem = new JCheckBoxMenuItem("Status Bar");
        menuItem.setMnemonic(KeyEvent.VK_S);
        menu.add(menuItem);                   
           
        menuBar.add(menu);
        
        //help
        menu = new JMenu("Help");
        menu.setMnemonic(KeyEvent.VK_H);
        
        menuItem = new JMenuItem("About App");
        menuItem.setMnemonic(KeyEvent.VK_A);
        menu.add(menuItem);      
        
        menuBar.add(menu);                
    }


    protected void addButtons(JToolBar toolBar) {
        JButton button = null;
        
        ImageIcon icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\new.gif");

        //new button
        button = new JButton(icon);
        button.setToolTipText("New");
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);

        icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\open.gif");
        //open button
        button = new JButton(icon);
        button.setToolTipText("Open");
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);

        icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\save.gif");
        //save button
        button = new JButton(icon);
        button.setToolTipText("Save");
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);

        //separator
        toolBar.addSeparator();

       icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\cut.gif");
        //cut button
        button = new JButton(icon);
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);


       icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\copy.gif");
        //copy button
        button = new JButton(icon);
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);
        
        icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\paste.gif");
        //paste button
        button = new JButton(icon);
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);    
        
        //separator
        toolBar.addSeparator();
        
        icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\print.gif");
        //print button
        button = new JButton(icon);
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });
        toolBar.add(button);    
        
        //separator
        toolBar.addSeparator();
        
        
        icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\help.gif");
        //help button
        button = new JButton(icon);
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            	
              ImageIcon _icon = new ImageIcon("C:\\WINDOWS\\Desktop\\templates\\cafe.gif");
	
              JOptionPane.showMessageDialog(frame,"<CLASS_NAME> Version 1.0\nCopyright (C) 2002",
              "About <CLASS_NAME>",JOptionPane.INFORMATION_MESSAGE,_icon);           	
            }
        });
        toolBar.add(button);  
        
        //separator
        toolBar.addSeparator();
    }

    public static void main(String[] args) {
        <CLASS_NAME> window = new <CLASS_NAME>();
        frame = window;
        window.setTitle("<CLASS_NAME>");
        window.setSize(550, 300);
        window.setVisible(true);
    }
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
United States United States
biography? I am not that old yet.

Comments and Discussions