Commit Graph

1570 Commits

Author SHA1 Message Date
Florian Festi cb449b8760 Drop suppport for ai files
as the bounding box is not correct and other formats like ps and pdf are
very similar and work fine (now).

This should be revered in case ps2ai.ps properly processes the
BoundingBox. Given the fact that it is a PS script itself I don't quite
see how it wants to get access to a comment that's even later in the file. So I don't expect that to happen soon - or at all.

Alternative we could be producing AI files ourselves. It's just a gloryfied
PS file anyway. But that currently not planned.

Resolves: #534
2023-03-12 13:40:10 +01:00
caleb crome 98a6538573 qr_code fixes
use short_url on standalone QR code generation
filter out redundant arguments to further shorten the URL.  Current list to filter are the format, and the qr_code arguments
2023-03-09 20:18:08 +01:00
caleb crome 0b986eeb0c TrayLayout: Make generation a one step operation in the web UI
Add Java Script for generating the layout from sx and sy
Drop special handling in boxesserver
Add .UI attribute to Boxes class to allow behaving differntly on different UIs
Traylayout is still filtered out from Inkscape INX file generation
Slightly adjust layout format of GridfinityTrayLayout

Co-authored-by: Florian Festi <florian@festi.info>
2023-03-07 20:02:27 +01:00
Florian Festi b807cc99ff New generator: SevenSegmentClock 2023-03-07 20:00:50 +01:00
Florian Festi adef7eb612 New generator: SevenSegment 2023-03-07 19:57:50 +01:00
Florian Festi f0bd44a81c Remove &render=3 from QR code
Related: #488
2023-03-07 19:31:52 +01:00
Florian Festi 9a5410983d .polygonWall(s): Allow None at the end to close the polygon
Resolves: #456
2023-03-04 18:59:07 +01:00
Rotzbua fa2b2fe466 Refactor generator `traylayout`
* Use generic argument `sx` and `sy` to generate text traylayout
* Add typing
* Fix code style
2023-02-28 13:47:11 +01:00
Florian Festi 0e4e373367 DrillBox: Add image
Thanks to Henry Stenzel <https://github.com/d5e> for the picture!
2023-02-26 19:41:03 +01:00
Florian Festi 122d365914 BirdHouse: Add overhang parameter
to allow making the roof bigger and better looking.
Declare stable by moving to "Misc"

Resolves: #414
2023-02-26 10:52:57 +01:00
Florian Festi 9a9499e405 UBox: Translate labels
as a first prove of concept
2023-02-25 15:57:38 +01:00
Florian Festi ea1ac786d5 Add Boxes.translations
to allow geenrators to translate things like labels, too.

Adds hidden language parameter to make sure the language selected gets
passed down to the generated drawing.
2023-02-25 15:55:06 +01:00
Florian Festi 982ca9c498 Add qrcode button to web interface 2023-02-24 19:09:53 +01:00
Florian Festi 090c21dc71 Add qr_code default parameter
that adds a QR code with the URL or CLI parameters to the drawing
2023-02-24 19:09:53 +01:00
Florian Festi b0c529725a Add .qrcode() 2023-02-24 19:09:53 +01:00
Florian Festi afbad13f51 Add short URL and CLI to rendered drawing 2023-02-24 19:09:53 +01:00
Florian Festi 0421aeb76a Calculate short url and command line
with only the changed parameters
2023-02-24 19:09:53 +01:00
Rotzbua eec47d260d Fix html: use `oninput` instead of `onsearch`
`onsearch` is non-standard
2023-02-24 18:59:57 +01:00
Florian Festi b1af53eff0 Use full command line for converting file formats
and no longer rely on pstoedit being the only tool used

Use ps2pdf from GhostScript (which should already be needed by pstoedit)
for PDF as it supports keeping the page size from the eps file
2023-02-24 14:34:13 +01:00
Florian Festi b605693925 Create ESP instead of ps
as it supports BoundingBox and allows conversion to the right page size

Well, at least for PDF for now.
2023-02-24 14:32:34 +01:00
Florian Festi 08605d4598 Remove code from render() method that should no longer be there
as open() and close() is nowadays handled outside
2023-02-19 19:40:41 +01:00
Sergios Stamatis b66c9d970d Add photos for console generator (arcade stick) 2023-02-19 17:45:07 +01:00
Florian Festi 71e23910cc ABox: Add sample image
Thanks to Eric Turcotte <https://github.com/eoto88> for the image!
2023-02-18 21:37:27 +01:00
caleb crome 5a0763f534 Update dockerfile to only do flat checkouts
as in earlier versions
2023-02-18 21:37:27 +01:00
caleb crome 1b30322269 Add search box to menu page
searches in class name, translated name and translated short description
(aka doc text)

