PreviousUpNext

15.3.594  src/lib/tk/src/live_text.api

# ***************************************************************************
#   Annotated texts for tk.
#   Author: cxl
#   (C) 1996, Bremen Institute for Safe Systems, Universitaet Bremen
# **************************************************************************

# Compiled by:
#     src/lib/tk/src/tk.sublib

api Live_Text {

    #  This type represents annotated texts. 
    #  type Live_Text 

    #  selectors 
    get_livetext_text:   basic_tk_types::Live_Text -> String;
    get_livetext_text_items:   basic_tk_types::Live_Text -> List( basic_tk_types::Text_Item );
    update_livetext_text_items:   basic_tk_types::Live_Text -> List( basic_tk_types::Text_Item )
                                                 -> basic_tk_types::Live_Text;
    get_livetext_rows_cols: basic_tk_types::Live_Text -> { rows: Int, cols: Int };

    #  The empty annotated text 
    empty_livetext:  basic_tk_types::Live_Text; 

    #  Concatenate annotated texts, keeping track of the text_items. 
    +++ : (basic_tk_types::Live_Text, basic_tk_types::Live_Text) -> basic_tk_types::Live_Text;

    #  Count length (in rows/colums) 
    livetext_length:  String -> (Int, Int);

    #  Add a new line at the end 
    nl:  basic_tk_types::Live_Text -> basic_tk_types::Live_Text;

    #  make a string into an annotated text with no text_items 
    make:  String   -> basic_tk_types::Live_Text;

    #  like join from basic_utilities 
    livetext_join:  String -> List( basic_tk_types::Live_Text )
                      -> basic_tk_types::Live_Text; 

    #  Adjust marks in the annotation by given offset 
    adjust_marks:    { rows: Int, cols: Int } -> 
                            List( basic_tk_types::Text_Item ) ->
                            List( basic_tk_types::Text_Item );

};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext