Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Tooltips: A bucket more..
  • Loading branch information
Mark Clarkstone authored and perexg committed Jan 27, 2016
1 parent 4fdd552 commit fd9729c
Show file tree
Hide file tree
Showing 5 changed files with 117 additions and 13 deletions.
4 changes: 2 additions & 2 deletions src/dvr/dvr_autorec.c
Expand Up @@ -1147,7 +1147,7 @@ const idclass_t dvr_autorec_entry_class = {
.type = PT_U32,
.id = "retention",
.name = N_("DVR log retention"),
.desc = N_("Number of days to retain logging information."),
.desc = N_("Number of days to retain infomation about recording."),
.def.i = DVR_RET_DVRCONFIG,
.off = offsetof(dvr_autorec_entry_t, dae_retention),
.list = dvr_entry_class_retention_list,
Expand All @@ -1157,7 +1157,7 @@ const idclass_t dvr_autorec_entry_class = {
.type = PT_U32,
.id = "removal",
.name = N_("DVR file retention period"),
.desc = N_("Number of days to keep the recordings` file."),
.desc = N_("Number of days to keep the recorded file."),
.def.i = DVR_RET_DVRCONFIG,
.off = offsetof(dvr_autorec_entry_t, dae_removal),
.list = dvr_entry_class_removal_list,
Expand Down
91 changes: 88 additions & 3 deletions src/dvr/dvr_config.c
Expand Up @@ -826,6 +826,7 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "enabled",
.name = N_("Enabled"),
.desc = N_("Enable/disable profile."),
.set = dvr_config_class_enabled_set,
.off = offsetof(dvr_config_t, dvr_enabled),
.def.i = 1,
Expand All @@ -836,6 +837,7 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "name",
.name = N_("Configuration name"),
.desc = N_("Name of the profile."),
.set = dvr_config_class_name_set,
.off = offsetof(dvr_config_t, dvr_config_name),
.def.s = "! New config",
Expand All @@ -846,13 +848,16 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "comment",
.name = N_("Comment"),
.desc = N_("Free-form field, enter whatever you like here."),
.off = offsetof(dvr_config_t, dvr_comment),
.group = 1,
},
{
.type = PT_STR,
.id = "profile",
.name = N_("Stream profile"),
.desc = N_("The stream profile the DVR profile will use for "
"recordings."),
.set = dvr_config_class_profile_set,
.get = dvr_config_class_profile_get,
.rend = dvr_config_class_profile_rend,
Expand All @@ -863,6 +868,9 @@ const idclass_t dvr_config_class = {
.type = PT_INT,
.id = "cache",
.name = N_("Cache scheme"),
.desc = N_("Select the cache scheme used to store recordings. "
"Leave as “system” unless you have a special use "
"case for one of the others. See Help for details."),
.off = offsetof(dvr_config_t, dvr_muxcnf.m_cache),
.def.i = MC_CACHE_DONTKEEP,
.list = dvr_config_class_cache_list,
Expand All @@ -873,6 +881,7 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "retention-days",
.name = N_("DVR log retention period"),
.desc = N_("Number of days to retain infomation about recordings."),
.off = offsetof(dvr_config_t, dvr_retention_days),
.def.u32 = DVR_RET_ONREMOVE,
.list = dvr_config_class_retention_list,
Expand All @@ -883,6 +892,7 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "removal-days",
.name = N_("DVR file retention period"),
.desc = N_("Number of days to keep the recorded files."),
.off = offsetof(dvr_config_t, dvr_removal_days),
.def.u32 = DVR_RET_FOREVER,
.list = dvr_config_class_removal_list,
Expand All @@ -892,6 +902,8 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "clone",
.name = N_("Clone scheduled entry on error"),
.desc = N_("If an error occurs clone the scheduled entry and "
"try to record again if possible."),
.off = offsetof(dvr_config_t, dvr_clone),
.opts = PO_ADVANCED,
.def.u32 = 1,
Expand All @@ -901,6 +913,8 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "rerecord-errors",
.name = N_("Schedule a re-recording if more errors than (0=off)"),
.desc = N_("If more than x errors occur during a recording "
"schedule a re-record if possible."),
.off = offsetof(dvr_config_t, dvr_rerecord_errors),
.opts = PO_ADVANCED,
.group = 1,
Expand All @@ -909,6 +923,10 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "warm-time",
.name = N_("Extra warming up time (seconds)"),
.desc = N_("Additional time (in seconds) in which to get "
"the tuner ready for recording. This is useful for "
"those with tuners that take some time to tune "
"and/or send garbage data at the beginning. "),
.off = offsetof(dvr_config_t, dvr_warm_time),
.opts = PO_ADVANCED,
.group = 1,
Expand All @@ -917,7 +935,14 @@ const idclass_t dvr_config_class = {
{
.type = PT_U32,
.id = "pre-extra-time",
.name = N_("Extra padding before recordings (minutes)"),
.name = N_("Pre-recording padding"),
.desc = N_("Start recording earlier than the 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 "
"channel or DVR entry will be used."),
.off = offsetof(dvr_config_t, dvr_extra_time_pre),
.list = dvr_config_class_extra_list,
.opts = PO_ADVANCED,
Expand All @@ -926,7 +951,9 @@ const idclass_t dvr_config_class = {
{
.type = PT_U32,
.id = "post-extra-time",
.name = N_("Extra padding after recordings (minutes)"),
.name = N_("Post-recording padding"),
.desc = N_("Continue recording for x minutes after scheduled "
"stop time."),
.off = offsetof(dvr_config_t, dvr_extra_time_post),
.list = dvr_config_class_extra_list,
.opts = PO_ADVANCED,
Expand All @@ -936,6 +963,8 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "epg-update-window",
.name = N_("EPG update window"),
.desc = N_("Maximum allowed difference between event start time when "
"the EPG event is changed."),
.off = offsetof(dvr_config_t, dvr_update_window),
.list = dvr_config_entry_class_update_window_list,
.def.u32 = 24*3600,
Expand All @@ -946,7 +975,10 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "epg-running",
.name = N_("Use EPG running state"),
.desc = N_("Use EITp/f to decide event start / stop"),
.desc = N_("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(dvr_config_t, dvr_running),
.opts = PO_ADVANCED,
.def.u32 = 1,
Expand All @@ -956,6 +988,7 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "autorec-maxcount",
.name = N_("Autorec maximum count (0=unlimited)"),
.desc = N_("The maximum number of entries that can be matched."),
.off = offsetof(dvr_config_t, dvr_autorec_max_count),
.opts = PO_ADVANCED,
.group = 1,
Expand All @@ -964,6 +997,7 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "autorec-maxsched",
.name = N_("Autorec maximum schedules limit (0=unlimited)"),
.desc = N_("The maximum number of recordings that can be scheduled."),
.off = offsetof(dvr_config_t, dvr_autorec_max_sched_count),
.opts = PO_ADVANCED,
.group = 1,
Expand All @@ -972,6 +1006,7 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "postproc",
.name = N_("Post-processor command"),
.desc = N_("Script/program to be run when a recording completes."),
.off = offsetof(dvr_config_t, dvr_postproc),
.opts = PO_ADVANCED,
.group = 1,
Expand All @@ -980,6 +1015,7 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "postremove",
.name = N_("Post-remove command"),
.desc = N_("Script/program to be run when a recording gets removed."),
.off = offsetof(dvr_config_t, dvr_postremove),
.opts = PO_EXPERT,
.group = 1,
Expand All @@ -988,13 +1024,17 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "storage",
.name = N_("Recording system path"),
.desc = N_("Path where the recordings are stored. If "
"components of the path do not exist, "
"Tvheadend will try to create them."),
.off = offsetof(dvr_config_t, dvr_storage),
.group = 2,
},
{
.type = PT_U32,
.id = "storage-mfree",
.name = N_("Maintain free storage space in MiB"),
.desc = N_("Keep x amount of storage space free."),
.off = offsetof(dvr_config_t, dvr_cleanup_threshold_free),
.def.i = 1000,
.opts = PO_ADVANCED,
Expand All @@ -1004,6 +1044,7 @@ const idclass_t dvr_config_class = {
.type = PT_U32,
.id = "storage-mused",
.name = N_("Maintain used storage space in MiB (0=disabled)"),
.desc = N_("Use x amount of storage space."),
.off = offsetof(dvr_config_t, dvr_cleanup_threshold_used),
.def.i = 0,
.opts = PO_EXPERT,
Expand All @@ -1013,6 +1054,7 @@ const idclass_t dvr_config_class = {
.type = PT_PERM,
.id = "file-permissions",
.name = N_("File permissions (octal, e.g. 0664)"),
.desc = N_("Create files using these permissions."),
.off = offsetof(dvr_config_t, dvr_muxcnf.m_file_permissions),
.opts = PO_EXPERT,
.def.u32 = 0664,
Expand All @@ -1022,6 +1064,7 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "charset",
.name = N_("Filename character set"),
.desc = N_("Use this character set when setting filenames."),
.off = offsetof(dvr_config_t, dvr_charset),
.set = dvr_config_class_charset_set,
.list = dvr_config_class_charset_list,
Expand All @@ -1033,6 +1076,8 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "tag-files",
.name = N_("Tag files with metadata"),
.desc = N_("Create tags in recordings using media containers "
"that support metadata (if possible)."),
.off = offsetof(dvr_config_t, dvr_tag_files),
.opts = PO_ADVANCED,
.def.i = 1,
Expand All @@ -1042,6 +1087,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "skip-commercials",
.name = N_("Skip commercials"),
.desc = N_("Commercials will be dropped from the "
"recordings. At the moment, commercial detection "
"only works for the Swedish channel TV4."),
.off = offsetof(dvr_config_t, dvr_skip_commercials),
.opts = PO_ADVANCED,
.def.i = 1,
Expand All @@ -1051,6 +1099,9 @@ const idclass_t dvr_config_class = {
.type = PT_STR,
.id = "pathname",
.name = N_("Format string"),
.desc = N_("The string allows you to manually specify the "
"full path generation using predefined "
"modifiers. See Help for full details."),
.set = dvr_config_class_pathname_set,
.off = offsetof(dvr_config_t, dvr_pathname),
.opts = PO_EXPERT,
Expand All @@ -1060,6 +1111,7 @@ const idclass_t dvr_config_class = {
.type = PT_PERM,
.id = "directory-permissions",
.name = N_("Directory permissions (octal, e.g. 0775)"),
.desc = N_("Create directories using these permissions."),
.off = offsetof(dvr_config_t, dvr_muxcnf.m_directory_permissions),
.opts = PO_EXPERT,
.def.u32 = 0775,
Expand All @@ -1069,6 +1121,10 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "day-dir",
.name = N_("Make subdirectories per day"),
.desc = N_("Create a new directory per day in the "
"recording system path. Only days when anything is "
"recorded will the folder be created. The format of the "
"directory will be ISO standard YYYY-MM-DD."),
.off = offsetof(dvr_config_t, dvr_dir_per_day),
.opts = PO_EXPERT,
.group = 4,
Expand All @@ -1077,6 +1133,10 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "channel-dir",
.name = N_("Make subdirectories per channel"),
.desc = N_("Create a directory per channel when "
"storing recordings. If both this and the ‘directory "
"per day’ checkbox is enabled, the date-directory "
"will be parent to the per-channel directory."),
.off = offsetof(dvr_config_t, dvr_channel_dir),
.opts = PO_EXPERT,
.group = 4,
Expand All @@ -1085,6 +1145,10 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "title-dir",
.name = N_("Make subdirectories per title"),
.desc = N_("Create a directory per title when "
"storing recordings. If the day/channel directory "
"checkboxes are also enabled, those directories "
"will be parents of this directory."),
.off = offsetof(dvr_config_t, dvr_title_dir),
.opts = PO_EXPERT,
.group = 4,
Expand All @@ -1093,6 +1157,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "channel-in-title",
.name = N_("Include channel name in filename"),
.desc = N_("Include the name of the channel in "
"the event title. This applies to both the title "
"stored in the file and to the filename itself."),
.off = offsetof(dvr_config_t, dvr_channel_in_title),
.opts = PO_EXPERT,
.group = 5,
Expand All @@ -1101,6 +1168,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "date-in-title",
.name = N_("Include date in filename"),
.desc = N_("Include the date for the recording in "
"the event title. This applies to both the title "
"stored in the file and to the filename itself."),
.off = offsetof(dvr_config_t, dvr_date_in_title),
.opts = PO_EXPERT,
.group = 5,
Expand All @@ -1109,6 +1179,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "time-in-title",
.name = N_("Include time in filename"),
.desc = N_("Include the time for the recording in "
"the event title. This applies to both the title "
"stored in the file and to the filename itself."),
.off = offsetof(dvr_config_t, dvr_time_in_title),
.opts = PO_EXPERT,
.group = 5,
Expand All @@ -1117,6 +1190,8 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "episode-in-title",
.name = N_("Include episode in filename"),
.desc = N_("Include the season and episode in the "
"title (if available)."),
.off = offsetof(dvr_config_t, dvr_episode_in_title),
.opts = PO_EXPERT,
.group = 5,
Expand All @@ -1125,6 +1200,8 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "subtitle-in-title",
.name = N_("Include subtitle in filename"),
.desc = N_("Include the episode subtitle in the "
"title (if available)."),
.off = offsetof(dvr_config_t, dvr_subtitle_in_title),
.opts = PO_EXPERT,
.group = 6,
Expand All @@ -1133,6 +1210,7 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "omit-title",
.name = N_("Don't include title in filename"),
.desc = N_("Don`t include the title in the filename."),
.off = offsetof(dvr_config_t, dvr_omit_title),
.opts = PO_EXPERT,
.group = 6,
Expand All @@ -1141,6 +1219,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "clean-title",
.name = N_("Remove all unsafe characters from filename"),
.desc = N_("All characters that could possibly "
"cause problems for filenaming will be replaced "
"with an underscore. See Help for details."),
.off = offsetof(dvr_config_t, dvr_clean_title),
.opts = PO_EXPERT,
.group = 6,
Expand All @@ -1149,6 +1230,7 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "whitespace-in-title",
.name = N_("Replace whitespace in title with '-'"),
.desc = N_("Replaces all whitespace in the title with '-'."),
.off = offsetof(dvr_config_t, dvr_whitespace_in_title),
.opts = PO_EXPERT,
.group = 6,
Expand All @@ -1157,6 +1239,9 @@ const idclass_t dvr_config_class = {
.type = PT_BOOL,
.id = "windows-compatible-filenames",
.name = N_("Use Windows-compatible filenames"),
.desc = N_("Characters not supported in Windows filenames "
"(e.g. for an SMB/CIFS share) will be stripped out "
"or converted."),
.off = offsetof(dvr_config_t, dvr_windows_compatible_filenames),
.opts = PO_EXPERT,
.group = 6,
Expand Down

0 comments on commit fd9729c

Please sign in to comment.