403a9d702a
Disable LdDiagramView scrollbars when not needed.
2011-02-20 12:54:15 +01:00
f9827e2ff3
Refactor oper_connect_motion().
2011-02-20 12:41:45 +01:00
f074bc6742
Also find terminals on ends of connections.
2011-02-19 22:49:21 +01:00
8aef3fc772
Use "typedef struct" in ld-diagram-view.c.
2011-02-19 22:49:20 +01:00
b5ff3b5bbb
Don't emit changes when reading.
...
When the value for a property isn't present in it's JsonObject,
it can be assigned upon reading. Previously this could generate
history events even when just viewing an old diagram with some
of newer properties missing.
Modify the code, so setting to default doesn't count as a change
anymore.
2011-02-19 22:49:20 +01:00
6820d27efa
Add "x" and "y" properties to LdDiagramView.
...
Plus a bit of refactoring.
2011-02-19 22:49:20 +01:00
7fa6efbaec
Rename LdCanvas to LdDiagramView.
2011-02-19 22:49:20 +01:00
412a01690b
Change selection color to red.
...
To make it more distinctive.
2011-02-19 22:49:20 +01:00
baed5ee4bd
Allow rotation of symbols.
...
Bind this action to the right mouse button.
Due to limitations of json-glib, we can't store rotation as an enum.
2011-02-14 10:14:28 +01:00
5ccabad6ce
Emit "cancel-operation", don't call the handler.
2011-02-14 08:46:41 +01:00
1730064ed3
Avoid too wide items in symbol menus.
2011-02-14 08:21:30 +01:00
8ac4674a8e
Fix ld-types.h for gtk-doc.
2011-02-14 06:41:08 +01:00
68e6e4a7e8
Make symbol menus nicer.
2011-02-12 18:26:27 +01:00
b7875c361f
Update the symbol library, add trivial text API.
2011-02-12 18:26:15 +01:00
2c5f2f5b3f
Export more cairo functions to Lua.
...
Also rewrite the wrappers to be shorter.
2011-02-11 18:07:49 +01:00
d96acedcdb
Speed up drawing of the grid.
2011-02-10 06:03:41 +01:00
2aac9c6f23
Fix drawing of symbol menus.
2011-02-07 13:53:56 +01:00
1277b6eaaf
Add support for LdDiagramConnection to LdCanvas.
...
Heavy LdCanvas refactoring, some modifications to ld-types.
It just wasn't possible for me to further work with an old,
2000 lines long file without shuffling everything around
at the same time.
2011-02-07 01:10:17 +01:00
ee95916749
Fix memory leaks in LdDiagramConnection.
2011-02-06 18:29:35 +01:00
107ec13506
Fix a memory leak in LdDiagramSymbol.
2011-02-06 17:57:37 +01:00
7f08a51c66
Extend symbol area to whole pixels.
...
This gives better cairo performance.
2011-02-06 12:36:11 +01:00
2dcf578c12
Use correct rounding when moving selection.
2011-02-05 20:17:39 +01:00
dca71f66c3
Fix undoing, create a unit test for history.
2011-02-05 19:47:07 +01:00
611b11508a
Make grid dots pixel-sharp.
2011-02-05 18:52:51 +01:00
3cec64ebe8
Refactor ld-canvas.c, extend LdCanvas operations.
...
Now objects can be selected and moved by dragging the mouse.
2011-02-05 18:48:11 +01:00
2b0672a2cb
Implement zooming in LdWindowMain.
...
Add convenience methods to LdCanvas.
2011-02-04 20:19:01 +01:00
f2005e3b2f
Make LdDiagram work with json-glib 0.10.
2011-02-04 17:17:57 +01:00
75c2358b69
Extend LdPointArray.
2011-02-02 23:53:38 +01:00
f864693f1b
Update gtk-doc documentation.
2011-02-02 17:26:04 +01:00
2744d84896
Introduce LdDiagramConnection.
2011-02-02 17:22:34 +01:00
539f537846
Fix drawing of the grid.
2011-02-01 17:21:08 +01:00
a967a2c3b8
Bind actions to cursor keys in LdCanvas.
...
If there's a selection, move it. Otherwise move the viewport.
2011-02-01 14:52:48 +01:00
18f5da9529
Add an undo framework to LdDiagram.
...
Modify LdDiagram and LdDiagramObject to use it.
Trash commit c2403fdcf7
.
2011-02-01 14:52:17 +01:00
caf06ff4e8
Introduce LdUndoAction.
2011-01-31 21:58:41 +01:00
c07d5f552d
Connect to the "data-changed" signal in LdDiagram.
...
Also rewrite some of the functions.
2011-01-29 15:19:52 +01:00
400568ed7d
Add some reminder comments.
2011-01-29 13:09:16 +01:00
cf3e4ae473
Fix program messages and gtk-doc comments.
2011-01-28 17:50:21 +01:00
c2403fdcf7
Extend LdDiagramObject.
...
* Add generic methods for data storage, making it able
to store data in a hierarchy.
* Reimplement ld_diagram_{get,set}_data_for_param on top
of the generic methods.
* Add a "data-changed" signal.
2011-01-28 16:29:18 +01:00
d6de5609ed
Remove marshallers from the tree and ignore them.
...
Require glib-genmarshal (a part of the standard GTK+ distribution).
2011-01-27 18:56:41 +01:00
17bf37ceba
Rename ld_diagram_object_{get,set}_data().
...
Make small corrections.
2011-01-27 16:31:20 +01:00
b782dae4b2
Make ld_canvas_new() return a GtkWidget reference.
...
For consistency with GTK+.
2011-01-24 17:22:37 +01:00
5d766cba77
Rename g_cclosure_user_marshal_* to ld_marshal_*.
2011-01-24 17:18:28 +01:00
33beece3ab
Move the library toolbar to its own class.
2011-01-24 17:13:56 +01:00
9a49a2219a
Fix gtk-doc comments for signals.
2011-01-23 15:52:52 +01:00
60a00e3551
Refactor LdDiagram selection handling methods.
...
Add ld_diagram_remove_selection().
2011-01-16 18:33:19 +01:00
6854c8a643
Revert the order of LdDiagram objects.
...
Now they go from oldest to newest.
2011-01-16 14:33:52 +01:00
cb278a2bf1
Use properties instead of accessor methods.
2011-01-16 14:22:21 +01:00
5124cf8d71
Basic implementation of loading.
...
Add an error domain for the purpose of returning errors.
2011-01-16 13:36:11 +01:00
e9da09f196
Basic implementation of saving.
...
When the objects are stored, ensure that they have a "type" member
that makes it possible to determine their class/purpose.
2011-01-16 12:17:51 +01:00
1201caf8a4
Use JsonObject for LdDiagramObject parameters.
...
Make LdDiagramObject a regular class.
2011-01-15 17:59:07 +01:00