How to activate this applet

adpu:
//Test script for Applet 'TimeAttendApplet'
powerup;
// Select TimeAttendApplet //aid/1B85451EEB/C9FB
0x00 0xA4 0x04 0x00 0X07 0X1B 0X85 0X45 0X1E 0XEB 0XC9 0XFB 0x7F;
//Send the APDU here
0x80 0x00 0x7F;
powerdown;
package com.walker;
import javacard.framework.APDU;
import javacard.framework.Applet;
import javacard.framework.ISO7816;
import javacard.framework.ISOException;
import javacard.framework.Util;
public class TimeAttendApplet extends Applet {
     private TimeAttendApplet() {
          register();
      private static byte[] hello = { (byte)'1', (byte)'2', (byte)'3'
         ,(byte)'4',(byte)'5', 
      private static final byte HW_CLA = (byte) 0x80;
      private static final byte HW_INS = (byte) 0x00;
      public static void install(byte[] bArray, short bOffset, byte bLength) {
          new TimeAttendApplet();
      public void process(APDU apdu) {
             byte buffer[] = apdu.getBuffer();
                switch (buffer[ISO7816.OFFSET_INS])
              case HW_INS:
                  getHello(apdu);
                  break;
              default:
                  ISOException.throwIt(ISO7816.SW_INS_NOT_SUPPORTED);
      private void getHello(APDU apdu)
          byte[] buffer = apdu.getBuffer();
          short length = (short) hello.length;
          Util.arrayCopyNonAtomic(hello, (short)0, buffer, (short)0, length);
          apdu.setOutgoingAndSend((short)0, length);
      public void setHello(byte[] empId)
           hello = empId;
}Receiving:
Opening connection to localhost on port 9025.
Connected.
Received ATR = 0x3b 0xf0 0x11 0x00 0xff 0x00
CLA: 00, INS: a4, P1: 04, P2: 00, Lc: 07, 1b, 85, 45, 1e, eb, c9, fb, Le: 00, SW1: 69, SW2: 99
Invalid Token after "0x7F", was expecting: <INTEGER_LITERAL>
Seems like the select has succeeded, but the command/data string was incorrect.
Also tried
0x80 0x00;
Let me know
Edited by: 933351 on 2013/3/21 上午 3:01

Then shane,
How do I select it correctly? I have this in my manifest.mf and applet.xml files
Manifest-Version: 1.0
Runtime-Descriptor-Version: 3.0
Application-Type: classic-applet
Classic-Package-AID: //aid/1B85451EEB/3CB7
<?xml version="1.0" encoding="UTF-8"?>
<applet-app xmlns="http://java.sun.com/xml/ns/javacard"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://java.sun.com/xml/ns/javacard http://java.sun.com/xml/ns/javacard/applet-app_3_0.xsd"
            version="3.0">
    <applet>
        <!-- The applet application deployment descriptor conveys APDU-based application
        model elements and configuration information of an application between application
        developers, application assemblers, and deployers. -->
        <display-name>Time Attend Applet</display-name>
        <applet-class>com.walker.TimeAttendApplet</applet-class>
        <applet-AID>//aid/1B85451EEB/C9FB</applet-AID>
    </applet>
</applet-app>Thanks in advance

Similar Messages

  • How to activate this profiling function

    Hi Pros,
          I can't use profiling function, because it is greyed, do you know how to activate this function?

    Hi,
    what do you mean by profiling Function. Is it BODS column Profiling?.
    If you want to BODS profiling, 1st you should you need to login in profiling server.
    Steps:Tools-->profiler server login-->give user name and Pasword then you can select the profiling repository
    Pre Requisites:  Profiler repoistory should be created 1st.
    Thanks,
    Deepa

  • How to activate Java Applets?

    Hi,
    I got some Java Applets that i try to run (again). Since Javas own security and firefox itself forbids to run Java without being activated by the user i thought i would be asked whether to activate java on my own site (local on the PC) or not. Although java is activated inside in the plugins-option menu and the correct installation of java is confirmed by java.com (test after the installation) my Java applets dont show up, not even a message saying "Applets are being blocked" or so.
    In chrome i can simply activate the NPAPI in the settings and enable the flag and the applets work. Isnt there a function similar to this?
    I would like to run Firefox portable on a CD to give to students. As the Java applets are being blocked i hoped to simply enable the corrosponding flag so prevent rewriting all the java applets.
    Is there another developer plugin of some sort that i can pre-install into Firefox portable that does the job?
    See blow for Versions of Windows, Firefox. Java Version 8 Update 45 (Build 1.8.0_45-b14) latest version.
    Kind regards,
    Marcel Klinge
    "application": {
    "name": "Firefox",
    "version": "37.0.2",
    "buildID": "20150415140819",
    "userAgent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0",
    "updateChannel": "release",
    "supportURL": "https://support.mozilla.org/1/firefox/37.0.2/WINNT/de/",
    "numTotalWindows": 1,
    "numRemoteWindows": 0
    "crashes": {
    "submitted": [],
    "pending": 0
    "modifiedPreferences": {
    "accessibility.typeaheadfind.flashBar": 0,
    "browser.cache.disk.smart_size.first_run": false,
    "browser.cache.disk.smart_size.enabled": false,
    "browser.cache.disk.capacity": 0,
    "browser.cache.frecency_experiment": 4,
    "browser.places.importBookmarksHTML": false,
    "browser.places.smartBookmarksVersion": 7,
    "browser.search.useDBForOrder": true,
    "browser.sessionstore.upgradeBackup.latestBuildID": "20150415140819",
    "browser.startup.homepage_override.mstone": "37.0.2",
    "browser.startup.homepage": "file:///C:/Users/Klinge/Desktop/Sign%C3%BC%20I+II%20-%20Neu/sueb1/html/index.html",
    "browser.startup.homepage_override.buildID": "20150415140819",
    "dom.ipc.plugins.sandbox.default": true,
    "dom.mozApps.used": true,
    "extensions.lastAppVersion": "37.0.2",
    "gfx.direct3d.last_used_feature_level_idx": 0,
    "media.gmp-gmpopenh264.lastUpdate": 1430384919,
    "media.gmp-gmpopenh264.version": "1.3",
    "media.gmp-manager.lastCheck": 1430384919,
    "network.cookie.prefsMigrated": true,
    "places.database.lastMaintenance": 1430385666,
    "places.history.expiration.transient_current_max_pages": 104858,
    "plugin.importedState": true,
    "plugin.disable_full_page_plugin_for_types": "application/pdf",
    "plugin.state.java": 2,
    "privacy.sanitize.migrateFx3Prefs": true,
    "storage.vacuum.last.places.sqlite": 1430385666,
    "storage.vacuum.last.index": 0
    "lockedPreferences": {},
    "graphics": {
    "numTotalWindows": 1,
    "numAcceleratedWindows": 1,
    "windowLayerManagerType": "Direct3D 11",
    "windowLayerManagerRemote": true,
    "adapterDescription": "ATI Radeon HD 4650",
    "adapterVendorID": "0x1002",
    "adapterDeviceID": "0x9498",
    "adapterSubsysID": "22691787",
    "adapterRAM": "512",
    "adapterDrivers": "atiumd64 atidxx64 atiumdag atidxx32 atiumdva atiumd6a atitmm64",
    "driverVersion": "8.632.1.2000",
    "driverDate": "8-17-2009",
    "adapterDescription2": "",
    "adapterVendorID2": "",
    "adapterDeviceID2": "",
    "adapterSubsysID2": "",
    "adapterRAM2": "",
    "adapterDrivers2": "",
    "driverVersion2": "",
    "driverDate2": "",
    "isGPU2Active": false,
    "direct2DEnabled": true,
    "directWriteEnabled": true,
    "directWriteVersion": "6.2.9200.16571",
    "webglRenderer": "Google Inc. -- ANGLE (ATI Radeon HD 4650 Direct3D11 vs_4_1 ps_4_1)",
    "info": {
    "AzureCanvasBackend": "direct2d 1.1",
    "AzureSkiaAccelerated": 0,
    "AzureFallbackCanvasBackend": "cairo",
    "AzureContentBackend": "direct2d 1.1"
    "javaScript": {
    "incrementalGCEnabled": true
    "accessibility": {
    "isActive": false,
    "forceDisabled": 0
    "libraryVersions": {
    "NSPR": {
    "minVersion": "4.10.8",
    "version": "4.10.8"
    "NSS": {
    "minVersion": "3.17.4 Basic ECC",
    "version": "3.17.4 Basic ECC"
    "NSSUTIL": {
    "minVersion": "3.17.4",
    "version": "3.17.4"
    "NSSSSL": {
    "minVersion": "3.17.4 Basic ECC",
    "version": "3.17.4 Basic ECC"
    "NSSSMIME": {
    "minVersion": "3.17.4 Basic ECC",
    "version": "3.17.4 Basic ECC"
    "userJS": {
    "exists": false
    "extensions": [],
    "experiments": []
    }

    use Robot Class
    java.awt.Robot since jdk1.3

  • How to activate this hp officejet ScantoPcActivationApp so I can access scan shortcut

    I clicked on the scanner logo desktop shortcut and it would not respond.   I clicked on "open file location" and found the above application shown in 'subject'.   I checked security for permission and added administrator for all access except, of course, special permission.  To no avail.  Can anyone point me in another direction?
    This question was solved.
    View Solution.

    First make sure you have the printer installed with HP Software using this method: Installing the Printer Software on a Wireless or Wired (Ethernet) Network
    This software will enable you to Scan To PC, it doesn't sound like it is installed correctly based on the response you get: HP Officejet Full Feature Software and Driver
    TwoPointOh
    I work on behalf of HP
    Please click “Accept as Solution ” if you feel my post solved your issue, it will help others find the solution.
    Click the “Kudos, Thumbs Up" on the bottom to say “Thanks” for helping!

  • Hi.iforgot to erase iphone 4s and removed it from my friends icloud account.now itunes says this account cannot be used to activate this iphone.i have his id and password,can log in to his icloud account but cant activate iphone.how to solve this problem?

    hi.i bought an iphone 4s from my friend.connected to itunes to restore it for a fresh install.after restoring to ios7 i realised that activation lock is enabled.i called my friend and get his id and pass.itunes said pass is wrong and cant activate the phone.then i logged in my friends icloud account (icloud.com said pass is ok) with same password and i removed the phone from 'find my iphone' list.but i forgot to erase the phone before removing it.now itunes says ''this apple id cannot be used to activate this iphone''.when i log in to icloud i cant see the phone in 'find my iphone' list so cant erase it now.can you please advise me step by step how to activate this phone?

    APPLE says:If the previous owner is not present
    Make sure the device is powered on and connected to a Wi-Fi or cellular network. Then contact the previous owner and ask them to follow these steps:
    Sign in to their iCloud account at www.icloud.com/find.
    Select the device from their Find My iPhone device list by clicking All Devices at the top of the screen.
    Erase the device by clicking the Erase button. This will erase all content and settings from the device. When prompted, do not enter a phone number or message. Click Next until the device is erased.
    When the erase is complete, click "Remove from Account" to remove the device from the account.
    After the device has been erased and removed from the account, you can proceed with the device setup process.
    i forgot to erase the phone.i just removed it without erasing.

  • How to Activate the Table which Doesn't Exist - Can I create Table in SE11

    Hi Gurus,
    I am a BASIS Person ..so, I don't have much idea about ABAP Developement side . But, while applying patches to one of  the SAP Component, I get the following error message ( usr\sap\trans\log ) :
    Phase Import_Proper
    >>>
    SAPAIBIIP7.BID
    1 ED0301 *************************************************************************
    1 EDO578XFollowing objects not activated/deleted or activated/deleted w. warning:
    1EEDO519X"Table" "WRMA_S_RESULT_DATA" could not be activated
    1EEDO519 "Table Type" "WRMA_TT_UPDTAB_DSO" could not be activated
    1 ED0313 (E- Row type WRMA_S_RESULT_DATA is not active or does not exist )
    2WEDO517 "Domain" "WRMA_KAPPL" was activated (error in the dependencies)
    2WEDO517 "Data Element" "/RTF/DE_FISCPER" was activated (error in the dependencies)
    2WEDO517 "Data Element" "/RTF/DE_FISCVARNT" was activated (error in the dependencies)
    2WEDO517 "Data Element" "WRMA_DE_RCLASV" was activated (error in the dependencies)
    2WEDO517 "Data Element" "WRMA_DE_RMA_AMNT" was activated (error in the dependencies)
    2WEDO517 "Data Element" "WRMA_DE_RMA_INV" was activated (error in the dependencies)
    2WEDO517 "Data Element" "WRMA_DE_RMA_OBJ" was activated (error in the dependencies)
    2WEDO549 "Table" "V_WRMA_TRCLASVER" was activated (warning for the dependent tables)
    2WEDO549 "Table" "V_WRMA_TRCLASVPE" was activated (warning for the dependent tables)
    2WEDO549 "Table" "V_WRMA_TRCLPERCL" was activated (warning for the dependent tables)
    2WEDO549 "Table" "WRMA_S_STOCK_SELECTION_DATE" was activated (warning for the dependent tables)
    <<<
    Now, I checked Domain WRMA_KAPPL  in SE11 and it diplays that it is partially active :
    " The obeject is marked partially active for the following reasons :
       Errors occured when adjusting dependent Objects to a change. Some of the dependent objects could not
       be adjusted to this change. To adjust the dependent objects, you must perform the following actions
       the next time you activate this object.
                        - SET THE SYNP TIME STAMP IN THE RUNTIME OBJECT OFALL DEPENDENT OBJECTS
    My question is - how to activate this SYNP Time Stamp.. ?
                          - Once I activate this SYNP Time Stamp.. How do I activate this ..in SE11 or some other
                            TCode..
    Any / ALL Help is highy appreciated and would be rewarded with appropriate Reward Points.
    Thanks,
    Regards,
    - Ishan
    >> Ok, Now I forcefully activated the Domain and then all the 5  Data Elements in SE11 ...now I have error
         that table  WRMA_S_RESULT_DATA  and WRMA_TT_UPDTAB_DSO Could not be activated...
         ..And in SE11 > Input the first / Second Table  > Excute > Output : Table Does not Exist !!!
          - Now, How do I activate something which does not exist in the first place ?
        Any Input about this ?
    Thanks,
    Regards,
    - Ishan
    Edited by: ISHAN P on Jun 19, 2008 3:44 PM

    Read note 1152612 - Incorrect component type in structure WRMA_S_RESULT_DATA.
    The error occurs in Release BI_CONT 703 Support Package 9.
    If you require an advance correction for Support Package 9, make the following manual changes if the InfoObject 0TCTLSTCHG is inactive in your system.
    1. Use transaction RSA1 to call the Data Warehousing Workbench.
    2. Check whether the InfoObject 0TCTLSTCHG was already activated by the compilation process the first time you called transaction RSA1.  You can use transaction RSD1 to check this by entering 0TCTLSTCHG in the "InfoObject" field and choosing "Display".  Proceed as follows if the InfoObject is still not active:
    3. Go to BI Content activation.
    4. Select "Object Types".
    5. Open the "InfoObjects" tree and select "Objects".
    6. Search for the InfoObject 0TCTLSTCHG and select it.
    7. Transfer the object and activate it.
    These steps activate the required component type /BI0/OITCTLSTCHG. You can check again in transaction RSD1 to ensure that the InfoObject 0TCTLSTCHG is available as active.
    Jacek Fornalczyk

  • PR05 - How to activate a Function in the Object Services Toolbox

    Hi,
    How do I activate a function in the Object Services Toolbox?
    In transaction PR05 (Travel Expense Manager) select any trip and then click on 'Change'. This takes you to the screen for the individual trip.
    On the top left of the screen is the 'Object Services Toolbox'.
    If I drop down on this list then select 'Create' there are 5 options under 'Create' i.e. 'Create attachment', Create Note', 'Create External Document', 'Store Bus. Doc', and 'Enter Bar Code'.
    The 'Enter Bar Code' is deactivated. I would like to know how to activate this.
    Thank you.
    Warren.

    no idea

  • How to activate a function in the Object Services Toolbox of PR05

    Hi,
    In transaction PR05 (Travel Expense Manager) select any trip and then click on 'Change'. This takes you to the screen for the individual trip.
    On the top left of the screen is the 'Object Services Toolbox'.
    If I drop down on this list then select 'Create' there are 5 options under 'Create' i.e. 'Create attachment', Create Note', 'Create External Document', 'Store Bus. Doc', and 'Enter Bar Code'.
    The 'Enter Bar Code' is deactivated. I would like to know how to activate this.
    Thank you.
    Warren.

    I think you need to check for IMG transaction code OAC5 & OAC3 and also check IMG configuration setting under
    Application server-->basis services > Archive Link> customizing incoming documents--> bar code scenarios

  • How to activate material ledger field under accounting data

    Hi
    can any body give me solution for following
    i am creating a MIGO for capital Purchase order for (Project capital material-PROJ) with WBS ELEMENT.
    While clicking check button while doing migo error is showing
    "Material xxxx for plant xxxx material ledger not activated"
    when i am trying to change mode under accounting view
    ML ACTIVE FIELD is grey. How to activate this field.
    Please give me solution.
    Thanks
    Nirmal

    tx. OMX1

  • How to activate field contract in transaction F-43.

    Hello.
    In transaction F-43 is hidden field "Contract". How to activate this field (BSEG-VERTN) ?
    I am waiting dor help.
    Bogdan

    Hello.
    I have solved this problem myself by changing configuration for "Field status group" for this kind of account.
    Best regards
    Bogdan

  • How to activate IS-Retail in ECC6.0

    Hi,
    We are running ECC6.0 , Please sugegst how to activate IS-Retail in ECC6.0.
    In Service market place i can find SAP-Retail master guide , it does not talk about IS-Reatil activation.
    Please let me know , how to activate this.
    - Kristene

    Hello
    This post is back.
    We are going to upgrade our SAP system from 4.6C to ECC6 for SD/MM/WM/FI/CO.
    We plan to implement just after this upgrade SAP Retail for fashion as our core system.
    One of the advises we get is to activate a Retail parameter during the upgrade: it will ease the further implementation.
    We have to analyse the impact on our upgrade project:
    - what is this parameter ?
    - are there any impacts on the existing modules ?
    - the standard MM module is compatible with the Retail MM module ?
    - is there any particular need in term of architecture we have to plan by activating the Retail parameter ?
    In fact, why should we activate this parameter during the upgrade and not after the upgrade ?
    Is there somebody who can help me ?
    Thank you very much
    Best regards
    Vincent

  • How to activate distributed rendering?

    Hi,
    as importing many/bigger clips and rendering them in Final Cut Pro X takes some time i wanted to use the distributed rendering for that to use all the macs in the network. Starting Final Cut Pro X on all these machines did not seem to have any effect out of the box, and Final Cut does not contain no obvious settings to enable distributed rendering in the preferences. But some day i noticed the litte arrow at the background actions window at the last line "sharing". I clicked on it and share monitor opened up, but it just showed the local machine. As there was still nothing to configure here i became curious and searched a little and found out, that i would need something called "QMaster". As there was no obvious way to get this i purchased compressor, which seems to contain this. After installing qmaster i was able to setup each mach so that they are listed in the share monitor and are visible from each other. But: There is still no distributed rendering happing, and i am getting out of clues now on how to activate this feature for importing and rendering clips. Can anyone help me on getting the distributed rendering to work?
    When creating a film i now have the option to send it to compressor. When i do so it opens compressor (btw. this program has a terrible user interface) and when i click on "send" it opens a selection, where i can select a cluster and it only presents one entry to select, my computer. So how has this to be set up to wark flawlessly? Or is this feature not working yet?
    Thanks for your help in advance...

    I know, late response, but since this comes up on search I thought I'd post a hard-won answer.
    The way to work with clusters today is via Compressor only. And Compressor can't work on a grid with something that's not entirely inside a QuickTime container. That's what it uses to slice and distribute the processing.
    So the first thing you must do is Share the default Master File for your FCPX project. Set it to open in Compressor to save you a step. That will render the project into a ProRes file on the computer you share it from (so pick a fast one), which you may then transcode into any of your preferred delivery formats in Compressor across your cluster. Just drag up the preferred formats, click submit, and then pick your cluster to do the transcoding on.
    This works out OK in practice; it's a lot easier for Apple to handle on their end because they just have to slice up a ProRes file for the different CPU's and then stitch it back together for delivery. They gave up on Compressor or Qmaster working directly with an unrendered FCPX project; I imagine there were too many bugs with various plugins and contingencies etc.
    Pity they don't explain this more clearly though right in the program. They could have "Transcode on Cluster..." as a default Share destination, which would then tell you what you need to do, even though it would be exactly what I just described. But I guess that would violate Apple Minimalism.

  • How to activate the logon screen modification

    Hi,
    i modified the logon screen with some other pictures colours and texts. But I don't find how to activate this.
    I'm on EP6 sp7. The document that is available is can be used only for EP6 SP 2.
    Is there any body who can help me?
    Thanks

    you should change the pictures in the rootfolder of the IRJ directory.
    good luck,
    Daniel

  • I bought an I pad 2 from us but I can not activate the Facetime in UAE(Dubai)as I can not see the country in the I pad's  drop list, anyone has an idea as how to resolve this issue

    I bought an I pad 2 from us but I can not activate the Facetime in UAE(Dubai)as I can not see the country in the I pad's  drop list, anyone has an idea as to how to resolve this issue

    I'm not that familiar with how FaceTime works. I know how to set It up but I don't use it. I just know that you can't activate in the UAE. I believe that you can activate in any country that permits it's use. Whether you will need a new ID or not, I can't confirm.
    You can Google this and get all sorts of articles on workarounds. Apparently if you set up a VPN you can use it in the UAE. Here is one article that I found.
    http://talkfree7.blogspot.com/2010/09/how-to-facetime-voip-call-from-uae.html
    I Googled "workaround for FaceTime in UAE" to find this.

  • How do I convert this Applet to launch from a JFrame instead??

       A simple program where the user can sketch curves and shapes in a
       variety of colors on a variety of background colors.  The user selects
       a drawing color form a pop-up menu at the top of the
       applet.  If the user clicks "Set Background", the background
       color is set to the current drawing color and the drawing
       area is filled with that color.  If the user clicks "Clear",
       the drawing area is just filled with the current background color.
       The user selects the shape to draw from another pop-up menu at the
       top of the applet.  The user can draw free-hand curves, straight
       lines, and one of six different types of shapes.
       The user's drawing is saved in an off-screen image, which is
       used to refresh the screen when repainting.  The picture is
       lost if the applet changes size, however.
       This file defines two classes, SimplePaint3,class, and
       class, SimplePaint3$Display.class.
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class SimplePaint3 extends JApplet {
            // The main applet class simply sets up the applet.  Most of the
            // work is done in the Display class.
       JComboBox colorChoice, figureChoice;  // Pop-up menus, defined as instance
                                             // variables so that the Display
                                             // class can see them.
       public void init() {
          setBackground(Color.gray);
          getContentPane().setBackground(Color.gray);
          Display canvas = new Display();  // The drawing area.
          getContentPane().add(canvas,BorderLayout.CENTER);
          JPanel buttonBar = new JPanel();       // A panel to hold the buttons.
          buttonBar.setBackground(Color.gray);
          getContentPane().add(buttonBar, BorderLayout.SOUTH);
          JPanel choiceBar = new JPanel();       // A panel to hole the pop-up menus
          choiceBar.setBackground(Color.gray);
          getContentPane().add(choiceBar, BorderLayout.NORTH);
          JButton fill = new JButton("Set Background");  // The first button.
          fill.addActionListener(canvas);
          buttonBar.add(fill);
          JButton clear = new JButton("Clear");   // The second button.
          clear.addActionListener(canvas);
          buttonBar.add(clear);
          colorChoice = new JComboBox();  // The pop-up menu of colors.
          colorChoice.addItem("Black");
          colorChoice.addItem("Red");
          colorChoice.addItem("Green");
          colorChoice.addItem("Blue");
          colorChoice.addItem("Cyan");
          colorChoice.addItem("Magenta");
          colorChoice.addItem("Yellow");
          colorChoice.addItem("White");
          colorChoice.setBackground(Color.white);
          choiceBar.add(colorChoice);
          figureChoice = new JComboBox();  // The pop-up menu of shapes.
          figureChoice.addItem("Curve");
          figureChoice.addItem("Straight Line");
          figureChoice.addItem("Rectangle");
          figureChoice.addItem("Oval");
          figureChoice.addItem("RoundRect");
          figureChoice.addItem("Filled Rectangle");
          figureChoice.addItem("Filled Oval");
          figureChoice.addItem("Filled RoundRect");
          figureChoice.setBackground(Color.white);
          choiceBar.add(figureChoice);
       }  // end init()
       public Insets getInsets() {
              // Specify how wide a border to leave around the edges of the applet.
          return new Insets(3,3,3,3);
       private class Display extends JPanel
                  implements MouseListener, MouseMotionListener, ActionListener {
               // Nested class Display represents the drawing surface of the
               // applet.  It lets the user use the mouse to draw colored curves
               // and shapes.  The current color is specified by the pop-up menu
               // colorChoice.  The current shape is specified by another pop-up menu,
               // figureChoice.  (These are instance variables in the main class.)
               // The panel also listens for action events from buttons
               // named "Clear" and "Set Background".  The "Clear" button fills
               // the panel with the current background color.  The "Set Background"
               // button sets the background color to the current drawing color and
               // then clears.  These buttons are set up in the main class.
          private final static int
                      BLACK = 0,
                      RED = 1,            // Some constants to make
                      GREEN = 2,          // the code more readable.
                      BLUE = 3,           // These numbers code for
                      CYAN = 4,           // the different drawing colors.
                      MAGENTA = 5,
                      YELLOW = 6,
                      WHITE = 7;
          private final static int
                     CURVE = 0,
                     LINE = 1,
                     RECT = 2,               // Some constants that code
                     OVAL = 3,               // for the different types of
                     ROUNDRECT = 4,          // figure the program can draw.
                     FILLED_RECT = 5,
                     FILLED_OVAL = 6,
                     FILLED_ROUNDRECT = 7;
          /* Some variables used for backing up the contents of the panel. */
          Image OSI;  // The off-screen image (created in checkOSI()).
          int widthOfOSI, heightOfOSI;  // Current width and height of OSI.  These
                                        // are checked against the size of the applet,
                                        // to detect any change in the panel's size.
                                        // If the size has changed, a new OSI is created.
                                        // The picture in the off-screen image is lost
                                        // when that happens.
          /* The following variables are used when the user is sketching a
             curve while dragging a mouse. */
          private int mouseX, mouseY;   // The location of the mouse.
          private int prevX, prevY;     // The previous location of the mouse.
          private int startX, startY;   // The starting position of the mouse.
                                        // (Not used for drawing curves.)
          private boolean dragging;     // This is set to true when the user is drawing.
          private int figure;    // What type of figure is being drawn.  This is
                                 //    specified by the figureChoice menu.
          private Graphics dragGraphics;  // A graphics context for the off-screen image,
                                          // to be used while a drag is in progress.
          private Color dragColor;  // The color that is used for the figure that is
                                    // being drawn.
          Display() {
                 // Constructor.  When this component is first created, it is set to
                 // listen for mouse events and mouse motion events from
                 // itself.  The initial background color is white.
             addMouseListener(this);
             addMouseMotionListener(this);
             setBackground(Color.white);
          private void drawFigure(Graphics g, int shape, int x1, int y1, int x2, int y2) {
                // This method is called to do ALL drawing in this applet!
                // Draws a shape in the graphics context g.
                // The shape paramter tells what kind of shape to draw.  This
                // can be LINE, RECT, OVAL, ROUNTRECT, FILLED_RECT,
                // FILLED_OVAL, or FILLED_ROUNDRECT.  (Note that a CURVE is
                // drawn by drawing multiple LINES, so the shape parameter is
                // never equal to CURVE.)  For a LINE, a line is drawn from
                // the point (x1,y1) to (x2,y2).  For other shapes,  the
                // points (x1,y1) and (x2,y2) give two corners of the shape
                // (or of a rectangle that contains the shape).
             if (shape == LINE) {
                   // For a line, just draw the line between the two points.
                g.drawLine(x1,y1,x2,y2);
                return;
             int x, y;  // Top left corner of rectangle that contains the figure.
             int w, h;  // Width and height of rectangle that contains the figure.
             if (x1 >= x2) {  // x2 is left edge
                x = x2;
                w = x1 - x2;
             else {          // x1 is left edge
                x = x1;
                w = x2 - x1;
             if (y1 >= y2) {  // y2 is top edge
                y = y2;
                h = y1 - y2;
             else {          // y1 is top edge.
                y = y1;
                h = y2 - y1;
             switch (shape) {   // Draw the appropriate figure.
                case RECT:
                   g.drawRect(x, y, w, h);
                   break;
                case OVAL:
                   g.drawOval(x, y, w, h);
                   break;
                case ROUNDRECT:
                   g.drawRoundRect(x, y, w, h, 20, 20);
                   break;
                case FILLED_RECT:
                   g.fillRect(x, y, w, h);
                   break;
                case FILLED_OVAL:
                   g.fillOval(x, y, w, h);
                   break;
                case FILLED_ROUNDRECT:
                   g.fillRoundRect(x, y, w, h, 20, 20);
                   break;
          private void repaintRect(int x1, int y1, int x2, int y2) {
                // Call repaint on a rectangle that contains the points (x1,y1)
                // and (x2,y2).  (Add a 1-pixel border along right and bottom
                // edges to allow for the pen overhang when drawing a line.)
             int x, y;  // top left corner of rectangle that contains the figure
             int w, h;  // width and height of rectangle that contains the figure
             if (x2 >= x1) {  // x1 is left edge
                x = x1;
                w = x2 - x1;
             else {          // x2 is left edge
                x = x2;
                w = x1 - x2;
             if (y2 >= y1) {  // y1 is top edge
                y = y1;
                h = y2 - y1;
             else {          // y2 is top edge.
                y = y2;
                h = y1 - y2;
             repaint(x,y,w+1,h+1);
          private void checkOSI() {
               // This method is responsible for creating the off-screen image.
               // It should be called before using the OSI.  It will make a new OSI if
               // the size of the panel changes.
             if (OSI == null || widthOfOSI != getSize().width || heightOfOSI != getSize().height) {
                    // Create the OSI, or make a new one if panel size has changed.
                OSI = null;  // (If OSI already exists, this frees up the memory.)
                OSI = createImage(getSize().width, getSize().height);
                widthOfOSI = getSize().width;
                heightOfOSI = getSize().height;
                Graphics OSG = OSI.getGraphics();  // Graphics context for drawing to OSI.
                OSG.setColor(getBackground());
                OSG.fillRect(0, 0, widthOfOSI, heightOfOSI);
                OSG.dispose();
          public void paintComponent(Graphics g) {
               // Copy the off-screen image to the screen,
               // after checking to make sure it exists.  Then,
               // if a shape other than CURVE is being drawn,
               // draw it on top of the image from the OSI.
             checkOSI();
             g.drawImage(OSI, 0, 0, this);
             if (dragging && figure != CURVE) {
                g.setColor(dragColor);
                drawFigure(g,figure,startX,startY,mouseX,mouseY);
          public void actionPerformed(ActionEvent evt) {
                  // Respond when the user clicks on a button.  The
                  // command must be either "Clear" or "Set Background".
             String command = evt.getActionCommand();
             checkOSI();
             if (command.equals("Set Background")) {
                    // Set background color before clearing.
                    // Change the selected color so it is different
                    // from the background color.
                setBackground(getCurrentColor());
                if (colorChoice.getSelectedIndex() == BLACK)
                   colorChoice.setSelectedIndex(WHITE);
                else
                   colorChoice.setSelectedIndex(BLACK);
             Graphics g = OSI.getGraphics();
             g.setColor(getBackground());
             g.fillRect(0,0,getSize().width,getSize().height);
             g.dispose();
             repaint();
          private Color getCurrentColor() {
                   // Check the colorChoice menu to find the currently
                   // selected color, and return the appropriate color
                   // object.
             int currentColor = colorChoice.getSelectedIndex();
             switch (currentColor) {
                case BLACK:
                   return Color.black;
                case RED:
                   return Color.red;
                case GREEN:
                   return Color.green;
                case BLUE:
                   return Color.blue;
                case CYAN:
                   return Color.cyan;
                case MAGENTA:
                   return Color.magenta;
                case YELLOW:
                   return Color.yellow;
                default:
                   return Color.white;
          public void mousePressed(MouseEvent evt) {
                  // This is called when the user presses the mouse on the
                  // panel.  This begins a draw operation in which the user
                  // sketches a curve or draws a shape.  (Note that curves
                  // are handled differently from other shapes.  For CURVE,
                  // a new segment of the curve is drawn each time the user
                  // moves the mouse.  For the other shapes, a "rubber band
                  // cursor" is used.  That is, the figure is drawn between
                  // the starting point and the current mouse location.)
             if (dragging == true)  // Ignore mouse presses that occur
                 return;            //    when user is already drawing a curve.
                                    //    (This can happen if the user presses
                                    //    two mouse buttons at the same time.)
             prevX = startX = evt.getX();  // Save mouse coordinates.
             prevY = startY = evt.getY();
             figure = figureChoice.getSelectedIndex();
             dragColor = getCurrentColor();        
             dragGraphics = OSI.getGraphics();
             dragGraphics.setColor(dragColor);
             dragging = true;  // Start drawing.
          } // end mousePressed()
          public void mouseReleased(MouseEvent evt) {
                  // Called whenever the user releases the mouse button.
                  // If the user was drawing a shape, we make the shape
                  // permanent by drawing it to the off-screen image.
              if (dragging == false)
                 return;  // Nothing to do because the user isn't drawing.
              dragging = false;
              mouseX = evt.getX();
              mouseY = evt.getY();
              if (figure == CURVE) {
                     // A CURVE is drawn as a series of LINEs
                  drawFigure(dragGraphics,LINE,prevX,prevY,mouseX,mouseY);
                  repaintRect(prevX,prevY,mouseX,mouseY);
              else if (figure == LINE) {
                 repaintRect(startX,startY,prevX,prevY);
                 if (mouseX != startX || mouseY != startY) {
                       // Draw the line only if it has non-zero length.
                    drawFigure(dragGraphics,figure,startX,startY,mouseX,mouseY);
                    repaintRect(startX,startY,mouseX,mouseY);
              else {
                 repaintRect(startX,startY,prevX,prevY);
                 if (mouseX != startX && mouseY != startY) {
                       // Draw the shape only if both its height
                       // and width are both non-zero.
                    drawFigure(dragGraphics,figure,startX,startY,mouseX,mouseY);
                    repaintRect(startX,startY,mouseX,mouseY);
              dragGraphics.dispose();
              dragGraphics = null;
          public void mouseDragged(MouseEvent evt) {
                   // Called whenever the user moves the mouse while a mouse button
                   // is down.  If the user is drawing a curve, draw a segment of
                   // the curve on the off-screen image, and repaint the part
                   // of the panel that contains the new line segment.  Otherwise,
                   // just call repaint and let paintComponent() draw the shape on
                   // top of the picture in the off-screen image.
              if (dragging == false)
                 return;  // Nothing to do because the user isn't drawing.
              mouseX = evt.getX();   // x-coordinate of mouse.
              mouseY = evt.getY();   // y=coordinate of mouse.
              if (figure == CURVE) {
                     // A CURVE is drawn as a series of LINEs.
                 drawFigure(dragGraphics,LINE,prevX,prevY,mouseX,mouseY);
                 repaintRect(prevX,prevY,mouseX,mouseY);
              else {
                    // Repaint two rectangles:  The one that contains the previous
                    // version of the figure, and the one that will contain the
                    // new version.  The first repaint is necessary to restore
                    // the picture from the off-screen image in that rectangle.
                 repaintRect(startX,startY,prevX,prevY);
                 repaintRect(startX,startY,mouseX,mouseY);
              prevX = mouseX;  // Save coords for the next call to mouseDragged or mouseReleased.
              prevY = mouseY;
          } // end mouseDragged.
          public void mouseEntered(MouseEvent evt) { }   // Some empty routines.
          public void mouseExited(MouseEvent evt) { }    //    (Required by the MouseListener
          public void mouseClicked(MouseEvent evt) { }   //    and MouseMotionListener
          public void mouseMoved(MouseEvent evt) { }     //    interfaces).
       } // end nested class Display
    } // end class SimplePaint3

    Im quite the novice, how exactly do I go about doing that. What I did was to put both in diff files but I got errors saying that they cant find colorChoice, figureChoice in the Display class.
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class Simple extends JFrame implements Display{
            // The main applet class simply sets up the applet.  Most of the
            // work is done in the Display class.
       JComboBox colorChoice, figureChoice;  // Pop-up menus, defined as instance
                                             // variables so that the Display
                                             // class can see them.
       public void init() {
          setBackground(Color.gray);
          getContentPane().setBackground(Color.gray);
          Display canvas = new Display();  // The drawing area.
          getContentPane().add(canvas,BorderLayout.CENTER);
          JPanel buttonBar = new JPanel();       // A panel to hold the buttons.
          buttonBar.setBackground(Color.gray);
          getContentPane().add(buttonBar, BorderLayout.SOUTH);
          JPanel choiceBar = new JPanel();       // A panel to hole the pop-up menus
          choiceBar.setBackground(Color.gray);
          getContentPane().add(choiceBar, BorderLayout.NORTH);
          JButton fill = new JButton("Set Background");  // The first button.
          fill.addActionListener(canvas);
          buttonBar.add(fill);
          JButton clear = new JButton("Clear");   // The second button.
          clear.addActionListener(canvas);
          buttonBar.add(clear);
          colorChoice = new JComboBox();  // The pop-up menu of colors.
          colorChoice.addItem("Black");
          colorChoice.addItem("Red");
          colorChoice.addItem("Green");
          colorChoice.addItem("Blue");
          colorChoice.addItem("Cyan");
          colorChoice.addItem("Magenta");
          colorChoice.addItem("Yellow");
          colorChoice.addItem("White");
          colorChoice.setBackground(Color.white);
          choiceBar.add(colorChoice);
          figureChoice = new JComboBox();  // The pop-up menu of shapes.
          figureChoice.addItem("Curve");
          figureChoice.addItem("Straight Line");
          figureChoice.addItem("Rectangle");
          figureChoice.addItem("Oval");
          figureChoice.addItem("RoundRect");
          figureChoice.addItem("Filled Rectangle");
          figureChoice.addItem("Filled Oval");
          figureChoice.addItem("Filled RoundRect");
          figureChoice.setBackground(Color.white);
          choiceBar.add(figureChoice);
       }  // end init()
    } // end class SimplePaint3
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    class Display extends JPanel
                  implements MouseListener, MouseMotionListener, ActionListener {
               // Nested class Display represents the drawing surface of the
               // applet.  It lets the user use the mouse to draw colored curves
               // and shapes.  The current color is specified by the pop-up menu
               // colorChoice.  The current shape is specified by another pop-up menu,
               // figureChoice.  (These are instance variables in the main class.)
               // The panel also listens for action events from buttons
               // named "Clear" and "Set Background".  The "Clear" button fills
               // the panel with the current background color.  The "Set Background"
               // button sets the background color to the current drawing color and
               // then clears.  These buttons are set up in the main class.
          private final static int
                      BLACK = 0,
                      RED = 1,            // Some constants to make
                      GREEN = 2,          // the code more readable.
                      BLUE = 3,           // These numbers code for
                      CYAN = 4,           // the different drawing colors.
                      MAGENTA = 5,
                      YELLOW = 6,
                      WHITE = 7;
          private final static int
                     CURVE = 0,
                     LINE = 1,
                     RECT = 2,               // Some constants that code
                     OVAL = 3,               // for the different types of
                     ROUNDRECT = 4,          // figure the program can draw.
                     FILLED_RECT = 5,
                     FILLED_OVAL = 6,
                     FILLED_ROUNDRECT = 7;
          /* Some variables used for backing up the contents of the panel. */
          Image OSI;  // The off-screen image (created in checkOSI()).
          int widthOfOSI, heightOfOSI;  // Current width and height of OSI.  These
                                        // are checked against the size of the applet,
                                        // to detect any change in the panel's size.
                                        // If the size has changed, a new OSI is created.
                                        // The picture in the off-screen image is lost
                                        // when that happens.
          /* The following variables are used when the user is sketching a
             curve while dragging a mouse. */
          private int mouseX, mouseY;   // The location of the mouse.
          private int prevX, prevY;     // The previous location of the mouse.
          private int startX, startY;   // The starting position of the mouse.
                                        // (Not used for drawing curves.)
          private boolean dragging;     // This is set to true when the user is drawing.
          private int figure;    // What type of figure is being drawn.  This is
                                 //    specified by the figureChoice menu.
          private Graphics dragGraphics;  // A graphics context for the off-screen image,
                                          // to be used while a drag is in progress.
          private Color dragColor;  // The color that is used for the figure that is
                                    // being drawn.
          Display() {
                 // Constructor.  When this component is first created, it is set to
                 // listen for mouse events and mouse motion events from
                 // itself.  The initial background color is white.
             addMouseListener(this);
             addMouseMotionListener(this);
             setBackground(Color.white);
          private void drawFigure(Graphics g, int shape, int x1, int y1, int x2, int y2) {
                // This method is called to do ALL drawing in this applet!
                // Draws a shape in the graphics context g.
                // The shape paramter tells what kind of shape to draw.  This
                // can be LINE, RECT, OVAL, ROUNTRECT, FILLED_RECT,
                // FILLED_OVAL, or FILLED_ROUNDRECT.  (Note that a CURVE is
                // drawn by drawing multiple LINES, so the shape parameter is
                // never equal to CURVE.)  For a LINE, a line is drawn from
                // the point (x1,y1) to (x2,y2).  For other shapes,  the
                // points (x1,y1) and (x2,y2) give two corners of the shape
                // (or of a rectangle that contains the shape).
             if (shape == LINE) {
                   // For a line, just draw the line between the two points.
                g.drawLine(x1,y1,x2,y2);
                return;
             int x, y;  // Top left corner of rectangle that contains the figure.
             int w, h;  // Width and height of rectangle that contains the figure.
             if (x1 >= x2) {  // x2 is left edge
                x = x2;
                w = x1 - x2;
             else {          // x1 is left edge
                x = x1;
                w = x2 - x1;
             if (y1 >= y2) {  // y2 is top edge
                y = y2;
                h = y1 - y2;
             else {          // y1 is top edge.
                y = y1;
                h = y2 - y1;
             switch (shape) {   // Draw the appropriate figure.
                case RECT:
                   g.drawRect(x, y, w, h);
                   break;
                case OVAL:
                   g.drawOval(x, y, w, h);
                   break;
                case ROUNDRECT:
                   g.drawRoundRect(x, y, w, h, 20, 20);
                   break;
                case FILLED_RECT:
                   g.fillRect(x, y, w, h);
                   break;
                case FILLED_OVAL:
                   g.fillOval(x, y, w, h);
                   break;
                case FILLED_ROUNDRECT:
                   g.fillRoundRect(x, y, w, h, 20, 20);
                   break;
          private void repaintRect(int x1, int y1, int x2, int y2) {
                // Call repaint on a rectangle that contains the points (x1,y1)
                // and (x2,y2).  (Add a 1-pixel border along right and bottom
                // edges to allow for the pen overhang when drawing a line.)
             int x, y;  // top left corner of rectangle that contains the figure
             int w, h;  // width and height of rectangle that contains the figure
             if (x2 >= x1) {  // x1 is left edge
                x = x1;
                w = x2 - x1;
             else {          // x2 is left edge
                x = x2;
                w = x1 - x2;
             if (y2 >= y1) {  // y1 is top edge
                y = y1;
                h = y2 - y1;
             else {          // y2 is top edge.
                y = y2;
                h = y1 - y2;
             repaint(x,y,w+1,h+1);
          private void checkOSI() {
               // This method is responsible for creating the off-screen image.
               // It should be called before using the OSI.  It will make a new OSI if
               // the size of the panel changes.
             if (OSI == null || widthOfOSI != getSize().width || heightOfOSI != getSize().height) {
                    // Create the OSI, or make a new one if panel size has changed.
                OSI = null;  // (If OSI already exists, this frees up the memory.)
                OSI = createImage(getSize().width, getSize().height);
                widthOfOSI = getSize().width;
                heightOfOSI = getSize().height;
                Graphics OSG = OSI.getGraphics();  // Graphics context for drawing to OSI.
                OSG.setColor(getBackground());
                OSG.fillRect(0, 0, widthOfOSI, heightOfOSI);
                OSG.dispose();
          public void paintComponent(Graphics g) {
               // Copy the off-screen image to the screen,
               // after checking to make sure it exists.  Then,
               // if a shape other than CURVE is being drawn,
               // draw it on top of the image from the OSI.
             checkOSI();
             g.drawImage(OSI, 0, 0, this);
             if (dragging && figure != CURVE) {
                g.setColor(dragColor);
                drawFigure(g,figure,startX,startY,mouseX,mouseY);
          public void actionPerformed(ActionEvent evt) {
                  // Respond when the user clicks on a button.  The
                  // command must be either "Clear" or "Set Background".
             String command = evt.getActionCommand();
             checkOSI();
             if (command.equals("Set Background")) {
                    // Set background color before clearing.
                    // Change the selected color so it is different
                    // from the background color.
                setBackground(getCurrentColor());
                if (colorChoice.getSelectedIndex() == BLACK)
                   colorChoice.setSelectedIndex(WHITE);
                else
                   colorChoice.setSelectedIndex(BLACK);
             Graphics g = OSI.getGraphics();
             g.setColor(getBackground());
             g.fillRect(0,0,getSize().width,getSize().height);
             g.dispose();
             repaint();
          private Color getCurrentColor() {
                   // Check the colorChoice menu to find the currently
                   // selected color, and return the appropriate color
                   // object.
             int currentColor = colorChoice.getSelectedIndex();
             switch (currentColor) {
                case BLACK:
                   return Color.black;
                case RED:
                   return Color.red;
                case GREEN:
                   return Color.green;
                case BLUE:
                   return Color.blue;
                case CYAN:
                   return Color.cyan;
                case MAGENTA:
                   return Color.magenta;
                case YELLOW:
                   return Color.yellow;
                default:
                   return Color.white;
          public void mousePressed(MouseEvent evt) {
                  // This is called when the user presses the mouse on the
                  // panel.  This begins a draw operation in which the user
                  // sketches a curve or draws a shape.  (Note that curves
                  // are handled differently from other shapes.  For CURVE,
                  // a new segment of the curve is drawn each time the user
                  // moves the mouse.  For the other shapes, a "rubber band
                  // cursor" is used.  That is, the figure is drawn between
                  // the starting point and the current mouse location.)
             if (dragging == true)  // Ignore mouse presses that occur
                 return;            //    when user is already drawing a curve.
                                    //    (This can happen if the user presses
                                    //    two mouse buttons at the same time.)
             prevX = startX = evt.getX();  // Save mouse coordinates.
             prevY = startY = evt.getY();
             figure = figureChoice.getSelectedIndex();
             dragColor = getCurrentColor();        
             dragGraphics = OSI.getGraphics();
             dragGraphics.setColor(dragColor);
             dragging = true;  // Start drawing.
          } // end mousePressed()
          public void mouseReleased(MouseEvent evt) {
                  // Called whenever the user releases the mouse button.
                  // If the user was drawing a shape, we make the shape
                  // permanent by drawing it to the off-screen image.
              if (dragging == false)
                 return;  // Nothing to do because the user isn't drawing.
              dragging = false;
              mouseX = evt.getX();
              mouseY = evt.getY();
              if (figure == CURVE) {
                     // A CURVE is drawn as a series of LINEs
                  drawFigure(dragGraphics,LINE,prevX,prevY,mouseX,mouseY);
                  repaintRect(prevX,prevY,mouseX,mouseY);
              else if (figure == LINE) {
                 repaintRect(startX,startY,prevX,prevY);
                 if (mouseX != startX || mouseY != startY) {
                       // Draw the line only if it has non-zero length.
                    drawFigure(dragGraphics,figure,startX,startY,mouseX,mouseY);
                    repaintRect(startX,startY,mouseX,mouseY);
              else {
                 repaintRect(startX,startY,prevX,prevY);
                 if (mouseX != startX && mouseY != startY) {
                       // Draw the shape only if both its height
                       // and width are both non-zero.
                    drawFigure(dragGraphics,figure,startX,startY,mouseX,mouseY);
                    repaintRect(startX,startY,mouseX,mouseY);
              dragGraphics.dispose();
              dragGraphics = null;
          public void mouseDragged(MouseEvent evt) {
                   // Called whenever the user moves the mouse while a mouse button
                   // is down.  If the user is drawing a curve, draw a segment of
                   // the curve on the off-screen image, and repaint the part
                   // of the panel that contains the new line segment.  Otherwise,
                   // just call repaint and let paintComponent() draw the shape on
                   // top of the picture in the off-screen image.
              if (dragging == false)
                 return;  // Nothing to do because the user isn't drawing.
              mouseX = evt.getX();   // x-coordinate of mouse.
              mouseY = evt.getY();   // y=coordinate of mouse.
              if (figure == CURVE) {
                     // A CURVE is drawn as a series of LINEs.
                 drawFigure(dragGraphics,LINE,prevX,prevY,mouseX,mouseY);
                 repaintRect(prevX,prevY,mouseX,mouseY);
              else {
                    // Repaint two rectangles:  The one that contains the previous
                    // version of the figure, and the one that will contain the
                    // new version.  The first repaint is necessary to restore
                    // the picture from the off-screen image in that rectangle.
                 repaintRect(startX,startY,prevX,prevY);
                 repaintRect(startX,startY,mouseX,mouseY);
              prevX = mouseX;  // Save coords for the next call to mouseDragged or mouseReleased.
              prevY = mouseY;
          } // end mouseDragged.
          public void mouseEntered(MouseEvent evt) { }   // Some empty routines.
          public void mouseExited(MouseEvent evt) { }    //    (Required by the MouseListener
          public void mouseClicked(MouseEvent evt) { }   //    and MouseMotionListener
          public void mouseMoved(MouseEvent evt) { }     //    interfaces).
       } // end nested class Display

Maybe you are looking for

  • How can I recover documents that were stores in the pages app?

    I have an original iPad. This evening, as I was using it, I got a message that an update was available for pages. I selected "update". It attempted to install the new pages and froze. I connect to iTunes to try to get it back to old version of pages

  • Quality Intergrtion with other Modules

    Dear Gurus, I have activated quality inspection for all the incoming raw material. GRN is carried out in two step i.e.103+105. At 105 inspections lot are generated. 1.     When the Material is accepted what is effect on the MM+FI Module? 2.     When

  • How will come back 5th list to 3rd list in interactive reporting

    hi all, which of this code is correct to comeback 5th to 3rd list at user-command. case sy-ucomm. when 'back'. if sy-lsind = 5. sy-lsind = 3. endif. endcase. or at user-command. case sy-ucomm. when 'back'. if sy-lsind = 5. sy-lsind = 2. endif. endcas

  • Business rules security in task lists

    Hi experts, I have question regarding security in business rules, the problem is that we have, lets say, 10 users who have all access to a tasklist, but not all of them have access to the same forms / business rules. The ideal would be that if a user

  • Reg. Reporting Agent

    hi Will anyone explain about Reporting Agent and BW Crystal Reports. Thanks regards Sridhar [email protected]