作図ソフト dia の改良版
修訂. | 時間 | 作者 | 訊息 |
---|---|---|---|
3cfcb99 | 2017-09-11 20:24:06 | Sebastian Rasmussen | master Update Swedish translation |
b86085d | 2017-06-23 04:50:13 | Piotr Drąg | Adjust translations for the Postscript > PostScript chang... |
79f241e | 2017-06-23 04:18:04 | Piotr Drąg | Correct PostScript capitalization https://bugzilla.gnome... |
5071577 | 2017-06-11 03:41:22 | Kristjan SCHMIDT | Updated Esperanto translation |
cdfa0df | 2017-03-05 19:37:00 | Inaki Larranaga Murgoitio | dia-0-97 Update Basque language |
761c2a7 | 2017-03-05 19:35:43 | Inaki Larranaga Murgoitio | Update Basque language |
5ddb1ac | 2017-03-05 19:34:41 | Inaki Larranaga Murgoitio | Update Basque language |
3326bf1 | 2016-11-25 01:41:15 | Ask Hjorth Larsen | Updated Danish translation |
ef46a11 | 2016-10-22 07:42:05 | Piotr Drąg | Update Polish translation |
e454097 | 2016-10-22 07:16:31 | Piotr Drąg | Update Polish translation |
名稱 | 修訂. | 時間 | 作者 |
---|---|---|---|
DIA_0_97_2 | 7025cf0 | 2011-12-19 03:19:13 | Hans Breuer |
DIA_0_97_0 | c0bd006 | 2009-05-04 04:40:26 | Hans Breuer |
DIA_0_97 | c0bd006 | 2009-05-04 03:52:59 | Hans Breuer |
DIA_0_97_PRE3 | b50784f | 2009-04-14 04:17:50 | Hans Breuer |
DIA_0_97_PRE2_svn4290 | 22697fa | 2009-02-16 07:38:00 | Hans Breuer |
DIA_0_97_PRE2 | 2978f7e | 2009-02-16 06:55:54 | Luca Ferretti |
DIA_0_96_1 | d28d644 | 2007-06-21 01:58:42 | Lars Clausen |
Dia_0_96_0 | b00d07f | 2007-03-28 04:04:29 | Lars Clausen |
DIA_0_96 | 414c14e | 2007-03-27 05:18:26 | Hans Breuer |
DIA_0_96_PRE1 | 286828e | 2006-12-14 07:19:52 | Lars Clausen |
DIA_0_95_1 | fb84797 | 2006-05-27 05:54:32 | Lars Clausen |
DIA_0_95 | cf8bb92 | 2006-04-20 07:04:07 | Lars Clausen |
DIA_0_95_PRE9 | 3ff22bc | 2006-04-13 04:06:52 | Lars Clausen |
DIA_0_95_PRE7 | bd3ff09 | 2006-03-29 04:25:55 | Lars Clausen |
DIA_0_95_PRE6 | 50552bc | 2006-03-23 03:43:01 | Lars Clausen |
DIA_0_95_PRE5 | c50dd86 | 2006-03-13 05:02:18 | Lars Clausen |
DIA_0_95_PRE4 | 33de8e1 | 2006-03-09 02:26:00 | Lars Clausen |
DIA_0_95_PRE3 | 7dcd4d6 | 2006-02-26 18:47:30 | Lars Clausen |
DIA_0_95_PRE2 | d70b274 | 2006-02-23 02:31:45 | Lars Clausen |
DIA_0_95_PRE1 | 87378ca | 2006-02-12 18:08:54 | Hans Breuer |
DIA_0_94 | 6749933 | 2004-08-20 01:03:30 | Lars Clausen |
DIA_0_94_PRE6 | 80c646f | 2004-08-10 03:39:38 | Lars Clausen |
DIA_0_94_PRE5 | 21edf0d | 2004-08-04 07:22:19 | Lars Clausen |
DIA_0_94_PRE4 | abd2ecc | 2004-08-02 03:14:52 | Lars Clausen |
DIA_0_94_PRE3 | 3215e58 | 2004-07-26 14:00:18 | Lars Clausen |
DIA_0_94_PRE1 | 823677d | 2004-07-05 00:21:40 | Lars Clausen |
DIA_0_93_PRE3 | aec96af | 2004-04-14 03:57:53 | Lars Clausen |
DIA_0_93_PRE1 | 428fc8b | 2004-03-20 19:25:07 | Lars Clausen |
DIA_0_92_2 | 6738899 | 2003-11-02 19:58:35 | Lars Clausen |
DIA_0_92_1 | 2301e60 | 2003-10-26 21:39:09 | Lars Clausen |
DIA_0_92 | 5792111 | 2003-10-20 19:45:09 | Lars Clausen |
DIA_0_92_PRE7 | eeaf2dd | 2003-10-15 06:51:12 | Lars Clausen |
DIA_0_92_PRE4 | 5999a09 | 2003-09-29 01:19:32 | Lars Clausen |
DIA_0_92_PRE3 | 58260db | 2003-09-24 04:28:54 | Lars Clausen |
DIA_0_92_PRE2 | f044094 | 2003-09-12 01:25:32 | Danilo Šegan |
DIA_0_92_PRE1 | 437fe17 | 2003-09-02 14:19:10 | Lars Clausen |
DIA_0_91 | 7353f57 | 2003-03-15 08:17:40 | Lars Clausen |
DIA_0_91_PRE6 | 53af4fe | 2003-03-05 11:57:54 | Lars Clausen |
DIA_0_91_PRE3 | 09e159f | 2003-02-18 06:15:58 | Lars Clausen |
DIA_0_91_PRE1 | aea3c04 | 2003-02-01 00:29:40 | Lars Clausen |
dia_0_90 | 51e3519 | 2002-06-02 04:45:46 | Cyrille Chepelov |
dia_0_90_RC3 | 9824598 | 2002-05-30 14:44:27 | Cyrille Chepelov |
DIA_0_90_RC1 | b9181a2 | 2002-05-14 07:16:26 | Cyrille Chepelov |
before_TARGET_GTK2_0 | b037fb1 | 2002-01-17 02:25:50 | Keld Jørn Simonsen |
DIA_0_89 | c843559 | 2001-09-07 11:22:52 | James Henstridge |
DIA_0_88 | dfecad5 | 2001-05-11 20:08:56 | James Henstridge |
DIA_0_87 | daea0b3 | 2001-05-09 16:18:22 | James Henstridge |
GNOME_MEDIA_1_2_2 | ce30cb7 | 2001-05-04 07:00:23 | Andraz Tori |
GNOME_PRINT_0_24 | b272917 | 2000-09-25 23:41:21 | Christophe Merlet |
DIA_0_86 | 12004a6 | 2000-08-06 15:28:53 | James Henstridge |
DIA_0_85 | 1b64754 | 2000-05-18 14:46:01 | James Henstridge |
DIA_0_84 | 42ef363 | 2000-02-29 11:30:31 | James Henstridge |
DIA_0_83 | 4090f6e | 1999-12-25 00:01:00 | James Henstridge |
DIA_0_82 | 8822f1f | 1999-12-14 22:57:21 | James Henstridge |
DIA_0_80 | d03abc1 | 1999-10-17 21:33:53 | Alexander Larsson |
DIA_0_41 | 87ef69d | 1999-04-09 01:46:26 | Alexander Larsson |
FOR_PANEL | a3cb83c | 1999-04-06 06:17:57 | Szabolcs Ban |
DIA_0_40 | ca4f1f3 | 1999-03-30 03:32:21 | Alexander Larsson |
DIA_0_30 | fdef94a | 1999-01-24 21:12:49 | Alexander Larsson |
first | ef3b05b | 1998-09-01 03:33:59 | Alexander Larsson |
名稱 | 修訂. | 時間 | 作者 | 訊息 |
---|---|---|---|---|
master | 3cfcb99 | 2017-09-11 20:24:06 | Sebastian Rasmussen | Update Swedish translation |
dia-0-97 | cdfa0df | 2017-03-05 19:37:00 | Inaki Larranaga Murgoitio | Update Basque language |
alpha | 15f1da3 | 2009-10-06 05:08:30 | Hans Breuer | Bug #591525 - better patter... |
dia-0-96 | 349519e | 2008-03-16 22:02:48 | Hans Breuer | added missing exports 2008... |
dia-0-95 | c874238 | 2007-10-08 06:42:40 | Hans Breuer | [merged from trunk] wrap Pa... |
dia_0_96 | 3a03fdd | 2007-03-29 19:23:40 | Lars Clausen | Version 0.96.1 svn path=/b... |
DIA_0_94_PRE2 | b8a358e | 2004-07-23 06:56:10 | Lars Clausen | 0.94-pre2 fixes taken from ... |
DIA_0_94_DEVEL | db3512d | 2004-07-22 04:57:07 | Estêvão Samuel Procópio | Updating Brazilian Portugue... |
DIA_0_94_RELEASE | e040ef1 | 2004-07-18 05:46:47 | Lars Clausen | Transferred from main branch. |
DIA_0_93_RELEASE | d91dbf3 | 2004-05-26 16:09:34 | Lars Clausen | Fix shape bug, help bug, an... |
DIA_0_94_DEV | f225364 | 2004-05-21 22:58:46 | Lars Clausen | Fixes from Hans, random bug... |
TARGET_GTK2_0 | 90197c8 | 2003-01-22 05:04:27 | Andraz Tori | Updated Slovenian translation |
dia-0-90 | 51e3519 | 2002-06-02 04:45:46 | Cyrille Chepelov | Whooops, forgot to commit ! |
GCONF_BRANCH2 | e0fc955 | 2001-06-15 14:22:47 | Cyrille Chepelov | UTF8 compliance. * object... |
gtkmm_namespace | e70889f | 1999-12-22 01:05:40 | James Henstridge | recurse into plug-ins. 199... |
Dia is a program for drawing structured diagrams. Dia is a GNU program, and is Free Software. See the COPYING file for the licence. Documentation is a bit sparse at the moment. Some info can be found in the doc/ directory. -- I haven't had time to write anything here yet. Read INSTALL for some brief installation instructions. Homepage for Dia is at: https://wiki.gnome.org/Apps/Dia Some comments about the source: ------------------------------- Everything on the screen 'inherits' from the structure Object in lib/object.h. (ps. this is a nice place to start reading the code.). Inherits in C means (as in gtk) that it begins with a copy of that structure. Some base classes exists in lib/, like element.h (for doing 'box-like' objects), connection.h (for doing 'line-like' objects), orth_conn.h (for doing connections with orthogonal lines, like the uml-stuff) and render_object.h (for doing picture-like objects). These base classes are then subclassed in the different object in the object-libraries like objects/standard object/UML and object/network. The objects work by filling out two structures that the main program (app/*) uses to handle the objects. The ObjectType structure which consists of some info and a pointer to the type-operations (create+load+save). There's one ObjectType per object type currently loaded. Then the Object structure, there exists a copy of this for each object of the kind on screen (and in copy-buffers). This contains some info like: type, bounding_box, position, handles (the rectangles you move with the mouse) and connections. It also contains a pointer to the object-operations. These are called from the main program when if wants the object to do something. All ops take an Object as the first argument. This is usually casted to the subtype in the function headed (gives all those pita warnings) so that you directly can use the info stored in the subclasses. Most ops are quite self-describing, and the code can be copy-pasted from an object like the one you're doing. Rendering to screen/postscript is done through a 'Renderer' abstraction that can be found in lib/render.h. XML based objects: ------------------ You can (from version 0.80) create new objects using a SVG like XML languange. The file doc/custom-shapes has more information about this. Note on handles and connection points: -------------------------------------- An object has handles to resize it. A handle can be moved either because the user dragged it with the mouse, or the handle is attached to another object, which moved itself. The handles are diplayed as little squares (red: normal, green: attached to an object, blue: can't be moved). When the handle of an object is connected to another object, it's always on special points called connection points, displayed as crosses. Implementation: - each object has an array of pointer to ConnectionPoint. - each object has an array of pointer to Handle. - each Handle has a pointer to 1 ConnectionPoint (NULL if the handle if the Handle is not connected). - each ConnectionPoint has a list of all objects connected to it. The Object type does not manage the allocation/deallocation of handles and connection points. When saving a diagram the pointer from the handle to the connectionpoint is saved as the index of the connectionpoint. So make sure the order of the connectionpoints is the same when loading the saved object. Notes on static analysis ------------------------ Some of the recent changes (log message starting with [scan-build] are suggested by static source analysis, see http://clang-analyzer.llvm.org/scan-build To use it just run ./configure and make through the scan-build script, like: PATH=/mnt/Home/from-svn/llvm/Release/bin:$PATH /mnt/Home/from-svn/llvm/tools/clang/tools/scan-build/scan-build ./configure --prefix=/opt --enable-debug=yes and PATH=/mnt/Home/from-svn/llvm/Release/bin:$PATH /mnt/Home/from-svn/llvm/tools/clang/tools/scan-build/scan-build -v -v make -j3 view with PATH=/mnt/Home/from-svn/llvm/Release/bin:$PATH /mnt/Home/from-svn/llvm/tools/clang/tools/scan-view/scan-view (given an uninstalled checkout of llvm to /mnt/Home/from-svn/llvm)