You are on page 1of 17

Sys.

Ttray plugin versin


v1.0.0.1


Desde nuestra modesta experiencia y con ganas de aprender y mostrar lo aprendido sobre
Autoplay media estudio intentaremos hacer: Tutoriales traducciones ejemplos y todo lo
relacionado con AMS , en este caso tocaremos el tema plugins con el Sys.Tray v1.0.0.1,
plugin realizado por la gente de www.dnet-software.com.

Con este plugin podemos crear iconos en la bandeja del sistema aplicndoles acciones y mens con
tems editables a nuestro gusto, puede ser un plugin muy til en nuestros proyectos, un ejemplo
visual de un proyecto con Sys.tray y un men seria este:

Este men sera algo simple, nuestra imaginacin puede hacer mas porque podemos cambiar ,tooltips
, icono en s y muchas ms cosas.
Las acciones que nos trae el plugin son estas:
SysTray.AddIcon
SysTray.Change
SysTray.RemoveIcon
SysTray.IsVisible
SysTray.CreateMenu
SysTray.MenuItem
SysTray.ShowMenu
SysTray.MenuBar
SysTray.OpenSubMenu
SysTray.CloseSubMenu
SysTray.DisableMenuItem
SysTray.MenuSetChecked
SysTray.MenuGetChecked
SysTray.MenuSetItemText
SysTray.MenuGetItemText
SysTray.CreateImageMenu
SysTray.SetToolTip
SysTray.SetIcon
SysTray.HideFromTaskBar


SysTray.AddIcon:
Descripcin:

Aadir icono en la bandeja del sistema
Solo se puede aadir un icono al mismo tiempo
Parmetros:

Icon:
Seleccin de icono a aadir en la bandeja del sistema (String)
Tooltip:
Texto a visualizar en el tooltip del icono anterior (String)
Callback:
Funcin que nos devuelve los valores del icono creado (String)
MenuCallback:
Funcin que nos devuelve los valores del men creado en la bandeja del sistema (String)
Retornos:

Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla)
Ejemplo:
tbTrayIcon = SysTray.AddIcon(_SourceFolder.."\\AutoPlay\\Icons\\group.ico", "Ejemplo
Systray", "SysTrayCallBack", "MenuCallBack");
if tbTrayIcon.Success then
SysTray.DisableMenuItem(100, 101, true);
else
Dialog.Message("Error",tbTrayIcon.Error)
end
SysTray.Change:
Descripcin:
Cambio de icono y tooltip en la bandeja del sistema
Parmetros:

Icon:
Ruta del icono a cambiar
Tooltip:
Texto a cambiar en el tooltip del icono anterior
Retornos:

Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla)
Ejemplo:
tbl = SysTray.Change("AutoPlay\\Icons\\Kirby.ico", "Cambia icono");
if tbl.Success then
-- icono cambiado
else
---En caso de error
Dialog.Message("Error",tbl.Error,);


SysTray.RemoveIcon:
Descripcin:
Elimina icono de la bandeja del sistema
Nota: esta funcin no funciona si primero no se ha llamado a Add.icon
Retornos:
Esta accin no devuelve ningn valor
Ejemplo:
--- Cuando se restaure la ventana borrar icono de la barra de sistema
if (e_Type == SIZE_RESTORED) then
SysTray.RemoveIcon()
end
SysTray.IsVisible
Descripcin:
Comprueba si el icono de la bandeja del sistema es visible
Retornos:
Si esta visible devuelve true si no false ( booleano)
Ejemplo:
result = SysTray.IsVisible();
Dialog.Message("Notice","IsVisible: "..tostring(result));

SysTray.CreateMenu
Descripcin:
Crear men en la barra del sistema
Parmetros:
MenuID :
( numero) valor numrico ID del men
Retornos:
Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla)
Ejemplo:
--- Creando men
tbMenu=SysTray.CreateMenu(100);
--- Creando items en el men
if tbMenu.Success then
SysTray.MenuItem(101, "Item 1");
SysTray.MenuItem(102, "Item 2");
SysTray.MenuBar();
SysTray.OpenSubMenu("Sub Menu");
SysTray.MenuItem(103, "Sub Item 1");
SysTray.MenuItem(104, "Sub Item 2");
SysTray.CloseSubMenu();
SysTray.MenuBar();
SysTray.MenuItem(105, "Item 3");
else
-- si al abrir el men hay un error..mensaje
Dialog.Message("Error",tbMenu.Error)
end
SysTray.MenuItem
Descripcin:
Crear Item en el men
Parmetros:
ItemID :
( numero) valor numrico ID del tem men creado
Text:
Texto que reflejara el tem men ( String)
IconPath:
Ruta del icono a cargar en el tem (string)
Nota: Este parmetro solo es valido cuando creamos men bajo SysTray.CreateImageMenu
Retornos:
Esta accin no devuelve ningn valor
Ejemplo:
tbLeftClickMenu = SysTray.CreateImageMenu(100, true);
if tbLeftClickMenu.Success then
SysTray.MenuItem(101, "Restore", "AutoPlay\\Icons\\Restore.ico");
SysTray.MenuItem(102, "Help","AutoPlay\\Icons\\help.ico");
SysTray.MenuBar();
SysTray.OpenSubMenu("Links");
SysTray.MenuItem(103, "AIO Desings Blogs","AutoPlay\\Icons\\links.ico");
SysTray.MenuItem(104, "HackersHN","AutoPlay\\Icons\\Links.ico");
SysTray.MenuItem(105, "DarkReloaded","AutoPlay\\Icons\\links.ico");
SysTray.CloseSubMenu();
SysTray.MenuBar();
SysTray.MenuItem(106, "Exit","AutoPlay\\Icons\\Exit.ico");
else
--- mensaje en caso de error
Dialog.Message("Error",tbLeftClickMenu.Error)
end
SysTray.ShowMenu
Descripcin:
Lanzar men creado anteriormente.
Parmetros:
MenuID:
(Numero)Valor numrico ID del men a mostrar.
Retornos:
Esta accin no devuelve ningn valor.

