mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
1e607ae98d
The previous patch (Planner: add best mix EAD preference) used the term EAD (equivalent air depth) in variable names and strings, when it should have been END (equivalent narcotic depth). They're not the same thing and shouldn't be confused. Signed-off-by: Rick Walsh <rickmwalsh@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
173 lines
3.6 KiB
C
173 lines
3.6 KiB
C
#ifndef PREF_H
|
|
#define PREF_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "units.h"
|
|
#include "taxonomy.h"
|
|
|
|
/* can't use 'bool' for the boolean values - different size in C and C++ */
|
|
typedef struct
|
|
{
|
|
short po2;
|
|
short pn2;
|
|
short phe;
|
|
double po2_threshold;
|
|
double pn2_threshold;
|
|
double phe_threshold;
|
|
} partial_pressure_graphs_t;
|
|
|
|
typedef struct {
|
|
char *access_token;
|
|
char *user_id;
|
|
char *album_id;
|
|
} facebook_prefs_t;
|
|
|
|
typedef struct {
|
|
bool enable_geocoding;
|
|
bool parse_dive_without_gps;
|
|
bool tag_existing_dives;
|
|
enum taxonomy_category category[3];
|
|
} geocoding_prefs_t;
|
|
|
|
typedef struct {
|
|
const char *language;
|
|
bool use_system_language;
|
|
} locale_prefs_t;
|
|
|
|
enum deco_mode {
|
|
BUEHLMANN,
|
|
RECREATIONAL,
|
|
VPMB
|
|
};
|
|
|
|
struct preferences {
|
|
const char *divelist_font;
|
|
const char *default_filename;
|
|
const char *default_cylinder;
|
|
const char *cloud_base_url;
|
|
const char *cloud_git_url;
|
|
const char *time_format;
|
|
const char *date_format;
|
|
const char *date_format_short;
|
|
bool time_format_override;
|
|
bool date_format_override;
|
|
double font_size;
|
|
partial_pressure_graphs_t pp_graphs;
|
|
short mod;
|
|
double modpO2;
|
|
short ead;
|
|
short dcceiling;
|
|
short redceiling;
|
|
short calcceiling;
|
|
short calcceiling3m;
|
|
short calcalltissues;
|
|
short calcndltts;
|
|
short gflow;
|
|
short gfhigh;
|
|
int animation_speed;
|
|
bool gf_low_at_maxdepth;
|
|
bool show_ccr_setpoint;
|
|
bool show_ccr_sensors;
|
|
short display_invalid_dives;
|
|
short unit_system;
|
|
struct units units;
|
|
bool coordinates_traditional;
|
|
short show_sac;
|
|
short display_unused_tanks;
|
|
short show_average_depth;
|
|
short zoomed_plot;
|
|
short hrgraph;
|
|
short percentagegraph;
|
|
short rulergraph;
|
|
short tankbar;
|
|
short save_userid_local;
|
|
char *userid;
|
|
int ascrate75; // All rates in mm / sec
|
|
int ascrate50;
|
|
int ascratestops;
|
|
int ascratelast6m;
|
|
int descrate;
|
|
int bottompo2;
|
|
int decopo2;
|
|
int bestmixend;
|
|
int proxy_type;
|
|
char *proxy_host;
|
|
int proxy_port;
|
|
short proxy_auth;
|
|
char *proxy_user;
|
|
char *proxy_pass;
|
|
bool doo2breaks;
|
|
bool drop_stone_mode;
|
|
bool last_stop; // At 6m?
|
|
bool verbatim_plan;
|
|
bool display_runtime;
|
|
bool display_duration;
|
|
bool display_transitions;
|
|
bool safetystop;
|
|
bool switch_at_req_stop;
|
|
int reserve_gas;
|
|
int min_switch_duration; // seconds
|
|
int bottomsac;
|
|
int decosac;
|
|
int o2consumption; // ml per min
|
|
int pscr_ratio; // dump ratio times 1000
|
|
int defaultsetpoint; // default setpoint in mbar
|
|
bool show_pictures_in_profile;
|
|
bool use_default_file;
|
|
short default_file_behavior;
|
|
facebook_prefs_t facebook;
|
|
char *cloud_storage_password;
|
|
char *cloud_storage_newpassword;
|
|
char *cloud_storage_email;
|
|
char *cloud_storage_email_encoded;
|
|
bool save_password_local;
|
|
short cloud_verification_status;
|
|
bool cloud_background_sync;
|
|
geocoding_prefs_t geocoding;
|
|
enum deco_mode deco_mode;
|
|
short conservatism_level;
|
|
int time_threshold;
|
|
int distance_threshold;
|
|
bool git_local_only;
|
|
locale_prefs_t locale; //: TODO: move the rest of locale based info here.
|
|
};
|
|
enum unit_system_values {
|
|
METRIC,
|
|
IMPERIAL,
|
|
PERSONALIZE
|
|
};
|
|
|
|
enum def_file_behavior {
|
|
UNDEFINED_DEFAULT_FILE,
|
|
LOCAL_DEFAULT_FILE,
|
|
NO_DEFAULT_FILE,
|
|
CLOUD_DEFAULT_FILE
|
|
};
|
|
|
|
enum cloud_status {
|
|
CS_UNKNOWN,
|
|
CS_INCORRECT_USER_PASSWD,
|
|
CS_NEED_TO_VERIFY,
|
|
CS_VERIFIED
|
|
};
|
|
|
|
extern struct preferences prefs, default_prefs, informational_prefs;
|
|
|
|
#define PP_GRAPHS_ENABLED (prefs.pp_graphs.po2 || prefs.pp_graphs.pn2 || prefs.pp_graphs.phe)
|
|
|
|
extern const char *system_divelist_default_font;
|
|
extern double system_divelist_default_font_size;
|
|
|
|
extern const char *system_default_directory(void);
|
|
extern const char *system_default_filename();
|
|
extern bool subsurface_ignore_font(const char *font);
|
|
extern void subsurface_OS_pref_setup();
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // PREF_H
|