From: Mark Clarkstone Date: Wed, 3 Feb 2016 16:42:58 +0000 (+0000) Subject: Tooltips: Lots more descriptions and some changes to existing ones. X-Git-Tag: v4.2.1~1073 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3027405cfdefbab0fc2bc06f04bf79da3836d42f;p=thirdparty%2Ftvheadend.git Tooltips: Lots more descriptions and some changes to existing ones. --- diff --git a/src/channels.c b/src/channels.c index 2253ce001..5fa1c824a 100644 --- a/src/channels.c +++ b/src/channels.c @@ -350,12 +350,15 @@ const idclass_t channel_class = { .type = PT_BOOL, .id = "enabled", .name = N_("Enabled"), + .desc = N_("Enable/disable the channel."), .off = offsetof(channel_t, ch_enabled), }, { .type = PT_BOOL, .id = "autoname", .name = N_("Automatically name from network"), + .desc = N_("Automatically name from network. " + "Always use the name defined by the network."), .off = offsetof(channel_t, ch_autoname), .set = channel_class_autoname_set, .opts = PO_ADVANCED, @@ -365,6 +368,8 @@ const idclass_t channel_class = { .type = PT_STR, .id = "name", .name = N_("Name"), + .desc = N_("Name. The name given to/of the channel (This is " + "how it`ll appear in your EPG.)"), .off = offsetof(channel_t, ch_name), .set = channel_class_set_name, .get = channel_class_get_name, @@ -375,6 +380,11 @@ const idclass_t channel_class = { .intsplit = CHANNEL_SPLIT, .id = "number", .name = N_("Number"), + .desc = N_("Number. The position the channel will appear on " + "your EPG. This is not used by Tvheadend " + "internally, but rather intended to be used by " + "HTSP clients for mapping to remote control " + "buttons, presentation order, etc."), .off = offsetof(channel_t, ch_number), .get = channel_class_get_number, }, @@ -382,6 +392,8 @@ const idclass_t channel_class = { .type = PT_STR, .id = "icon", .name = N_("User icon"), + .desc = N_("User icon. The URL (or path) to the icon to use/used " + "for the channel."), .off = offsetof(channel_t, ch_icon), .notify = channel_class_icon_notify, .opts = PO_ADVANCED, @@ -390,6 +402,8 @@ const idclass_t channel_class = { .type = PT_STR, .id = "icon_public_url", .name = N_("Icon URL"), + .desc = N_("Icon URL. The imagecache path to the icon to use/used " + "for the channel."), .get = channel_class_get_icon, .opts = PO_RDONLY | PO_NOSAVE | PO_HIDDEN | PO_EXPERT, }, @@ -397,6 +411,11 @@ const idclass_t channel_class = { .type = PT_BOOL, .id = "epgauto", .name = N_("Automatically map EPG source"), + .desc = N_("Automatically map EPG source. Automatically link " + "EPG data to the channel (using the channel name " + "for matching). If you turn this option off, only " + "the OTA EPG grabber will be used for this channel " + "unless the EPG Source option is not set manually."), .off = offsetof(channel_t, ch_epgauto), .opts = PO_ADVANCED, }, @@ -405,6 +424,9 @@ const idclass_t channel_class = { .islist = 1, .id = "epggrab", .name = N_("EPG source"), + .desc = N_("EPG source. Name of the module, grabber or channel " + "that should be used to update this channels " + "EPG info."), .set = channel_class_epggrab_set, .get = channel_class_epggrab_get, .list = channel_class_epggrab_list, @@ -414,6 +436,14 @@ const idclass_t channel_class = { .type = PT_INT, .id = "dvr_pre_time", .name = N_("Pre-recording padding"), // TODO: better text? + .desc = N_("Pre-recording padding. Start recording earlier " + "than the EPG/timer defined " + "start time by x minutes, for example if a program " + "is to start at 13:00 and you set a padding of 5 " + "minutes it will start recording at 12:54:30 " + "(including a warming-up time of 30 seconds). If this " + "isn't set the pre-recording padding if set in the " + "DVR entry or DVR profile will be used."), .off = offsetof(channel_t, ch_dvr_extra_time_pre), .opts = PO_ADVANCED }, @@ -421,6 +451,8 @@ const idclass_t channel_class = { .type = PT_INT, .id = "dvr_pst_time", .name = N_("Post-recording padding"), // TODO: better text? + .desc = N_("Post-recording padding. Continue recording for x " + "minutes after scheduled stop time."), .off = offsetof(channel_t, ch_dvr_extra_time_post), .opts = PO_ADVANCED }, @@ -428,6 +460,11 @@ const idclass_t channel_class = { .type = PT_INT, .id = "epg_running", .name = N_("Use EPG running state"), + .desc = N_("Use EPG running state. Use EITp/f to decide " + "event start/stop. This is also known as accurate " + "recording. Note that this can have unexpected " + "results if the broadcaster isn`t very good at " + "time keeping."), .off = offsetof(channel_t, ch_epg_running), .list = channel_class_epg_running_list, .opts = PO_ADVANCED @@ -437,6 +474,7 @@ const idclass_t channel_class = { .islist = 1, .id = "services", .name = N_("Services"), + .desc = N_("Services. Services associated with the channel."), .get = channel_class_services_get, .set = channel_class_services_set, .list = channel_class_services_enum, @@ -448,6 +486,7 @@ const idclass_t channel_class = { .islist = 1, .id = "tags", .name = N_("Tags"), + .desc = N_("Tags. Tags linked/to link to the channel."), .get = channel_class_tags_get, .set = channel_class_tags_set, .list = channel_tag_class_get_list, @@ -457,6 +496,8 @@ const idclass_t channel_class = { .type = PT_STR, .id = "bouquet", .name = N_("Bouquet (auto)"), + .desc = N_("Bouquet (auto). The bouquet the channel is " + "associated with."), .get = channel_class_bouquet_get, .set = channel_class_bouquet_set, .list = bouquet_class_get_list, @@ -466,6 +507,8 @@ const idclass_t channel_class = { .type = PT_STR, .id = "epg_parent", .name = N_("Reuse EPG from"), + .name = N_("Reuse EPG from. Reuse the EPG from another " + "channel."), .set = channel_class_epg_parent_set, .list = channel_class_get_list, .off = offsetof(channel_t, ch_epg_parent), diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c index f08461d55..b2860d186 100644 --- a/src/dvr/dvr_db.c +++ b/src/dvr/dvr_db.c @@ -2841,8 +2841,9 @@ const idclass_t dvr_entry_class = { .type = PT_TIME, .id = "start_real", .name = N_("Scheduled start time"), - .desc = N_("The scheduled start time, including any pre-recording padding " - "and a warm-up time of 30 seconds."), + .desc = N_("The scheduled start time, including any " + "pre-recording padding and a warm-up time of 30 " + "seconds."), .get = dvr_entry_class_start_real_get, .opts = PO_RDONLY | PO_NOSAVE, }, diff --git a/src/input/mpegts/linuxdvb/linuxdvb_adapter.c b/src/input/mpegts/linuxdvb/linuxdvb_adapter.c index 47f5f2523..b8e6fe464 100644 --- a/src/input/mpegts/linuxdvb/linuxdvb_adapter.c +++ b/src/input/mpegts/linuxdvb/linuxdvb_adapter.c @@ -90,6 +90,7 @@ const idclass_t linuxdvb_adapter_class = .type = PT_STR, .id = "rootpath", .name = N_("Device path"), + .desc = N_("Path used by device."), .opts = PO_RDONLY, .off = offsetof(linuxdvb_adapter_t, la_rootpath), }, diff --git a/src/input/mpegts/linuxdvb/linuxdvb_ca.c b/src/input/mpegts/linuxdvb/linuxdvb_ca.c index a2cbecf06..f75c90deb 100644 --- a/src/input/mpegts/linuxdvb/linuxdvb_ca.c +++ b/src/input/mpegts/linuxdvb/linuxdvb_ca.c @@ -186,7 +186,7 @@ const idclass_t linuxdvb_ca_class = .type = PT_BOOL, .id = "enabled", .name = N_("Enabled"), - .desc = N_("Enable/disable this device."), + .desc = N_("Enable/disable the device."), .off = offsetof(linuxdvb_ca_t, lca_enabled), .notify = linuxdvb_ca_class_enabled_notify, }, diff --git a/src/input/mpegts/linuxdvb/linuxdvb_satconf.c b/src/input/mpegts/linuxdvb/linuxdvb_satconf.c index 9fefe835a..f6efad8d5 100644 --- a/src/input/mpegts/linuxdvb/linuxdvb_satconf.c +++ b/src/input/mpegts/linuxdvb/linuxdvb_satconf.c @@ -220,6 +220,9 @@ const idclass_t linuxdvb_satconf_class = .type = PT_BOOL, .id = "early_tune", .name = N_("Tune before DiseqC"), + .desc = N_("One tune request (setup) is sent before the " + "DiseqC sequence (voltage, tone settings). " + "Some linux drivers require this procedure."), .off = offsetof(linuxdvb_satconf_t, ls_early_tune), .opts = PO_ADVANCED, .def.i = 1 @@ -228,6 +231,12 @@ const idclass_t linuxdvb_satconf_class = .type = PT_INT, .id = "diseqc_repeats", .name = N_("DiseqC repeats"), + .desc = N_("Number of repeats for the DiseqC commands " + "(default is zero - no DiseqC repeats). " + "Note: this represents the number of repeats, not " + "the number of requests - so 0 means 'send once: " + "don't repeat', 1 means 'send twice: send once, " + "then send one repeat', etc."), .off = offsetof(linuxdvb_satconf_t, ls_diseqc_repeats), .opts = PO_ADVANCED, .def.i = 0 @@ -236,6 +245,11 @@ const idclass_t linuxdvb_satconf_class = .type = PT_BOOL, .id = "diseqc_full", .name = N_("Full DiseqC"), + .desc = N_("Always send the whole DiseqC sequence including " + "LNB setup (voltage, tone). If this is not " + "checked, only changed settings are sent, which " + "may cause issues with some drivers. If the tuning " + "is not reliable, try activating this option."), .off = offsetof(linuxdvb_satconf_t, ls_diseqc_full), .opts = PO_ADVANCED, .def.i = 1 @@ -244,6 +258,9 @@ const idclass_t linuxdvb_satconf_class = .type = PT_BOOL, .id = "lnb_poweroff", .name = N_("Turn off LNB when idle"), + .desc = N_("Switch off the power to the LNB when idle. Note: " + "this may cause interference with other devices " + "when the LNB is powered back up."), .off = offsetof(linuxdvb_satconf_t, ls_lnb_poweroff), .opts = PO_ADVANCED, .def.i = 1 @@ -289,6 +306,7 @@ const idclass_t linuxdvb_satconf_2port_class = .type = PT_STR, .id = "network_a", .name = N_("A"), + .desc = N_("Network for port A."), .islist = 1, .get = linuxdvb_satconf_class_network_get0, .set = linuxdvb_satconf_class_network_set0, @@ -300,6 +318,7 @@ const idclass_t linuxdvb_satconf_2port_class = .type = PT_STR, .id = "network_b", .name = N_("B"), + .desc = N_("Network for port B."), .islist = 1, .get = linuxdvb_satconf_class_network_get1, .set = linuxdvb_satconf_class_network_set1, @@ -324,6 +343,7 @@ const idclass_t linuxdvb_satconf_4port_class = .type = PT_STR, .id = "network_aa", .name = N_("AA"), + .desc = N_("Network for port AA."), .islist = 1, .get = linuxdvb_satconf_class_network_get0, .set = linuxdvb_satconf_class_network_set0, @@ -335,6 +355,7 @@ const idclass_t linuxdvb_satconf_4port_class = .type = PT_STR, .id = "network_ab", .name = N_("AB"), + .desc = N_("Network for port AB."), .islist = 1, .get = linuxdvb_satconf_class_network_get1, .set = linuxdvb_satconf_class_network_set1, @@ -346,6 +367,7 @@ const idclass_t linuxdvb_satconf_4port_class = .type = PT_STR, .id = "network_ba", .name = N_("BA"), + .desc = N_("Network for port BA."), .islist = 1, .get = linuxdvb_satconf_class_network_get2, .set = linuxdvb_satconf_class_network_set2, @@ -357,6 +379,7 @@ const idclass_t linuxdvb_satconf_4port_class = .type = PT_STR, .id = "network_bb", .name = N_("BB"), + .desc = N_("Network for port BB."), .islist = 1, .get = linuxdvb_satconf_class_network_get3, .set = linuxdvb_satconf_class_network_set3, @@ -438,6 +461,7 @@ const idclass_t linuxdvb_satconf_en50494_class = .type = PT_U16, .id = "id", .name = N_("SCR (ID)"), + .desc = N_("SCR (Satellite Channel Router) ID."), .get = linuxdvb_satconf_class_en50494_id_get, .set = linuxdvb_satconf_class_en50494_id_set, .list = linuxdvb_en50494_id_list, @@ -447,6 +471,7 @@ const idclass_t linuxdvb_satconf_en50494_class = .type = PT_U16, .id = "pin", .name = N_("PIN"), + .desc = N_("PIN."), .get = linuxdvb_satconf_class_en50494_pin_get, .set = linuxdvb_satconf_class_en50494_pin_set, .list = linuxdvb_en50494_pin_list, @@ -456,6 +481,7 @@ const idclass_t linuxdvb_satconf_en50494_class = .type = PT_U16, .id = "frequency", .name = N_("Frequency (MHz)"), + .desc = N_("Frequency (in MHz)."), .get = linuxdvb_satconf_class_en50494_freq_get, .set = linuxdvb_satconf_class_en50494_freq_set, .opts = PO_NOSAVE, @@ -464,6 +490,7 @@ const idclass_t linuxdvb_satconf_en50494_class = .type = PT_STR, .id = "network_a", .name = N_("Network A"), + .desc = N_("Network for port A."), .islist = 1, .get = linuxdvb_satconf_class_network_get0, .set = linuxdvb_satconf_class_network_set0, @@ -475,6 +502,7 @@ const idclass_t linuxdvb_satconf_en50494_class = .type = PT_STR, .id = "network_b", .name = N_("Network B"), + .desc = N_("Network for port B."), .islist = 1, .get = linuxdvb_satconf_class_network_get1, .set = linuxdvb_satconf_class_network_set1, diff --git a/src/input/mpegts/mpegts_mux_dvb.c b/src/input/mpegts/mpegts_mux_dvb.c index 997227217..d3a8d4281 100644 --- a/src/input/mpegts/mpegts_mux_dvb.c +++ b/src/input/mpegts/mpegts_mux_dvb.c @@ -217,8 +217,8 @@ const idclass_t dvb_mux_dvbt_class = { MUX_PROP_STR("delsys", N_("Delivery system"), dvbt, delsys, "DVBT"), .desc = N_("The delivery system the mux uses. " - "Make sure that your tuner supports the delivery system" - ""), + "Make sure that your tuner supports the delivery " + "system selected here."), }, { .type = PT_U32, @@ -254,7 +254,7 @@ const idclass_t dvb_mux_dvbt_class = }, { MUX_PROP_STR("hierarchy", N_("Hierarchy"), dvbt, hier, N_("AUTO")), - .desc = N_("The hierarchical modulation used by this mux. " + .desc = N_("The hierarchical modulation used by the mux. " "Most people will not need to change this setting."), }, { @@ -312,7 +312,7 @@ const idclass_t dvb_mux_dvbc_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), dvbc, delsys, "DVB-C"), - .desc = N_("Select the delivery system used by your cable provider."), + .desc = N_("The delivery system used by your cable provider."), }, { .type = PT_U32, @@ -443,6 +443,7 @@ const idclass_t dvb_mux_dvbs_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), dvbs, delsys, "DVBS"), + .desc = N_("The delivery system used by your provider."), }, { .type = PT_U32, @@ -485,7 +486,7 @@ const idclass_t dvb_mux_dvbs_class = .type = PT_INT, .id = "stream_id", .name = N_("ISI (Stream ID)"), - .desc = N_("The stream ID used for this mux."), + .desc = N_("The stream ID used for the mux."), .off = offsetof(dvb_mux_t, lm_tuning.dmc_fe_stream_id), .def.i = DVB_NO_STREAM_ID_FILTER, .opts = PO_ADVANCED @@ -493,14 +494,14 @@ const idclass_t dvb_mux_dvbs_class = { MUX_PROP_STR("pls_mode", N_("PLS mode"), dvbs, pls_mode, "ROOT"), .desc = N_("The Physical Layer Scrambling (PLS) mode " - "used on this mux."), + "used on the mux."), }, { .type = PT_U32, .id = "pls_code", .name = N_("PLS code"), .desc = N_("The Physical Layer Scrambling (PLS) code " - "used on this mux."), + "used on the mux."), .off = offsetof(dvb_mux_t, lm_tuning.dmc_fe_pls_code), .def.u32 = 1, .opts = PO_ADVANCED @@ -509,7 +510,7 @@ const idclass_t dvb_mux_dvbs_class = .type = PT_STR, .id = "orbital", .name = N_("Orbital position"), - .desc = N_("The orbital position of the satellite this mux is on."), + .desc = N_("The orbital position of the satellite the mux is on."), .set = dvb_mux_dvbs_class_orbital_set, .get = dvb_mux_dvbs_class_orbital_get, .opts = PO_ADVANCED | PO_RDONLY @@ -545,6 +546,7 @@ const idclass_t dvb_mux_atsc_t_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), atsc_t, delsys, "ATSC-T"), + .desc = N_("The delivery system used by your provider."), }, { .type = PT_U32, @@ -585,6 +587,7 @@ const idclass_t dvb_mux_atsc_c_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), atsc_c, delsys, "ATSC-C"), + .desc = N_("The delivery system used by your provider."), }, { .type = PT_U32, @@ -669,7 +672,7 @@ const idclass_t dvb_mux_isdb_t_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), isdb_t, delsys, "ISDB-T"), - .desc = N_("Select the delivery system used by your provider."), + .desc = N_("The delivery system used by your provider."), }, { .type = PT_U32, @@ -829,6 +832,7 @@ const idclass_t dvb_mux_isdb_s_class = .ic_properties = (const property_t[]){ { MUX_PROP_STR("delsys", N_("Delivery system"), isdb_s, delsys, "ISDBS"), + .desc = N_("The delivery system used by your provider."), }, { .type = PT_U32, @@ -842,7 +846,7 @@ const idclass_t dvb_mux_isdb_s_class = .type = PT_INT, .id = "stream_id", .name = N_("Stream ID"), - .desc = N_("The stream ID used for this mux."), + .desc = N_("The stream ID used for the mux."), .off = offsetof(dvb_mux_t, lm_tuning.dmc_fe_stream_id), .def.i = DVB_NO_STREAM_ID_FILTER, .opts = PO_ADVANCED diff --git a/src/input/mpegts/mpegts_mux_sched.c b/src/input/mpegts/mpegts_mux_sched.c index 590e92b38..fc1aa5353 100644 --- a/src/input/mpegts/mpegts_mux_sched.c +++ b/src/input/mpegts/mpegts_mux_sched.c @@ -124,6 +124,7 @@ const idclass_t mpegts_mux_sched_class = .type = PT_BOOL, .id = "enabled", .name = N_("Enabled"), + .desc = N_("Enable/disable the entry."), .off = offsetof(mpegts_mux_sched_t, mms_enabled), .def.i = 1, }, @@ -131,6 +132,7 @@ const idclass_t mpegts_mux_sched_class = .type = PT_STR, .id = "mux", .name = N_("Mux"), + .desc = N_("The mux to play when the entry is triggered."), .off = offsetof(mpegts_mux_sched_t, mms_mux), .list = mpegts_mux_sched_class_mux_list, }, @@ -138,6 +140,7 @@ const idclass_t mpegts_mux_sched_class = .type = PT_STR, .id = "cron", .name = N_("Cron"), + .desc = N_("Schedule frequency (in Cron format)."), .off = offsetof(mpegts_mux_sched_t, mms_cronstr), .set = mpegts_mux_sched_class_cron_set, }, @@ -145,6 +148,8 @@ const idclass_t mpegts_mux_sched_class = .type = PT_INT, .id = "timeout", .name = N_("Timout (secs)"), + .desc = N_("The length of time (in seconds) to play the mux " + "for. 1 hour = 3600."), .off = offsetof(mpegts_mux_sched_t, mms_timeout), }, { diff --git a/src/timeshift.c b/src/timeshift.c index 6f23ec7c8..d563616b3 100644 --- a/src/timeshift.c +++ b/src/timeshift.c @@ -170,38 +170,56 @@ const idclass_t timeshift_conf_class = { .type = PT_BOOL, .id = "enabled", .name = N_("Enabled"), + .desc = N_("Enable/disable timeshift."), .off = offsetof(timeshift_conf_t, enabled), }, { .type = PT_BOOL, .id = "ondemand", .name = N_("On-demand (no first rewind)"), - .desc = N_("Use timeshift only on-demand. It is started when the first request " + /*.desc = N_("Use timeshift only on-demand. It is started when the first request " "to move in the playback time occurs (fast-forward, rewind, goto)."), + */ + .desc = N_("Only activate timeshift when the client makes the first " + "rewind, fast-forward or pause request. Note, " + "because there is no buffer on the first request, " + "rewinding is not possible."), .off = offsetof(timeshift_conf_t, ondemand), }, { .type = PT_STR, .id = "path", .name = N_("Storage path"), + .desc = N_("Path to where the timeshift data will be stored. " + "If nothing is specified this will default to " + "CONF_DIR/timeshift/buffer."), .off = offsetof(timeshift_conf_t, path), }, { .type = PT_U32, .id = "max_period", .name = N_("Maximum period (mins)"), + .desc = N_("The maximum time period that will be buffered for " + "any given (client) subscription."), .off = offsetof(timeshift_conf_t, max_period), }, { .type = PT_BOOL, .id = "unlimited_period", .name = N_("Unlimited time"), + .desc = N_("Allow the timeshift buffer to grow unbounded until " + "your storage media runs out of space. Warning, " + "enabling this option may cause your system to slow " + "down or crash completely!"), .off = offsetof(timeshift_conf_t, unlimited_period), }, { .type = PT_S64, .id = "max_size", .name = N_("Maximum size (MB)"), + .desc = N_("The maximum combined size of all timeshift buffers. " + "If you specify an unlimited period it's highly " + "recommended you specify a value here."), .set = timeshift_conf_class_max_size_set, .get = timeshift_conf_class_max_size_get, }, @@ -209,6 +227,9 @@ const idclass_t timeshift_conf_class = { .type = PT_S64, .id = "ram_size", .name = N_("Maximum RAM size (MB)"), + .desc = N_("The maximum RAM (system memory) size for timeshift " + "buffers. When free RAM buffers are available, they " + "are used instead storage to save the timeshift data."), .set = timeshift_conf_class_ram_size_set, .get = timeshift_conf_class_ram_size_get, }, @@ -216,12 +237,16 @@ const idclass_t timeshift_conf_class = { .type = PT_BOOL, .id = "unlimited_size", .name = N_("Unlimited size"), + .desc = N_("Allow the combined size of all timeshift buffers to " + "potentially grow unbounded until your storage media " + "runs out of space."), .off = offsetof(timeshift_conf_t, unlimited_size), }, { .type = PT_BOOL, .id = "ram_only", .name = N_("RAM only"), + .desc = N_("Only use system RAM for timeshift buffers."), .off = offsetof(timeshift_conf_t, ram_only), }, { diff --git a/src/tvhlog.c b/src/tvhlog.c index fedee81e7..71dbb3f72 100644 --- a/src/tvhlog.c +++ b/src/tvhlog.c @@ -641,7 +641,7 @@ const idclass_t tvhlog_conf_class = { .name = N_("Debug log path"), /* Should this really be called Debug log path? Don't you need to * enter a filename here not just a path? */ - .desc = N_("Enter a filename for debug output."), + .desc = N_("Enter a filename you want to save the debug log to."), .get = tvhlog_class_path_get, .set = tvhlog_class_path_set, .group = 1,