freenode/#clim - IRC Chatlog
Search
8:50:55
jackdaniel
and some toher stuff. that said I'm not focusing on these aspects of McCLIM currently
9:20:32
loke
jackdaniel: I'm trying to draw the summation symbol (sigma) with various fonts, and for each and every one I tried except for the default :ROMAN I'm getting this error:
9:20:39
loke
Character #\GREEK_CAPITAL_LETTER_SIGMA not representable in font #<XLIB:FONT fixed :1 96471576>
9:29:38
loke
where <family> and <face> are the objects I got from PORT-ALL-FONT-FAMILIES and FONT-FAMILY-ALL-FACES
9:36:34
jackdaniel
well, I'm not very familiar how to hack around seos when used with print functions
9:44:39
jackdaniel
setting text-style doesn't work for me either. I'd get back to font-selector-demo and examine sources in your place
10:23:55
jack_rabbit
It now uses the cl-gopher protocol library instead of its own local hacked version.
10:29:59
loke
jackdaniel: OK, this is frustrating. Even when using DRAW-TEXT* it doesn't use the style. I'm creating the style using (CLIM-EXTENSIONS:FONT-FACE-TEXT-STYLE <face> <size>)
10:37:07
beach
Oh, I just use the ones that McCLIM already uses: (make-text-style :sans-serif :roman nil)
10:38:06
jackdaniel
alternative is to have me to drop task to unify mirror class hierarchy and check it for you, write sample code and actively wait if it works for you
13:39:34
jackdaniel
you may try to put your cloned repo in quicklisp/local-projects/ (asdf looks recursively there - at least that's what I've been told)
13:44:06
loke
jackdaniel: but where is that system? I grepped every single file in McCLIM and the term mcclim-backend-common is nowhere to be found.
13:44:56
loke
This is a newly installed system, and I can't remember if I need to clone a different repository?
14:37:34
beach
Common Lisp doesn't need callbacks. They are just like functions that you pass as arguments or get stored in objects and that are called by the GUI for instance. In Common Lisp it is more common to call a generic function instead.
14:42:02
beach
Typically in another language, you create a button and you pass a function to the button creator, and that function gets called when the button is pressed.
14:42:29
beach
In Common Lisp, that's nothing special but in languages like C it is actually very complicated because they don't have closures.
14:43:19
beach
In Common Lisp, the button-press code often calls some generic function instead. Client code puts a method on that generic function to handle the push. So the method plays the same role as a callback, but the mechanism is different.
14:56:26
fittestbits
Hmm. When I first started porting mcclim to mezzano, I had to add a font directory to the list of places mcclim searchs for fonts. Wonder what's different ...
15:10:15
loke
I just don't get it. I can see the font. I get a proper font object, but it's never used.
15:10:32
nyef
On the subject of callbacks, there's another way to look at it: In most languages, callbacks are a function /and a pointer for callback-specific data/, because they don't have closures.
15:13:31
nyef
Hunh. And CLIM II 30.3 explicitly calls out application frames as being event clients. I wonder if there are earlier references to this concept?
15:20:18
loke
OK, now I've tested on Arch Linux, Fedora-26 and Debian-9. All fo them fails in the same way.
15:27:24
jackdaniel
regarding callbacks, I treat them as higher-order functions with an optional state (closures)
15:28:31
jackdaniel
such functions are often not worth creating protocol for them (hence - generic function)
15:28:36
loke
So now I have to figure out how to set arbitrary sizes. That's needed since I have dyanmic resizing of certain text in my maths renderer.
17:39:48
slyrus
first there was the mcclim-backend-common problem, fixed by removing my system-index.txt.
18:30:08
slyrus
man, now a failed AVER when trying to compile logic-cube.lisp. It really is one of those days...