From onixie at gmail.com Tue May 3 03:36:19 2011 From: onixie at gmail.com (nixie) Date: Tue, 03 May 2011 11:36:19 +0800 Subject: [mcclim-devel] pixie-tab-bar-pane's width is computed out of the screen in pixie/clx-look Message-ID: <1304393779.5127.40.camel@nixie-laptop> Hello, I tried pixie/clx-look frame manager with clim-examples' tabdemo. (tested on sbcl 1.0.47 with mcclim from latest quicklisp in linux) The tab bar's width is always computed as a very big numbder 20000001/2. the worse is that the tab layout is always drawn out of screen. (In ubuntu, it causes the screen to flash when tabdemo displays. In gentoo, clx will complain a bad typed 16bit integer error) I find that draw-pixie-tab-bar-bottom function draws two lines with x from 0 to +fill+. The +fill+ is a very big number. I think it should draw the lines with x from 0 to the value of (bounding-rectangle-max-x (sheet-region pane)) rather than +fill+. This solves the problem. ;; The one will cause the pixie-tab-bar-pane has a very big width. (defun draw-pixie-tab-bar-bottom (pane) (let ((y0 (bounding-rectangle-min-y (sheet-region pane))) (y1 (bounding-rectangle-max-y (sheet-region pane)))) (draw-line* pane 0 (- y1 6) +fill+ (- y1 6) :ink *3d-light-color*) (draw-line* pane 0 (- y1 1) +fill+ (- y1 1) :ink *3d-dark-color*) #+NIL (draw-line* pane 0 (1- y1) x1 (1- y1) :ink +gray30+))) ;; I think this is better. And it will solve the problem. (defun draw-pixie-tab-bar-bottom (pane) (let ((y0 (bounding-rectangle-min-y (sheet-region pane))) (y1 (bounding-rectangle-max-y (sheet-region pane))) (x0 (bounding-rectangle-min-x (sheet-region pane))) (x1 (bounding-rectangle-max-x (sheet-region pane)))) (draw-line* pane 0 (- y1 6) x1 (- y1 6) :ink *3d-light-color*) (draw-line* pane 0 (- y1 1) x1 (- y1 1) :ink *3d-dark-color*) #+NIL (draw-line* pane 0 (1- y1) x1 (1- y1) :ink +gray30+))) I've only test it with sbcl in linux. I don't know if other CL implementation also has this problem. Does anybody has any idea on this? BTW, I think tab-layout-pane should have a handle-repaint method which will redraw the tab header, it will be good when User resizes the tab layout pane. ;; Handle resize like this one. (defmethod handle-repaint ((pane pixie-tab-layout-pane) region) (pixie-display-tab-header pane (clim-tab-layout::tab-layout-header-pane pane))) -- nixie From onixie at gmail.com Wed May 4 01:17:10 2011 From: onixie at gmail.com (nixie) Date: Wed, 04 May 2011 09:17:10 +0800 Subject: [mcclim-devel] pixie-tab-bar-pane's width is computed out of the screen in pixie/clx-look In-Reply-To: <1304393779.5127.40.camel@nixie-laptop> References: <1304393779.5127.40.camel@nixie-laptop> Message-ID: <1304471830.2021.29.camel@nixie-laptop> Hi, I read the Bug list in Mcliki. There is a bug report has similar problem with this one. > Infinite redisplay loop without :incremental-redisplay t > infinite-redisplay-loop -- Paolo Amoroso, 11 Dec 2005 After I add ":incremental-redisplay t" in pixie-tab-bar-pane's :default-initargs. The problem is solved. I don't know the deep reason of it. But i think it should be fixed anyway. BTW, To McCLIM developers, I want to have some effort on McCLIM development. But I am still very fresh on it. Is there any advice or suggestion that i'd better know and take at first? Thanks for it. I notice that the latest release is McCLIM 0.9.6 "St. George's Day" in 2008-04-23. Is the development of McCLIM still alive or just with a very low speed? Thanks for any reply. On Tue, 2011-05-03 at 11:36 +0800, nixie wrote: > > > idth is computed out of the screen > in pixie/clx-look > Date: > 05/03/2011 11:36:35 AM > -- nixie From billpeople at mindspring.com Thu May 12 20:27:28 2011 From: billpeople at mindspring.com (Richard and/or Dorrit) Date: Thu, 12 May 2011 13:27:28 -0700 (GMT-07:00) Subject: [mcclim-devel] Re-implementation opportunity in mcclim.asd ?? Message-ID: <21840871.1305232048657.JavaMail.root@elwamui-polski.atl.sa.earthlink.net> Hi - thanks for keeping CLIM alive. Using ASDF-INSTALL 0.2 ASDF 2.014 in SBCL 1.0.47 The mcclim.asd file has: (:version "flexichain" "1.5.1") which breaks, but this works: (:version :flexichain "1.5.1") Thanks, Richard Billington From john.nmi.morrison at gmail.com Tue May 17 19:03:13 2011 From: john.nmi.morrison at gmail.com (John Morrison) Date: Tue, 17 May 2011 15:03:13 -0400 Subject: [mcclim-devel] Scigraph patches for SBCL Message-ID: <201105171503.13292.john.nmi.morrison@gmail.com> Hi; For what it's worth, I managed to get Scigraph's demos to run under SBCL. There are still bugs (when you click on certain elements of the graphs, they keel over dead), but at least it is something. Please find attached a "cvs diff" listing. If this is not sufficient, of if the patches are not up to the usual McCLIM standards of excellence, please advise, and I will be more than happy to try and do better. Thanks for the software, -jm -- --- John Morrison --- john.nmi.morrison at gmail.com -------------- next part -------------- ? sbcl.core Index: scigraph.asd =================================================================== RCS file: /project/mcclim/cvsroot/mcclim/Apps/Scigraph/scigraph.asd,v retrieving revision 1.1 diff -r1.1 scigraph.asd 11,55c11,63 < (defsystem :scigraph < :depends-on (:mcclim) < ;; The DWIM part of SCIGRAPH < :serial t < :components < ( < (:file "dwim/package") < (:file "dwim/feature-case") < (:file "dwim/macros") < (:file "dwim/tv") < (:file "dwim/draw") < (:file "dwim/present") < (:file "dwim/extensions") < (:file "dwim/wholine") < (:file "dwim/export") < ;; The Scigraph part < (:file "scigraph/package") < (:file "scigraph/copy") < (:file "scigraph/dump") < (:file "scigraph/duplicate") < (:file "scigraph/random") < (:file "scigraph/menu-tools") < (:file "scigraph/basic-classes") < (:file "scigraph/draw") < (:file "scigraph/mouse") < (:file "scigraph/color") < (:file "scigraph/basic-graph") < (:file "scigraph/graph-mixins") < (:file "scigraph/axis") < (:file "scigraph/moving-object") < (:file "scigraph/symbol") < (:file "scigraph/graph-data") < (:file "scigraph/legend") < (:file "scigraph/graph-classes") < (:file "scigraph/present") < (:file "scigraph/annotations") < (:file "scigraph/annotated-graph") < (:file "scigraph/contour") < (:file "scigraph/equation") < (:file "scigraph/popup-accept") < (:file "scigraph/popup-accept-methods") < (:file "scigraph/duplicate-methods") < (:file "scigraph/frame") < (:file "scigraph/export") < (:file "scigraph/demo-frame"))) \ No newline at end of file --- > ;;; > ;;; 2011-05-17: In order to get this to load under SBCL, I entered > ;;; :depends-on information as it appeared in the old mk-defsystem > ;;; directives that came with the system. I also used ASDF's :module > ;;; facility to mirror the code structure. This seemed to work. > ;;; john.nmi.morrison at gmail.com > ;;; > > (defsystem scigraph > :depends-on (:mcclim) > :components ((:module "dwim" > :components > ((:file "package") > (:file "feature-case" :depends-on ("package")) > (:file "macros" :depends-on ("feature-case")) > (:file "tv" :depends-on ("macros")) > (:file "draw" :depends-on ("tv")) > (:file "present" :depends-on ("draw")) > (:file "extensions" :depends-on ("present")) > (:file "wholine" :depends-on ("extensions")) > (:file "export" :depends-on ("wholine")))) > (:module scigraph > :depends-on (dwim) > :components > ((:file "package") > (:file "copy" :depends-on ("package")) > (:file "dump" :depends-on ("copy")) > (:file "duplicate" :depends-on ("dump")) > (:file "random" :depends-on ("duplicate")) > (:file "menu-tools" :depends-on ("random")) > (:file "basic-classes" :depends-on ("menu-tools")) > (:file "draw" :depends-on ("basic-classes")) > (:file "mouse" :depends-on ("draw")) > (:file "color" :depends-on ("mouse")) > (:file "basic-graph" :depends-on ("color")) > (:file "graph-mixins" :depends-on ("basic-graph")) > (:file "axis" :depends-on ("graph-mixins")) > (:file "moving-object" :depends-on ("axis")) > (:file "symbol" :depends-on ("moving-object")) > (:file "graph-data" :depends-on ("symbol")) > (:file "legend" :depends-on ("graph-data")) > (:file "graph-classes" :depends-on ("legend")) > (:file "present" :depends-on ("graph-classes")) > (:file "annotations" :depends-on ("present")) > (:file "annotated-graph" :depends-on ("annotations")) > (:file "contour" :depends-on ("annotated-graph")) > (:file "equation" :depends-on ("contour")) > (:file "popup-accept" :depends-on ("equation")) > (:file "popup-accept-methods" :depends-on ("popup-accept")) > (:file "duplicate-methods" :depends-on ("popup-accept-methods")) > (:file "frame" :depends-on ("duplicate-methods")) > (:file "export" :depends-on ("frame")) > (:file "demo-frame" :depends-on ("export")))))) Index: dwim/present.lisp =================================================================== RCS file: /project/mcclim/cvsroot/mcclim/Apps/Scigraph/dwim/present.lisp,v retrieving revision 1.4 diff -r1.4 present.lisp 255a256,266 > ;; > ;; DWIM defines its own accepting-values macro in macros.lisp which > ;; has an "if" form (enclosing a restart-case form) which returns > ;; either :abort or t, neither of which is of type list, which the > ;; following, enclosing values-list form wants. SBCL is (now?) clever > ;; enough to spot this and refuse to compile it. Frankly, I am not > ;; smart enough to figure out the original programmers' intentions, as > ;; there appear to be no calls to this function within the code base. > ;; So I just commented out the values-list, and propagate back the > ;; return value as-is. Sorry. -jm > ;; 259c270,271 < (values-list --- > (#-sbcl values-list > #+sbcl progn ; -jm Index: dwim/tv.lisp =================================================================== RCS file: /project/mcclim/cvsroot/mcclim/Apps/Scigraph/dwim/tv.lisp,v retrieving revision 1.10 diff -r1.10 tv.lisp 714c714 < #+mcclim (clim:graft (port frame-manager)))) --- > #+mcclim (clim:graft (clim:port frame-manager)))) ; get port from clim package. -jm Index: scigraph/package.lisp =================================================================== RCS file: /project/mcclim/cvsroot/mcclim/Apps/Scigraph/scigraph/package.lisp,v retrieving revision 1.4 diff -r1.4 package.lisp 42c42,44 < (:use dwim-lisp tool statistics)) --- > (:use dwim-lisp tool statistics) > #+mcclim(:shadow :point) ; Point already defined in McCLIM. -jm > )