Script Reference : Extensions
Extension is an extended version of script. In additional to text of
script itself it has images for buttons, information about commands and
so on.
Extension is a ZIP file with ZIP extension. It should contains script
itself, information file, commands, ribbon and images for buttons.
Zip file
zip file must be compressed with deflate algorithm, no encryption, no LZMA.
code.psf | psf | Script file, same as regular priPrinter script. Required. |
info.txt | txt | Information about extension. Name, file name, copyright, version, etc. Required. |
buttons.txt | txt | Description of commands implemented by this plugins |
r_crop.txt, r_page.txt, r_pdf.txt, etc | txt | Location of buttons in priPrinter ribbon. Each file for separate tab. |
info.txt
Extension information file.
filename:"printerbtn" id:{E2BAF4B6-E49F-427C-A2CB-881E05464ED6} copyright:Pelikan Software Kft. version:1.0.0 info:Creates 'Print Now' button in the page tab name:Print Now Button
Where
filename | Name of extension on user computer |
id | Unique identifier of extension in string format. It does not have to be a GUID. |
copyright | How it will be displayed in Extension Manager |
version | version in X.X.X format |
info | Description of extension |
name | Short name of extension |
code.psf
It's a regular priPrinter script file. It just have to define special functions for handling buttons and configuration dialog.
OnClick() | Handle click on button. |
OnConfig(cmd) | Show configuration dialog. This function may be called from Extension Manager. |
OnStart() | The OnStart function is called by priPrinter when priPrinter started. |
OnClose() | priPrinter calls this function as a signal that an application is to terminate. |
OnLoad() | Called after loading new document |
OnPrinterChanged() | Called after selecting another printer |
OnClick
function OnClick(cmd) { window.DoCommand("ribbon.print"); return true; };
This extension handles only one command, so there is no need to check for it's name. This particular extension just executes another standard command.
OnConfig, OnLoad, OnPrinterChanged
function OnConfig() { local dlg=Dialog (); ... local rezult=dlg.Execute(); if(rezult) { ... } }
function OnLoad() { MsgBox("OnLoad"); } function OnPrinterChanged() { MsgBox("OnPrinterChanged"); }
buttons.txt
File with definition of commands provided by this extension.
imglib "ext_printer_16" { w=16 h=16 resource="print_16.apm" } imglib "ext_printer_20" { w=20 h=20 resource="print_20.apm" } imglib "ext_printer_32" { w=32 h=32 resource="print_32.apm" } imglib "ext_printer_48" { w=48 h=48 resource="print_48.apm" } category "printbtn"{ cmd "Print" { text="513|Print" img{lib="ext_printer_16" id=0} img{lib="ext_printer_20" id=0} img{lib="ext_printer_32" id=0} img{lib="ext_printer_48" id=0}hint="221|Print now"} }
Where imglib - image library
More information will be available shortly.