X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=Ada95%2Fsamples%2Fsample-function_key_setting.adb;h=4ff70be7bb8aa768d691d353db7a8cbf5dc97319;hp=e40e4a40500092f7e8774a33ccb46d2ff15b9b50;hb=ee1bcda2cbb28cd84f136d8343cf83b7e576bd79;hpb=55ccd2b959766810cf7db8d1c4462f338ce0afc8 diff --git a/Ada95/samples/sample-function_key_setting.adb b/Ada95/samples/sample-function_key_setting.adb index e40e4a40..4ff70be7 100644 --- a/Ada95/samples/sample-function_key_setting.adb +++ b/Ada95/samples/sample-function_key_setting.adb @@ -7,7 +7,7 @@ -- B O D Y -- -- -- ------------------------------------------------------------------------------ --- Copyright (c) 1998,2004 Free Software Foundation, Inc. -- +-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. -- -- -- -- Permission is hereby granted, free of charge, to any person obtaining a -- -- copy of this software and associated documentation files (the -- @@ -35,8 +35,8 @@ ------------------------------------------------------------------------------ -- Author: Juergen Pfeifer, 1996 -- Version Control --- $Revision: 1.13 $ --- $Date: 2004/08/21 21:37:00 $ +-- $Revision: 1.15 $ +-- $Date: 2011/03/23 00:44:12 $ -- Binding Version 01.00 ------------------------------------------------------------------------------ with Ada.Unchecked_Deallocation; @@ -81,25 +81,25 @@ package body Sample.Function_Key_Setting is Top_Of_Stack : Env_Ptr := null; - procedure Push_Environment (Key : in String; - Reset : in Boolean := True) + procedure Push_Environment (Key : String; + Reset : Boolean := True) is P : constant Env_Ptr := new Key_Environment (Number_Of_Keys); begin -- Store the current labels in the environment for I in 1 .. Number_Of_Keys loop - Get_Soft_Label_Key (I, P.Labels (I)); + Get_Soft_Label_Key (I, P.all.Labels (I)); if Reset then Set_Soft_Label_Key (I, " "); end if; end loop; - P.Prev := Top_Of_Stack; + P.all.Prev := Top_Of_Stack; -- now store active help context and notepad - P.Help := Active_Context; - P.Notepad := Active_Notepad; + P.all.Help := Active_Context; + P.all.Notepad := Active_Notepad; -- The notepad must now vanish and the new notepad is empty. - if P.Notepad /= Null_Panel then - Hide (P.Notepad); + if P.all.Notepad /= Null_Panel then + Hide (P.all.Notepad); Update_Panels; end if; Active_Notepad := Null_Panel; @@ -119,14 +119,14 @@ package body Sample.Function_Key_Setting is raise Function_Key_Stack_Error; else for I in 1 .. Number_Of_Keys loop - Set_Soft_Label_Key (I, P.Labels (I), Justification); + Set_Soft_Label_Key (I, P.all.Labels (I), Justification); end loop; pragma Assert (Active_Context /= null); Release_String (Active_Context); - Active_Context := P.Help; + Active_Context := P.all.Help; Refresh_Soft_Label_Keys_Without_Update; - Notepad_To_Context (P.Notepad); - Top_Of_Stack := P.Prev; + Notepad_To_Context (P.all.Notepad); + Top_Of_Stack := P.all.Prev; Release_Environment (P); end if; end Pop_Environment; @@ -150,17 +150,17 @@ package body Sample.Function_Key_Setting is else loop exit when P = null; - if P.Help.all = Key then + if P.all.Help.all = Key then return True; else - P := P.Prev; + P := P.all.Prev; end if; end loop; return False; end if; end Find_Context; - procedure Notepad_To_Context (Pan : in Panel) + procedure Notepad_To_Context (Pan : Panel) is W : Window; begin