1 // FLTK callback functions for butt 2 // 3 // Copyright 2007-2018 by Daniel Noethen. 4 // 5 // This program is free software; you can redistribute it and/or modify 6 // it under the terms of the GNU General Public License as published by 7 // the Free Software Foundation; either version 2, or (at your option) 8 // any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 16 #ifndef FL_CALLBACKS_H 17 #define FL_CALLBACKS_H 18 19 enum { STREAM_TIME = 0, REC_TIME, SENT_DATA, REC_DATA }; 20 enum { STREAM = 0, RECORD }; 21 22 class flgui; 23 24 extern int display_info; 25 extern flgui *fl_g; 26 27 void button_cfg_cb(void); 28 void button_info_cb(void); 29 void button_record_cb(void); 30 void button_connect_cb(void); 31 void choice_cfg_dev_cb(void); 32 void button_disconnect_cb(void); 33 void button_add_icy_add_cb(void); 34 void button_cfg_del_srv_cb(void); 35 void button_cfg_del_icy_cb(void); 36 void choice_cfg_act_srv_cb(void); 37 void choice_cfg_act_icy_cb(void); 38 void button_cfg_add_srv_cb(void); 39 void button_cfg_add_icy_cb(void); 40 void choice_cfg_bitrate_cb(void); 41 void choice_cfg_samplerate_cb(void); 42 void button_cfg_song_go_cb(void); 43 void choice_cfg_codec_mp3_cb(void); 44 void choice_cfg_codec_ogg_cb(void); 45 void choice_cfg_codec_opus_cb(void); 46 void choice_cfg_codec_aac_cb(void); 47 void choice_cfg_codec_flac_cb(void); 48 void button_cfg_export_cb(void); 49 void button_cfg_import_cb(void); 50 void check_cfg_mono_to_stereo_cb(void); 51 void button_add_icy_save_cb(void); 52 void button_add_srv_cancel_cb(void); 53 void button_add_icy_cancel_cb(void); 54 void choice_cfg_channel_stereo_cb(void); 55 void choice_cfg_channel_mono_cb(void); 56 void button_cfg_browse_songfile_cb(void); 57 void input_cfg_song_file_cb(void); 58 void input_cfg_song_cb(void); 59 void input_cfg_song_prefix_cb(void); 60 void input_cfg_song_suffix_cb(void); 61 void input_cfg_buffer_cb(bool print_message); 62 void input_cfg_signal_cb(void); 63 void input_cfg_silence_cb(void); 64 void input_cfg_(void); 65 void input_cfg_present_level_cb(void); 66 void input_cfg_absent_level_cb(void); 67 void choice_cfg_resample_mode_cb(void); 68 void button_cfg_check_for_updates_cb(void); 69 void choice_cfg_right_channel_cb(void); 70 void choice_cfg_left_channel_cb(void); 71 72 void button_add_srv_add_cb(void); 73 void button_add_srv_save_cb(void); 74 void button_add_srv_show_pwd_cb(void); 75 void radio_add_srv_shoutcast_cb(void); 76 void radio_add_srv_icecast_cb(void); 77 void button_add_srv_revoke_cert_cb(void); 78 void check_update_at_startup_cb(void); 79 80 void button_rec_browse_cb(void); 81 void button_rec_split_now_cb(void); 82 void choice_rec_bitrate_cb(void); 83 void choice_rec_samplerate_cb(void); 84 void choice_rec_channel_stereo_cb(void); 85 void choice_rec_channel_mono_cb(void); 86 void choice_rec_codec_mp3_cb(void); 87 void choice_rec_codec_ogg_cb(void); 88 void choice_rec_codec_wav_cb(void); 89 void choice_rec_codec_opus_cb(void); 90 void choice_rec_codec_aac_cb(void); 91 void choice_rec_codec_flac_cb(void); 92 void input_rec_signal_cb(void); 93 void input_rec_silence_cb(void); 94 95 void input_tls_cert_file_cb(void); 96 void input_tls_cert_dir_cb(void); 97 void button_tls_browse_file_cb(void); 98 void button_tls_browse_dir_cb(void); 99 100 void button_cfg_edit_srv_cb(void); 101 void button_cfg_edit_icy_cb(void); 102 void check_song_update_active_cb(void); 103 void check_read_last_line_cb(void); 104 void check_sync_to_full_hour_cb(void); 105 106 void input_rec_filename_cb(void); 107 void input_rec_folder_cb(void); 108 void input_rec_split_time_cb(void); 109 void input_log_filename_cb(void); 110 void button_cfg_log_browse_cb(void); 111 112 void check_gui_attach_cb(void); 113 void check_gui_ontop_cb(void); 114 void check_gui_hide_log_window_cb(void); 115 void check_gui_remember_pos_cb(void); 116 void check_gui_lcd_auto_cb(void); 117 void button_gui_bg_color_cb(void); 118 void button_gui_text_color_cb(void); 119 void choice_gui_language_cb(void); 120 121 void slider_gain_cb(void); 122 123 void check_activate_eq_cb(void); 124 void slider_equalizer1_cb(double); 125 void slider_equalizer2_cb(double); 126 void slider_equalizer3_cb(double); 127 void slider_equalizer4_cb(double); 128 void slider_equalizer5_cb(double); 129 130 void check_activate_drc_cb(void); 131 void slider_threshold_cb(double); 132 void slider_ratio_cb(double); 133 void slider_attack_cb(double); 134 void slider_release_cb(double); 135 void slider_makeup_cb(double); 136 137 void check_cfg_auto_start_rec_cb(void); 138 void check_cfg_auto_stop_rec_cb(void); 139 void check_cfg_rec_after_launch_cb(void); 140 141 void check_cfg_rec_hourly_cb(void); 142 void check_cfg_connect_cb(void); 143 void check_cfg_force_reconnecting_cb(void); 144 145 146 void lcd_rotate(void*); 147 void ILM216_cb(void); 148 void window_main_close_cb(void); 149 150 void check_cfg_use_app_cb(void); 151 void choice_cfg_app_cb(void); 152 153 void update_song(int called_from_connect_cb); 154 bool stop_recording(bool ask); 155 156 157 158 159 #endif 160 161