86 Commits

Author SHA1 Message Date
cf3e4ae473 Fix program messages and gtk-doc comments. 2011-01-28 17:50:21 +01:00
b782dae4b2 Make ld_canvas_new() return a GtkWidget reference.
For consistency with GTK+.
2011-01-24 17:22:37 +01:00
33beece3ab Move the library toolbar to its own class. 2011-01-24 17:13:56 +01:00
4a9a8e8f0a Include liblogdiag.h as it was an external lib. 2011-01-24 04:42:18 +01:00
81f116ed12 Handle Edit menu actions (Delete, Select All). 2011-01-16 18:33:31 +01:00
1201caf8a4 Use JsonObject for LdDiagramObject parameters.
Make LdDiagramObject a regular class.
2011-01-15 17:59:07 +01:00
616c49a505 Make a separate library.
This is required for gtkdoc-scangobj. So far it's much like it's been
before, the main differences are that source files are in two directories
from now on and the build process has two stages.
2011-01-10 17:07:02 +01:00
63b36a2b5b Use a central header.
$ time (make clean; make)

Before: ~8.0 seconds
After: ~8.1 seconds
2011-01-10 11:27:05 +01:00
d7c22f10d5 Fix drawing of symbol menus. 2011-01-10 05:19:32 +01:00
d785feeb82 Show names of symbols in the statusbar. 2011-01-10 04:58:32 +01:00
a3eaab63ff Draw category icons with style colors.
Previously the icons have been black in all themes.
2011-01-10 03:45:38 +01:00
73b611a844 Add a View menu to LdWindowMain, disabled so far. 2011-01-09 13:54:20 +01:00
54ef5ce450 Fix comments. 2011-01-09 07:08:39 +01:00
9de3a0976d Ensure that the canvas is focused. 2011-01-09 05:52:27 +01:00
96f7710c25 Introduce LdRectangle, LdPoint and LdPointArray.
Remove LdCanvasRect and LdSymbolArea.
2011-01-08 09:01:33 +01:00
6b5bae881c Update copyright years. 2011-01-07 05:13:00 +01:00
fdf1ddbbb1 Move lines around. No functional change. 2011-01-04 23:05:38 +01:00
d3e5483c84 Make adding symbols to the diagram possible.
This required creating a simple framework for operations to LdCanvas.
It is probable that it's going to require some changes when other
operations are added. The basic idea behind it seems to be good, though.
2011-01-04 09:54:05 +01:00
f2f308f2f5 Make the symbol menu grab focus.
This way when the user clicks outside the menu when it is open,
the menu will close itself first.

Keyboard input is however still not handled.

The symbol menu should be redesigned.
2010-12-18 05:01:50 +01:00
86e73f86c2 Rename LdDocument* to LdDiagram*.
My bad; this name is much more appropriate.
2010-12-16 11:34:02 +01:00
4a946b3241 Implement diagram operations in UI.
* Now diagrams can be created, loaded and saved.
* Define descriptions and accelerators for actions.
* Set irrelevant actions unsensitive.
* Also remove redundant comments for clarity.
2010-12-16 06:10:28 +01:00
a56bfd6087 LdWindowMain cleanup.
* Restructure the initialization code.
* Move LdCanvas event mask setting to ld-canvas.c.
* Remove some redundant code.
* Use consistent naming.
* Update comments.

Practically no functional change.
2010-12-12 17:56:59 +01:00
afacad693d Add a main toolbar.
So far it has no special powers. This should change in the future.
2010-12-11 04:15:23 +01:00
74e43ceee4 Add a "human-name" property to LdSymbolCategory.
Just as LdSymbol has a human name for localization purposes,
LdSymbolCategory also needs to have this property.

Use the human name in tooltips.
2010-12-11 02:44:00 +01:00
3419680f25 Implement more of LdCanvas.
1. Add methods for coordinate translation between cairo/GtkWidget
   coordinates and LdDocument coordinates.
2. Draw the grid correctly (also make it significantly faster).
3. Place the canvas into a GtkScrolledWindow and register
   the set_scroll_adjustments signal in the GtkWidget base class.
4. Allow scrolling inside of an area of 200 x 200 units (for now).
   In the future, it should be possible to go to infinity.
2010-12-10 22:36:41 +01:00
37d898fb1a Change LdSymbolArea members.
Now it contains coordinates of the top-left delimiting
point and computed dimensions (instead of coorinates of
both delimiting points).
2010-12-10 08:57:42 +01:00
147cf2977a Initial LdDocument implementation.
The document maintains a list of LdDocumentObject objects.
2010-12-05 15:15:52 +01:00
8f2dad4ead Added basic onscreen symbol menu.
So far it does not add symbols to the document,
as there is momentarily no interface for neither
the document nor the canvas.
2010-11-16 10:26:15 +01:00
263aa9062e Formatting and naming changes in LdWindowMain. 2010-10-28 14:11:59 +02:00
979308aa7f Manage LdLibrary children in a GSList.
The previous method of containment, that is using GHashTable,
did not list children in any particular order.

Also names of children were duplicated. One copy has been
stored as a hash table index and another was present in the
child itself.
2010-10-26 16:41:03 +02:00
e0e63649dc Redesign the library and related components.
This step is needed, since the current design is quite chaotic
and it would not be possible to finish the application.

There's still a lot to be done.

After this step, it's time to implement the rest of LdLua.
2010-10-26 13:58:33 +02:00
c0ec389b59 Renamed LdSymbolLibrary to LdLibrary. 2010-10-17 14:05:53 +02:00
efc3ad6f5c Implemented a skeleton of LdCanvas.
It now paints itself white and draws a simple grid.
Also an LdDocument can be assigned to it.
2010-09-20 05:29:41 +02:00
b66704114e Little improvements, overall cleanup. 2010-09-19 19:12:36 +02:00
354e54826f Changed the object prefix from "logdiag" to "ld".
It was just too long to type and read. My mistake.
2010-09-19 19:12:36 +02:00
341f51eb41 Renamed source files.
Also a little change in CMakeLists.txt.

The next commit is going to change the object prefix.
2010-09-19 19:12:12 +02:00