Commit Graph

36 Commits

Author SHA1 Message Date
6fb2478589 basic runner setup changed 2026-07-21 13:21:52 +02:00
dc770a0886 new runner layout, still todo 2026-07-20 22:03:43 +02:00
38e3d7aae9 Added run button and parameter dialog 2026-07-20 18:46:59 +02:00
4cfe7c3a0e Fixed om emission 2026-07-20 18:17:45 +02:00
d368b36b8c basic openmodelica model emitting 2026-07-20 17:34:31 +02:00
42bf09610b Added binary file format 2026-07-20 15:39:34 +02:00
9ed8e371ef added stub simulation entry and logs 2026-07-20 15:26:18 +02:00
495edd42f4 Added array ports and junctions 2026-07-20 15:00:06 +02:00
a067c85994 new text mode editor 2026-07-20 14:24:47 +02:00
bf2512995f labels 2026-07-20 14:02:22 +02:00
8f87a3b477 new connection editing 2026-07-20 13:50:33 +02:00
6a3e9f01d0 Fixed dragging corners 2026-07-20 13:24:37 +02:00
4ab74f64e2 Better drawing and added more icons 2026-07-20 13:18:16 +02:00
ee859c4311 Added new connection styles 2026-07-20 12:45:47 +02:00
8fa450d734 more ui files instead of python generated ui 2026-07-20 12:27:29 +02:00
48a2b4c8d0 Reorganized the application around a clear frontend/backend boundary.
src/bedit/
├── __main__.py
├── core/                   # Pure Python, no PySide
│   ├── model.py
│   ├── port_types.py
│   ├── serializer.py
│   └── libraries.py
└── gui/                    # All Qt-dependent code
    ├── app.py
    ├── main_window.py
    ├── preferences.py
    ├── controllers/
    ├── dialogs/
    ├── graphics/
    ├── models/
    └── generated/          # Designer/resource output only
Notable improvements:
Domain models, serialization, port types, and library parsing are now Qt-free.
Qt signals and undo infrastructure are explicitly isolated under gui/controllers.
Library parsing is separated from the Qt repository and tree models.
All generated Python is contained in gui/generated.
Designer build tasks now write to the generated directory.
The application entry point and package metadata use the new paths.
README now documents the structure and dependency rules.
Removed the old mixed document, library, and workspace packages.
2026-07-20 12:09:00 +02:00
1a47952358 Fixed some small stuff 2026-07-20 11:52:34 +02:00
8df5c2a8f9 fix some things 2026-07-19 22:16:37 +02:00
dbca41640f Implemented the new port-management and grid workflow.
Right-click blocks in the graph, Document tree, or Libraries tree and choose “Port Options…”.
Unified port list with:Add/remove port
Name
Type (Signal currently)
Input/output orientation

New ports start at (0, 0) in the icon editor.
Connected ports cannot be removed, reoriented, or changed incompatibly.
Added a PortType registry; connections require matching port types.
Removed/hid the separate Add Input and Add Output workspace tools.
Library port changes are written back to the library JSON.
Added independent graph and icon grid-size settings.
Components, interface terminals, icon shapes, resize handles, and icon ports snap to their corresponding grid.
Icon canvases and component hitboxes are now fixed at 128×128.
Selected icon shapes show a bottom-right resize handle.
Circles preserve equal width and height while resizing.
Shapes and ports are constrained to the icon hitbox.

Fixed the icon-editor crash and grid behavior.
Renamed the resize handle’s shape attribute, which was overriding Qt’s required shape() method.
Icon shapes, resize handles, and port anchors now snap while dragging.
Graph blocks and interface terminals also snap while dragging.
Replaced the nearly invisible dotted graph grid with higher-contrast grid lines.
Retained final release-time snapping as a safety check.
Python compilation and diff validation pass.
2026-07-19 22:06:36 +02:00
09824195c9 Implemented the vector icon editor, library previews, and workspace camera controls.
Key changes:
Component Options now has an “Edit Icon…” button instead of direct shape/color fields.
Icon editor supports:Rectangles with configurable corner radius
Circles and ellipses
Lines
Triangles
Text
Movable/selectable shapes
Shape context menus
Line style and width
Solid or transparent fill
Stroke and fill colours through Qt’s colour picker
Editable shape dimensions
Deleting selected shapes

Input anchors are green and output anchors red; both can be dragged around the icon.
Icons use a 120×80 vector coordinate system and are stored as editable elements in document JSON.
Components render their vector icons directly in the workspace.
Library and document trees display 16×16 icon previews.
Added a Camera toolbar:Zoom In
Zoom Out
Center

Mouse-wheel zoom works directly over the workspace.
Icon changes and port positions support undo/redo.
2026-07-19 21:46:44 +02:00
76bd313f79 Basic document handling 2026-07-19 21:26:27 +02:00
c5ab3329ae Start of BEdit 2026-07-19 19:19:15 +02:00
da69acf919 Merge branch 'master' of ssh://git.joppeb.nl:222/joppe/BondGraph 2026-07-19 13:45:19 +02:00
c5ca585134 Added simple piston with gas test 2026-07-19 13:44:33 +02:00
cbe611916e Setup for position control 2026-03-11 19:08:49 +01:00
9e124a5e92 Working and exportable PID controller 2026-03-11 16:37:50 +01:00
71722127f1 Start met EmbeddedControl lib 2026-03-11 11:57:48 +01:00
a23e051024 QDcontroller 2026-03-10 16:39:38 +01:00
67d40f2dcd pendulum controller 2026-03-10 14:36:24 +01:00
75b690b19b Pendulum on a cart 2026-03-09 23:37:52 +01:00
befe3209bf new 2d lib and test 2026-03-09 21:47:44 +01:00
1312baa41d pre-big change 2026-03-09 18:27:26 +01:00
fbc61e9fb2 Pendulum working 2026-03-09 13:01:56 +01:00
e580b9840e Library mode and new icons 2026-03-09 00:20:32 +01:00
cc906cbd23 Some fixes 2026-03-08 23:43:57 +01:00
3bb0a04d4c Initial commit 2026-03-08 19:34:12 +01:00