Command pattern in Java 3 : Command Pattern : Design Pattern : Java examples (example source code) Organized by topic

Java
C++
PHP


Java  »  Design Pattern   » [  Command Pattern  ]  Screenshots 
 



Command pattern in Java 3



/*
The Design Patterns Java Companion

Copyright (C) 1998, by James W. Cooper

IBM Thomas J. Watson Research Center

*/

import java.awt.Button;
import java.awt.Color;
import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

interface Command {
  public void Execute();
}

public class ExtrnCommand extends Frame implements ActionListener {
  Menu mnuFile;

  fileOpenCommand mnuOpen;

  fileExitCommand mnuExit;

  btnRedCommand btnRed;

  Panel p;

  Frame fr;

  //-----------------------------------------
  public ExtrnCommand() {
    super("Frame with external commands");
    fr = this//save frame object
    MenuBar mbar = new MenuBar();
    setMenuBar(mbar);

    mnuFile = new Menu("File"true);
    mbar.add(mnuFile);

    mnuOpen = new fileOpenCommand("Open..."this);
    mnuFile.add(mnuOpen);
    mnuExit = new fileExitCommand("Exit");
    mnuFile.add(mnuExit);

    mnuOpen.addActionListener(this);
    mnuExit.addActionListener(this);

    p = new Panel();
    add(p);
    btnRed = new btnRedCommand("Red", p);

    p.add(btnRed);

    btnRed.addActionListener(this);
    setBounds(100100200100);
    setVisible(true);
  }

  //-----------------------------------------
  public void actionPerformed(ActionEvent e) {
    Command obj = (Commande.getSource();
    obj.Execute();
  }

  //-----------------------------------------
  static public void main(String argv[]) {
    new ExtrnCommand();
  }
}
//==========================================

class btnRedCommand extends Button implements Command {
  Panel p;

  public btnRedCommand(String caption, Panel pnl) {
    super(caption);
    p = pnl;
  }

  public void Execute() {
    p.setBackground(Color.red);
  }
}
//------------------------------------------

class fileOpenCommand extends MenuItem implements Command {
  Frame fr;

  public fileOpenCommand(String caption, Frame frm) {
    super(caption);
    fr = frm;
  }

  public void Execute() {
    FileDialog fDlg = new FileDialog(fr, "Open file");
    fDlg.show();
  }
}
//-------------------------------------------

class fileExitCommand extends MenuItem implements Command {
  public fileExitCommand(String caption) {
    super(caption);
  }

  public void Execute() {
    System.exit(0);
  }
}



           
       
Related examples in the same category
1.  Command pattern in Java 1 Command pattern in Java 1
2.  Command pattern in Java 2 Command pattern in Java 2
3.  Command pattern in Java 4 Command pattern in Java 4
4.  Command Pattern 2 in Java
5.  Command Pattern - Example: FTP GUI Command Pattern - Example: FTP GUI
6.  Command pattern: Shopping
























Home| Contact Us
Copyright 2003 - 04 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.