PlaniSphere. Creating a plug-in for PlaniSphere.
|
|
- Suzanna Preston
- 6 years ago
- Views:
Transcription
1 Creating a plug-in for PlaniSphere Creating a plug-in requires a developer to implement SpatialPlugin and SpatialPluginFrame interfaces (see Figure 1). The SpatialPlugin interface defines methods that are required by the plug-in infrastructure to manage the plug-in. If this plug-in needs to have its own window than the SpatialPluginFrame interface must be implemented. The SpatialPluginFrame interface defines methods for managing the plug-in window. If the plug-in that you are developing needs a window than you must implement both interfaces, that is SpatialPlugin and SpatialPluginFrame (see MyPluginWithFrame in figure 1). If the plug-in that you are developing does not need a window than you must implement one interface, that is SpatialPlugin (see MyPlugin in figure 1). For a complete implementation of a plug-in please see the WikipediaPlugin in the Coding a New Plugin section. Figure 1: Implementing a PlaniSphere plug-in Page 1 of 8
2 Pros of the Plug-in Infrastructure The plug-in infrastructure is entirely separate from PlaniSphere. That means that its source code is independent of PlaniSphere and it is also packaged independently of PlaniSphere. The plug-ins that are created using this infrastructure can be used by any application that uses this plug-in infrastructure. Demo Plug-ins There are three demo plug-ins developed: NMEAPlugin, SysInfoPlugin and WikipediaPlugin. SysInfoPlugin is the simplest plug-in. It provides information with regards to the Java virtual machine that the application (PlaniSphere) executes within. This plug-in is used to test the functionality provided by the SpatialPlugin and SpatialPluginFrame. This plug-in does not interact with the map. The NMEAPlugin is used to test the SpatialPlugin interface, SpatialPluginFrame intrface and also the SPI provided by the SpatialPluginServiceImplementation interface. NMEAPluginplug-in can load any NMEA text file produced by any GPS/Glonass/Galileo receiver. The path from the NMEA text file may be displayed on the virtual globe. This plug-in tests the interaction of the plug-in with a newly created layer that displays location information in the virtual globe. The WikipediaPlugin is a plug-in that has functionality that is beyond the scope of testing for the plug-in infrastructure. The WikipediaPlugin can extract spatial data from Wikipedia using the Wikipedia GeoData extension. Documentation using Wikipedia s GeoData extension is available at The WikipediaPlugin will extract spatial information and will plot it on the map. It will plot points of interest and label them. In Figure 2 the POI are extracted from Wikipedia. The POI are the red markers and the light blue labels. Wikipedia, a social networking site may be used as a source for geospatial metadata. Page 2 of 8
3 Figure 2: A Bing Aerial base layer with an OpenStreetMap overlay layer. Coding a New Plug-in Creating a new plug-in is extremely easy. The plug-in developer needs to implement the SpatialPlugin interface and the optional SpatialPluginFrame interface. The code that represents the plug-in needs to be packaged as a jar file. The code for the Wikipedia plug-in is available in Listing 1. The plug-in Jar file can be loaded by the plug-in infrastructure by modifying PlaniSphere s config.xml. Listing 2 exhibits the configuration requirements for PlaniSphere s config.xml used to load the Wikipedia plug-in. Listing 1: The Java code representing the Wikipedia Plug-in implementation package com.zerotrak.plugin.examples; import com.zerotrak.plugin.genericmapmarker; import com.zerotrak.plugin.plugindata; import com.zerotrak.plugin.spatialplugin; import com.zerotrak.plugin.spatialpluginframe; import com.zerotrak.plugin.spatialpluginserviceimplementation; import com.zerotrak.plugin.spatialpluginversion; import java.awt.event.actionevent; Page 3 of 8
4 import java.awt.event.actionlistener; import java.io.ioexception; import java.io.inputstream; import java.net.malformedurlexception; import java.net.url; import javax.json.json; import javax.json.jsonarray; import javax.json.jsonnumber; import javax.json.jsonobject; import javax.json.jsonreader; import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jlabel; import javax.swing.jpanel; import javax.swing.springlayout; /** * mihal */ public class WikipediaPlugin implements SpatialPlugin, SpatialPluginFrame, ActionListener { private final String layername = "Wikipedia"; SpatialPluginServiceImplementation spsi; boolean pluginstatus; JFrame frame; private String vendor = "ZeroTrak"; private String description = "A plugin for displaying points of interest from Wikipedia."; private SpatialPluginVersion version = new SpatialPluginVersion(0, 1, 0); JButton extractpoibutton; JButton clearpoibutton; public WikipediaPlugin() { pluginstatus = false; frame = new JFrame("Wikipedia POI Extractor"); JLabel titlelabel = new JLabel("Wikipedia Extractor"); JPanel titlepanel = new JPanel(); titlepanel.add(titlelabel); extractpoibutton = new JButton("Extract POI"); extractpoibutton.addactionlistener(this); clearpoibutton = new JButton("Clear POI"); clearpoibutton.addactionlistener(this); SpringLayout layout = new SpringLayout(); Page 4 of 8
5 frame.setlayout(layout); frame.add(titlepanel); frame.add(extractpoibutton); frame.add(clearpoibutton); layout.putconstraint(springlayout.west, titlepanel, 10, SpringLayout.WEST, layout.putconstraint(springlayout.north, titlepanel, 10, SpringLayout.NORTH, layout.putconstraint(springlayout.east, titlepanel, 10, SpringLayout.EAST, layout.putconstraint(springlayout.west, extractpoibutton, 10, SpringLayout.WEST, layout.putconstraint(springlayout.north, extractpoibutton, 10, SpringLayout.SOUTH, titlepanel); layout.putconstraint(springlayout.west, clearpoibutton, 10, SpringLayout.EAST, extractpoibutton); layout.putconstraint(springlayout.north, clearpoibutton, 10, SpringLayout.SOUTH, titlepanel); //layout.putconstraint(springlayout.east, clearpoibutton, 10, SpringLayout.EAST, frame.setsize(300, 300); public void actionperformed(actionevent ae) { if (ae.getsource()== extractpoibutton) { double [] center = spsi.getcenter(); System.out.println("Center: " + center[0] + ", " + center[1]); processlocation(center[0], center[1], 1000); else if (ae.getsource() == clearpoibutton) { spsi.clearlayer(layername); public void addmarker(double latitude, double longitude, String description) { GenericMapMarker currentposition = spsi.createmapmarker(description); currentposition.setlat(latitude); currentposition.setlon(longitude); spsi.addmarkertolayer(layername, currentposition); Page 5 of 8
6 public void processlocation(double latitude, double longitude, int radius) { String urlstr = " + radius + "&gscoord=" + latitude + " " + longitude; try { URL url = new URL(urlStr); InputStream is = url.openstream(); JsonReader rdr = Json.createReader(is); JsonObject obj = rdr.readobject(); JsonObject queryobj = obj.getjsonobject("query"); //System.out.println(queryObj.toString()); JsonArray geosearcharray = queryobj.getjsonarray("geosearch"); //System.out.println(geosearchArray.toString()); /* for (Object o:geosearcharray) { System.out.println(o.toString()); */ for (int i = 0; i<geosearcharray.size(); i++) { System.out.print(i + ": "); JsonObject poi = geosearcharray.getjsonobject(i); String title = poi.getstring("title"); System.out.print(title + ", "); JsonNumber latnum = poi.getjsonnumber("lat"); System.out.print(latNum + " by "); JsonNumber lonnum = poi.getjsonnumber("lon"); System.out.println(lonNum); addmarker(latnum.doublevalue(), lonnum.doublevalue(), title); catch (MalformedURLException murle) { catch (IOException ioe) { public PluginData getplugindata() { PluginData pd = new PluginData(this.getClass().getCanonicalName(), description, "created"); Page 6 of 8
7 pd.setspatialplugininstance(this); return pd; public String getvendor() { return vendor; public SpatialPluginVersion getversion() { return version; public void active(boolean status) { pluginstatus = status; public boolean isactive() { return pluginstatus; public void setvisible(boolean status) { frame.setvisible(status); public boolean isvisible() { return frame.isvisible(); public void setsize(int width, int height) { frame.setsize(width, height); public int getwidth() { return frame.getwidth(); public int getheight() { return frame.getheight(); public void setspatialpluginserviceimplementation(spatialpluginserviceimplementation spsi) { this.spsi = spsi; // create gps marker and layer to display it on the map //currentposition = spsi.createmapmarker("current Position"); spsi.addlayer(layername); Page 7 of 8
8 Listing 2: config.xml exhibits the configuration requirements to load the Wikipedia plug-in. It should be noted that the Wikipedia plug-in is dependent on java.json jar library. <plugins> <plugin> <name>wikipedia Extractor</name> <comment>wikipedia Point of Interest Extraction Utility</comment> <jar-file>plugin/wikipedia/wikipediaplugin.jar</jar-file> <libs>plugin/ztassetmon/javax.json jar</libs> <class-file>com.zerotrak.plugin.examples.wikipediaplugin</class-file> </plugin> <! --> Load as many plugins as it is required by a user by using <plugin> tags </plugins> Deploying a Plug-in Once a plug-in has been created, compiled and packaged into a jar file it may be used by PlaniSphere. The WikipediaExtractor contains a jar file named WikipediaPlugin.jar that contains only one file named WikipediaPlugin.class. Plug-ins are loaded automatically when PlaniSphere starts. PlaniSphere will use the config.xml to load all plug-ins. A plug-is housed in a jar file. PlaniSphere will load a jar file specified in the jar-file tag. Listing 1 exhibits a plug-in named WikipediaExtractor. Its jar file is WikipediaPlugin.jar. The WikipediaExtractor may be started by creating an instance of the class found in the class-file tag. In this case it is com.zerotrak.plugin.example.wikipediaplugin. The WikipediaExtractor requires dependent libraries in order to function. These dependent libraries may be found in the libs tag. Once a plug-in has been loaded by PlaniSphere (at startup) it will become available for usage through the Plug-in Manager. Figure 2 shows PlaniSphere and the Plug-in Manager successfully loading multiple plugins. Page 8 of 8
Proctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2006 FINAL EXAMINATION 7pm to 10pm, 19 DECEMBER 2006, Jeffrey Hall 1 st Floor Instructor: Alan
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
SOLUTION HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2006 FINAL EXAMINATION 7pm to 10pm, 19 DECEMBER 2006, Jeffrey Hall 1 st Floor Instructor:
More informationLab 4. D0010E Object-Oriented Programming and Design. Today s lecture. GUI programming in
Lab 4 D0010E Object-Oriented Programming and Design Lecture 9 Lab 4: You will implement a game that can be played over the Internet. The networking part has already been written. Among other things, the
More informationGraphical User Interface
Lecture 10 Graphical User Interface An introduction Sahand Sadjadee sahand.sadjadee@liu.se Programming Fundamentals 725G61 http://www.ida.liu.se/~725g61/ Department of Computer and Information Science
More information// autor igre Ivan Programerska sekcija package mine;
// autor igre Ivan Bauk @ Programerska sekcija package mine; import java.awt.color; import java.awt.flowlayout; import java.awt.gridlayout; import java.awt.event.actionevent; import java.awt.event.actionlistener;
More informationSampleApp.java. Page 1
SampleApp.java 1 package msoe.se2030.sequence; 2 3 /** 4 * This app creates a UI and processes data 5 * @author hornick 6 */ 7 public class SampleApp { 8 private UserInterface ui; // the UI for this program
More informationSystems Programming. Bachelor in Telecommunication Technology Engineering Bachelor in Communication System Engineering Carlos III University of Madrid
Systems Programming Bachelor in Telecommunication Technology Engineering Bachelor in Communication System Engineering Carlos III University of Madrid Leganés, 21st of March, 2014. Duration: 75 min. Full
More informationCMP-326 Exam 2 Spring 2018 Solutions Question 1. Version 1. Version 2
Question 1 30 30 60 60 90 20 20 40 40 60 Question 2 a. b. public Song(String title, String artist, int length, String composer) { this.title = title; this.artist = artist; this.length = length; this.composer
More informationDAFTAR LAMPIRAN. Source Code Java Aplikasi Keyword to Image Renamer Split
DAFTAR LAMPIRAN Source Code Java Aplikasi Keyword to Image Renamer Split Source Code Menu Utama package spin_text; import java.awt.color; import java.awt.event.actionevent; import java.awt.event.actionlistener;
More informationGoals. Lecture 7 More GUI programming. The application. The application D&D 12. CompSci 230: Semester JFrame subclass: ListOWords
Goals By the end of this lesson, you should: Lecture 7 More GUI programming 1. Be able to write Java s with JTextField, JList, JCheckBox and JRadioButton components 2. Be able to implement a ButtonGroup
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSITY SCHOOL OF COMPUTING HAND IN Answers Are Recorded on Question Paper CMPE212, FALL TERM, 2012 FINAL EXAMINATION 18 December 2012, 2pm Instructor: Alan McLeod If the instructor is unavailable
More informationAnimatedImage.java. Page 1
1 import javax.swing.japplet; 2 import javax.swing.jbutton; 3 import javax.swing.jpanel; 4 import javax.swing.jcombobox; 5 import javax.swing.jlabel; 6 import javax.swing.imageicon; 7 import javax.swing.swingutilities;
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC124, WINTER TERM, 2009 FINAL EXAMINATION 7pm to 10pm, 18 APRIL 2009, Dunning Hall Instructor: Alan McLeod If the
More informationIntroduction This assignment will ask that you write a simple graphical user interface (GUI).
Computing and Information Systems/Creative Computing University of London International Programmes 2910220: Graphical Object-Oriented and Internet programming in Java Coursework one 2011-12 Introduction
More informationPage 1 of 16. Proctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
Page 1 of 16 SOLUTION HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2005 FINAL EXAMINATION 9am to 12noon, 19 DECEMBER 2005 Instructor: Alan McLeod
More informationclass BankFilter implements Filter { public boolean accept(object x) { BankAccount ba = (BankAccount) x; return ba.getbalance() > 1000; } }
9.12) public interface Filter boolean accept(object x); Describes any class whose objects can measure other objects. public interface Measurer double measure(object anobject); This program tests the use
More informationAPPENDIX. public void cekroot() { System.out.println("nilai root : "+root.data); }
APPENDIX CLASS NODE AS TREE OBJECT public class Node public int data; public Node left; public Node right; public Node parent; public Node(int i) data=i; PROCEDURE BUILDING TREE public class Tree public
More informationLecture 9. Lecture
Layout Components MVC Design PaCern GUI Programming Observer Design PaCern D0010E Lecture 8 - Håkan Jonsson 1 Lecture 8 - Håkan Jonsson 2 Lecture 8 - Håkan Jonsson 3 1 1. GUI programming In the beginning,
More informationAP CS Unit 11: Graphics and Events
AP CS Unit 11: Graphics and Events This packet shows how to create programs with a graphical interface in a way that is consistent with the approach used in the Elevens program. Copy the following two
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
SOLUTION HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC124, WINTER TERM, 2009 FINAL EXAMINATION 7pm to 10pm, 18 APRIL 2009, Dunning Hall Instructor: Alan McLeod
More informationAnswer on question #61311, Programming & Computer Science / Java
Answer on question #61311, Programming & Computer Science / Java JSP JSF for completion Once the user starts the thread by clicking a button, the program must choose a random image out of an image array,
More informationIzpack installer guide
Izpack installer guide intagleo systems v 1.0 author: Dev Team Contents Chapter 1 Simple Installer Chapter 2 page 3 page 7 Understanding install.xml Chapter 3 Adding panels to your installer Chapter 4
More informationCOMP16121 Sample Code Lecture 1
COMP16121 Sample Code Lecture 1 Sean Bechhofer, University of Manchester, Manchester, UK sean.bechhofer@manchester.ac.uk 1 SimpleFrame 1 import javax.swing.jframe; 2 3 public class SimpleFrame { 4 5 /*
More informationFirstSwingFrame.java Page 1 of 1
FirstSwingFrame.java Page 1 of 1 2: * A first example of using Swing. A JFrame is created with 3: * a label and buttons (which don t yet respond to events). 4: * 5: * @author Andrew Vardy 6: */ 7: import
More informationCSC 160 LAB 8-1 DIGITAL PICTURE FRAME. 1. Introduction
CSC 160 LAB 8-1 DIGITAL PICTURE FRAME PROFESSOR GODFREY MUGANDA DEPARTMENT OF COMPUTER SCIENCE 1. Introduction Download and unzip the images folder from the course website. The folder contains 28 images
More informationWe are on the GUI fast track path
We are on the GUI fast track path Chapter 13: Exception Handling Skip for now Chapter 14: Abstract Classes and Interfaces Sections 1 9: ActionListener interface Chapter 15: Graphics Skip for now Chapter
More informationCSCI 201L Midterm Written Summer % of course grade
CSCI 201L Summer 2016 10% of course grade 1. Abstract Classes and Interfaces Give two differences between an interface and an abstract class in which all of the methods are abstract. (0.5% + 0.5%) 2. Serialization
More informationPage 1 of 16. Proctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
Page 1 of 16 HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2005 FINAL EXAMINATION 9am to 12noon, 19 DECEMBER 2005 Instructor: Alan McLeod If
More informationFirst Name: AITI 2004: Exam 2 July 19, 2004
First Name: AITI 2004: Exam 2 July 19, 2004 Last Name: Standard Track Read Instructions Carefully! This is a 3 hour closed book exam. No calculators are allowed. Please write clearly if we cannot understand
More informationBuilding a GUI in Java with Swing. CITS1001 extension notes Rachel Cardell-Oliver
Building a GUI in Java with Swing CITS1001 extension notes Rachel Cardell-Oliver Lecture Outline 1. Swing components 2. Building a GUI 3. Animating the GUI 2 Swing A collection of classes of GUI components
More informationExample: Building a Java GUI
Steven Zeil October 25, 2013 Contents 1 Develop the Model 2 2 Develop the layout of those elements 3 3 Add listeners to the elements 9 4 Implement custom drawing 12 1 The StringArt Program To illustrate
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
SOLUTION HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2008 FINAL EXAMINATION 7pm to 10pm, 17 DECEMBER 2008, Grant Hall Instructor: Alan McLeod
More informationGUI (Graphic User Interface) Programming. Part 2 (Chapter 8) Chapter Goals. Events, Event Sources, and Event Listeners. Listeners
GUI (Graphic User Interface) Programming Part 2 (Chapter 8) Chapter Goals To understand the Java event model To install action and mouse event listeners To accept input from buttons, text fields, and the
More informationExample: Building a Java GUI
Steven Zeil October 25, 2013 Contents 1 Develop the Model 3 2 Develop the layout of those elements 4 3 Add listeners to the elements 12 4 Implement custom drawing 15 1 The StringArt Program To illustrate
More informationFirst Name: AITI 2004: Exam 2 July 19, 2004
First Name: AITI 2004: Exam 2 July 19, 2004 Last Name: JSP Track Read Instructions Carefully! This is a 3 hour closed book exam. No calculators are allowed. Please write clearly if we cannot understand
More informationCalculator Class. /** * Create a new calculator and show it. */ public Calculator() { engine = new CalcEngine(); gui = new UserInterface(engine); }
A Calculator Project This will be our first exposure to building a Graphical User Interface (GUI) in Java The functions of the calculator are self-evident The Calculator class creates a UserInterface Class
More informationOverview. Applets. A Java GUI inside your browser! Important methods Drawing images Playing audio Getting input parameters Double buffering
Java Applets don't panic about frogs!
More informationDr. Hikmat A. M. AbdelJaber
Dr. Hikmat A. M. AbdelJaber JWindow: is a window without a title bar or move controls. The program can move and resize it, but the user cannot. It has no border at all. It optionally has a parent JFrame.
More informationimport java.applet.applet; import java.applet.audioclip; import java.net.url; public class Vjesala2 {
import java.awt.color; import java.awt.flowlayout; import java.awt.font; import java.awt.gridlayout; import java.awt.event.actionevent; import java.awt.event.actionlistener; import javax.swing.jbutton;
More informationJFrame In Swing, a JFrame is similar to a window in your operating system
JFrame In Swing, a JFrame is similar to a window in your operating system All components will appear inside the JFrame window Buttons, text labels, text fields, etc. 5 JFrame Your GUI program must inherit
More informationCSE 115: Computer Science I Spring Sample Final Exam
Preferred Name: UBIT: CSE 115: Computer Science I Spring 2017 Sample Final Exam DIRECTIONS: Closed Notes. Closed Book. No Electronics. Time Limit: 3 hours Make sure you write your NAME and UBIT above.
More information17 GUI API: Container 18 Hello world with a GUI 19 GUI API: JLabel 20 GUI API: Container: add() 21 Hello world with a GUI 22 GUI API: JFrame: setdefau
List of Slides 1 Title 2 Chapter 13: Graphical user interfaces 3 Chapter aims 4 Section 2: Example:Hello world with a GUI 5 Aim 6 Hello world with a GUI 7 Hello world with a GUI 8 Package: java.awt and
More informationWorkbook 7. Remember to check the course website regularly for announcements and errata:
Introduction Workbook 7 Last week you built your own graphical interface with Java Swing in order to make your program more accessible to other users. Unfortunately, whilst your interface looked pretty,
More informationHanley s Survival Guide for Visual Applications with NetBeans 2.0 Last Updated: 5/20/2015 TABLE OF CONTENTS
Hanley s Survival Guide for Visual Applications with NetBeans 2.0 Last Updated: 5/20/2015 TABLE OF CONTENTS Glossary of Terms 2-4 Step by Step Instructions 4-7 HWApp 8 HWFrame 9 Never trust a computer
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
Solution HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2007 FINAL EXAMINATION 7pm to 10pm, 10 DECEMBER 2007, Jeffery Hall Instructor: Alan McLeod
More informationMultimedia Programming
Multimedia Programming Medialogy, 8 th Semester, Aalborg University Wednesday 6 June 2012, 09.00 12.00 Instructions and notes You have 3 hours to complete this examination. Neither written material nor
More informationThe JFrame Class Frame Windows GRAPHICAL USER INTERFACES. Five steps to displaying a frame: 1) Construct an object of the JFrame class
CHAPTER GRAPHICAL USER INTERFACES 10 Slides by Donald W. Smith TechNeTrain.com Final Draft 10/30/11 10.1 Frame Windows Java provides classes to create graphical applications that can run on any major graphical
More informationLampiran A. SOURCE CODE PROGRAM
A-1 Lampiran A. SOURCE CODE PROGRAM Frame Utama package FrameDesign; import ArithmeticSkripsi.ArithmeticCompress; import ArithmeticSkripsi.ArithmeticDecompress; import Deflate.DeflateContoh; import java.io.file;
More informationMore about GUIs GEEN163
More about GUIs GEEN163 The best programmers are not marginally better than merely good ones. They are an order-ofmagnitude better, measured by whatever standard: conceptual creativity, speed, ingenuity
More informationWindow Interfaces Using Swing Objects
Chapter 12 Window Interfaces Using Swing Objects Event-Driven Programming and GUIs Swing Basics and a Simple Demo Program Layout Managers Buttons and Action Listeners Container Classes Text I/O for GUIs
More informationWindow Interfaces Using Swing Objects
Chapter 12 Window Interfaces Using Swing Objects Event-Driven Programming and GUIs Swing Basics and a Simple Demo Program Layout Managers Buttons and Action Listeners Container Classes Text I/O for GUIs
More informationCSCI 201L Midterm Written SOLUTION Summer % of course grade
CSCI 201L SOLUTION Summer 2016 10% of course grade 1. Abstract Classes and Interfaces Give two differences between an interface and an abstract class in which all of the methods are abstract. (0.5% + 0.5%)
More informationITEC 120 4/14/11. Review. Need. Objectives. GUI basics JFrame JPanel JLabel, JButton, JTextField Layout managers. Lecture 38 GUI Interactivity
Review ITEC 120 Lecture 38 GUI GUI basics JFrame JPanel JLabel, JButton, JTextField Layout managers Flow / Box Border / Grid Objectives Need Add interactivity When you click on a button How does your code
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSIY SCHOOL O COMPUING CMPE212, ALL ERM, 2011 INAL EXAMINAION 15 December 2011, 2pm, Grant Hall Instructor: Alan McLeod HAND IN Answers Are Recorded on Question Paper SOLUION If the instructor
More informationpackage As7BattleShip;
package As7BattleShip; Program: BattleshipBoard.java Author: Kevin Nider Date: 11/18/12 Description: Assignment 7: Runs the battleship game Input: ship placement board files and computer player type Output:
More informationJava Programming Summer 2008 LAB. Thursday 8/21/2008
LAB Thursday 8/21/2008 Design and implement the program that contains a timer. When the program starts, the timer shows 00:00:00. When we click the Start button, the timer starts. When we click the Stop
More information2IS45 Programming
Course Website Assignment Goals 2IS45 Programming http://www.win.tue.nl/~wsinswan/programmeren_2is45/ Rectangles Learn to use existing Abstract Data Types based on their contract (class Rectangle in Rectangle.
More informationHomework 6 part 2: Turtle Etch-A-Sketch (40pts)
Homework 6 part 2: Turtle Etch-A-Sketch (40pts) DUE DATE: Friday March 28, 7pm with 5 hour grace period Now that you have done part 1 of Homework 6, Train Your Turtle to Draw on Command, you are ready
More informationLayout. Dynamic layout Layout design pattern Layout strategies
Layout Dynamic layout Layout design pattern Layout strategies 2.6 Layout 2 https://www.bostonglobe.com/ 2.6 Layout 3 Responsive vs. Adaptive Responsive: universal design reflows spatial layout to fit width
More informationLayout. Dynamic layout Layout design pattern Layout strategies. 2.6 Layout 2
Layout Dynamic layout Layout design pattern Layout strategies 2.6 Layout 2 Two Interface Layout Tasks 1. Designing a spatial layout of widgets in a container 2. Adjusting that spatial layout when container
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2010 FINAL EXAMINATION 11 DECEMBER 2010, 9am SOLUTION HAND IN Answers Are Recorded on Question Paper Instructor: Alan McLeod If the instructor
More informationGraphical User Interfaces in Java - SWING
Graphical User Interfaces in Java - SWING Graphical User Interfaces (GUI) Each graphical component that the user can see on the screen corresponds to an object of a class Component: Window Button Menu...
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2007 FINAL EXAMINATION 7pm to 10pm, 10 DECEMBER 2007, Jeffery Hall Instructor: Alan McLeod If the
More informationGraphical User Interfaces
Graphical User Interfaces CSCI 136: Fundamentals CSCI 136: Fundamentals of Computer of Science Computer II Science Keith II Vertanen Keith Vertanen Copyright 2011 Overview Command line versus GUI apps
More information1.00/1.001 Introduction to Computers and Engineering Problem Solving Fall (total 7 pages)
1.00/1.001 Introduction to Computers and Engineering Problem Solving Fall 2002 (total 7 pages) Name: TA s Name: Tutorial: For Graders Question 1 Question 2 Question 3 Total Problem 1 (20 points) True or
More informationGUI Applications. Let s start with a simple Swing application in Java, and then we will look at the same application in Jython. See Listing 16-1.
GUI Applications The C implementation of Python comes with Tkinter for writing Graphical User Interfaces (GUIs). The GUI toolkit that you get automatically with Jython is Swing, which is included with
More informationJava Interfaces Part 1 - Events Version 1.1
Java Interfaces Part 1 - Events Version 1.1 By Dr. Nicholas Duchon July 22, 2007 Page 1 Overview Philosophy Large Scale Java Language Structures Abstract classes Declarations Extending a abstract classes
More informationGraphical User Interfaces. Comp 152
Graphical User Interfaces Comp 152 Procedural programming Execute line of code at a time Allowing for selection and repetition Call one function and then another. Can trace program execution on paper from
More informationJAVA Swings Sample Codes CODE NO: EduLanka Sample Java Codes - ONLINE JAVA
JAVA Swings Sample Codes CODE NO: 1 public class aaa extends JApplet implements ActionListener JLabel lblname,lbladdress,lbltelno; JTextField txtname,txtaddress,txttelno; JButton btndisplay,btnclear; lblname=new
More informationPART 22. Java GUI Library SWT GUI Library SWING GUI Library Swing First Program
PART 22 Java GUI Library 22.1 SWT GUI Library There is also another GUI library for the Java programming language. It is called SWT (The Standard widget toolkit). The SWT library was initially developed
More informationMidterm assessment - MAKEUP Fall 2010
M257 MTA Faculty of Computer Studies Information Technology and Computing Date: /1/2011 Duration: 60 minutes 1-Version 1 M 257: Putting Java to Work Midterm assessment - MAKEUP Fall 2010 Student Name:
More informationAppBisect > PrBisect > class Functie. AppBisect > PrBisect > class Punct. public class Functie { double x(double t) { return t;
1 AppBisect > PrBisect > class Punct public class Punct { double x,y; public Punct(double x, double y) { this.x = x; this.y = y; public void setx(double x) { this.x = x; public double getx() { return x;
More informationJava Never Ends MULTITHREADING 958 Example: A Nonresponsive GUI 959
CHAPTER 19 Java Never Ends 19.1 MULTITHREADING 958 Example: A Nonresponsive GUI 959 Thread.sleep 959 The getgraphics Method 963 Fixing a Nonresponsive Program Using Threads 964 Example: A Multithreaded
More informationState Application Using MVC
State Application Using MVC 1. Getting ed: Stories and GUI Sketch This example illustrates how applications can be thought of as passing through different states. The code given shows a very useful way
More information/* Write a Program implementing GUI based Calculator using Swing */
/* Write a Program implementing GUI based Calculator using Swing */ import java.awt.event.actionevent; import java.awt.event.actionlistener; import javax.swing.*; public class Calculator extends JFrame
More informationUnit 1- Java Applets. Applet Programming. Local Applet and Remote Applet ** Applet and Application
Applet Programming Applets are small Java applications that can be accessed on an Internet server, transported over Internet, and can be automatically installed and run as a part of a web document. An
More informationObject-Oriented Software Engineering (Re-exam for Object-Oriented Analysis, Design and Programming)
Object-Oriented Software Engineering (Re-exam for Object-Oriented Analysis, Design and Programming) Medialogy, 4 th Semester, Aalborg Monday 11 June 2012, 09.00 12.00 Instructions You have 3 hours to complete
More informationCS 134 Programming Exercise 7:
CS 134 Programming Exercise 7: Scribbler Objective: To gain more experience using recursion and recursive data structures. This week, you will be implementing a program we call Scribbler. You have seen
More informationChapter 10 Inheritance. Big Java by Cay Horstmann Copyright 2009 by John Wiley & Sons. All rights reserved.
Chapter 10 Inheritance Chapter Goals To learn about inheritance To understand how to inherit and override superclass methods To be able to invoke superclass constructors To learn about protected and package
More informationChapter 13 Lab Advanced GUI Applications
Gaddis_516907_Java 4/10/07 2:10 PM Page 113 Chapter 13 Lab Advanced GUI Applications Objectives Be able to add a menu to the menu bar Be able to use nested menus Be able to add scroll bars, giving the
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 32 April 9, 2018 Swing I: Drawing and Event Handling Chapter 29 HW8: Spellchecker Available on the web site Due: Tuesday! Announcements Parsing, working
More informationUser Interface Programming OOP/Java Primer. Step 4 Some Final Checkups
User Interface Programming OOP/Java Primer Step 4 Some Final Checkups Department of Information Technology Classes, Inner and Anonymous Sometimes we encounter classes within other classes. Why should we
More informationPresented by: Megan Bishop & Courtney Valentine
Presented by: Megan Bishop & Courtney Valentine Early navigators relied on landmarks, major constellations, and the sun s position in the sky to determine latitude and longitude Now we have location- based
More informationSection Basic graphics
Chapter 16 - GUI Section 16.1 - Basic graphics Java supports a set of objects for developing graphical applications. A graphical application is a program that displays drawings and other graphical objects.
More informationLayout. Dynamic layout, Swing and general layout strategies
Layout Dynamic layout, Swing and general layout strategies Two Interface Layout Tasks Designing a spatial layout of widgets in a container Adjusting that spatial layout when container is resized Both
More informationJava Never Ends CHAPTER MULTITHREADING 1100 Example: A Nonresponsive GUI 1101
CHAPTER 20 Java Never Ends 20.1 MULTITHREADING 1100 Example: A Nonresponsive GUI 1101 Thread.sleep 1101 The getgraphics Method 1105 Fixing a Nonresponsive Program Using Threads 1106 Example: A Multithreaded
More informationH212 Introduction to Software Systems Honors
Introduction to Software Systems Honors Lecture #19: November 4, 2015 1/14 Third Exam The third, Checkpoint Exam, will be on: Wednesday, November 11, 2:30 to 3:45 pm You will have 3 questions, out of 9,
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 34 April 11, 2016 Swing II: Inner Classes and Layout Announcements (Review) Final exam: May 2, 3-5PM If you have two finals at the same time, you can
More informationPrototyping a Swing Interface with the Netbeans IDE GUI Editor
Prototyping a Swing Interface with the Netbeans IDE GUI Editor Netbeans provides an environment for creating Java applications including a module for GUI design. Here we assume that we have some existing
More informationCS 201 Advanced Object-Oriented Programming Lab 1 - Improving Your Image Due: Feb. 3/4, 11:30 PM
CS 201 Advanced Object-Oriented Programming Lab 1 - Improving Your Image Due: Feb. 3/4, 11:30 PM Objectives The objectives of this assignment are: to refresh your Java programming to become familiar with
More informationCSE 143. Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT
CSE 143 Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/
More informationJava Help Files. by Peter Lavin. May 22, 2004
Java Help Files by Peter Lavin May 22, 2004 Overview Help screens are a necessity for making any application user-friendly. This article will show how the JEditorPane and JFrame classes, along with HTML
More informationJava Graphical User Interfaces AWT (Abstract Window Toolkit) & Swing
Java Graphical User Interfaces AWT (Abstract Window Toolkit) & Swing Rui Moreira Some useful links: http://java.sun.com/docs/books/tutorial/uiswing/toc.html http://www.unix.org.ua/orelly/java-ent/jfc/
More informationFour Function Calculator: Architectural Design
Four Function Calculator: Architectural Design 1. Introduction This document describes the high-level design of an application which acts as a simple four function calculator. The reader of this document
More informationObject-Oriented Software Engineering Re-exam, 2012 (Also Object-Oriented Analysis, Design and Programming, Re-exam, 2012)
Object-Oriented Software Engineering Re-exam, 2012 (Also Object-Oriented Analysis, Design and Programming, Re-exam, 2012) Medialogy, 4 th Semester, Aalborg Thursday 23 August 2012, 09.00 12.00 Instructions
More informationEclipsing Your IDE. Figure 1 The first Eclipse screen.
Eclipsing Your IDE James W. Cooper I have been hearing about the Eclipse project for some months, and decided I had to take some time to play around with it. Eclipse is a development project (www.eclipse.org)
More informationRobotPlanning.java Page 1
RobotPlanning.java Page 1 import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*; import javax.swing.border.*; import java.util.*; * * RobotPlanning - 1030 GUI Demonstration.
More informationDr. Hikmat A. M. AbdelJaber
Dr. Hikmat A. M. AbdelJaber Portion of the Java class hierarchy that include basic graphics classes and Java 2D API classes and interfaces. java.lang.object Java.awt.Color Java.awt.Component Java.awt.Container
More informationCSC 569 WINTER 13 GRADUATE PROJECT: NETWORK-BASED IMAGE REPOSITORY
CSC 569 WINTER 13 GRADUATE PROJECT: NETWORK-BASED IMAGE REPOSITORY PROFESSOR GODFREY MUGANDA 1. Multi-Threaded Network Photo Server You are going to write a system that allows users to store photos on
More informationYEAH session #6. 6 March 2014, 5:30p-6:30p Miles Seiver
YEAH session #6 6 March 2014, 5:30p-6:30p Miles Seiver Review session schedule Topic Date Time Location assignment 6 today! now! here! assignment 7 Sun 16 Mar 7p - 8p Hewlett 200 Interactors JSlider slide
More information