{"id":22298989,"url":"https://github.com/ailisp/mcclim-graphic-forms","last_synced_at":"2025-10-25T22:31:41.939Z","repository":{"id":103717286,"uuid":"77354472","full_name":"ailisp/mcclim-graphic-forms","owner":"ailisp","description":"(Alpha) Windows native backend for McCLIM","archived":false,"fork":false,"pushed_at":"2017-02-26T00:18:49.000Z","size":770,"stargazers_count":15,"open_issues_count":4,"forks_count":2,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-29T02:43:59.426Z","etag":null,"topics":["backend","common-lisp","mcclim","windows"],"latest_commit_sha":null,"homepage":null,"language":"Common Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ailisp.png","metadata":{"files":{"readme":"readme.org","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-12-26T03:11:12.000Z","updated_at":"2025-02-09T04:53:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"8ae62e14-737b-4b6c-86ec-39a0f9bd712e","html_url":"https://github.com/ailisp/mcclim-graphic-forms","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ailisp/mcclim-graphic-forms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ailisp%2Fmcclim-graphic-forms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ailisp%2Fmcclim-graphic-forms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ailisp%2Fmcclim-graphic-forms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ailisp%2Fmcclim-graphic-forms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ailisp","download_url":"https://codeload.github.com/ailisp/mcclim-graphic-forms/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ailisp%2Fmcclim-graphic-forms/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278662071,"owners_count":26024380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","common-lisp","mcclim","windows"],"created_at":"2024-12-03T18:02:32.277Z","updated_at":"2025-10-06T18:43:50.478Z","avatar_url":"https://github.com/ailisp.png","language":"Common Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"* McCLIM-Graphic-Forms\r\nThis project works as a windows backend for McCLIM, currently most demos of McCLIM works, but support for drawing of presentation is weak and incomplete and other bugs exist. Currently only most recent version of Clozure Common Lisp on 32 bit Windows 7 are tested.\r\n\r\n** Usage\r\nTo have a try, clone Graphic-Forms and this project to a quicklisp local project directory:\r\n\r\n#+BEGIN_SRC shell\r\ngit clone https://gitlab.common-lisp.net/byao/Graphic-Forms\r\ngit clone https://github.com/ailisp/mcclim-graphic-forms.git\r\n#+END_SRC\r\n\r\nThen in your REPL:\r\n\r\n#+BEGIN_SRC lisp\r\n(push :mcclim-graphic-forms *features*)\r\n(ql:quickload :clim-examples)\r\n(clim-demo:demodemo)\r\n#+END_SRC\r\n\r\n** Screenshots\r\n[[./doc/screenshot/demodemo.png]]\r\n\r\n[[./doc/screenshot/label-tests.png]]\r\n\r\n[[./doc/screenshot/calc.png]]\r\n\r\n[[./doc/screenshot/clim-fig.png]]\r\n\r\n[[./doc/screenshot/gadget-test.png]]\r\n\r\n[[./doc/screenshot/puzzle.png]]\r\n\r\n[[./doc/screenshot/logic-cube.png]]\r\n\r\n\r\n\r\n** Background\r\nThis project intends to fix and continue to finish the incomplete Graphic-Forms backend for McCLIM.\r\nOriginal Graphic-Forms backend for McCLIM 0.9.6 couldn't work because it need to use a Windows message loop to keep the GUI responsive on Windows, while McCLIM needs to have the simple-event-loop to process events. So McCLIM seems to be designed to work with a Client/Server structured GUI toolkit, while Windows native GUI apps are not. So there must be a wrapper to provide Client/Server style to fit in McCLIM's model.\r\nChanges have been made since McCLIM 0.9.6. The climi::top-level-sheet-pane is not mirrored-sheet-mixin and permanent-medium-sheet-output-mixin any more, thus a new, port specific class for mirrored top level pane is required. Also, many common methods in Backend has been moved to the Standard backend. Therefore, we need to directly use classes as standard-full-mirrored-sheet-mixin, standard-graft to replace the orginal mirrored-sheet-mixin and graft.\r\nBesides these, Windows' event model is not like X. Some conversion, therefore, must be made in the Graphic-Forms server side.\r\nMcCLIM and CLIM spec are both quite delicated complicated for me. So this project may take time to become fully useable and stable.\r\n\r\nThe short term goal is to make the portable CLIM look and feel works stably and long term goal is to support both windows native gadgets and portable ones.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Failisp%2Fmcclim-graphic-forms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Failisp%2Fmcclim-graphic-forms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Failisp%2Fmcclim-graphic-forms/lists"}