--- trunk/vfw/src/config.h 2002/03/08 02:46:11 3 +++ trunk/vfw/src/config.h 2002/03/23 06:58:56 61 @@ -5,6 +5,7 @@ HINSTANCE hInst; +HWND hTooltip; /* small hack */ @@ -17,9 +18,11 @@ /* registry stuff */ #define XVID_REG_KEY HKEY_CURRENT_USER -#define XVID_REG_SUBKEY "Software\\GNU\\XviD" +#define XVID_REG_PARENT "Software\\GNU" +#define XVID_REG_CHILD "XviD" #define XVID_REG_CLASS "config" +#define XVID_BUILD __TIME__ ", " __DATE__ #define XVID_WEBSITE "http://www.xvid.org" /* constants */ @@ -27,13 +30,14 @@ #define CONFIG_2PASS_2_FILE "\\videogk.stats" /* property sheets - sheets can be reordered here */ -#define DLG_COUNT 5 +#define DLG_COUNT 6 -#define DLG_MAIN 0 -#define DLG_ADV 1 -#define DLG_DEBUG 2 -#define DLG_CPU 3 -#define DLG_ABOUT 4 +#define DLG_GLOBAL 0 +#define DLG_QUANT 1 +#define DLG_2PASS 2 +#define DLG_2PASSALT 3 +#define DLG_CREDITS 4 +#define DLG_CPU 5 /* codec modes */ #define DLG_MODE_CBR 0 @@ -48,6 +52,7 @@ #define QUANT_MODE_H263 0 #define QUANT_MODE_MPEG 1 #define QUANT_MODE_CUSTOM 2 +#define QUANT_MODE_MOD 3 /* credits modes */ #define CREDITS_MODE_RATE 0 @@ -57,6 +62,8 @@ #define CREDITS_START 1 #define CREDITS_END 2 +#define RAD2DEG 57.295779513082320876798154814105 +#define DEG2RAD 0.017453292519943295769236907684886 typedef struct { @@ -64,24 +71,41 @@ int bitrate; int quality; int quant; + int rc_buffersize; - char stats1[MAX_PATH]; - char stats2[MAX_PATH]; - int discard1pass; - int dummy2pass; - int desired_size; + int motion_search; + int quant_type; + int fourcc_used; + int max_key_interval; + int lum_masking; int min_iquant; int max_iquant; + int min_pquant; + int max_pquant; + BYTE qmatrix_intra[64]; + BYTE qmatrix_inter[64]; + int desired_size; int keyframe_boost; int min_key_interval; - int bitrate_payback_delay; - int bitrate_payback_method; + int discard1pass; + int dummy2pass; int curve_compression_high; int curve_compression_low; - - float fquant; + int use_alt_curve; + int alt_curve_use_auto; + int alt_curve_auto_str; + int alt_curve_use_auto_bonus_bias; + int alt_curve_bonus_bias; + int alt_curve_type; + int alt_curve_high_dist; + int alt_curve_low_dist; + int alt_curve_min_rel_qual; + int bitrate_payback_delay; + int bitrate_payback_method; + char stats1[MAX_PATH]; + char stats2[MAX_PATH]; int credits_start; int credits_start_begin; @@ -97,49 +121,49 @@ int credits_start_size; int credits_end_size; - int motion_search; - int quant_type; - int max_key_interval; - - int rc_buffersize; - - int min_quant; - int max_quant; - int lum_masking; - - int fourcc_used; - - BYTE qmatrix_intra[64]; - BYTE qmatrix_inter[64]; - +// char build[50]; DWORD cpu; - + float fquant; BOOL save; - } CONFIG; - typedef struct PROPSHEETINFO { int page; CONFIG * config; } PROPSHEETINFO; +typedef struct REG_INT +{ + char* reg_value; + int* config_int; + int def; +} REG_INT; + +typedef struct REG_STR +{ + char* reg_value; + char* config_str; + char* def; +} REG_STR; void config_reg_get(CONFIG *); void config_reg_set(CONFIG *); -void config_mode(HWND); -void config_upload(HWND, int, CONFIG *); -void config_download(HWND, int, CONFIG *); -void config_slider(HWND, CONFIG *); -void config_value(HWND, CONFIG *); +void config_reg_default(CONFIG *); int config_get_int(HWND, UINT, int); -void credits_controls(HWND); +void main_download(HWND, CONFIG *); +void main_slider(HWND, CONFIG *); +void main_value(HWND, CONFIG *); +void adv_dialog(HWND, CONFIG *); +void adv_mode(HWND, int); +void adv_upload(HWND, int, CONFIG *); +void adv_download(HWND, int, CONFIG *); void quant_upload(HWND, CONFIG *); void quant_download(HWND, CONFIG *); -BOOL CALLBACK config_proc(HWND, UINT, WPARAM, LPARAM); -BOOL CALLBACK credits_proc(HWND, UINT, WPARAM, LPARAM); -BOOL CALLBACK twopass_proc(HWND, UINT, WPARAM, LPARAM); +BOOL CALLBACK enum_tooltips(HWND, LPARAM); +BOOL CALLBACK main_proc(HWND, UINT, WPARAM, LPARAM); +BOOL CALLBACK adv_proc(HWND, UINT, WPARAM, LPARAM); BOOL CALLBACK quantmatrix_proc(HWND, UINT, WPARAM, LPARAM); +BOOL CALLBACK about_proc(HWND, UINT, WPARAM, LPARAM); #endif /* _CONFIG_H_ */ \ No newline at end of file