| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312 |
- typedef bool DISPLAY_ELEMENT_TO_REFRESH_T;
- typedef char DISPLAY_array16_T[16] ;
- typedef String DISPLAY_string64_T[16];
- typedef String DISPLAY_string_T;
- static String DISPLAY_array16_FILL_A = " ";
- typedef ARDUINO_SIZE_T DISPLAY_string_len_T ;
- typedef int DISPLAY_PHYSICAL_X_PX_T ;
- //fixyczna rozczielczosc
- typedef int DISPLAY_PHYSICAL_Y_PX_T ;//fixyczna rozczielczosc
- typedef int DISPLAY_CURSOR_T ; //dotyczy kursora
- typedef DISPLAY_CURSOR_T DISPLAY_CURSOR_SHIFT_Y_T; //dotyczy kursora - jak jest za duzo rekordow, to przegladamy zgodnie z tym indeksem
- typedef DISPLAY_CURSOR_T DISPLAY_PHYSICAL_X_CHARS_T ;
- //fixyczna rozczielczosc w znakach w domyslnej czcionce
- typedef DISPLAY_CURSOR_T DISPLAY_PHYSICAL_Y_CHARS_T ;//fixyczna rozczielczosc w znakach w domyslnej czcionce
- typedef DISPLAY_CURSOR_T DISPLAY_CURSOR_X_CHARS_T ;
- //aktualna pozycja kursora X w domyslnej czcionce
- typedef DISPLAY_CURSOR_T DISPLAY_CURSOR_Y_CHARS_T ;
-
-
- //aktualna pozycja kursora Y w domyslnej czcionce
-
-
- typedef int DISPLAY_textsize_T ;
- typedef DISPLAY_textsize_T DISPLAY_textsize_x_T ;
- typedef DISPLAY_textsize_T DISPLAY_textsize_y_T ;
- typedef long DISPLAY_COLOR_T ;
- typedef int DISPLAY_pos_seq_T ; //reqiested position in LCD
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_EXACT = B00000001;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_NEXT = B00000010;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_IMMEDIATE = B00000100;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_QUEUE = B00001000;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_ATTIME = B00010000;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_INVALIDAFTER = B00100000;
- const DISPLAY_pos_seq_T DISPLAY_pos_seq_A_CLEARSCREEN = B01000000;
- typedef int DISPLAY_pos_id_T ; //reqiested position id in LCD
-
- typedef byte DISPLAY_TARGET_T ; //TODO BIN
- struct DISPLAY_S {
- int _queue_id ; //current queue task
- DISPLAY_pos_seq_T DISPLAY_pos_seq_A = DISPLAY_pos_seq_A_NEXT;
- DISPLAY_pos_id_T DISPLAY_pos_id_A; //somehow like position id for menus...
- //DISPLAY_array16_T DISPLAY_array16_A ;
- #if defined(DISPLAY_array16_T_is_DISPLAY_string_T)
- DISPLAY_string_T DISPLAY_string_A;
- #else
- DISPLAY_array16_T DISPLAY_array16_A ;
- #endif
- //char DISPLAY_array16_A[16] ;
- DISPLAY_TARGET_T DISPLAY_TARGET_A ;
- time_seq_id_T time_seq_id_A;
- time_min_run_T time_min_run_A;
- //String DISPLAY_string16_A[16] ;
- // DISPLAY_string64_T DISPLAY_string64_A;
- // DISPLAY_string_len_T DISPLAY_string_len_A;
-
- } ;
-
- typedef struct DISPLAY_S DISPLAY_T ;
- typedef byte DISPLAY_MENU_ITEM_FLAG_T ;
- const DISPLAY_MENU_ITEM_FLAG_T DISPLAY_MENU_ITEM_FLAG_EMPTY = B00000000;
- const DISPLAY_MENU_ITEM_FLAG_T DISPLAY_MENU_ITEM_FLAG_DELETED = B00000010;
- const DISPLAY_MENU_ITEM_FLAG_T DISPLAY_MENU_ITEM_FLAG_INITIALIZED = B10000001;
- typedef byte DISPLAY_MENU_ITEM_CLASS_T ;
- const DISPLAY_MENU_ITEM_CLASS_T DISPLAY_MENU_ITEM_CLASS_UNSET = B00000000; //for title
- const DISPLAY_MENU_ITEM_CLASS_T DISPLAY_MENU_ITEM_CLASS_MENU_TITLE = B00000001; //for title
- const DISPLAY_MENU_ITEM_CLASS_T DISPLAY_MENU_ITEM_CLASS_ITEM = B00000010;//for std item
- typedef ARDUINO_ARRAY_ATTR_T DISPLAY_MENU_ITEM_INDEX_T ;//which index
- typedef byte DISPLAY_MENU_SELECTOR_STATUS_T ;
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_EMPTY_FLAG = B00000000 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_MENU_FLAG = B00000010 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_FLAG = B00000100 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_OPTIONS_FLAG = B00001000 ; //when rotating
-
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_OPTIONS_LEVEL_FLAG = B00010000 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_OPTIONS_TOGGLE_FLAG = B00100000 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_OPTIONS_USE_LEVEL_FLAG = B01000000 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_ITEM_OPTIONS_USE_TOGGLE_FLAG = B10000000 ; //when rotating
- const DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_FLAG_INIT = DISPLAY_MENU_SELECTOR_MENU_FLAG ;
- typedef byte DISPLAY_MENU_SELECTOR_oldEncPos_T ;
- typedef byte DISPLAY_MENU_SELECTOR_encoderPos_T ;
- typedef byte DISPLAY_MENU_SELECTOR_triggerCountOld_T ;
- typedef byte DISPLAY_MENU_SELECTOR_triggerCount_T ;
- typedef byte DISPLAY_MENU_SELECTOR_SWITCH_T ;
- const DISPLAY_MENU_SELECTOR_SWITCH_T DISPLAY_MENU_SELECTOR_SWITCH_NOT_PUSHED = B00000010 ;
- const DISPLAY_MENU_SELECTOR_SWITCH_T DISPLAY_MENU_SELECTOR_SWITCH_PUSHED = B00000100 ;
- const DISPLAY_MENU_SELECTOR_SWITCH_T DISPLAY_MENU_SELECTOR_SWITCH_UNKNOWN = B00001000 ;
- struct DISPLAY_MENU_SELECTOR_S {
- ARDUINO_ARRAY_ATTR_T DISPLAY_MENU_INDEX_A = ARDUINO_ARRAY_INDEX_FIRST; //selected menu
- ARDUINO_ARRAY_ATTR_T DISPLAY_MENU_ITEM_INDEX_A ; //selected menu
- DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_STATUS_A = DISPLAY_MENU_SELECTOR_MENU_FLAG ; //which mode
- DISPLAY_MENU_SELECTOR_SWITCH_T DISPLAY_MENU_SELECTOR_SWITCH_A ;
- DISPLAY_MENU_SELECTOR_oldEncPos_T DISPLAY_MENU_SELECTOR_oldEncPos_A; //values
- DISPLAY_MENU_SELECTOR_encoderPos_T DISPLAY_MENU_SELECTOR_encoderPos_A ; //values
- };
- typedef struct DISPLAY_MENU_SELECTOR_S DISPLAY_MENU_SELECTOR_T ;
- typedef byte DISPLAY_MENU_ITEM_Exp_state_level_T ;
- const byte DISPLAY_char24_T_SIZE = 24 ;
- typedef char DISPLAY_char_T ;
- typedef DISPLAY_char_T DISPLAY_char24_T[DISPLAY_char24_T_SIZE] ;
- //typedef int DISPLAY_char_PT ;
- struct DISPLAY_MENU_ITEM_S { //elementy menu
- DISPLAY_MENU_ITEM_FLAG_T DISPLAY_MENU_ITEM_FLAG_A = DISPLAY_MENU_ITEM_FLAG_EMPTY ;
- //czy nie jest do usuniecia itp ...
- DISPLAY_MENU_ITEM_CLASS_T DISPLAY_MENU_ITEM_CLASS_A = DISPLAY_MENU_ITEM_CLASS_UNSET; //
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_A; //gdzie sie wyswietla
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_A ;//gdzie sie wyswietla
- #if defined(USE_DISPLAY_string_T)
- DISPLAY_string_T DISPLAY_string_A;
- #endif
- DISPLAY_COLOR_T DISPLAY_COLOR_A ;
- DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_STATUS_A ; //opcja kontekstu selektora
- time_seq_id_T time_seq_id_A ; //to controll latency
- time_min_run_T time_min_run_A ; //to controll latency
- DISPLAY_MENU_ITEM_Exp_state_level_T Exp_state_level_A ;
- ARDUINO_ARRAY_INDEX_T ARDUINO_ARRAY_INDEX_A ; //index do czegos - portu
- //DISPLAY_char_PT DISPLAY_char_PA ; //pointer do wiadomosci
- #if defined(USE_DISPLAY_char_PA)
- DISPLAY_char24_T *DISPLAY_char_PA ; //pointer do wiadomosci
- #endif
- DISPLAY_char24_T DISPLAY_char24_A;
- DISPLAY_ELEMENT_TO_REFRESH_T DISPLAY_ELEMENT_TO_REFRESH_A ;// = true;
- } ;
- typedef struct DISPLAY_MENU_ITEM_S DISPLAY_MENU_ITEM_T ;
- //typedef byte DISPLAY_MENU_ITEM_CONTEXT_OPTIONS_T ;
- //struct DISPLAY_MENU_ITEM_OPTIONS_S {
- //}
- //ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU
- struct DISPLAY_MENU_S {
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_MENU_SIZE_X_CHARS_MIN_A; //SIZE LEFT UPPER CORNER X
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_MENU_SIZE_Y_CHARS_MIN_A; //SIZE LEFT UPPER CORNER Y
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_MENU_SIZE_X_CHARS_MAX_A; //SIZE RIGHT LOWER CORNER X
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_MENU_SIZE_Y_CHARS_MAX_A; //SIZE RIGHT LOWER CORNER Y
- DISPLAY_COLOR_T DISPLAY_COLOR_A = BLACK ;
- time_seq_id_T time_seq_id_A ; //to controll latency
- time_min_run_T time_min_run_A ; //to controll latency
- /*
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_MIN_A; //zaznaczenie
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_MIN_A; //zaznaczenie
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_MAX_A; //zaznaczenie
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_MAX_A; //zaznaczenie
- */
- DISPLAY_MENU_ITEM_T DISPLAY_MENU_ITEM_A[ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU_ITEM_A] ; //elementy menu
- ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A ; //ktory jest aktywny element
- DISPLAY_MENU_SELECTOR_STATUS_T DISPLAY_MENU_SELECTOR_STATUS_A ; //opcja kontekstu selektora
- DISPLAY_CURSOR_SHIFT_Y_T DISPLAY_CURSOR_SHIFT_Y_A = 0; //
- DISPLAY_ELEMENT_TO_REFRESH_T DISPLAY_ELEMENT_TO_REFRESH_A ; //;= true;
- }
- ;
-
-
- typedef struct DISPLAY_MENU_S DISPLAY_MENU_T ;
-
-
-
- struct DISPLAY_PHYSICAL_CHAR_NOMENU_S {
- DISPLAY_PHYSICAL_X_PX_T DISPLAY_PHYSICAL_X_PX_A ;
- DISPLAY_PHYSICAL_Y_PX_T DISPLAY_PHYSICAL_Y_PX_A ;
- DISPLAY_PHYSICAL_X_CHARS_T DISPLAY_PHYSICAL_X_CHARS_A;
- DISPLAY_PHYSICAL_Y_CHARS_T DISPLAY_PHYSICAL_Y_CHARS_A;
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_A;
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_A ;
- DISPLAY_textsize_x_T DISPLAY_textsize_x_A;
- DISPLAY_textsize_y_T DISPLAY_textsize_y_A;
- DISPLAY_ELEMENT_TO_REFRESH_T DISPLAY_ELEMENT_TO_REFRESH_A ;//= true;
- // DISPLAY_MENU_T DISPLAY_MENU_A[ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU] ;
- //DISPLAY_MENU_SELECTOR_T DISPLAY_MENU_SELECTOR_A[1] ;
- } ;
-
- typedef struct DISPLAY_PHYSICAL_CHAR_NOMENU_S DISPLAY_PHYSICAL_CHAR_NOMENU_T ;
-
- struct DISPLAY_PHYSICAL_CHAR_S {
- DISPLAY_PHYSICAL_X_PX_T DISPLAY_PHYSICAL_X_PX_A ;
- DISPLAY_PHYSICAL_Y_PX_T DISPLAY_PHYSICAL_Y_PX_A ;
- DISPLAY_PHYSICAL_X_CHARS_T DISPLAY_PHYSICAL_X_CHARS_A;
- DISPLAY_PHYSICAL_Y_CHARS_T DISPLAY_PHYSICAL_Y_CHARS_A;
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_A;
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_A ;
- DISPLAY_textsize_x_T DISPLAY_textsize_x_A;
- DISPLAY_textsize_y_T DISPLAY_textsize_y_A;
- DISPLAY_ELEMENT_TO_REFRESH_T DISPLAY_ELEMENT_TO_REFRESH_A ;//= true;
- DISPLAY_MENU_T DISPLAY_MENU_A[ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY_MENU] ;
- DISPLAY_MENU_SELECTOR_T DISPLAY_MENU_SELECTOR_A[1] ;
- } ;
-
- typedef struct DISPLAY_PHYSICAL_CHAR_S DISPLAY_PHYSICAL_CHAR_T ;
- const DISPLAY_TARGET_T DISPLAY_TARGET_CONSOLE = B00000001 ;
- const DISPLAY_TARGET_T DISPLAY_TARGET_LCD16 = B00000010 ;
- static const DISPLAY_TARGET_T DISPLAY_TARGET_DISPLAY128 = B00000100 ;
- const DISPLAY_TARGET_T DISPLAY_TARGET_ALL = DISPLAY_TARGET_CONSOLE | DISPLAY_TARGET_LCD16 | DISPLAY_TARGET_DISPLAY128 ;
- const DISPLAY_TARGET_T DISPLAY_TARGET_ANY = B00001000 | DISPLAY_TARGET_CONSOLE | DISPLAY_TARGET_LCD16 | DISPLAY_TARGET_DISPLAY128 ;
-
-
-
- typedef struct ARDUINO_ATTR_ARRAY_S DISPLAY_T_ARDUINO_ATTR_ARRAY_T ;
-
-
-
- typedef struct ARDUINO_ARRAY_INDEX_TABLE_S DISPLAY_ARDUINO_ARRAY_INDEX_TABLE_T ; //DEFAULT INDEX TABLE
- typedef struct ARDUINO_ARRAY_INDEX_T_TO_DELETE_S DISPLAY_ARDUINO_ARRAY_INDEX_T_TO_DELETE_T;
- typedef ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add_DISPLAY_T ;
-
- const DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_CAN_DEBUG = 8 ; //todo 10 linia do debugu?? CAN
- const DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_ROTTARY_SW_DEBUG = 9 ; //todo 10 linia do debugu?? CAN
- const DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_DEBUG = 10 ; //todo 10 linia do debugu??
-
-
-
- static DISPLAY_T DISPLAY_A[ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY] = {} ;
- static DISPLAY_T_ARDUINO_ATTR_ARRAY_T DISPLAY_T_ARDUINO_ATTR_ARRAY_A = { //
- ARDUINO_ARRAY_INDEX_CURRENT_INIT ,
- ARDUINO_ARRAY_INDEX_LAST_INIT ,
- ARDUINO_ARRAY_COUNT_T_INIT ,
- ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY,
- ARDUINO_ARRAY_INDEX_NEXT_INIT
-
- };
- static DISPLAY_ARDUINO_ARRAY_INDEX_TABLE_T DISPLAY_ARDUINO_ARRAY_INDEX_TABLE_A[ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY] = {};
- static DISPLAY_ARDUINO_ARRAY_INDEX_T_TO_DELETE_T DISPLAY_ARDUINO_ARRAY_INDEX_T_TO_DELETE_A[ARDUINO_ARRAY_INDEX_T_TO_DELETE_S_LIMIT] = {};
-
-
- struct DISPLAY__print_loop_S {
- DISPLAY_CURSOR_X_CHARS_T DISPLAY_CURSOR_X_CHARS_A;
- DISPLAY_CURSOR_Y_CHARS_T DISPLAY_CURSOR_Y_CHARS_A;
- String message;
- int message_len ;
- } ;
- typedef struct DISPLAY__print_loop_S DISPLAY__print_loop_T;
- typedef byte DISPLAY__print_loop_ACTION_T ;
- const DISPLAY__print_loop_ACTION_T DISPLAY__print_loop_ACTION_ADD = B00000001 ;
- const DISPLAY__print_loop_ACTION_T DISPLAY__print_loop_ACTION_POP = B00000010 ;
- const DISPLAY_CURSOR_T DISPLAY_char24_TAB_SIZE = 3 ;
-
- #if defined(USE_DISPLAY_char_PA)
- void DISPLAY_char_P( String message , DISPLAY_char24_T &DISPLAY_char_PA ) {//DISPLAY_char24_T DISPLAY_char24_A
- //DISPLAY_char24_PT
- //DISPLAY_char24_T temp_P;
- DISPLAY_char24_T temp ;
- // int temp_P = *DISPLAY_char_PA;
- message.toCharArray(temp, message.length());
- //temp = *DISPLAY_char24_A;
- //return *DISPLAY_char24_A;
- //return *temp ;
- //temp_P = *temp;
- *DISPLAY_char_PA = *temp;
- }
- #endif
- /*
- DISPLAY_char_PT DISPLAY_char_P( String message ) {//DISPLAY_char24_T DISPLAY_char24_A
- //DISPLAY_char24_PT
- DISPLAY_char24_T temp ;
- message.toCharArray(temp, message.length());
- //temp = *DISPLAY_char24_A;
- //return *DISPLAY_char24_A;
- return *temp ;
- }
- */
- //DISPLAY_char24_T DISPLAY_char_PV( DISPLAY_char_PT DISPLAY_char_PA ) {//DISPLAY_char24_T DISPLAY_char24_A
- //return DISPLAY_char_PA;
- //}
-
|