PageRenderTime 39ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/www/tags/NOV_07_2009/htdocs/users-guide/plugin-implement.html

#
HTML | 21 lines | 21 code | 0 blank | 0 comment | 0 complexity | c0da21c813be7e82bfc64c0fce31bcf4 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 18. Implementing a Simple Plugin</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"><link rel="start" href="index.html" title="jEdit 4.3 User's Guide"><link rel="up" href="writing-plugins-part.html" title="Part IV. Writing Plugins"><link rel="prev" href="plugin-intro.html" title="Chapter 17. Introducing the Plugin API"><link rel="next" href="plugin-load.html" title="How Plugins are Loaded"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 18. Implementing a Simple Plugin</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-intro.html">Prev</a> </td><th width="60%" align="center">Part IV. Writing Plugins</th><td width="20%" align="right"> <a accesskey="n" href="plugin-load.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-implement"></a>Chapter 18. Implementing a Simple Plugin</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><ul><li><span class="sect1"><a href="plugin-load.html"> How Plugins are Loaded</a></span></li><li><span class="sect1"><a href="plugin-implement-quicknotepadplugin.html">The QuickNotepadPlugin Class</a></span></li><li><span class="sect1"><a href="plugin-implement-properties.html">The Property File</a></span></li><li><span class="sect1"><a href="plugin-implement-editbus.html">The EditBus</a></span></li><li><span class="sect1"><a href="plugin-implement-actions.html">The Actions Catalog</a></span></li><li><span class="sect1"><a href="plugin-implement-dockables.html">The dockables.xml Window Catalog</a></span></li><li><span class="sect1"><a href="plugin-implement-services.html">The services.xml file</a></span></li><li><span class="sect1"><a href="plugin-implement-quicknotepad.html">The QuickNotepad Class</a></span></li><li><span class="sect1"><a href="plugin-implement-quicknotepadtoolbar.html">The QuickNotepadToolBar Class</a></span></li><li><span class="sect1"><a href="plugin-implement-options.html">The QuickNotepadOptionPane Class</a></span></li><li><span class="sect1"><a href="plugin-implement-docs.html">Plugin Documentation</a></span></li><li><span class="sect1"><a href="plugin-implement-building.html">The build.xml Ant build file</a></span></li><li><span class="sect1"><a href="plugin-implement-reloading.html">Reloading the Plugin</a></span></li><li><span class="sect1"><a href="plugin-debugging.html"> Tips for debugging plugins </a></span></li></ul></div><p>There are many applications for the leading operating systems that
  2. provide a &#8220;<span class="quote">scratch-pad</span>&#8221; or &#8220;<span class="quote">sticky note</span>&#8221; facility
  3. for the desktop display. A similar type of facility operating within the
  4. jEdit display would be a convenience. The use of dockable windows would
  5. allow the notepad to be displayed or hidden with a single mouse click or
  6. keypress (if a keyboard shortcut were defined). The contents of the notepad
  7. could be saved at program exit (or, if earlier, deactivation of the plugin)
  8. and retrieved at program startup or plugin activation.</p><p>We will keep the capabilities of this plugin modest, but a few other
  9. features would be worthwhile. The user should be able to write the contents
  10. of the notepad to storage on demand. It should also be possible to choose
  11. the name and location of the file that will be used to hold the notepad
  12. text. This would allow the user to load other files into the notepad
  13. display. The path of the notepad file should be displayed in the plugin
  14. window, but will give the user the option to hide the file name. Finally,
  15. there should be an action by which a single click or keypress would cause
  16. the contents of the notepad to be written to the new text buffer for further
  17. processing.</p><p>The full source code for QuickNotepad is contained in jEdit's source
  18. code distribution. We will provide excerpts in this discussion where it is
  19. helpful to illustrate specific points. You are invited to obtain the source
  20. code for further study or to use as a starting point for your own
  21. plugin.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-intro.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="writing-plugins-part.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="plugin-load.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 17. Introducing the Plugin API </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">  How Plugins are Loaded</td></tr></table></div></body></html>