Giter VIP home page Giter VIP logo

gtk-cffi's Introduction

gtk-cffi

GTK-CFFI is a library, providing CFFI layer to GTK3. License is LLGPL for GTK, BSD for GLib and GDK.

GTK interface is mapped like this:

GTKLisp
gtk_widget_set_parent(setf (parent widget) new-parent)
gtk_widget_get_parent(parent widget)

Properties realized as (property object :property-name). There are corresponding setters for them. Signals: (gsignal object :signal-name). Value of signal can be name of C function, its address, corresponding keyword or lisp function, including closure.

Along with GtkListStore, I made LispStore. It can be filled much faster, than ListStore.

Why not cl-gtk2

  • cl-gtk2 supports only GTK2, gtk-cffi supports GTK3
  • cl-gtk2 describes properties by hand, gtk-cffi uses g-object-class-find-property and caching results
  • cl-gtk2 offers c-style functions like (gtk:widget-queue-resize-no-redraw widget), in gtk-cffi this will be (gtk:queue-resize widget :no-redraw t)

gtk-cffi's People

Contributors

kalimehtar avatar kanru avatar vlnx avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.