作図ソフト dia の改良版
Révision | 0f26afb57706eb668e56241390a0925ad761a659 (tree) |
---|---|
l'heure | 2001-06-13 06:11:42 |
Auteur | Cyrille Chepelov <cyrille@src....> |
Commiter | Cyrille Chepelov |
minor non-conformance with IEC-848 fixed (in the transition from step 100
* samples/grafcet.dia: minor non-conformance with IEC-848
fixed (in the transition from step 100 to step 101).
* lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to
disallow editing of properties if the object is part of a group.
* objects/chronogram/chronoline.c:
* objects/SADT/annotation.c:
* objects/SADT/box.c:
* objects/GRAFCET/step.c:
* objects/GRAFCET/transition.c:
* objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE.
@@ -1,3 +1,21 @@ | ||
1 | +2001-06-12 Cyrille Chepelov <chepelov@calixo.net> | |
2 | + | |
3 | + * objects/boolequation.h (<save|load>_boolequation): made the | |
4 | + prototypes for match the .c file. | |
5 | + | |
6 | + * samples/grafcet.dia: minor non-conformance with IEC-848 | |
7 | + fixed (in the transition from step 100 to step 101). | |
8 | + | |
9 | + * lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to | |
10 | + disallow editing of properties if the object is part of a group. | |
11 | + | |
12 | + * objects/chronogram/chronoline.c: | |
13 | + * objects/SADT/annotation.c: | |
14 | + * objects/SADT/box.c: | |
15 | + * objects/GRAFCET/step.c: | |
16 | + * objects/GRAFCET/transition.c: | |
17 | + * objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE. | |
18 | + | |
1 | 19 | 2001-06-12 Hans Breuer <hans@breuer.org> |
2 | 20 | |
3 | 21 | * lib/libdia.def : removed lazyprop exports |
@@ -148,9 +148,14 @@ prop_desc_lists_intersection(GList *plists) | ||
148 | 148 | for (i = arr->len - 1; i >= 0; i--) { |
149 | 149 | gint j; |
150 | 150 | |
151 | - for (j = 0; ret[j].name != NULL; j++) | |
152 | - if (g_array_index(arr, PropDescription, i).quark == ret[j].quark) | |
153 | - break; | |
151 | + for (j = 0; ret[j].name != NULL; j++) { | |
152 | + if (g_array_index(arr, PropDescription, i).quark == ret[j].quark) { | |
153 | + if (!((ret[j].flags|g_array_index(arr, PropDescription, i).flags) | |
154 | + & PROP_FLAG_DONT_MERGE)) | |
155 | + break; /* otherwise, one of the props doesn't want to be merged, | |
156 | + so we won't keep it. */ | |
157 | + } | |
158 | + } | |
154 | 159 | if (ret[j].name == NULL) |
155 | 160 | g_array_remove_index(arr, i); |
156 | 161 | } |
@@ -96,6 +96,7 @@ struct _PropDescription { | ||
96 | 96 | |
97 | 97 | #define PROP_FLAG_VISIBLE 0x0001 |
98 | 98 | #define PROP_FLAG_DONT_SAVE 0x0002 |
99 | +#define PROP_FLAG_DONT_MERGE 0x0004 /* in case group properties are edited */ | |
99 | 100 | |
100 | 101 | #define PROP_DESC_END { NULL, 0, 0, NULL, NULL, NULL, 0 } |
101 | 102 |
@@ -2,7 +2,7 @@ | ||
2 | 2 | * Copyright (C) 1998 Alexander Larsson |
3 | 3 | * |
4 | 4 | * GRAFCET chart support |
5 | - * Copyright(C) 2000 Cyrille Chepelov | |
5 | + * Copyright(C) 2000,2001 Cyrille Chepelov | |
6 | 6 | * |
7 | 7 | * This program is free software; you can redistribute it and/or modify |
8 | 8 | * it under the terms of the GNU General Public License as published by |
@@ -56,10 +56,10 @@ extern Boolequation *boolequation_create(const utfchar *value, Font *font, | ||
56 | 56 | extern void boolequation_destroy(Boolequation *rcep); |
57 | 57 | extern void boolequation_set_value(Boolequation *rcep, const utfchar *value); |
58 | 58 | |
59 | -extern void save_boolequation(ObjectNode *obj_node, const gchar *attrname, | |
59 | +extern void save_boolequation(ObjectNode obj_node, const gchar *attrname, | |
60 | 60 | Boolequation *rcep); |
61 | 61 | |
62 | -extern Boolequation *load_boolequation(ObjectNode *obj_node, | |
62 | +extern Boolequation *load_boolequation(ObjectNode obj_node, | |
63 | 63 | const gchar *attrname, |
64 | 64 | const utfchar *defaultvalue, |
65 | 65 | Font *font, |
@@ -2,7 +2,7 @@ | ||
2 | 2 | * Copyright (C) 1998 Alexander Larsson |
3 | 3 | * |
4 | 4 | * GRAFCET chart support |
5 | - * Copyright (C) 2000 Cyrille Chepelov | |
5 | + * Copyright (C) 2000,2001 Cyrille Chepelov | |
6 | 6 | * |
7 | 7 | * This program is free software; you can redistribute it and/or modify |
8 | 8 | * it under the terms of the GNU General Public License as published by |
@@ -125,7 +125,7 @@ static ObjectOps condition_ops = { | ||
125 | 125 | |
126 | 126 | static PropDescription condition_props[] = { |
127 | 127 | CONNECTION_COMMON_PROPERTIES, |
128 | - { "condition",PROP_TYPE_STRING, PROP_FLAG_VISIBLE, | |
128 | + { "condition",PROP_TYPE_STRING, PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
129 | 129 | N_("Condition"),N_("The boolean equation of the condition")}, |
130 | 130 | { "cond_font",PROP_TYPE_FONT, PROP_FLAG_VISIBLE, |
131 | 131 | N_("Font"),N_("The condition's font") }, |
@@ -2,7 +2,7 @@ | ||
2 | 2 | * Copyright (C) 1998 Alexander Larsson |
3 | 3 | * |
4 | 4 | * GRAFCET charts support for Dia |
5 | - * Copyright (C) 2000 Cyrille Chepelov | |
5 | + * Copyright (C) 2000, 2001 Cyrille Chepelov | |
6 | 6 | * |
7 | 7 | * This program is free software; you can redistribute it and/or modify |
8 | 8 | * it under the terms of the GNU General Public License as published by |
@@ -153,7 +153,7 @@ PropEnumData step_style[] = { | ||
153 | 153 | |
154 | 154 | static PropDescription step_props[] = { |
155 | 155 | ELEMENT_COMMON_PROPERTIES, |
156 | - { "id", PROP_TYPE_STRING, PROP_FLAG_VISIBLE, | |
156 | + { "id", PROP_TYPE_STRING, PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
157 | 157 | N_("Step name"),N_("The name of the step")}, |
158 | 158 | { "type", PROP_TYPE_ENUM, PROP_FLAG_VISIBLE, |
159 | 159 | N_("Step type"),N_("The kind of step"),step_style}, |
@@ -2,7 +2,7 @@ | ||
2 | 2 | * Copyright (C) 1998 Alexander Larsson |
3 | 3 | * |
4 | 4 | * GRAFCET chart support |
5 | - * Copyright(C) 2000 Cyrille Chepelov | |
5 | + * Copyright(C) 2000,2001 Cyrille Chepelov | |
6 | 6 | * |
7 | 7 | * This program is free software; you can redistribute it and/or modify |
8 | 8 | * it under the terms of the GNU General Public License as published by |
@@ -134,7 +134,7 @@ static ObjectOps transition_ops = { | ||
134 | 134 | |
135 | 135 | static PropDescription transition_props[] = { |
136 | 136 | ELEMENT_COMMON_PROPERTIES, |
137 | - { "receptivity",PROP_TYPE_STRING, PROP_FLAG_VISIBLE, | |
137 | + { "receptivity",PROP_TYPE_STRING, PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
138 | 138 | N_("Receptivity"),N_("The boolean equation of the receptivity")}, |
139 | 139 | { "rcep_font",PROP_TYPE_FONT, PROP_FLAG_VISIBLE, |
140 | 140 | N_("Font"),N_("The receptivity's font") }, |
@@ -2,7 +2,7 @@ | ||
2 | 2 | * Copyright (C) 1998 Alexander Larsson |
3 | 3 | * |
4 | 4 | * SADT Activity/Data box -- objects for drawing SADT diagrams. |
5 | - * Copyright (C) 2000 Cyrille Chepelov | |
5 | + * Copyright (C) 2000, 2001 Cyrille Chepelov | |
6 | 6 | * |
7 | 7 | * Forked from Flowchart toolbox -- objects for drawing flowcharts. |
8 | 8 | * Copyright (C) 1999 James Henstridge. |
@@ -142,7 +142,7 @@ static PropDescription box_props[] = { | ||
142 | 142 | PROP_STD_TEXT_FONT, |
143 | 143 | PROP_STD_TEXT_HEIGHT, |
144 | 144 | PROP_STD_TEXT_COLOUR, |
145 | - { "id", PROP_TYPE_STRING, PROP_FLAG_VISIBLE, | |
145 | + { "id", PROP_TYPE_STRING, PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
146 | 146 | N_("Activity/Data identifier"), |
147 | 147 | N_("The identifier which appears in the lower right corner of the Box")}, |
148 | 148 | { "cpl_north",PROP_TYPE_CONNPOINT_LINE, 0, NULL, NULL}, |
@@ -147,18 +147,20 @@ static PropDescription chronoline_props[] = { | ||
147 | 147 | { "nbook", PROP_TYPE_NOTEBOOK_BEGIN, |
148 | 148 | PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE, NULL, NULL}, |
149 | 149 | { "data", PROP_TYPE_NOTEBOOK_PAGE, |
150 | - PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE, | |
150 | + PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE|PROP_FLAG_DONT_MERGE, | |
151 | 151 | N_("Data"), NULL}, |
152 | - { "name", PROP_TYPE_STRING,PROP_FLAG_VISIBLE,N_("Data name"),NULL }, | |
153 | - { "events", PROP_TYPE_MULTISTRING,PROP_FLAG_VISIBLE,N_("Events"), | |
154 | - NULL,GINT_TO_POINTER(5) }, | |
155 | - { "help", PROP_TYPE_STATIC,PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE, | |
152 | + { "name", PROP_TYPE_STRING,PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
153 | + N_("Data name"),NULL }, | |
154 | + { "events", PROP_TYPE_MULTISTRING,PROP_FLAG_VISIBLE|PROP_FLAG_DONT_MERGE, | |
155 | + N_("Events"), NULL,GINT_TO_POINTER(5) }, | |
156 | + { "help", PROP_TYPE_STATIC, | |
157 | + PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE|PROP_FLAG_DONT_MERGE, | |
156 | 158 | N_("Event specification"),N_( |
157 | - "@ time set the pointer at an absolute time.\n" | |
158 | - "( duration sets the signal up, then wait 'duration'.\n" | |
159 | - ") duration sets the signal down, then wait 'duration'.\n" | |
160 | - "u duration sets the signal to \"unknown\" state, then wait 'duration'.\n" | |
161 | - "example : @ 1.0 (2.0)1.0(2.0)\n" )}, | |
159 | + "@ time set the pointer at an absolute time.\n" | |
160 | + "( duration sets the signal up, then wait 'duration'.\n" | |
161 | + ") duration sets the signal down, then wait 'duration'.\n" | |
162 | + "u duration sets the signal to \"unknown\" state, then wait 'duration'.\n" | |
163 | + "example : @ 1.0 (2.0)1.0(2.0)\n" )}, | |
162 | 164 | |
163 | 165 | { "parameters",PROP_TYPE_NOTEBOOK_PAGE, |
164 | 166 | PROP_FLAG_VISIBLE|PROP_FLAG_DONT_SAVE, |