summaryrefslogtreecommitdiff
path: root/Extensions
AgeCommit message (Collapse)Author
2017-06-09fix medium-copy-areaAlessandro Serra
2017-06-05export polygonalize and polygon-points from mcclim-bezierCyrus Harmon
* and import standard-translation from climi * now we can remove the :import-from for polygonalize and polygon-points and remove the climi:: prefix from climi::standard-translation.
2017-06-05unbreak bezier extensions on beagle backendCyrus Harmon
* this probably still doesn't work on the beagle backend, but at least it doesn't break for trying to use things in clim-clx.
2017-06-04bezier drawing fixesCyrus Harmon
* use the newly fixed with-clx-graphics from the outer level of the drawing loop to try to fix various drawing problems. * avoid using two possbily different drawable/gc pairs. * zero out the mask prior to use * these fixes make it so that bezier-differences can be drawn in the listener. They still do not draw correctly in drawing-tests with CLXv3, but they do draw properly with CLXv3 in the listener, and now work in both drawing-tests and the listener with the CLX backend.
2017-06-03fix output-recording for bezier designsCyrus Harmon
2017-06-03properly draw bezier-differences with CLX backendCyrus Harmon
2017-06-03first pass at actual CLX bezier drawingCyrus Harmon
* converts the curve to a polygon and uses xlib:draw-lines to draw the bezier curve/area.
2017-05-23Merge pull request #210 from robert-strandh/gadget-fixesCyrus Harmon
lots of tab-layout fixes
2017-05-23cleanup: remove redundant package accessorDaniel Kochmański
2017-05-23cleanup: remove dead codeDaniel Kochmański
2017-05-23tab-layout: provide sane default valuesDaniel Kochmański
We want to fill all available space, even if there is no child panes.
2017-05-22tab-layout: fix new enabled page algorithmDaniel Kochmański
Avoid one edge case with assertion and enables predictably new pages on whole pane swap.
2017-05-22tab-layout: fix page enable/disable behaviorDaniel Kochmański
2017-05-22tab-layout: remove redundant assignmentDaniel Kochmański
2017-05-22tab-layout: ensure enabled pageDaniel Kochmański
Fix logical typo.
2017-05-22tab-layout: compose-space: don't count header height twiceDaniel Kochmański
Since header is one of sheet-children and is traversed anyway - don't count it explicitly for the first time.
2017-05-22tab-layout: ensure page is always enabled when presentDaniel Kochmański
2017-05-22tab-layout: fix sheet-disown-child :before methodDaniel Kochmański
We have assumed, that one page is always enabled if we remove tab-layout, but it isn't if pages were added one by one with manual API. Simplify code to avoid redundant roundtrips between pages and sheets.
2017-05-22cleanup: remove unncecessary abstractionDaniel Kochmański
we don't need internal-child-p method to determine if something is a header or not.
2017-05-21improve styleAlessandro Serra
2017-05-21tab-layout: draw-line* takes x1 y1 x2 y2 parameters, fix alloc-spaceDaniel Kochmański
Previously we have taken pane width as x2. Since we count from 0, (width,17) was one more than last pixel on the pane what caused alloc-space to make the pane bigger. i.e pane width is 5, then last point is (4,y). cosmetic: use accessor instead of raw slot value
2017-05-18fix STYLE-WARNINGsAlessandro Serra
2017-05-16Merge branch 'master' into devel-fb3Alessandro Serra
2017-05-15use climi:: package prefix line-style-dashesCyrus Harmon
* and squirrel away the result instead of calling it three times.
2017-05-15Merge pull request #196 from slyrus/fix-warningsDaniel Kochmanski
Fix warnings
2017-05-15remove ensure-listCyrus Harmon
* and replace with calls to (coerce ... 'list)
2017-05-14add ignore declarationsCyrus Harmon
2017-05-14render/port.lisp: fix typo and ignore declarationsCyrus Harmon
2017-05-14more work to support segments as sequencesCyrus Harmon
* not just lists. I think this is all done now. * there are a few corner cases where I turn things into lists to operate on them that could be made to work with the native sequence, but what's here should work fine.
2017-05-14mcclim-bezier:compute-bounding-rectangle* sequence workCyrus Harmon
* before, compute-bounding-rectangle* only worked if segments were stored in a list. Now it works with sequences (such as vectors).
2017-05-14bezier extension: fix dependenciesDaniel Kochmański
bezier extension depends on clim-postscript (part of clim-core, which is more than clim-basic) and mcclim-null.
2017-05-13remove compute-bounding-rectangle* no-op methodCyrus Harmon
2017-05-12remove transformation and original-region slotsCyrus Harmon
* remove slots that are either unused or poorly used. It's not at all clear to me that these are supposed to do anything.
2017-05-11update the semantics of relative-to-absolute-coord-seqCyrus Harmon
* instead of making all of the points relative to the first point, implement a more elaborate scheme where the first curve point is specified in absolute coordinates, the first control point (I'm making a distinction between the endpoints of the segment, which are on the curve, and the control points, which influence the shape of the curve but are not actually on the curve) is specifed in coordinates relative to the first curve point, then the next control point is specified in coordinates relative to the next curve point, which comes next and is specified in coordinates relative to the first curve point. This all sounds complicated, but is, I think the simplest way to specify a complex curve in literal coordinates.
2017-05-11delete unused loop variables x4 and y4Cyrus Harmon
2017-05-11add mcclim-bezier:relative-to-absolute-coord-seqCyrus Harmon
* and export it. Takes a relative coord-seq and makes an absolute coord-seq from it.
2017-05-11fix translation of output-recordCyrus Harmon
* we weren't taking into account the starting position of the design and were overtranslating it
2017-05-11bezier: remove region-equal method which overwrites core oneDaniel Kochmanski
Removes fixme. We don't need epsilon comparison here, because McCLIM coordinates are based on ratios, which provide exact comparison.
2017-05-10put all bezier code in mcclim-bezier package, add bezier debug codeCyrus Harmon
* remove in-package clim-null, mcclim-render and mcclim-postscript forms * modify the mcclim-bezier package definition to import-from the symbols that we want from clim-null, mcclim-render and mcclim-postscript. * add bezier-draw-control-lines and bezier-draw-location-labels keyword args to %medium-draw-bezier-design and add *bezier-draw-control-lines* and *bezier-draw-location-labels* variables for debugging bezier drawing
2017-05-10add two FIXMEs and remove an optimize debug callCyrus Harmon
2017-05-09use mcclim-render backend for drawing bezier curvesCyrus Harmon
* add methods that specialize on the render-medium-mixin and call the mcclim-render backend code to do the bezier curve drawing.
2017-05-09Merge pull request #181 from slyrus/bezier-package-and-testsDaniel Kochmanski
Bezier package and tests
2017-05-08don't use climi in mcclim-bezier packageCyrus Harmon
2017-05-08clean up package symbolsCyrus Harmon
* remove climi:: from design and transformation * use climi-sys:defmethod*
2017-05-08resurrect unsupported-bitmap-formatCyrus Harmon
* and throw it as an error if the opticl:read-image-file call fails. Yes, there are other reasons this could fail, but this is less bad than not handling that error at all.
2017-05-08add bezier-curve postscript supportCyrus Harmon
* and make it handle line widths properly
2017-05-08add NULL backend method for medium-draw-bezier-design* for curvesCyrus Harmon
2017-05-08fix transform-region for bezier-designCyrus Harmon
* fix design class-name symbol in transform-region's call to make-instance
2017-05-08working on support for bezier-curves, not just bezier-areasCyrus Harmon
* doesn't exactly work as advertised yet, but is much less broken now.
2017-05-08use bounding-rectangle* instead of compute-bounding-rectangle*Cyrus Harmon
* in the body of the def-grecording macro, I believe we can use the cached bounding rectangle, rather than recomputing it. This also has the benefit of making the test case with the bezier-difference work again.