Ejemplo:
-----SysTrayCallback function
if stringButton == "LeftClick" then
result = SysTray.ShowMenu(100);
elseif stringButton == "RightClick" then
result = SysTray.ShowMenu(200)
-- Doble Click icono Restaurar/Minimizar aplicacin
elseif stringButton == "LeftDoubleClick" then
if Invisible == "ON" then
Application.Restore();
Invisible ="OFF"
else
Application.Minimize();
Invisible = "ON"
end
SysTray.MenuBar
Descripcin:
Creacin de barras separadoras en el men actual.
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
tbRightClickMenu=SysTray.CreateMenu(200);
if tbRightClickMenu.Success then
SysTray.MenuItem(201, "RightClick Item 1", 0);
SysTray.MenuItem(202, "RightClick Item 2", 0);
SysTray.MenuBar(); --- Separacin entre items
SysTray.MenuItem(203, "RightClick Item 3", 0);
else
-- there was an error so show the message
Dialog.Message("Error",tbRightClickMenu.Error)
end


SysTray.OpenSubMenu
Descripcin:
Creacin de un sub-men dentro del men actual , en el texto a mostrar en el tem
Se puede utilizar el carcter '&' para subrayar una letra
NOTA: Para utilizar esta funcin es necesario llamar anteriormente a SysTray.ShowMenu o
SysTray.ShowImageMenu
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
tbLeftClickMenu = SysTray.CreateImageMenu(100, true);
if tbLeftClickMenu.Success then
SysTray.MenuItem(101, "Restore", "AutoPlay\\Icons\\Restore.ico");
SysTray.MenuItem(102, "Help","AutoPlay\\Icons\\help.ico");
SysTray.MenuBar();
SysTray.OpenSubMenu("Links");
SysTray.MenuItem(103, "AIO Desings Blogs","AutoPlay\\Icons\\links.ico");
SysTray.MenuItem(104, "HackersHN","AutoPlay\\Icons\\Links.ico");
SysTray.MenuItem(105, "DarkReloaded","AutoPlay\\Icons\\links.ico");
SysTray.CloseSubMenu();
SysTray.MenuBar();
SysTray.MenuItem(106, "Exit","AutoPlay\\Icons\\Exit.ico");
else
--- mensaje en caso de error
Dialog.Message("Error",tbLeftClickMenu.Error)
end

SysTray.CloseSubMenu
Descripcin:
Cierre del sub-men dentro del men actual , en el texto a mostrar en el tem
NOTA: Para utilizar esta funcin es necesario llamar anteriormente a SysTray.OpenSubMenu
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
Sobre el ejmplo anterior
SysTray.OpenSubMenu("Links");
SysTray.MenuItem(103, "AIO Desings Blogs","AutoPlay\\Icons\\links.ico");
SysTray.MenuItem(104, "HackersHN","AutoPlay\\Icons\\Links.ico");
SysTray.MenuItem(105, "DarkReloaded","AutoPlay\\Icons\\links.ico");
SysTray.CloseSubMenu();
SysTray.DisableMenuItem
Descripcin:
Habilitar o deshabilitar el tem seleccionado bajo numericoID (Nmero)
Parmetros:
MenuID:
Valor numrico ID en el men (Numero)
ItemID:
Valor numrico ID en el ItemMenu(Numero)
Disable:
True para deshabilitar tem (Booleano)
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
SysTray.DisableMenuItem(100, 101, true);
True: false:
SysTray.MenuSetChecked
Descripcin:
Activa o desactiva un elemento del men
Parmetros:
MenuID:
Valor numrico ID en el men (Numero)
ItemID:
Valor numrico ID en el ItemMenu(Numero)
Checked:
True para el Checkeo del itemMenu

