{"json_modified": "2016-03-28T08:03:28.561716", "uuid": "303bccb9-061f-4f83-9746-e037b12d5552", "title": "Drawing and Event Handling", "url": "/en-US/docs/Plugins/Guide/Drawing_and_Event_Handling", "tags": ["Guide", "NPAPI", "Plugins", "Gecko Plugin API Reference"], "translations": [], "modified": "2015-07-09T02:39:33", "label": "Drawing and Event Handling", "localization_tags": [], "locale": "en-US", "id": 7361, "last_edit": "2015-07-09T02:38:36", "summary": "This chapter tells how to determine whether a plug-in instance is windowed or windowless, how to draw and redraw plug-ins, and how to handle plug-in events.", "sections": [{"id": "The_NPWindow_Structure", "title": "The NPWindow Structure"}, {"id": "Drawing_Plug-ins", "title": "Drawing Plug-ins"}, {"id": "Printing_the_Plug-in", "title": "Printing the Plug-in"}, {"id": "Setting_the_Window", "title": "Setting the Window"}, {"id": "Getting_Information", "title": "Getting Information"}, {"id": "Windowed_Plug-ins", "title": "Windowed Plug-ins"}, {"id": "Mac_OS", "title": "Mac OS"}, {"id": "Windows", "title": "Windows"}, {"id": "Unix", "title": "Unix"}, {"id": "Event_Handling_for_Windowed_Plug-ins", "title": "Event Handling for Windowed Plug-ins"}, {"id": "Windowless_Plug-ins", "title": "Windowless Plug-ins"}, {"id": "Specifying_That_a_Plug-in_Is_Windowless", "title": "Specifying That a Plug-in Is Windowless"}, {"id": "Invalidating_the_Drawing_Area", "title": "Invalidating the Drawing Area"}, {"id": "Forcing_a_Paint_Message", "title": "Forcing a paint message"}, {"id": "Receiving_a_Paint_Message", "title": "Receiving a Paint Message"}, {"id": "Making_a_Plug-in_Opaque", "title": "Making a Plug-in Opaque"}, {"id": "Making_a_Plug-in_Transparent", "title": "Making a Plug-in Transparent"}, {"id": "Creating_Pop-up_Menus_and_Dialog_Boxes", "title": "Creating Pop-up Menus and Dialog Boxes"}, {"id": "Event_Handling_for_Windowless_Plug-ins", "title": "Event Handling for Windowless Plug-ins"}], "slug": "Plugins/Guide/Drawing_and_Event_Handling", "review_tags": ["technical"]}