That's stuff I had lying around in a half-finished state for ages. But since there might be work on the GUI going on, I wanted to get things into a more finished state so it can be committed.
The big change is the replacement of textcache which held the complete text of a label or button with fontcache, which holds individual glyphs and caches them for future use. There's been some code cleanup and small enhancements too (like proper centering of multiline text). There are a few minor issues and things left undone which I hope to fix soon. In my tests I've also came across another bug, that I believe has existed before. This time I could catch it in gdb, however. Just not sure what's causing it, yet. If somebody wants to have a closer look ... Program received signal SIGSEGV, Segmentation fault. 0x00007ffff6a4ea76 in gui::decoration::cleanup (this=0x10bf170) at ../../../adonthell/src/gui/decoration.cc:256 256 delete i->second; (gdb) bt #0 0x00007ffff6a4ea76 in gui::decoration::cleanup (this=0x10bf170) at ../../../adonthell/src/gui/decoration.cc:256 #1 0x00007ffff6a4af8d in ~decoration (this=0x10d32e0, __in_chrg=<value optimized out>) at ../../../adonthell/src/gui/decoration.h:214 #2 ~widget (this=0x10d32e0, __in_chrg=<value optimized out>) at ../../../adonthell/src/gui/widget.h:91 #3 ~label (this=0x10d32e0, __in_chrg=<value optimized out>) at ../../../adonthell/src/gui/label.h:71 #4 ~button (this=0x10d32e0, __in_chrg=<value optimized out>) at ../../../adonthell/src/gui/button.h:76 #5 gui::button::~button (this=0x10d32e0, __in_chrg=<value optimized out>) at ../../../adonthell/src/gui/button.h:78 #6 0x00007ffff6a4b5b3 in gui::conversation::update (this=0x104c8f0) at ../../../adonthell/src/gui/conversation.cc:43 #7 0x00007ffff6a4ac06 in gui::button::keyup (this=0xefe430, k=<value optimized out>) at ../../../adonthell/src/gui/button.cpp:69 #8 0x00007ffff683b4f5 in operator() (this=<value optimized out>, ev=<value optimized out>) at ../../../adonthell/src/base/callback.h:579 #9 input::listener::raise_event (this=<value optimized out>, ev=<value optimized out>) at ../../../adonthell/src/input/listener.cc:131 ---Type <return> to continue, or q <return> to quit--- Kai _______________________________________________ Adonthell-devel mailing list Adonthell-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/adonthell-devel