Procedure goto_main
If current_buffer <> mainb
Then
Map(mainw,mainb);
Endif;
Endprocedure;
!
Procedure goto_z
If Current_buffer <> "Z"
Then
Map(z_window,z_buffer);
Endif;
Endprocedure;
Les touches "PF1 m" et "PF1 z" associées aux procédures goto_main et goto_z sont définies par :
Define_key('goto_main',Key_name("m",Shift_key));
Define_key('goto_z',Key_name("z",Shift_key));
Les windows et buffers sont crées dans la procédure TPU$INIT_POSTPROCEDURE.
A chaque démarrage, DECTPU execute différentes choses, dont la procédure TPU$INIT_PROCEDURE si elle existe. Nous avons placé dans cette procedure d'initialisation la création des buffers, windows et la définition de toutes les touches utilisées par nos nouvelles procédures (edo_define_keys).
procedure TPU$INIT_POSTPROCEDURE
edo_define_keys;
mainb := Current_buffer;
mainw := Current_window;
z_buffer := Create_buffer("Z");
z_window := Create_window(1,21,ON);
Set(NO_WRITE,z_buffer,ON);
write_in_progress := 0;
set (mouse,off);
style := "false";
ENDPROCEDURE;