plugin api

Firefox 궁금하니? 2008. 6. 20. 11:50

출처: http://devedge-temp.mozilla.org/library/manuals/2002/plugin/1.0/

plug-ins!


Table of Contents


Preface

About This Guide

Who Should Read This Guide

The Plug-in Software Development Kit

Plug-in Basics

How Plug-ins Are Used

Plug-ins and Helper Applications

How Plug-ins Work

Understanding the Runtime Model

Plug-in Detection

How Netscape Gecko Finds Plug-ins

Checking Plug-ins by MIME Type

Overview of Plug-in Structure

Understanding the Plug-in API

Plug-ins and Platform Independence

Windowed and Windowless Plug-ins

The Default Plug-in

Using HTML to Display Plug-ins

Plug-in Display Modes

Using the OBJECT Tag for Plug-in Display

Nesting Rules for HTML Elements

Using the Appropriate Attributes

Using the EMBED Tag for Plug-in Display

Using Custom EMBED Attributes

Plug-in References

Plug-in Development Overview

Writing Plug-ins

Registering Plug-ins

MS Windows

Unix

Mac OS

OSX

Drawing a Plug-in Instance

Handling Memory

Sending and Receiving Streams

Working with URLs

Getting Version and UI Information

Displaying Messages on the Status Line

Making Plug-ins Scriptable

Building Plug-ins

Building, Platforms, and Compilers

Building Carbonized Plug-ins for Mac OSX

Getting and Using the xpidl Compiler

Type Libraries

Installing Plug-ins

Native Installers

XPI Plug-ins Installations

Plug-in Installation and the Windows Registry

Initialization and Destruction

Initialization

Instance Creation

Instance Destruction

Shutdown

Initialize and Shutdown Example

Drawing and Event Handling

The NPWindow Structure

The NPWindow Structure

Drawing Plug-ins

Printing the Plug-in

Setting the Window

Getting Information

Windowed Plug-ins

Mac OS

Windows

Unix

Event Handling for Windowed Plug-ins

Windowless Plug-ins

Specifying That a Plug-in Is Windowless

Invalidating the Drawing Area

Forcing a Paint Message

Making a Plug-in Opaque

Making a Plug-in Transparent

Creating Pop-up Menus and Dialog Boxes

Event Handling for Windowless Plug-ins

Streams

Receiving a Stream

Telling the Plug-in When a Stream Is Created

Telling the Plug-in When a Stream Is Deleted

Finding Out How Much Data the Plug-in Can Accept

Writing the Stream to the Plug-in

Sending the Stream in Random-Access Mode

Sending the Stream in File Mode

Sending a Stream

Creating a Stream

Pushing Data into the Stream

Deleting the Stream

Example of Sending a Stream

URLs

Getting URLs

Getting the URL and Displaying the Page

Posting URLs

Posting Data to an HTTP Server

Uploading Files to an FTP Server

Sending Mail

Memory

Allocating and Freeing Memory

Mac OS

Flushing Memory (Mac OS only)

Version, UI, and Status Information

Displaying a Status Line Message

Getting Agent Information

Getting the Current Version

Finding Out if a Feature Exists

Reloading a Plug-in

Plug-in Side Plug-in API

Plugin Method Summary

NPP_Destroy

NPP_DestroyStream

NPP_GetValue

NP_GetValue

NPP_HandleEvent

NP_Initialize

NPP_New

NPP_NewStream

NPP_Print

NPP_SetValue

NPP_SetWindow

NP_Shutdown

NPP_StreamAsFile

NPP_URLNotify

NPP_Write

NPP_WriteReady

Browser Side Plug-in API

Netscape Plug-in Method Summary

NPN_DestroyStream

NPN_ForceRedraw

NPN_GetURL

NPN_GetURLNotify

NPN_GetValue

NPN_InvalidateRect

NPN_InvalidateRegion

NPN_MemAlloc

NPN_MemFlush

NPN_MemFree

NPN_NewStream

NPN_PostURL

NPN_PostURLNotify

NPN_ReloadPlugins

NPN_RequestRead

NPN_SetValue

NPN_Status

NPN_UserAgent

NPN_Version

NPN_Write

Structures

Structure Summary

NPAnyCallbackStruct

NPByteRange

NPEmbedPrint

NPEvent

NPFullPrint

NPP

NP_Port

NPPrint

NPPrintCallbackStruct

NP_Rect

NP_Region

NPSavedData

NPSetWindowCallbackStruct

NPStream

NPWindow

Constants

Error Codes

Result Codes

Plug-in Version Constants

Version Feature Constants

AND