Actualizado el 14-01-2007
versión para imprimir
Preparando al plugin para recibir datos
Dentro de la función register debemos especificar sobre que datos va a trabajar nuestro plugin.
Estos son los modos principales. Como siempre, el 1 significa TRUE y el 0 FALSE.
hkp_DataAddInt(pDataOut, "MODE_IN_TEXT_FULL", 1); //El plugin capturará todo el texto del documento abierto en el editor. hkp_DataAddInt(pDataOut, "MODE_IN_TEXT_SELECTED", 1); //El plugin trabajará sobre el texto seleccionado en el editor hkp_DataAddInt(pDataOut, "MODE_IN_WORD_AT_CURSOR", 1); //El plugin trabajará sobre la palabra bajo el cursor hkp_DataAddInt(pDataOut, "MODE_IN_TAG_AT_CURSOR", 1); //El plugin trabajará sobre la etiqueta bajo el cursor hkp_DataAddInt(pDataOut, "MODE_IN_LINE_AT_CURSOR", 1); //El plugin trabajará sobre la línea bajo el cursor hkp_DataAddInt(pDataOut, "MODE_IN_FILE", 1); //Permite capturar el nombre y path del archivo. //Si esta grabado, pasa el nombre y path a la función main; si no lo está // pasa el nombre y path del fichero temporal hkp_DataAddInt(pDataOut, "MODE_IN_FILE_EXT", 1); //El fichero temporal a que se refiere el modo anterior tiene la //extension TMP. Con el parámetro MODE_IN_FILE_EXT puedes especificar //otra extension. hkp_DataAddInt(pDataOut, "MODE_IN_FILE_DELETE", 0); //El fichero temporal no se borrará automáticamente //si este parámetro se pone a 0.
Opciones relacionadas con la dinámica del plugin
hkp_DataAddInt(pDataOut, "BUTTON_VISIBLE", 1); // Mostrar el botón en la barra de acciones hkp_DataAddInt(pDataOut, "MODE_SHOW_STATUS", 1); // mostrar una barra de progreso hkp_DataAddInt(pDataOut, "MODE_ADD_MENU_SHORTCUTS", 1); //Se generan caracteres aceleradores de teclado hkp_DataAddInt(pDataOut, "MODE_BEGIN_GROUP", 1); //barra lateral a la izquierda del icono o nombre del plugin, //para indicar comienzo de grupo hkp_DataAddInt(pDataOut, "MODE_END_GROUP", 1); //barra lateral derecha para indicar fin de grupo hkp_DataAddInt(pDataOut, "MODE_EDITOR_REQUIRED", 1); // requiere un documento abierto. //el plugin no se ejecuta si no hay un documento abierto en //el editor. hkp_DataAddInt(pDataOut, "MODE_FOCUS_EDITOR", 1); // editor con el foco hkp_DataAddInt(pDataOut, "MODE_PREPROCESS", 1); //en desarrollo hkp_DataAddInt(pDataOut, "MODE_SAVE_FIRST", 1); //se grabara el contenido en el editor antes de ejecutar //el plugin hkp_DataAddInt(pDataOut, "MODE_INFO_KEYWORDS", 1); // Pasa palabras clave que HTML-kit puede usar para incluir // el plugin en menus relativos a esas claves hkp_DataAddInt(pDataOut, "MODE_CONSOLE", 1); // si esta a 1, informa al editor que ese plugin no tiene // interfaz grafica y debe ser ejecutado en modo consola
identificando y situando al plugin
hkp_DataAdd(pDataOut, "NAME", "NombredelPlugin"); // el nombre del plugin es siempre requerido. // Si se especifica MODE_ICON se usa el icono en lugar del nombre // Si no se especifican parámentros HINT y DESCRIPTION, el nombre se usa // como tooltip. hkp_DataAdd(pDataOut, "SECTION", "tools"); //Objects Validators Converters Tables Forms Formats Document Style //Tools Text Common Invisibles Online 'Batch Actions' //Puedes especificar cualquier nombre, p.e. 'mis herramientas' hkp_DataAdd(pDataOut, "MODE_ICON", "1"); //icono visible en lugar de nombre //advierte que como es DataAdd y no DataAddint //necesitamos pasar el valor como una cadena. hkp_DataAdd(pDataOut, "ICON_SMALL", sIcon1); //sIcon1 es una variable que almacena el icono como string hkp_DataAdd(pDataOut, "ICON_LARGE", sIcon2); //No tiene mucho sentido usar esta opción (32*32) //ya que html-kit redimensionara el icono a 16*16 hkp_DataAdd(pDataOut, "UPID", "string"); hkp_DataAddInt( pDataOut, "LABEL_VISIBLE", 1 ); // etiqueta de texto visible junto al icono ? hkp_DataAdd( pDataOut, "LABEL_TEXT", "hi label" ); // texto de la etiqueta hkp_DataAddInt( pDataOut, "LABEL_WIDTH", 10 ); // anchura de la etiqueta hkp_DataAddInt( pDataOut, "LABEL_WIDTH_CHAR", 0 ); // espacio entre caracteres hkp_DataAdd( pDataOut, "LABEL_HINT", "esto es una etiqueta" ); // tooltip hkp_DataAdd( pDataOut, "LABEL_STYLE", "U" ); // estilo del texto // B bold I cursiva U subrayado S tachado hkp_DataAdd(pDataOut, "MENU_ITEM1", "string"); hkp_DataAdd(pDataOut, "DROPDOWN_ITEM", "string"); //texto que aparece al desplegar el menu del plugin //en cada una de las acciones. hkp_DataAdd(pDataOut, "DROPDOWN_ITEM_HINT", "string"); hkp_DataAdd(pDataOut, "DROPDOWN_ITEM_ICON", "string"); hkp_DataAdd(pDataOut, "DROPDOWN_ITEM_PHRASE", "string"); hkp_DataAdd(pDataOut, "ICON_CAPTION", "string"); //permite especificar un texto que ocupara el lugar del icono // En el menu aparecerá este texto en lugar del nombre del plugin. hkp_DataAdd(pDataOut, "ENABLED", "1"); // Si lo situas a 0 el plugin queda desactivado, y el icono // no pulsable hkp_DataAdd(pDataOut, "MENU_CAPTION", "string");
opciones de informacion
La mayoria no necesitan explicación. Informacion del plugin:
hkp_DataAdd(pDataOut, "VERSION", "0.90"); // version del plugin hkp_DataAdd(pDataOut, "DESCRIPTION", "string"); hkp_DataAdd(pDataOut, "HINT", "string"); //tooltip hkp_DataAdd(pDataOut, "COPYRIGHT_SHORT", "string"); // hasta 256 caracteres hkp_DataAdd(pDataOut, "COPYRIGHT_LONG", "string"); //multilinea hkp_DataAdd(pDataOut, "LICENSE_TYPE", "string"); hkp_DataAdd(pDataOut, "LICENSE_DESCRIPTION", "string"); hkp_DataAdd(pDataOut, "LICENSE_URL", "string"); hkp_DataAdd(pDataOut, "REGISTRATION_TYPE", "string"); hkp_DataAdd(pDataOut, "REGISTRATION_DESCRIPTION", "string"); hkp_DataAdd(pDataOut, "REGISTRATION_FEE", "string"); hkp_DataAdd(pDataOut, "REGISTRATION_URL", "string"); hkp_DataAdd(pDataOut, "URL_HELP", "string"); hkp_DataAdd(pDataOut, "HELP_FILE", "string"); hkp_DataAdd(pDataOut, "HELP_CONTEXT", "string"); // pasa información que puede ser visualizada // en los sistemas de ayuda de HTML-kit
información del autor
hkp_DataAdd(pDataOut, "AUTHOR", "string"); hkp_DataAdd(pDataOut, "PHONE", "string"); hkp_DataAdd(pDataOut, "COMPANY", "string"); hkp_DataAdd(pDataOut, "MAILING_ADDRESS", "string"); hkp_DataAdd(pDataOut, "EMAIL", "string"); hkp_DataAdd(pDataOut, "URL_HOME", "string"); hkp_DataAdd(pDataOut, "URL_DOWNLOAD", "string");