summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorMathieu Lacage <mathieu@eazel.com>2000-10-13 05:56:11 +0000
committerMathieu Lacage <mathieu@src.gnome.org>2000-10-13 05:56:11 +0000
commitfeb4a10f48296d32f780f3ae915063a2d621c05c (patch)
treea5f5ef9984dfd3b8573c07436fe6a0d0b6461e76 /docs
parent116c3b58bf760eb57f775731fde7cd8fc400a54f (diff)
downloadnautilus-feb4a10f48296d32f780f3ae915063a2d621c05c.tar.gz
new design for the state machine taking into account the new async states.
2000-10-13 Mathieu Lacage <mathieu@eazel.com> * docs/state-machines.txt: new design for the state machine taking into account the new async states. * libnautilus-extensions/nautilus-bonobo-extensions.c: (nautilus_bonobo_set_icon), (oaf_activation_callback), (nautilus_bonobo_activate_from_id), (nautilus_bonobo_activate_stop), (nautilus_bonobo_activate_free): add async activation call. * libnautilus-extensions/nautilus-bonobo-extensions.h: add prototypes. * src/nautilus-view-frame.c: (nautilus_view_frame_initialize_class), (view_frame_activating), (view_frame_not_activated), (view_frame_activated), (view_frame_stop_activation), (view_frame_wait), (view_frame_underway), (view_frame_wait_is_over), (view_frame_loaded), (view_frame_failed), (nautilus_view_frame_set_to_component), (activation_callback), (nautilus_view_frame_load_client_async), (nautilus_view_frame_load_client), (nautilus_view_frame_stop_activation), (nautilus_view_frame_load_location): implement new state machine. add comments to explain by which stimulus the state-chaging functions are triggered. * src/nautilus-view-frame.h: add prototype for new async activation function of ViewFrames.
Diffstat (limited to 'docs')
-rw-r--r--docs/state-machines.txt71
1 files changed, 40 insertions, 31 deletions
diff --git a/docs/state-machines.txt b/docs/state-machines.txt
index f70abec65..a762aa9dc 100644
--- a/docs/state-machines.txt
+++ b/docs/state-machines.txt
@@ -6,7 +6,9 @@ ViewFrame state machine
States are:
+
E: Empty (the initial state right after construction)
+A: Activating (waiting for component to be activated)
N: No load_location request (a view component has been loaded, but no load_location request has been sent yet)
W: Waiting (waiting for a response after a load request)
U: Underway (the component has responded and the load is assumed underway)
@@ -28,7 +30,7 @@ Missing:
Note:
-A "*" means htat this is illegal but non-fatal, so we want to use g_warning.
+A "*" means that this is illegal but non-fatal, so we want to use g_warning.
State Transition Chart
@@ -36,33 +38,40 @@ A "*" means htat this is illegal but non-fatal, so we want to use g_warning.
Initial State
- | E | N | W | U | L | F |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- successful load_client call | N | X | X | X | X | ?2 |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- unsuccessful load_client call | F | X | X | X | X | ?2 |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- nautilus_view_frame_load_location call | F | W | W | W | W | ?2 |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- open_location call from component | X | N* | U | U | L | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- open_location_in_new_window | X | N* | U | U | L | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- report_location_change | X | N* | U | U | U | X |
-S ----------------------------------------|-----|-----|-----|-----|-----|-----|
-t report_selection_change | X | N* | U | U | L | X |
-i ----------------------------------------|-----|-----|-----|-----|-----|-----|
-m report_status | X | N* | U | U | L | X |
-u ----------------------------------------|-----|-----|-----|-----|-----|-----|
-l report_load_underway | X | N* | U | U | U | X |
-u ----------------------------------------|-----|-----|-----|-----|-----|-----|
-s report_load_progress | X | N* | U | U | U | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- report_load_complete | X | N* | L | L | L | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- report_load_failed | X | N* | F | F | F | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- set_title | X | N* | U | U | L | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
- user hits cancel on timer dialog | X | X | F | X | X | X |
- ----------------------------------------|-----|-----|-----|-----|-----|-----|
+ | E | A | N | W | U | L | F |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ successful load_client call | A | X | X | X | X | X | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ unsuccessful load_client call | F | X | X | X | X | X | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ successful activated_component call | X | N | X | X | X | X | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ unsuccessful activated_component call | X | F | X | X | X | X | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ stop activation | E | E | X | X | X | X | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ nautilus_view_frame_load_location call | X | F | W | W | W | W | ?2 |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ open_location call from component | X | X | N* | U | U | L | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ open_location_in_new_window | X | X | N* | U | U | L | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ report_location_change | X | X | N* | U | U | U | X |
+S ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+t report_selection_change | X | X | N* | U | U | L | X |
+i ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+m report_status | X | X | N* | U | U | L | X |
+u ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+l report_load_underway | X | X | N* | U | U | U | X |
+u ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+s report_load_progress | X | X | N* | U | U | U | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ report_load_complete | X | X | N* | L | L | L | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ report_load_failed | X | X | N* | F | F | F | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ set_title | X | X | N* | U | U | L | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+ user hits cancel on timer dialog | X | X | X | F | X | X | X |
+ ----------------------------------------|-----|-----|-----|-----|-----|-----|-----|
+