/* * Copyright (C) 2019-2025 Roger Clark, VK3KYY / G4KYF * Daniel Caujolle-Bert, F1RMB * * * Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the distribution. * * 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * 4. Use of this source code or binary releases for commercial purposes is strictly forbidden. This includes, without limitation, * incorporation in a commercial product or incorporation into a product or project which allows commercial use. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * */ #ifndef _OPENGD77_UILANGUAGE_H_ #define _OPENGD77_UILANGUAGE_H_ #define LANGUAGE_TEXTS_LENGTH 17 #if defined(LANGUAGE_BUILD_JAPANESE) #define LANGUAGE_TAG_MAGIC_NUMBER { 'I', 'G', 'N', 'R' }, { 'L', 'A', 'N', 'G' } // Never change this tag. #else #define LANGUAGE_TAG_MAGIC_NUMBER { 'G', 'D', '7', '7' }, { 'L', 'A', 'N', 'G' } // Never change this tag. #endif #define LANGUAGE_TAG_VERSION { 0x00, 0x00, 0x00, 0x06 } // Bump the version each time the language struct is changed typedef struct { uint8_t magicNumber[3][4]; // 0..1: Tag (GD77LANG or IGNRLANG), 2: version /* * IMPORTANT * * The first set of strings are used for menu names * * DO NOT RE-ORGANISE THIS LIST as the items are accessed using pointer arithmetic * from menuSystem. c mainMenuItems[] * */ const char LANGUAGE_NAME[LANGUAGE_TEXTS_LENGTH];// Menu number 0 const char menu[LANGUAGE_TEXTS_LENGTH];// Menu number 1 const char credits[LANGUAGE_TEXTS_LENGTH];// Menu number 2 const char zone[LANGUAGE_TEXTS_LENGTH];// Menu number 3 const char rssi[LANGUAGE_TEXTS_LENGTH];// Menu number 4 const char battery[LANGUAGE_TEXTS_LENGTH];// Menu number 5 const char contacts[LANGUAGE_TEXTS_LENGTH];// Menu number 6 const char last_heard[LANGUAGE_TEXTS_LENGTH];// Menu number 7 const char firmware_info[LANGUAGE_TEXTS_LENGTH];// Menu number 8 const char options[LANGUAGE_TEXTS_LENGTH];// Menu number 9 const char display_options[LANGUAGE_TEXTS_LENGTH];// Menu number 10 const char sound_options[LANGUAGE_TEXTS_LENGTH];// Menu number 11 const char channel_details[LANGUAGE_TEXTS_LENGTH];// Menu number 12 const char language[LANGUAGE_TEXTS_LENGTH];// Menu number 13 const char new_contact[LANGUAGE_TEXTS_LENGTH];// Menu number 14 const char dmr_contacts[LANGUAGE_TEXTS_LENGTH];// Menu number 15 const char contact_details[LANGUAGE_TEXTS_LENGTH];// Menu number 16 const char hotspot_mode[LANGUAGE_TEXTS_LENGTH];// Menu number 17 /* * DO NOT RE-ORGANISE THIS LIST as the items are accessed using pointer arithmetic * for the voice prompts */ const char built[LANGUAGE_TEXTS_LENGTH];// const char zones[LANGUAGE_TEXTS_LENGTH];// const char keypad[LANGUAGE_TEXTS_LENGTH];// const char ptt[LANGUAGE_TEXTS_LENGTH];// const char locked[LANGUAGE_TEXTS_LENGTH];// const char press_sk2_plus_star[LANGUAGE_TEXTS_LENGTH];// const char to_unlock[LANGUAGE_TEXTS_LENGTH];// const char unlocked[LANGUAGE_TEXTS_LENGTH];// const char power_off[LANGUAGE_TEXTS_LENGTH]; // const char error[LANGUAGE_TEXTS_LENGTH];// const char rx_only[LANGUAGE_TEXTS_LENGTH];// const char out_of_band[LANGUAGE_TEXTS_LENGTH];// const char timeout[LANGUAGE_TEXTS_LENGTH];// const char tg_entry[LANGUAGE_TEXTS_LENGTH];// const char pc_entry[LANGUAGE_TEXTS_LENGTH];// const char user_dmr_id[LANGUAGE_TEXTS_LENGTH];// const char contact[LANGUAGE_TEXTS_LENGTH];// const char accept_call[LANGUAGE_TEXTS_LENGTH];// "Accept call?" const char private_call[LANGUAGE_TEXTS_LENGTH];// "Private call" const char squelch[LANGUAGE_TEXTS_LENGTH];// "Squelch" const char quick_menu[LANGUAGE_TEXTS_LENGTH];//"Quick Menu" const char filter[LANGUAGE_TEXTS_LENGTH];//"Filter:%s" const char all_channels[LANGUAGE_TEXTS_LENGTH];//"All Channels" const char gotoChannel[LANGUAGE_TEXTS_LENGTH];//"Goto %d" const char scan[LANGUAGE_TEXTS_LENGTH];// "Scan" const char channelToVfo[LANGUAGE_TEXTS_LENGTH];// "Channel --> VFO", const char vfoToChannel[LANGUAGE_TEXTS_LENGTH];// "VFO --> Channel", const char vfoToNewChannel[LANGUAGE_TEXTS_LENGTH];// "VFO --> New Chan", const char group[LANGUAGE_TEXTS_LENGTH];//"Group", const char private[LANGUAGE_TEXTS_LENGTH];//"Private", const char all[LANGUAGE_TEXTS_LENGTH];//"All", const char type[LANGUAGE_TEXTS_LENGTH];//"Type:" const char timeSlot[LANGUAGE_TEXTS_LENGTH];//"Timeslot" const char none[LANGUAGE_TEXTS_LENGTH];//"none" const char contact_saved[LANGUAGE_TEXTS_LENGTH];// "Contact saved", const char duplicate[LANGUAGE_TEXTS_LENGTH];//"Duplicate" const char tg[LANGUAGE_TEXTS_LENGTH];//"TG" const char pc[LANGUAGE_TEXTS_LENGTH];//"PC" const char ts[LANGUAGE_TEXTS_LENGTH];//"TS" const char mode[LANGUAGE_TEXTS_LENGTH];//"Mode" const char colour_code[LANGUAGE_TEXTS_LENGTH];//"Color Code" const char n_a[LANGUAGE_TEXTS_LENGTH];//"N/A" const char bandwidth[LANGUAGE_TEXTS_LENGTH]; const char stepFreq[LANGUAGE_TEXTS_LENGTH]; const char tot[LANGUAGE_TEXTS_LENGTH]; const char off[LANGUAGE_TEXTS_LENGTH]; const char zone_skip[LANGUAGE_TEXTS_LENGTH]; const char all_skip[LANGUAGE_TEXTS_LENGTH]; const char yes[LANGUAGE_TEXTS_LENGTH]; const char no[LANGUAGE_TEXTS_LENGTH]; const char tg_list[LANGUAGE_TEXTS_LENGTH]; const char on[LANGUAGE_TEXTS_LENGTH]; const char timeout_beep[LANGUAGE_TEXTS_LENGTH]; const char list_full[LANGUAGE_TEXTS_LENGTH]; const char dmr_cc_scan[LANGUAGE_TEXTS_LENGTH]; const char band_limits[LANGUAGE_TEXTS_LENGTH]; const char beep_volume[LANGUAGE_TEXTS_LENGTH]; const char dmr_mic_gain[LANGUAGE_TEXTS_LENGTH]; const char fm_mic_gain[LANGUAGE_TEXTS_LENGTH]; const char key_long[LANGUAGE_TEXTS_LENGTH]; const char key_repeat[LANGUAGE_TEXTS_LENGTH]; const char dmr_filter_timeout[LANGUAGE_TEXTS_LENGTH]; const char brightness[LANGUAGE_TEXTS_LENGTH]; const char brightness_off[LANGUAGE_TEXTS_LENGTH]; const char contrast[LANGUAGE_TEXTS_LENGTH]; const char screen_invert[LANGUAGE_TEXTS_LENGTH];// for display background const char screen_normal[LANGUAGE_TEXTS_LENGTH];// for display background const char backlight_timeout[LANGUAGE_TEXTS_LENGTH]; const char scan_delay[LANGUAGE_TEXTS_LENGTH]; const char yes___in_uppercase[LANGUAGE_TEXTS_LENGTH]; const char no___in_uppercase[LANGUAGE_TEXTS_LENGTH]; const char DISMISS[LANGUAGE_TEXTS_LENGTH]; const char scan_mode[LANGUAGE_TEXTS_LENGTH]; const char hold[LANGUAGE_TEXTS_LENGTH]; const char pause[LANGUAGE_TEXTS_LENGTH]; const char list_empty[LANGUAGE_TEXTS_LENGTH]; const char delete_contact_qm[LANGUAGE_TEXTS_LENGTH]; const char contact_deleted[LANGUAGE_TEXTS_LENGTH]; const char contact_used[LANGUAGE_TEXTS_LENGTH]; const char in_tg_list[LANGUAGE_TEXTS_LENGTH]; const char select_tx[LANGUAGE_TEXTS_LENGTH]; const char edit_contact[LANGUAGE_TEXTS_LENGTH]; const char delete_contact[LANGUAGE_TEXTS_LENGTH]; const char group_call[LANGUAGE_TEXTS_LENGTH]; const char all_call[LANGUAGE_TEXTS_LENGTH]; const char tone_scan[LANGUAGE_TEXTS_LENGTH]; const char low_battery[LANGUAGE_TEXTS_LENGTH]; const char Auto[LANGUAGE_TEXTS_LENGTH]; const char manual[LANGUAGE_TEXTS_LENGTH]; const char ptt_toggle[LANGUAGE_TEXTS_LENGTH]; const char private_call_handling[LANGUAGE_TEXTS_LENGTH]; const char stop[LANGUAGE_TEXTS_LENGTH]; const char one_line[LANGUAGE_TEXTS_LENGTH]; const char two_lines[LANGUAGE_TEXTS_LENGTH]; const char new_channel[LANGUAGE_TEXTS_LENGTH]; const char priority_order[LANGUAGE_TEXTS_LENGTH]; const char dmr_beep[LANGUAGE_TEXTS_LENGTH]; const char start[LANGUAGE_TEXTS_LENGTH]; const char both[LANGUAGE_TEXTS_LENGTH]; const char vox_threshold[LANGUAGE_TEXTS_LENGTH]; const char vox_tail[LANGUAGE_TEXTS_LENGTH]; const char audio_prompt[LANGUAGE_TEXTS_LENGTH]; const char silent[LANGUAGE_TEXTS_LENGTH]; const char rx_beep[LANGUAGE_TEXTS_LENGTH]; const char beep[LANGUAGE_TEXTS_LENGTH]; const char voice_prompt_level_1[LANGUAGE_TEXTS_LENGTH]; const char transmitTalkerAliasTS1[LANGUAGE_TEXTS_LENGTH]; const char squelch_VHF[LANGUAGE_TEXTS_LENGTH]; const char squelch_220[LANGUAGE_TEXTS_LENGTH]; const char squelch_UHF[LANGUAGE_TEXTS_LENGTH]; const char display_screen_invert[LANGUAGE_TEXTS_LENGTH]; const char openGD77[LANGUAGE_TEXTS_LENGTH]; const char talkaround[LANGUAGE_TEXTS_LENGTH]; const char APRS[LANGUAGE_TEXTS_LENGTH]; const char no_keys[LANGUAGE_TEXTS_LENGTH]; const char gitCommit[LANGUAGE_TEXTS_LENGTH]; const char voice_prompt_level_2[LANGUAGE_TEXTS_LENGTH]; const char voice_prompt_level_3[LANGUAGE_TEXTS_LENGTH]; const char dmr_filter[LANGUAGE_TEXTS_LENGTH]; const char talker[LANGUAGE_TEXTS_LENGTH]; const char dmr_ts_filter[LANGUAGE_TEXTS_LENGTH]; const char dtmf_contact_list[LANGUAGE_TEXTS_LENGTH];// Menu number 18 const char channel_power[LANGUAGE_TEXTS_LENGTH];// "Ch Power" for the Channel details screen const char from_master[LANGUAGE_TEXTS_LENGTH];// "Master" for the power or squelch setting on the Channel details screen const char set_quickkey[LANGUAGE_TEXTS_LENGTH]; const char dual_watch[LANGUAGE_TEXTS_LENGTH]; const char info[LANGUAGE_TEXTS_LENGTH]; const char pwr[LANGUAGE_TEXTS_LENGTH]; const char user_power[LANGUAGE_TEXTS_LENGTH]; const char temperature[LANGUAGE_TEXTS_LENGTH]; const char celcius[LANGUAGE_TEXTS_LENGTH]; const char seconds[LANGUAGE_TEXTS_LENGTH]; const char radio_info[LANGUAGE_TEXTS_LENGTH]; const char temperature_calibration[LANGUAGE_TEXTS_LENGTH]; const char pin_code[LANGUAGE_TEXTS_LENGTH]; const char please_confirm[LANGUAGE_TEXTS_LENGTH]; const char vfo_freq_bind_mode[LANGUAGE_TEXTS_LENGTH]; const char overwrite_qm[LANGUAGE_TEXTS_LENGTH]; const char eco_level[LANGUAGE_TEXTS_LENGTH];// Economy / Power saving level const char buttons[LANGUAGE_TEXTS_LENGTH]; const char leds[LANGUAGE_TEXTS_LENGTH]; const char scan_dwell_time[LANGUAGE_TEXTS_LENGTH]; const char battery_calibration[LANGUAGE_TEXTS_LENGTH]; const char low[LANGUAGE_TEXTS_LENGTH]; const char high[LANGUAGE_TEXTS_LENGTH]; const char dmr_id[LANGUAGE_TEXTS_LENGTH]; const char scan_on_boot[LANGUAGE_TEXTS_LENGTH]; const char dtmf_entry[LANGUAGE_TEXTS_LENGTH]; const char name[LANGUAGE_TEXTS_LENGTH]; const char carrier[LANGUAGE_TEXTS_LENGTH]; const char zone_empty[LANGUAGE_TEXTS_LENGTH]; const char time[LANGUAGE_TEXTS_LENGTH]; const char uptime[LANGUAGE_TEXTS_LENGTH]; const char hours[LANGUAGE_TEXTS_LENGTH]; const char minutes[LANGUAGE_TEXTS_LENGTH]; const char satellite[LANGUAGE_TEXTS_LENGTH]; const char alarm_time[LANGUAGE_TEXTS_LENGTH]; const char location[LANGUAGE_TEXTS_LENGTH]; const char date[LANGUAGE_TEXTS_LENGTH]; const char timeZone[LANGUAGE_TEXTS_LENGTH]; const char suspend[LANGUAGE_TEXTS_LENGTH]; const char pass[LANGUAGE_TEXTS_LENGTH]; const char elevation[LANGUAGE_TEXTS_LENGTH]; const char azimuth[LANGUAGE_TEXTS_LENGTH]; const char inHHMMSS[LANGUAGE_TEXTS_LENGTH]; const char predicting[LANGUAGE_TEXTS_LENGTH]; const char maximum[LANGUAGE_TEXTS_LENGTH]; const char satellite_short[LANGUAGE_TEXTS_LENGTH]; const char use_location_short[LANGUAGE_TEXTS_LENGTH];// For timezone const char UTC[LANGUAGE_TEXTS_LENGTH];// For timezone const char symbols[LANGUAGE_TEXTS_LENGTH]; // NSEW const char not_set[LANGUAGE_TEXTS_LENGTH];// Used when Location etc has not been set. const char general_options[LANGUAGE_TEXTS_LENGTH]; const char radio_options[LANGUAGE_TEXTS_LENGTH]; const char auto_night[LANGUAGE_TEXTS_LENGTH]; const char dmr_rx_agc[LANGUAGE_TEXTS_LENGTH]; const char speaker_click_suppress[LANGUAGE_TEXTS_LENGTH]; // MD-9600 ONLY const char gps[LANGUAGE_TEXTS_LENGTH]; const char end_only[LANGUAGE_TEXTS_LENGTH]; const char dmr_crc[LANGUAGE_TEXTS_LENGTH]; const char eco[LANGUAGE_TEXTS_LENGTH]; const char safe_power_on[LANGUAGE_TEXTS_LENGTH]; const char auto_power_off[LANGUAGE_TEXTS_LENGTH]; const char apo_with_rf[LANGUAGE_TEXTS_LENGTH]; const char brightness_night[LANGUAGE_TEXTS_LENGTH]; const char freq_set_VHF[LANGUAGE_TEXTS_LENGTH]; const char gps_acquiring[LANGUAGE_TEXTS_LENGTH]; const char altitude[LANGUAGE_TEXTS_LENGTH]; const char calibration[LANGUAGE_TEXTS_LENGTH]; //Calibration Menu (204) const char freq_set_UHF[LANGUAGE_TEXTS_LENGTH]; const char cal_frequency[LANGUAGE_TEXTS_LENGTH]; const char cal_pwr[LANGUAGE_TEXTS_LENGTH]; const char pwr_set[LANGUAGE_TEXTS_LENGTH]; const char factory_reset[LANGUAGE_TEXTS_LENGTH]; const char rx_tune[LANGUAGE_TEXTS_LENGTH]; //MD-9600 only const char transmitTalkerAliasTS2[LANGUAGE_TEXTS_LENGTH]; const char ta_text[LANGUAGE_TEXTS_LENGTH];// "Text" const char daytime_theme_day[LANGUAGE_TEXTS_LENGTH]; const char daytime_theme_night[LANGUAGE_TEXTS_LENGTH]; const char theme_chooser[LANGUAGE_TEXTS_LENGTH]; const char theme_options[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_default[LANGUAGE_TEXTS_LENGTH]; const char theme_bg[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_decoration[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_text_input[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_splashscreen[LANGUAGE_TEXTS_LENGTH]; const char theme_bg_splashscreen[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_notification[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_warning_notification[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_error_notification[LANGUAGE_TEXTS_LENGTH]; const char theme_bg_notification[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_menu_name[LANGUAGE_TEXTS_LENGTH]; const char theme_bg_menu_name[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_menu_item[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_menu_item_selected[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_options_value[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_header_text[LANGUAGE_TEXTS_LENGTH]; const char theme_bg_header_text[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_rssi_bar[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_rssi_bar_s9p[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_channel_name[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_channel_contact[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_channel_contact_info[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_zone_name[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_rx_freq[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_tx_freq[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_css_sql_values[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_tx_counter[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_polar_drawing[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_satellite_colour[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_gps_number[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_gps_colour[LANGUAGE_TEXTS_LENGTH]; const char theme_fg_bd_colour[LANGUAGE_TEXTS_LENGTH]; const char theme_colour_picker_red[LANGUAGE_TEXTS_LENGTH]; const char theme_colour_picker_green[LANGUAGE_TEXTS_LENGTH]; const char theme_colour_picker_blue[LANGUAGE_TEXTS_LENGTH]; const char volume[LANGUAGE_TEXTS_LENGTH]; const char roaming[LANGUAGE_TEXTS_LENGTH]; const char show_distance[LANGUAGE_TEXTS_LENGTH]; const char aprs_options[LANGUAGE_TEXTS_LENGTH]; const char aprs_smart[LANGUAGE_TEXTS_LENGTH]; const char aprs_channel[LANGUAGE_TEXTS_LENGTH]; const char aprs_decay[LANGUAGE_TEXTS_LENGTH]; const char aprs_compress[LANGUAGE_TEXTS_LENGTH]; const char aprs_interval[LANGUAGE_TEXTS_LENGTH]; const char aprs_message_interval[LANGUAGE_TEXTS_LENGTH]; const char aprs_slow_rate[LANGUAGE_TEXTS_LENGTH]; const char aprs_fast_rate[LANGUAGE_TEXTS_LENGTH]; const char aprs_low_speed[LANGUAGE_TEXTS_LENGTH]; const char aprs_high_speed[LANGUAGE_TEXTS_LENGTH]; const char aprs_turn_angle[LANGUAGE_TEXTS_LENGTH]; const char aprs_turn_slope[LANGUAGE_TEXTS_LENGTH]; const char aprs_turn_time[LANGUAGE_TEXTS_LENGTH]; const char auto_lock[LANGUAGE_TEXTS_LENGTH]; const char trackball[LANGUAGE_TEXTS_LENGTH]; const char dmr_force_dmo[LANGUAGE_TEXTS_LENGTH]; const char tx_inhibit[LANGUAGE_TEXTS_LENGTH]; const char latitude_short[LANGUAGE_TEXTS_LENGTH]; const char longitude_short[LANGUAGE_TEXTS_LENGTH]; const char text_size[LANGUAGE_TEXTS_LENGTH]; const char last_talker[LANGUAGE_TEXTS_LENGTH]; const char mute[LANGUAGE_TEXTS_LENGTH]; const char delete_channel[LANGUAGE_TEXTS_LENGTH]; const char keep_one_channel[LANGUAGE_TEXTS_LENGTH]; const char messages[LANGUAGE_TEXTS_LENGTH]; // 282, keep in sync with menuSystem.c smsMenuItems/mainMenuItems const char new_message[LANGUAGE_TEXTS_LENGTH]; // 283 const char inbox[LANGUAGE_TEXTS_LENGTH]; // 284 const char sent_box[LANGUAGE_TEXTS_LENGTH]; // 285 const char quick_text[LANGUAGE_TEXTS_LENGTH]; // 286 const char send_to[LANGUAGE_TEXTS_LENGTH]; const char sms_sending[LANGUAGE_TEXTS_LENGTH]; const char sms_sent[LANGUAGE_TEXTS_LENGTH]; const char sms_delivered[LANGUAGE_TEXTS_LENGTH]; const char sms_no_ack[LANGUAGE_TEXTS_LENGTH]; const char sms_resend[LANGUAGE_TEXTS_LENGTH]; const char sms_channel_busy[LANGUAGE_TEXTS_LENGTH]; const char sms_wait_for_ack[LANGUAGE_TEXTS_LENGTH]; const char sms_own_id_only[LANGUAGE_TEXTS_LENGTH]; const char message_from[LANGUAGE_TEXTS_LENGTH]; const char delete_message[LANGUAGE_TEXTS_LENGTH]; } stringsTable_t; #endif // _OPENGD77_UILANGUAGE_H_