Ejemplo:
SysTray.MenuSetChecked(100, 101, true);

SysTray.MenuGetChecked
Descripcin:
Comprobacin de estado de activacin de un tem del men
Parmetros:
MenuID:
Valor numrico ID en el men (Numero)
ItemID:
Valor numrico ID en el ItemMenu(Numero)
Retornos:
Devuelve true si el tem del men esta activado, false si no lo esta
Ejemplo:

- Muestra el estado de activacin en un dilogo.
Dialog.Message("Error","SetChecked:
"..tostring(SysTray.MenuGetChecked(100, 101)))

SysTray.MenuSetItemText
Descripcin:
Establece el nuevo texto en un elemento de men.
Parmetros:
MenuID:
Valor numrico ID en el men (Numero)
ItemID:
Valor numrico ID en el ItemMenu(Numero)
Text:
Texto a cambiar en el tem del men
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
if (e_Type == SIZE_MINIMIZED) then
SysTray.MenuSetItemText(100, 101, "Restore");
SysTray.HideFromTaskBar(Application.GetWndHandle(), true);-- Ocultamos botn barra tareas
end
if (e_Type == SIZE_RESTORED) then
SysTray.MenuSetItemText(100, 101, "Minimize");
SysTray.HideFromTaskBar(Application.GetWndHandle(), false)-- Mostramos Botn barra tareas
end
SysTray.MenuGetItemText
Descripcin:
Obtiene un nuevo texto en un elemento de men.
Parmetros:
MenuID:
Valor numrico ID en el men (Numero)
ItemID:
Valor numrico ID en el ItemMenu(Numero)
Retornos:
Devuelve una cadena de texto del elemento del men y una cadena vaca en caso de error
Ejemplo:
txt=SysTray.MenuGetItemText(100, 101)--- Lamamos al texto del ItemMenu
Dialog.Message("Error","MenuGetItemText: "..txt)Nos devuelve el texto
en un mensaje
SysTray.CreateImageMenu
Descripcin:
Crear men en la barra del sistema con iconos
Parmetros:
MenuID:
(Numero) valor numrico ID del men
ModernLook:
True activamos estilo moderno, false lo desactivamos
true: false:

Retornos:
Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla).
Ejemplo:
tbLeftClickMenu = SysTray.CreateImageMenu(100, true);
if tbLeftClickMenu.Success then
SysTray.MenuItem(101, "Minimize", "AutoPlay\\Icons\\Restore.ico");
SysTray.MenuItem(102, "Help","AutoPlay\\Icons\\help.ico");
SysTray.MenuBar();
SysTray.OpenSubMenu("Links");
SysTray.MenuItem(103, "AIO Desings Blogs","AutoPlay\\Icons\\links.ico");
SysTray.MenuItem(104, "HackersHN","AutoPlay\\Icons\\Links.ico");
SysTray.MenuItem(105, "DarkReloaded","AutoPlay\\Icons\\links.ico");
SysTray.CloseSubMenu();
SysTray.MenuBar();
SysTray.MenuItem(106, "Exit","AutoPlay\\Icons\\Exit.ico");
else
--- mensage en caso de error
Dialog.Message("Error",tbLeftClickMenu.Error)
end
SysTray.SetToolTip
Descripcin:
Cambiar tooltip al icono de bandeja del sistema
Parametros:
Tooltip:
Texto del tooltip a cambiar (string)
Retornos:
Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla).
Ejemplo:
tb = SysTray.SetToolTip("this is a new tool tip");
if tb.Success then
-- tooltip Cambiado

else
-- En caso de error
Dialog.Message("Error",tb.Error)
end

SysTray.SetIcon
Descripcin:
Cambio del icono de la bandeja del sistema.
Parametros:
Icon:
Icono a cambiar en la bandeja del sistema (String)
Retornos:
Devuelve una tabla de la situacin de la accin, result.Success devuelve un valor booleano,
true si se ha creado el sistema de trayicon, falso si no se ha creado
En el caso de result.Success sea falso el mensaje de error ser devuelto en result.Error (Tabla).
SysTray.HideFromTaskBar
Descripcin:
Mostrar o ocultar el botn de la barra de tareas
Parametros:
WindowID:
La ventana (hWnd) (Numero)
Hide:
True oculta el botn de la barra de tareas , false lo muestra
Retornos:
Esta accin no devuelve ningn valor.
Ejemplo:
if (e_Type == SIZE_MINIMIZED) then
SysTray.MenuSetItemText(100, 101, "Restore");
SysTray.HideFromTaskBar(Application.GetWndHandle(), true);-- Ocultamos botn barra tareas
end
if (e_Type == SIZE_RESTORED) then
SysTray.MenuSetItemText(100, 101, "Minimize");
SysTray.HideFromTaskBar(Application.GetWndHandle(), false)-- Mostramos Botn barra tareas

end

Realizado por raf@xplayer para http://aiodesings.wordpress.com/.

You might also like