• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

作図ソフト dia の改良版


コミットメタ情報

リビジョン84c37afb9e258ed00cb6911c0949a9e0df314e07 (tree)
日時2015-01-12 05:11:43
作者Hans Breuer <hans@breu...>
コミッターHans Breuer

ログメッセージ

uml: update 'UML - Activity' to have main point

less code, more functionality

変更サマリ

差分

--- a/objects/UML/activity.c
+++ b/objects/UML/activity.c
@@ -39,11 +39,13 @@
3939
4040 typedef struct _State State;
4141
42+#define NUM_CONNECTIONS 9
43+
4244 /** \file objects/UML/activity.c Implementation of the 'UML - Activity' type */
4345 struct _State {
4446 Element element;
4547
46- ConnectionPoint connections[8];
48+ ConnectionPoint connections[NUM_CONNECTIONS];
4749
4850 Text *text;
4951
@@ -259,30 +261,7 @@ state_update_data(State *state)
259261 extra->border_trans = STATE_LINEWIDTH / 2.0;
260262
261263 /* Update connections: */
262- state->connections[0].pos = elem->corner;
263- state->connections[1].pos.x = elem->corner.x + elem->width / 2.0;
264- state->connections[1].pos.y = elem->corner.y;
265- state->connections[2].pos.x = elem->corner.x + elem->width;
266- state->connections[2].pos.y = elem->corner.y;
267- state->connections[3].pos.x = elem->corner.x;
268- state->connections[3].pos.y = elem->corner.y + elem->height / 2.0;
269- state->connections[4].pos.x = elem->corner.x + elem->width;
270- state->connections[4].pos.y = elem->corner.y + elem->height / 2.0;
271- state->connections[5].pos.x = elem->corner.x;
272- state->connections[5].pos.y = elem->corner.y + elem->height;
273- state->connections[6].pos.x = elem->corner.x + elem->width / 2.0;
274- state->connections[6].pos.y = elem->corner.y + elem->height;
275- state->connections[7].pos.x = elem->corner.x + elem->width;
276- state->connections[7].pos.y = elem->corner.y + elem->height;
277-
278- state->connections[0].directions = DIR_NORTH|DIR_WEST;
279- state->connections[1].directions = DIR_NORTH;
280- state->connections[2].directions = DIR_NORTH|DIR_EAST;
281- state->connections[3].directions = DIR_WEST;
282- state->connections[4].directions = DIR_EAST;
283- state->connections[5].directions = DIR_SOUTH|DIR_WEST;
284- state->connections[6].directions = DIR_SOUTH;
285- state->connections[7].directions = DIR_SOUTH|DIR_EAST;
264+ element_update_connections_rectangle (elem, state->connections);
286265
287266 element_update_boundingbox(elem);
288267
@@ -325,13 +304,14 @@ state_create_activity(Point *startpoint,
325304
326305 state->text = new_text("", font, 0.8, &p, &color_black, ALIGN_CENTER);
327306 dia_font_unref(font);
328- element_init(elem, 8, 8);
307+ element_init(elem, 8, NUM_CONNECTIONS);
329308
330- for (i=0;i<8;i++) {
309+ for (i=0;i<NUM_CONNECTIONS;i++) {
331310 obj->connections[i] = &state->connections[i];
332311 state->connections[i].object = obj;
333312 state->connections[i].connected = NULL;
334313 }
314+ state->connections[8].flags = CP_FLAGS_MAIN;
335315 elem->extra_spacing.border_trans = 0.0;
336316 state_update_data(state);
337317