social.solarpunk.au

social.solarpunk.au

replies
1
announces
1
likes
6

does anyone have a primer on CLIM?

i know @screwtape has been doing a lot of work on this front--?

@vidak oh, neat. I will look at it

@vidak when you say primer, what kinda thing do you want to know? It just works out of the box. The difficult thing I guess is getting used to beginner-like define-application-frame invocations. Here's one:
(define-application-frame vidaks-app (standard-application-frame) ()
(:panes (int :interactor) (app :application :display-function 'display-app))
(:layouts (Default (horizontally () int app)))
go for broke! Oh that defines
(define-vidaks-app-command (com-foo :menu t) () (print 'hi))

@vidak
Since we didn't do something like
(defun display-app (frame pane)
(present 'replace-with-my-class-slot-value t :stream pane))
above, when you try to run the above it will say "display-app not defined; skip this redisplay? ; after which the application pane will be blank until you define 'display-app

@vidak @screwtape I've mostly been looking through documentation and the clim-examples code in McCLIM's repo. But I've also been more focused on backend learning.

This Guided Tour may serve as a quick primer for an app writer's view: https://dept-info.labri.fr/~strandh/guided-tour.pdf

@charliemac
Backend in what sense?
@vidak

@screwtape @vidak started with http://turtleware.eu/posts/McCLIM-backends---Part-I-Medium-Output-Protocol.html and then worked toward understanding what an interactive backend entailed. I've been working on an FFI Wayland/EGL/OpenGL backend but have been a bit waylaid for the past month or so 😔