Archivo de la categoría: Noticias

Xailer para Harbour

¡YA TENEMOS XAILER EN HARBOUR!

Bueno, casi. Quedan algunos detalles, además de depurarlo. Pero ya está funcionando al 90%. Tanto el núcleo como la ampliación del motor de objetos han sido portados con éxito, y toda la librería de Xailer, con todos los controles, datasources, etc.. Lo único que queda por ahora es el soporte para crear DLLs y el debugger, pero ya estamos trabajando en ello. También, el IDE ha sido modificado para poder compilar cualquier proyecto con xHarbour o con Harbour.
Sigue leyendo

Actualización de Xailer 2.6

¡¡Nueva versión de Xailer disponible!!

Ya está disponible la nueva versión de Xailer 2.6.1  que incorpora importantes correciones sobre la versión 2.6.0 y algunas mejoras.

En esta ocasión no hemos habilitado el sistema de ‘Auto Update’ debido a los grandes cambios existentes: nuevo IDE y  nuevas ayudas.

Un cordial saludo,

[El equipo de Xailer]

Nueva versión de Xailer 2.6

¡¡Nueva versión de Xailer disponible!!

Ya está disponible la nueva versión de Xailer 2.6  que incorpora importantes mejoras y correciones sobre la versión 2.5.

En primer lugar comentaros que el IDE ha cambiado completamente de apariencia; se han modificado completamente todas las imágenes e iconos de la aplicación y se han incorporado muchas nuevas. Esperamos que os guste.

En lo que respecta al IDE , el sistema de ‘plugins’ está completamente operativo. Os recomendamos utilizar los plugins que hemos incluido a modo de ejemplo (los fuentes de los mismos se han incluido en samples), como ‘Quickfind’, ‘MoreEdit’ y ‘MiniBrowse’. Y os animamos a que hagáis vuestroso propios plugins y si os apetece los compartáis con el resto de la comunidad Xailer subiéndolo a nuestra web de descargas en http://www.xailer.com/download/

Otra mejora en el IDE que muchos aplaudiréis seguramente es la posibilidad de pedir confirmación cuando se vaya a borrar un control de un formulario pulsando la tecla ‘Supr’.

A nivel general se han hecho grandes mejoras y nuevos controles, de los cuales destacaría los siguientes:

  • Nuevo control TCefBrowser basado en Chromium pero completamente nativo, para integrar un navegador Web en su propia aplicación. (sólo disponible en versión Enterpise)
  • Nuevo control TLabelEx con funcionalidad extendida tipo HTML
  • Soporte nativo a través de GDI+ de imagenes en formato PNG y TIFF por lo que ya no es necesario incluir FreeImage.dll
  • Soporte de imágenes transparentes (sólo PNG) en propiedad TControl:oBkgnd
  • Más posibilidades para establecer la posición de imágenes de fondo con las propiedades nBkgndMode y nBkgndMarginX y nBkgndMarginY
  • Soporte de gradientes en gran cantidad de controles y formularios con las propiedades nGradient y nClrPaneEnd
  • Nueva propiedad TPrinter:nPdfPrinter que permite establecer la existencia de una impresora virtual tipo PDF . Cuando esta propiedad tiene valor en la ventana de previsualización de impresión se activará directamente el botón de enviar a PDF. En el arranque de vuestras aplicaciones Xailer buscará alguna impresora que contenga los caracteres ‘PDF’ y si lo encuentra asignará la propiedad nPdfPrinter a dicha impresora.

A continuación os incluimos el detalle del archivo LoNuevo.htm:

Sigue leyendo

Actualización de Xailer 2.5

¡¡Nueva versión de Xailer disponible!!

Ya está disponible la nueva versión de Xailer 2.5.1  que incorpora importantes correciones sobre la versión 2.5 y algunas mejoras:

  • IDE:
    • Correcciones varias en Intellisense
    • Mejoras en la gestión de Plugins
    • Al copiar controles, se duplicaban sus eventos en el .xfm
    • Error al intentar borrar un ExplorerGroup
    • Ajustes en el guardado de la propiedad oFont de los controles
    • Error al copiar elementos con aItems que no eran objetos (p.ej. listbox)
    • SQLite Editor: Nueva funcionalidad en editor para ejecutar procesos BATCH
  • General:
    • Debido a cambios internos en el sistema de Plugins es necesario reconstruirlos
  • Controles
    • TOcx: No dejaba escribir caracteres acentuados dentro de un OCX
    • TControl: Al hacer click fuera de un menu popup, siempre se disparaba la opcion por defecto. Usar nuevo parámetro lCanceled para conseguir misma funcionalidad
    • TControl: Nuevo parametro lCanceled en ShowPopupMenu(), que se recibe por referencia y se rellena a .T. si el usuario ha cerrado el menu sin seleccionar una opcion
    • TControl: Usar oFont del formulario si oFont = Nil y lParentFont = .F.
  • Ejemplos
    • samplesMetaControlsOffice2007Buttons: Ejemplo de metacontrol que crea un boton con estilo Office2007 a partir de un TGlassBtn
    • samplesPluginsMoreOptions: Nuevas opciones y mejoras. Ahora utiliza un diálogo en vez de un menú
    • samplesPluginsHelloWord: Plugin basico para usar como plantilla o como punto de partida de otros plugins
  • Documentación
    • Actualizada a los últimos cambios

    En esta ocasión no hemos habilitado el sistema de ‘Auto Update’ debido a los grandes cambios existentes: nuevo IDE, nuevas ayudas y nuevos ejemplos.

    Un cordial saludo,

    [El equipo de Xailer]

  • Xailer 2.5

    ¡¡Nueva versión de Xailer disponible!!

    Ya está disponible la nueva versión de Xailer 2.5 que incorpora importantes novedades:

    • IDE:
      • Nuevo: Sistema de copiar/pegar controles en los formularios que corrige problema de controles con objetos en aItems
      • Nuevo: Soporte de Intellisense
      • Nuevo: Soporte de Plantillas (Archivo->Nuevo->Desde plantilla y Archivo->Guardar como plantilla)
      • Nuevo: Soporte de Metacontroles
      • Nuevo: Soporte de Plugins y gestor de Plugins en menú Componentes->Plugins
      • Nueva ventana de inicio cuando no hay ningún proyecto cargado
      • Actualizado scintilla a 2.1.2
      • Soporte de hotspots (URLs) en los comentarios en Herramientas->Opciones del editor->Apariencia
      • Nuevo botón para restaurar los colores por defecto desde el formulario de configuración del IDE
      • Arreglado bug al guardar propiedad TOptionItem:Cargo
      • Error de salvado en la propiedad oExplorerGroup:Cargo
      • Error esporádico al cerrar proyecto
      • Error al cambiar el color de la fuentes de más de un control a la vez
      • Busqueda de TODO/TOFIX en comentarios multilínea
      • Completadas las traducciones en todos los idiomas soportados
      • Nueva opción «Establecer módulo principal» en el árbol del gestor de proyectos
      • Reescrito el editor de valores numéricos con decimales en el inspector de objetos para que funcione en línea sin mostrar ningún formulario
      • Mostrar información sobre el fichero en curso en la tooltip de las pestañas del editor
      • Nueva opción «Cerrar todas las pestañas» en el menú contextual del área de mensajes
      • Al pulsar F2 sobre un control en el editor de formularios se entra a editar la propiedad ‘cText’
      • Al pulsar F2 en el inspector se activa la edición ‘extendida’, si la propiedad lo soporta
      • Indicar el número de ocurrencias y ficheros en ‘Buscar en ficheros’
      • SQLite editor: mostrar las sentencias DDL que se ejecutan en cambios de tabla
      • Mostrar el número de elementos que contienen las vistas ToDo, Puntos de ruptura y Marcas como tooltip de la pestaña
      • Al hacer doble click en una línea de error de un .h, no se mostraba en el editor
      • Al hacer doble click en la pestaña del editor seleccionar el archivo en el gestor de proyectos
      • Detener la compilación al intentar cerrar la pestaña «Compilar» del área de mensajes
      • No lanzar la compilación si ya se está compilando
      • Mostrar las calltips alineadas con la función
      • Recordar la altura de la ventana Output entre sesiones
      • Permitir cerrar la ventana Output con ESC desde el editor de código
      • Bug al seleccionar código entre paréntesis con Ctrl+E
      • Opción para configurar carpetas de usuario en Herramientas->Opciones->Carpetas->Carpetas de usuario
      • Permitir personalizar la fuente para Intellisense en Herramientas->opciones del editor->Calltips e Intellisense
      • Usar Enter para pasar al editor de código desde el visor de marcas, puntos de ruptura y tareas
    • General
      • Colors.chLa definición de colores del tipo CLR_nombre son obsoletos y se eliminarán en la siguiente versión de Xailer
      • Controls.chEliminado #translate ?
    • DataControls
      • TDbfDataset: Error en uso lReuseDel
      • TDbfDataset: Mejorar la información del error en el método OrdSetFocus()
      • TMySQL: Soporte de DateTime y TimeStamp
    • Formularios
      • Nuevo evento OnCopyData()
    • Controles
      • TGlassBtn: Nuevo control tipo botón utilizando GDI+
      • TShiftPanel: Nuevo control tipo TPanel
      • TOcx: Correcciones en el control del foco y otros problemas
      • TRichEdit: Error en método GetLine()
      • TRichEdit: Corregida forma de crear oFont en método Create
      • TRichEdit: Cargar filtros de conversión de Office 2010
      • TRichedit: Buscar los filtros de conversión en el directorio de la aplicación
      • TMessagebox: Corregido valor de retorno en Run()
      • TMessagebox: Permitir mostrar el timeout también en el título
      • TStatusPanel: Ajuste en el cálculo de la posición de controles embebidos en paneles
      • TEditBtn: Nuevos estilos ebARROW y ebPROMPT
      • TEditBtn: Nueva propiedad cPrompt
      • TBtnBmp: Nuevos estilo fsRAISED
      • TColorComboBox: Nueva propiedad lAddColor
      • TDBBrowse: Evitar posible error en destrucción del formulario
      • TAdoDataSource: Bug en método Execute() al devolver un recordset
      • TBrwCol: Incorrecto posicionamiento del menú contextual en oHeader
      • TListViewGroup: Establecer correctamente cHeader, cFooter, nHeaderAlign y nFooterAlign
      • TListViewColumn: Establecer correctamente nAligment
      • TListViewColumn: Mostrar correctamente la imagen al cambiar nAlignment
    • Otras clases
      • TBlatMail: Error en lReceipt
      • TBlatMail: Nuevas propiedades: lUndisclosedRecipients, nTimeOut, nTries y nAuth
      • TMailSlotServer y TMailSlotClient: Nuevas clases para intercambio de datos entre aplicaciones
      • TCanvas: Nuevos métodos AngeArc, Arc, ArcTo, Chord y Pie
      • TCanvas: Nuevo método GetPos()
      • TMenu: Nuevo método Refresh()
    • TComboBox: No quitar los espacios al añadir elementos
      • TCalculator: Nuevo parámetro para pegar el resultado de la calculadora al control activo
      • TRecentList: No se refrescaba la lista al establecer las propiedades lAutoSave y lAutoRemove
      • TFileOperationDlg: Nuevas propiedades lFilesOnly y lNoCopySecurityAttrib
    • Funciones
      • Nuevas funciones AngleArc(), Arc(), ArcTo(), Chord() y Pie()
      • Nueva funcion SendWMCopyData()
      • Nueva funcion SHGetFolder()
      • Función MakeNestedDir() devuelve código de error compatible con DirMake()
      • Función GetFileVersionInfo() obtiene información de versión de ejecutables y DLLs
      • Soporte íntegro del api GDI+ (609 funciones)
    • Ejemplos
      • samplesMetaControlsPanelOkCancel: Ejemplo de metacontrol que construye un panel que contiene un botones Aceptar y otro Cancelar con varias propiedades preestablecidas
      • samplesGlassBtn: Ejemplo de control TGlassBtn
      • samplesShiftPanel: Ejemplo de control TShiftPanel
      • samplesPluginsMoreEdit:Ejemplo de un plugin con dos extensiones:
        • Menu MoreEdit: agrega un menú al menú Edit con las opciones SetCaseUpper/Lower/Capitalize, iguales a las del menu Especial, opción de invertir mayúscuals y minúsculas, opción de ordenar líneas A-Z o viceversa y opción de renumerar defines numéricos
        • Opcion QuickFind: agrega una opción al menú Buscar que muestra un formulario para buscar y/o marcar interactivamente como en Firefox
      • samplesPluginsMoreOptions:Ejemplo de un plugin que añade una opción «Opciones extra del editor» al menú Herramientas y permite personalizar varios aspectos del editor de código
      • samplesMailSlotServer y samplesMailSlotClient:Ejemplo de uso de Inter Process Communications (IPC) usando MailSlots
      • samplesWMCopyDataServer y samplesWMCopyDataClient:Ejemplo de uso de Inter Process Communications (IPC) usando SendWmCopyData y evento TForm:OnCopyData
      • samplesGdiPlusExif: Mostrar informacion EXIF de imágenes
      • samplesGdiPlusConvert: Conversión entre formatos de imágenes
    • Documentación
      • Actualizada a los últimos cambios

    Os recordamos que al igual que ocurrió con la versión anterior se requiere volver a registrar el producto ya que ha cambiado la clave de activación.  El registro sólo será posible realizar en máquinas que estén activas y además la licencia tenga la suscripción igualmente activa.

    Podrá comprobar hasta que versión puede actualizar consultando su información de registro desde la opción de menú Ayuda->Información de registro.

    Para simplificar el proceso de registro para todas aquellas personas que no puedan acceder vía Web al sistema de registro de Xailer, cada vez que se lance una nueva versión todos los usuarios activos recibirán un Email con la clave de registro para todas las máquinas que tienen activas.

    No intente actualizarse a esta versión hasta que tenga absoluta certeza de que tiene derecho a recibirla.

    Un cordial saludo,

    [El equipo de Xailer]

    Intellisense (auto completado de código) en Xailer

    Estimados usuarios de Xailer,

    Como bien podéis imaginar por el título de esta publicación, la próxima versión de Xailer (2.5) incluirá soporte de ‘Intellisense’ o completado de código al igual que hacen otras herramientas de desarrollo de más renombre.

    Xailer será posiblemente el primer entorno de desarrollo basado en [x]Harbour que aporte ‘Intellisense’ o completado de código, y no sólo de funciones, sino también de clases y miembros de las mismas con cualquier nivel de herencia, tanto a nivel de la RTL de Xailer como de los propios proyectos o subproyectos que tenga el usuario abiertos.

    Sigue leyendo

    Xailer 2.4

    Estimados usuarios de Xailer,

    ¡¡Nueva versión de Xailer disponible!!

    Ya está disponible la nueva versión de Xailer 2.4 que incorpora importantes novedades, sobre todo en su IDE como son:

    • Uso de pestañas en el área de mensajes que permite guardar historial de todas las búsquedas realizadas y no perder dicha información cuando se compilaba el proyecto por ejemplo
    • Soporte de búsquedas globales en todo el disco
    • Ampliado el sistema de búsqueda de ‘definición bajo el cursor’ a todo el proyecto
    • Sistema de mantenimiento de comentarios TODO y TOFIX
    • Actualización automática del estado de mayúsculas y minúsculas en las variables, parámetros y miembros de clase

    Y otras muchas mejoras que podéis encontrar en el archivo LoNuevo.htm

    Ya tenemos muy avanzado el soporte completo de ‘Intellisense’ para toda la RTL de Xailer y esperamos que esté disponible para la siguiente versión 2.5. Las tres otras áreas en las que estamos trabajando muy activamente son:

    • Corrección de errores en operaciones de copiar y pegar
    • Operaciones de ‘deshacer’ en el editor de formularios
    • Soporte nativo de FireBird para Xailer Enterprise

    Esperamos que también esté todo terminado para la futura versión 2.5.

    Os recordamos que al igual que ocurrió con la versión 2.3 se requiere volver a registrar el producto ya que ha cambiado la clave de activación.  El registro sólo será posible realizar en máquinas que estén activas y además la licencia tenga la suscripción igualmente activa.

    Podrá comprobar hasta que versión puede actualizar consultando su información de registro desde la opción de menú Ayuda->Información de registro.

    Para simplificar el proceso de registro para todas aquellas personas que no puedan acceder vía Web al sistema de registro de Xailer, cada vez que se lance una nueva versión todos los usuarios activos recibirán un Email con la clave de registro para todas las máquinas que tienen activas.

    No intente actualizarse a esta versión hasta que tenga absoluta certeza de que tiene derecho a recibirla.

    Un cordial saludo,

    [El equipo de Xailer]

    Case match

    En esta ocasión es Ignacio el que nos sorprende con una mejora muy agradable para el IDE que estará disponible en la próxima revisión: el case matching.

    En la animación se puede observar como al escribir nKey (declarado como parámetro del método) y nIndex (declarada como variable local) en minúsculas,  el IDE actualiza automáticamente el estado de mayúsculas/minúsculas de las variables, parámetros y miembros de clases para hacerlos coincidir con su definición.

    CaseMatch

    Nueva actualización de Xailer a 2.3.2

    Estimados usuarios de Xailer,

    Ya está disponible una pequeña actualización de la versión 2.3 de Xailer a través únicamente de nuestro sistema de ‘Auto update’.

    Lamentablemente se nos ha olvidado incluir el fichero con los cambios realizados en esta pequeña revisión, por lo que os los indico al final de este mensaje.

    Un saludo

    Novedades en la versión Xailer 2.3.2

    • IDE:
      • Corregido error en opción de menú Herramientas cuando no había ningún proyecto activo
      • Al añadir un subproyecto no aparecia en el treeview del gestor de proyectos
      • Correcciones en ‘Limpiar proyecto’
      • Evitar parpadeo por recarga de árbol de proyectos
      • Mejorar deteccion de proyectos en formato antiguo
      • Resaltar fondo de los parentesis con su color inverso
      • Al pegar desde un elemento pasado del portapapeles, se insertaba el texto, en vez de reemplazar
      • No borrar DLLs en ‘Limpiar proyecto’
      • Correción de errores en publicar proyecto
      • En determinadas circunstancias, el IDE perdia completamente la fuente
      • Al grabar un nuevo modulo, despues de renombrarlo, no se refrescaba el editor
      • Bug al autocompletar :: en un modulo vacio
      • Añadidas nuevas funciones de consola de Clipper para Intellisense (841 funciones)
    • DataControls
      • MySql: Mecanismo de ‘ping’ para asegurarse de que MySQL sigue activo
      • MySql: Bug en Day(), Month() y Year() con fechas vacias guardadas como cadenas
    • Controles
      • TComboBox: Compatibilidad con WINE en linux
      • TRichEdit: Nuevas propiedades lProtected, lSmallCaps, nHighLight y métodos HasText(), GetFirstVisibleLine(), GoBotom(), GoTop(), SetProtected() y SetSmallCaps()
      • TRichEdit: Liberada la memoria del menu oPopup
      • TRichEdit: Modificado FindText() para que devuelva .T. si encontrado y .F. si no
      • TOptionList: Soporte de eventos OnLButtonDown y OnClick en zonas sin items
      • TBrwColumn: Control de headers en varias lineas para construccion del menu contextual
    • Otras clases
      • TApplication: Cambio punto de comprobación de datasources cerrados

       

    [El equipo de Xailer]

    Calltips

    En las últimas versiones de Xailer se han venido haciendo cambios internos en el IDE para adecuarlo a las mejoras que estamos desarrollando. Una de ellas es el soporte de calltips en el editor de código.

    Las calltips son pequeñas ventanas que muestran los parámetros que recibe una función o procedimiento y sirven como guía de ayuda para introducir correctamente los argumentos al escribir código. Sigue leyendo