Cut Menu items to 75% to avoid collisions
2023-02-16 23:36:49 +01:00
Florian Festi 20dadbbb04 TrayLayout: Split render() into several methods
to allow better re-use in GridfinityTrayLayout.
Mirror the base plate of the GridfinityTrayLayout so the engravings
for the feet are on "the bottom".

Related: #533
2023-02-15 21:58:23 +01:00
Florian Festi a96a78f439 cc(): Add angle parameter
to allow placing the callbacks truly everywhere
2023-02-15 21:47:53 +01:00
Florian Festi 061d9e2bf0 HeartBox: Fix placement
Size caclulation is done properly nowadays. No need to fiddle with the
placement and mess things up.
2023-02-14 14:41:55 +01:00
Florian Festi 3e06ef3921 polygonWall: Make sure callback indexes are int
Was broken by 940cec1811

Resolves HeartBox failing

Thanks to noel hanback <https://hackaday.io/hacker/1310423-noel-hanback>
for reporting.
2023-02-14 14:37:46 +01:00
caleb crome bfc710698f Create a GridfinityTrayLayout object.
This is based on the TrayLayout2, but it designed to just give exactly
the correct size boxes to fit into a gridfinity system.

It has a modified TrayLayout setup, so it works in one step.  It uses
javascript to auto-generate the grid, which means it doesn't currently
work for Inkscape or command line.
2023-02-13 21:10:35 +01:00
Florian Festi 42944a015b Add sample images for various WallMounted generators 2023-02-12 20:11:07 +01:00
Florian Festi 8b5fb877e7 polygonWalls: don't error out on empty borders list 2023-02-12 19:39:21 +01:00
Florian Festi 1ba33c8192 WallRollHolder: Fix side pieces 2023-02-12 15:04:43 +01:00
Florian Festi 790bc41871 RollHolder: move to WallMounted group 2023-02-12 15:04:43 +01:00
Florian Festi 702006d9ef New generator: Tetris
Tetris shapes
2023-02-12 13:29:58 +01:00
Florian Festi 940cec1811 polygonWall: Fix numbers of callbacks
They were off by a factor of two as they should be numberd by sides
while we also counted corners
2023-02-12 13:29:58 +01:00
Florian Festi 201e0ae5d8 boxes_proxy (Inkscape): Fix issue with --id cli arguments
tripping up on newer inkex versions if there are any object selected
while executing a plugiuting a plugin
2023-02-10 22:06:32 +01:00
Florian Festi fa1bbf3052 Install both boxes and boxes_proxy into the Inkscape directory
in all cases. Debian and the rest of the world got a bit out of sync.

Resolves:  #537
2023-02-10 20:34:25 +01:00
Florian Festi d511268c74 boxes_proxy (for Inkscape): Quote command line options
and clean code up a bit
2023-02-08 23:08:52 +01:00
Florian Festi 8b961797f9 boxes_proxy (for Inkscape): Use temp file
Resolves permission issues when trying to place files into system extension
directory.

Resolves: #516
2023-02-08 22:55:38 +01:00
Florian Festi 455f5ae69a Limit the number of drawing primitives to 100000
to avoid people trashing the server with too complicated drawings
2023-02-07 21:54:38 +01:00
Rotzbua 64dca171b4 extents: add types
* lint code
2023-02-07 20:08:20 +01:00
Rotzbua 8db417a134 dividertray: fix typos 2023-02-07 15:20:08 +01:00
Florian Festi 52e358a48d Gallery: Use cache 2023-02-05 16:17:30 +01:00
Florian Festi 216a5c4da8 Gallery: Add headings for groups 2023-02-05 16:17:30 +01:00
caleb crome 65a49ede39 Add a gallery page to boxesserver
This adds an image gallery to the server so you can visually search through all
available generators and just click on the image you want.
2023-02-05 16:17:30 +01:00
Florian Festi 618fe78314 GrindfinityBase: Remove HTML link from __doc__ string
As it creates problems with the new gallery feature
2023-02-05 16:17:30 +01:00
caleb crome 4c9830315d Add a generic, text based front panel generator
This adds a front panel generator that lets you automatically generate
all the cutouts and text placements needed in a box.

Eventually, it might be great it integrate this kind of feature into the
box generators, but that sounds complicated.  At this point, I'm happy]
to have this.
2023-01-31 20:50:03 +01:00
Rotzbua 4ef6c5c5ae boxesserver: refactor
* move & refactor JS to static
* add some typing
* move `head` to functions for reusability
* fix wrong separator for `hreflang` value
* fix various html validator errors
2023-01-31 20:37:52 +01:00
Florian Festi 673838d563 Arcade: Add sample image 2023-01-31 20:22:09 +01:00