Enhancing Admin View Feature Extensions for Openjump
Total Page:16
File Type:pdf, Size:1020Kb
ENHANCING ADMIN VIEW FEATURE EXTENSIONS FOR OPENJUMP USING GIS MARKERS _______________ A Thesis Presented to the Faculty of San Diego State University _______________ In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science _______________ by Uday Rameshchandra Patel Spring 2011 iii Copyright © 2011 by Uday Rameshchandra Patel All Rights Reserved iv DEDICATION I would like to dedicate my thesis to my family members and friends who are always with me in my bad and good times. They are the true source of inspiration for me and because of their blessings; I could complete this thesis today. v ABSTRACT OF THE THESIS Enhancing Admin View Feature Extensions for OpenJUMP Using GIS Markers by Uday Rameshchandra Patel Master of Science in Computer Science San Diego State University, 2011 This thesis provides an implementation of OpenJUMP plug-ins for identification and maintenance of new locatable geographic locations. Implementation consists of admin view extensions for faculties. The faculty view allows teachers to easily add a geographic location and attach images, videos or textual descriptions to identify their originality and presence, also enables users to import images and videos from Google and YouTube, respectively. The main purpose of thesis is to provide a common platform to aid easy learning platform for students at the same time provide an easy tool for teachers to add or remove new topics or areas of interest as and when required. The implementation also consists of two additional tools added to the open source product. A help tool providing more information on each and every tool present in the application, which also has a complete index and searching option. vi TABLE OF CONTENTS PAGE ABSTRACT ...............................................................................................................................v LIST OF TABLES ................................................................................................................... ix LIST OF FIGURES ...................................................................................................................x LIST OF ABBREVIATIONS .................................................................................................. xi ACKNOWLEDGEMENTS .................................................................................................... xii CHAPTER 1 INTRODUCTION .........................................................................................................1 2 OPEN SOURCE GIS TOOLS/COMPONENT JAVA BASED ARCHITECTURES .......................................................................................................4 2.1 uDig....................................................................................................................4 2.2 MapObjects – Java Edition ................................................................................4 2.3 OpenJUMP .........................................................................................................5 3 SOFTWARE REQUIREMENTS SPECIFICATIONS .................................................6 3.1 Introduction ........................................................................................................6 3.1.1 Purpose ..................................................................................................... 6 3.1.1.1 Document Conventions ................................................................... 6 3.1.1.2 Intended Audience and Reading Suggestions ................................. 6 3.1.2 Project Scope ........................................................................................... 6 3.1.3 Description of .CSV and .CHM Files ...................................................... 7 3.1.3.1 .CSV File ........................................................................................ 7 3.1.3.2 .CHM File ....................................................................................... 8 3.1.4 Definitions, Acronyms, and Abbreviations ............................................. 8 3.1.5 Overview .................................................................................................. 8 3.2 General Description ...........................................................................................9 3.2.1 Product Perspective .................................................................................. 9 3.2.2 Product Functions .................................................................................... 9 3.2.3 User Characteristics ............................................................................... 10 vii 3.2.4 General Constraints ................................................................................ 10 3.2.5 Assumptions and Dependencies ............................................................ 10 3.3 Specific Requirements .....................................................................................10 3.3.1 Functional Requirements ....................................................................... 10 3.3.2 Design Constraints ................................................................................. 12 3.3.2.1 Hardware Limitations ................................................................... 12 3.3.2.2 Software Limitations ..................................................................... 13 3.3.3 Attributes................................................................................................ 13 3.3.3.1 Availability ................................................................................... 13 3.3.3.2 Maintainability .............................................................................. 13 3.3.3.3 Transferability ............................................................................... 13 3.3.4 External Interface Requirements ............................................................ 14 3.3.4.1 Hardware Interfaces ...................................................................... 14 3.3.4.2 Software Interfaces ....................................................................... 14 3.3.4.3 Communication Interfaces ............................................................ 14 4 DEVELOPMENT ENVIRONMENTS AND TECHNOLOGIES ..............................15 4.1 Eclipse JDT ......................................................................................................15 4.2 Subclipse ..........................................................................................................15 4.3 Microsoft HTML Help Tool ............................................................................16 4.4 Google SVN .....................................................................................................17 4.5 OpenJUMP SDK ..............................................................................................17 5 OPENJUMP/JUMP......................................................................................................18 5.1 Introduction ......................................................................................................18 5.2 Capabilities/Functionalities..............................................................................19 5.3 JUMP GUI .......................................................................................................20 5.4 Releases............................................................................................................24 5.5 File Extensions .................................................................................................24 6 JUMP FRAMEWORK AND ARCHITECTURE .......................................................25 6.1 JUMPS as Framework or Tool-Kit ..................................................................25 6.2 JUMP Libraries and Supporting Libraries .......................................................27 6.3 Programming Guidelines .................................................................................28 viii 6.4 JUMP Architecture ..........................................................................................29 6.4.1 Workbench ............................................................................................. 30 6.4.2 Extensions .............................................................................................. 30 6.4.3 Plug-Ins .................................................................................................. 32 6.4.4 Workbench Data-Structures ................................................................... 33 6.4.5 Cursor Tools........................................................................................... 36 6.4.6 Menu-Items ............................................................................................ 37 6.4.7 Renderers and Styles .............................................................................. 38 6.4.8 DataSources ........................................................................................... 39 6.4.9 ToolBoxes .............................................................................................. 39 6.4.10 Miscellaneous Components ................................................................. 39 6.5 JUMP How To’s ..............................................................................................40 6.5.1 How to Get OpenJUMP? ....................................................................... 40 6.5.2 How to Integrate Google SVN and Eclipse JDT? ................................. 40 6.5.3 How to Check-In/Out