/[LeafOK_CVS]/lbbs/include/screen.h
ViewVC logotype

Diff of /lbbs/include/screen.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.3 by sysadm, Tue May 6 05:31:26 2025 UTC Revision 1.24 by sysadm, Sat Jan 3 10:27:14 2026 UTC
# Line 1  Line 1 
1  /***************************************************************************  /* SPDX-License-Identifier: GPL-3.0-or-later */
2                              screen.h  -  description  /*
3                               -------------------   * screen
4      copyright            : (C) 2004-2025 by Leaflet   *   - advanced telnet-based user interactive input / output features
5      email                : leaflet@leafok.com   *
6   ***************************************************************************/   * Copyright (C) 2004-2026  Leaflet <leaflet@leafok.com>
7     */
 /***************************************************************************  
  *                                                                         *  
  *   This program is free software; you can redistribute it and/or modify  *  
  *   it under the terms of the GNU General Public License as published by  *  
  *   the Free Software Foundation; either version 3 of the License, or     *  
  *   (at your option) any later version.                                   *  
  *                                                                         *  
  ***************************************************************************/  
8    
9  #ifndef _SCREEN_H_  #ifndef _SCREEN_H_
10  #define _SCREEN_H_  #define _SCREEN_H_
11    
12  extern int screen_rows;  #include "io.h"
13  extern int screen_cols;  #include <stddef.h>
14    
15  extern void moveto(int row, int col);  extern const char CTRL_SEQ_CLR_LINE[];
16    
17  extern void clrtoeol();  enum display_constant_t
18    {
19       MSG_EXT_MAX_LEN = 400,
20    };
21    
22    struct display_ctx_t
23    {
24       int reach_begin;
25       int reach_end;
26       long line_top;
27       long line_bottom;
28       char msg[MSG_EXT_MAX_LEN];
29    };
30    typedef struct display_ctx_t DISPLAY_CTX;
31    
32  extern void clrline(int line_begin, int line_end);  typedef int (*display_data_key_handler)(int *p_key, DISPLAY_CTX *p_ctx);
33    
34    extern void moveto(int row, int col);
35    extern void clrtoeol();
36    extern void clrline(int line_begin, int line_end);
37  extern void clrtobot(int line_begin);  extern void clrtobot(int line_begin);
   
38  extern void clearscr();  extern void clearscr();
39    
40  extern int press_any_key();  extern int press_any_key();
41    extern int press_any_key_ex(const char *msg, int sec);
42    
43  extern void set_input_echo(int echo);  extern void set_input_echo(int echo);
44    
45  extern int str_input(char *buffer, int buffer_length, int echo_mode);  extern int str_input(char *buffer, int buffer_length, enum io_echo_t echo_mode);
46    extern int get_data(int row, int col, char *prompt, char *buffer, int buffer_length, int max_display_len);
 extern int get_data(int row, int col, char *prompt, char *buffer, int buffer_length, int echo_mode);  
   
 extern int display_file(const char *filename);  
47    
48  extern int display_file_ex(const char *filename, int begin_line, int wait);  // eof_exit = 0 : Do not exit at EOF
49    //            1 : Prompt for any key at EOF, then exit
50    //            2 : Exit at EOF without prompt
51    extern int display_data(const void *p_data, long display_line_total, const long *p_line_offsets, int eof_exit,
52                            display_data_key_handler key_handler, const char *help_filename);
53    extern int display_file(const char *filename, int eof_exit);
54    
55  extern int show_top(char *status);  extern int display_file_key_handler(int *p_key, DISPLAY_CTX *p_ctx);
56    
57  extern int show_bottom(char *msg);  extern int show_top(const char *str_left, const char *str_center, const char *str_right);
58    extern int show_bottom(const char *msg);
59    
60  extern int show_active_board();  extern int show_active_board();
61    


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1