Descargar

Interfaces gráficas en Haskell

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red Índice 1. WxHaskell 1.1. Introducción a WxHaskell ¿Por qué usar wxHaskell? 1.2. Visión genérica de wxHaskell. 1.3. Ejemplos 2. Ap.GUI 2.1. Introducción a Ap.GUI 2.2. Ejemplos

    1

    edu.red Introducción a WxHaskell Es una librería de interfaces gráficas para Haskell de código abierto

    Construída sobre la librería wxWidgets(plataforma GUI desarrollada para C++). Soporta el 75% de su funcionalidad.

    Comenzó su desarrollo en el año 1992 declarada código abierto en el año 2009.

    Es una librería derivada de wxEiffel.

    Ofrece un alto nivel de abstracción, polimorfismo paramétrico

    2

    edu.red ¿Por qué usar WxHaskell? 3

    edu.red Seguridad en WxHaskell 4

    edu.red Visión genérica de WxHaskell 5

    edu.red Visión genérica. Paquetes WxHaskell 6 (Gp:) wxWidgets (Gp:) Graphics.UI.WXCore (Gp:) Graphics.UI.WX

    edu.red Controles p <- panel []

    txt <- textEntry p AlignLeft [text := “your name here”]

    cb <- comboBox p true [“NSW”, “ACT”, “VIC”, “WA”] []

    rd <- radioBox p Horizontal [“one”, “two”] [on select := logSelection]

    Otras: Choice, ListBox, Slider, Toolbar

    7

    edu.red Tipos y herencia en WxHaskell

    Codifica relación de herencia entre tipos diferentes usando TAD Object (Ptr) |- .. |- Window |- Frame |- Control |- Button |- RadioBox

    Button a === Ptr (… (CWindow (CControl (CButton a))) …)

    8

    edu.red Visión genérica. Atributos en WxHaskell 9

    edu.red Visión genérica. Atributos en WxHaskell Type Frame a = Window (CFrame a) Frame es instancia de HasImage, Form, Closable, y de cualquier otra instancia de Window Window es una instancia Textual,Literate,Dimensions,…

    La clase HasImage define el atributo ‘image’, La clase Textual define the atributo ‘text’.

    Entonces, podremos hacer lo siguiente:

    f <- frame [] set f [text := “Window Title”, image := “/some/image.ico”]

    10

    Partes: 1, 2
    Página siguiente