aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Make the symbol menu grab focus.Přemysl Janouch2010-12-181-1/+38
| | | | | | | | | 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.
* Rename LdDocument* to LdDiagram*.Přemysl Janouch2010-12-1617-1065/+1066
| | | | My bad; this name is much more appropriate.
* Overall cleanup.Přemysl Janouch2010-12-166-20/+25
| | | | | | | | | * Add missing asserts to exported functions. * Unify formatting. * Fix the gtk-doc comment for ld_symbol_category_set_human_name(). * Make ld_library_load() reflect it's declaration. * Remove an unused variable in ld_library_load_cb(). * Change all char's to gchar's.
* Implement diagram operations in UI.Přemysl Janouch2010-12-161-47/+460
| | | | | | | * Now diagrams can be created, loaded and saved. * Define descriptions and accelerators for actions. * Set irrelevant actions unsensitive. * Also remove redundant comments for clarity.
* Add change notifications to properties.Přemysl Janouch2010-12-164-3/+21
| | | | | | Also fix the "human-name" property in LdSymbolCategory and correct gtk-doc comments for coordinates properties accessors in LdDocumentObject.
* Remove redundant flags from signals.Přemysl Janouch2010-12-122-3/+3
|
* LdWindowMain cleanup.Přemysl Janouch2010-12-123-74/+59
| | | | | | | | | | * 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.
* Rename local LdCanvas methods.Přemysl Janouch2010-12-121-5/+5
| | | | Use a "real" prefix, as GTK+ does.
* Stubplement LdDocument file operations.Přemysl Janouch2010-12-112-8/+47
| | | | Prototypes for these functions were wrong; fixed.
* Add a "modified" property to LdDocument.Přemysl Janouch2010-12-112-16/+148
| | | | | | | The property is set to TRUE whenever the document changes. The user may set it back to FALSE with ld_document_set_modified(). Also don't emit the "changed" signal when nothing has happened.
* Rename local LdLuaSymbol methods.Přemysl Janouch2010-12-111-15/+15
| | | | | | | Use a "real" prefix, as GTK+ does. Also make the implementations of virtual functions really static, as they prototypes were telling.
* Add a main toolbar.Přemysl Janouch2010-12-112-17/+30
| | | | So far it has no special powers. This should change in the future.
* Check for name collisions in symbol categories.Přemysl Janouch2010-12-111-3/+24
|
* Add category.json files for testing categories.Přemysl Janouch2010-12-112-0/+10
|
* Read human names of categories from category.json.Přemysl Janouch2010-12-111-6/+72
| | | | | | | | category.json contains a JSON object/table with localized names of the category directory they are located within. If a localized name cannot be found, the name of the category is used as the human name, too.
* Add a "human-name" property to LdSymbolCategory.Přemysl Janouch2010-12-114-7/+66
| | | | | | | Just as LdSymbol has a human name for localization purposes, LdSymbolCategory also needs to have this property. Use the human name in tooltips.
* Add a few symbols for testing.Přemysl Janouch2010-12-103-0/+116
| | | | | | | | The lucky ones are: capacitor, resistor and diode. More symbols can be expected later, when more cairo functions are exported to Lua and relevant standards become accessible to me.
* Draw symbols from LdDocument in LdCanvas.Přemysl Janouch2010-12-101-1/+91
| | | | Just the minimal implementation so far.
* Implement more of LdCanvas.Přemysl Janouch2010-12-103-62/+339
| | | | | | | | | | 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.
* Change LdSymbolArea members.Přemysl Janouch2010-12-103-12/+19
| | | | | | Now it contains coordinates of the top-left delimiting point and computed dimensions (instead of coorinates of both delimiting points).
* Prepare the project for json-glib.Přemysl Janouch2010-12-054-2/+65
| | | | This required writing a special CMake find module.
* Random fixes.Přemysl Janouch2010-12-054-13/+15
| | | | Mostly found by -Wextra.
* Initial LdDocument implementation.Přemysl Janouch2010-12-059-43/+743
| | | | The document maintains a list of LdDocumentObject objects.
* Add a "library" property to LdCanvas.Přemysl Janouch2010-11-192-1/+63
| | | | Also make the code reference properties properly.
* Symbols are required to save cairo state.Přemysl Janouch2010-11-162-0/+6
|
* Added basic onscreen symbol menu.Přemysl Janouch2010-11-161-21/+352
| | | | | | So far it does not add symbols to the document, as there is momentarily no interface for neither the document nor the canvas.
* Formatting and naming changes in LdWindowMain.Přemysl Janouch2010-10-281-41/+29
|
* Made Lua symbol registration more robust.Přemysl Janouch2010-10-282-38/+89
|
* Separate LdLua and LdSymbolCategory.Přemysl Janouch2010-10-273-30/+55
| | | | | | | Originally, ld_lua_load_file_to_category() was adding registered symbols into a passed LdSymbolCategory object. This interface has been rewritten to be more generic by using callbacks to notify about new symbols.
* Implement parts of Lua symbol registration.Přemysl Janouch2010-10-271-5/+80
| | | | The human name and area now gets resolved.
* Fix gtk-doc comments.Přemysl Janouch2010-10-276-16/+4
|
* Added an "area" property to LdSymbol.Přemysl Janouch2010-10-272-19/+95
| | | | | To accomplish this, LdSymbolArea had to be converted to a regular boxed type.
* Add more properties to LdSymbol.Přemysl Janouch2010-10-275-66/+134
| | | | | Also move the actual storage of symbol properties to implementations of the abstract LdSymbol class. All the properties are read only.
* Added ld_library_find_symbol().Přemysl Janouch2010-10-262-0/+75
| | | | | This function tries to return a symbol that corresponds to the given identifier.
* Manage LdLibrary children in a GSList.Přemysl Janouch2010-10-263-19/+75
| | | | | | | | | 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.
* Redesign and implement the basic parts of LdLua.Přemysl Janouch2010-10-266-86/+229
| | | | | There's a very strong bond between LdLua and LdLuaSymbol. LdLuaSymbol is more like an interface to LdLua than a separate object.
* Implement the LdSymbol "name" property.Přemysl Janouch2010-10-263-4/+100
|
* Implement the rest of LdSymbolCategory.Přemysl Janouch2010-10-262-3/+135
| | | | | Added GObject properties for object parameters. Implemented methods for children management.
* Make LdLibrary call LdLua to load symbol scripts.Přemysl Janouch2010-10-262-27/+139
|
* Redesign the library and related components.Přemysl Janouch2010-10-2610-85/+139
| | | | | | | | | 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.
* Implement part of LdLuaSymbol.Přemysl Janouch2010-10-175-14/+41
| | | | | | | The "new" method requires to be passed a parameter that makes it possible to call the appropriate render function. Stub-plemented the "draw" method.
* Implement a few bits of LdLua.Přemysl Janouch2010-10-173-19/+147
| | | | Some comments in the source code have been updated.
* Convert LdSymbol into an abstract class.Přemysl Janouch2010-10-175-34/+191
| | | | Created LdLuaSymbol, which subclasses LdSymbol.
* Created LdLua class.Přemysl Janouch2010-10-173-34/+124
|
* Renamed LdSymbolLibrary to LdLibrary.Přemysl Janouch2010-10-1711-122/+122
|
* WIP: Refactoring of the library and symbolsPřemysl Janouch2010-10-178-22/+251
|
* Updated to new GTK+.Přemysl Janouch2010-10-172-4/+14
| | | | | | | | FindGTK2.cmake required a change for successful program compilation. It seems that gdk_pixbuf has been put as a separate library. The new tools also generate a slightly different version of marshallers, so I've added it to the tree.
* Split ld-symbol-library.c.Přemysl Janouch2010-09-205-184/+217
| | | | | Originally, there were three object classes defined in this file. It would later become rather chaotic if left that way.
* Require Lua 5.1 and GTK+ 2.12.Přemysl Janouch2010-09-201-3/+7
|
* Implemented a skeleton of LdCanvas.Přemysl Janouch2010-09-203-4/+168
| | | | | It now paints itself white and draws a simple grid. Also an LdDocument can be assigned to it.