home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2004 March / PCWELT_3_2004.ISO / pcwsoft / flaskmpeg_078_39_src.z.exe / flaskmpeg / Language.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-10-28  |  8.3 KB  |  247 lines

  1. /* 
  2.  *  language.h
  3.  *
  4.  *    Copyright (C) Alberto Vigata - January 2000 - ultraflask@yahoo.com
  5.  *
  6.  *  This file is part of FlasKMPEG, a free MPEG to MPEG/AVI converter
  7.  *    
  8.  *  FlasKMPEG is free software; you can redistribute it and/or modify
  9.  *  it under the terms of the GNU General Public License as published by
  10.  *  the Free Software Foundation; either version 2, or (at your option)
  11.  *  any later version.
  12.  *   
  13.  *  FlasKMPEG is distributed in the hope that it will be useful,
  14.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16.  *  GNU General Public License for more details.
  17.  *   
  18.  *  You should have received a copy of the GNU General Public License
  19.  *  along with GNU Make; see the file COPYING.  If not, write to
  20.  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 
  21.  *
  22.  */
  23.  
  24. #if !defined(AFX_LANGUAGE_H__205B0701_EB94_11D3_816D_00000100CF13__INCLUDED_)
  25. #define AFX_LANGUAGE_H__205B0701_EB94_11D3_816D_00000100CF13__INCLUDED_
  26.  
  27. #if _MSC_VER > 1000
  28. #pragma once
  29. #endif // _MSC_VER > 1000
  30.  
  31. #include <stdio.h>
  32. #define MAX_LANGUAGES 32
  33. #define MAX_STRINGS   4096
  34. #define GS(x) ( strcmp(rs.lng->GetString(x),"") ? rs.lng->GetString(x) : NULL )
  35. ///////////////////////////////////////////////////////////////////////
  36. //   LANGUAGE DEFAULTS
  37. ///////////////////////////////////////////////////////////////////////
  38.  
  39. #define APPTITLE        3
  40. #define MENU_FILE       100
  41.     #define MENU_OPEN              101
  42.     #define MENU_OPENDVDFILE       103
  43.     #define MENU_EXIT              102
  44.  
  45. #define MENU_PROFILES   130
  46.  
  47. #define MENU_OPTIONS    110
  48.     #define MENU_OUTPUTFORMAT       111
  49.     #define MENU_OUTOPTIONS         112
  50.     #define MENU_SELECTOUT          113
  51.     #define MENU_LANGUAGE           114
  52.  
  53. #define MENU_RUN  120
  54.     #define MENU_PLAYER       121
  55.     #define MENU_STARTCONV    122
  56.  
  57.  
  58. #define MENU_ABOUT        123
  59. // OPTIONS
  60. #define OPT_OK           200
  61. #define OPT_CANCEL       201
  62. #define OPT_SHOWPAD      202
  63. #define OPT_SHOWPAD_EXP  199
  64. #define OPT_TITLE        203
  65. #define OPT_VIDEO        204
  66. #define OPT_AUDIO        205
  67. #define OPT_PPOST        206
  68. #define OPT_FILES        207
  69. #define OPT_GENERAL      208
  70.  
  71. #define OPT_FRAMESIZE      209
  72. #define OPT_WIDTH          210
  73. #define OPT_HEIGHT         211
  74. #define OPT_FRAMESIZE_EXP  212
  75. #define OPT_OUTPAD_EXP     213
  76.  
  77. #define OPT_TIMEBASE       214
  78. #define OPT_TIMEBASE_EXP   215
  79.  
  80. #define OPT_IDCT_TITLE     216
  81. #define OPT_IDCT_EXP       217
  82. #define OPT_IDCT_MMX       218
  83. #define OPT_IDCT_NONMMX    219
  84. #define OPT_IDCT_REF       220
  85.  
  86. #define OPT_VIDEO_NOTE     221
  87.  
  88. //AUDIO
  89. #define OPT_AUDIO_AUDIOMODE_EXP 240
  90. #define OPT_AUDIO_AUDIOMODE     241
  91. #define OPT_AUDIO_DSC           242
  92. #define OPT_AUDIO_DOAUDIO       243
  93. #define OPT_AUDIO_NOAUDIO       244
  94. #define OPT_AUDIO_DSC_EXP       245
  95. #define OPT_AUDIO_DOAUDIO_EXP   246
  96. #define OPT_AUDIO_NOAUDIO_EXP   247
  97. #define OPT_AUDIO_SAMPLING_EXP  248
  98.  
  99. #define OPT_AUDIO_SAMPLING_TITLE 250
  100. #define OPT_AUDIO_SAMPLING_SAMEASINPUT 251
  101. #define OPT_AUDIO_SAMPLING_SAMEASINPUT_EXP 252
  102. #define OPT_AUDIO_TAB 253
  103.  
  104. // OUTPUT PAD
  105. #define OUTPUT_PAD_TITLE        300
  106. #define OUTPUT_PAD_HIDE         301
  107. #define OUTPUT_PAD_OUTPUTSIZE   302
  108. #define OUTPUT_PAD_RESET        303
  109. #define OUTPUT_PAD_CROP         304
  110. #define OUTPUT_PAD_LETTERBOX    305
  111.  
  112. // ABOUT
  113. #define ABOUT_TITLE                310
  114.  
  115. // GENERAL STRINGS
  116. #define WARN_OVERWRITE          400
  117. #define WARNING                 401
  118.   // FILE STREAM SELECTOR
  119. #define FST_TITLE               402
  120. #define FST_LATERAL             403
  121. #define FST_BUTTON              404
  122. #define FST_VIDEOFOUND          405
  123. #define FST_AUDIOFOUND          406
  124. #define FST_AUDIOTRACK          407
  125. #define FST_MAINTRACK           408
  126. #define FST_VIDEOTRACK          409
  127.  
  128.  
  129.    // ERRORs
  130. #define SIZE_OOR                    410
  131. #define SIZE_NOT16                    411
  132. #define    TIME_IS_NOT_POSITIVE        412
  133. #define    TC_LARGER_THAN_HEIGHT        413
  134. #define    BC_LARGER_THAN_HEIGHT        414
  135. #define INCORRECT_SETTING           415
  136. #define UNS_FILE_OPEN               416
  137. #define NO_VIDEO_TRACK              417
  138. #define ERROR_PLUGIN                418
  139. #define IFO_PARSING_ERROR           419
  140. #define ERROR_COMPILE               450
  141.  
  142.   // DVD STREAM SELECTOR
  143. #define DVS_TITLE               420
  144. #define DVS_LATERAL             421
  145. #define DVS_BUTTON              422
  146. #define DVS_PGCSFOUND           423
  147. #define DVS_AUDIOFOUND          424
  148. #define DVS_DURATION            425
  149. #define DVS_SUBPICFOUND         426
  150. #define DVS_ANGLE               427
  151.  
  152.    // STATS
  153. #define LANG_STATS_PIXELS       500
  154. #define LANG_STATS_PROGRESSIVE  501
  155. #define LANG_STATS_INTERLACED   502
  156.  
  157.  
  158. #ifdef LANGUAGE_MODULE
  159.     char *ds[MAX_STRINGS];
  160.  
  161.     void LoadDefaultStrings()
  162.     {
  163.         int i;
  164.         for(i=0; i<MAX_STRINGS; i++)
  165.             ds[i]=NULL;
  166.  
  167.         ds[APPTITLE]                 = "FlasKMPEG";
  168.         ds[MENU_FILE]                = "&File";
  169.             ds[MENU_OPEN]            = "&Open Media";
  170.             ds[MENU_OPENDVDFILE]     = "Open &DVD File";
  171.             ds[MENU_EXIT]            = "&Exit";
  172.         ds[MENU_OPTIONS]             = "&Options";
  173.             ds[MENU_OUTPUTFORMAT]    = "&Output Format Options";
  174.             ds[MENU_OUTOPTIONS]      = "&Advanced Options";
  175.             ds[MENU_SELECTOUT]       = "&Select Output Format";
  176.         ds[MENU_RUN]                 = "&Run";
  177.             ds[MENU_PLAYER]          = "&Control Panel";
  178.             ds[MENU_STARTCONV]       = "&Start Conversion";
  179.         ds[MENU_ABOUT]               = "&About";
  180.  
  181.         ds[WARN_OVERWRITE]           = "An output file is going to be overwritten. Should I continue?";
  182.         ds[WARNING]                  = "FlasKMPEG Warning";
  183.  
  184.         ds[FST_TITLE]                = "FlasKMPEG Stream Selector";
  185.         ds[FST_LATERAL]              = "One or more audio or video tracks were found in the input file. Select the desired ones";
  186.         ds[FST_BUTTON]                = "FlasK it!";
  187.         ds[FST_VIDEOFOUND]                = "Video Streams found";
  188.         ds[FST_AUDIOFOUND]                = "Audio Streams found";
  189.         ds[FST_AUDIOTRACK]                = "audio track";
  190.         ds[FST_MAINTRACK]                 = "inside main track";
  191.         ds[FST_VIDEOTRACK]                = "video track";
  192.  
  193.         ds[DVS_TITLE]                = "FlasKMPEG DVD Selector";
  194.         ds[DVS_LATERAL]              = "Select DVD titles, audio tracks and subtitles.\n\n If you don't want subtitles, deselect all of them";
  195.         ds[DVS_BUTTON]                = "FlasK this DVD!";
  196.         ds[DVS_PGCSFOUND]                = "DVD titles";
  197.         ds[DVS_AUDIOFOUND]                = "DVD Audio tracks";
  198.         ds[DVS_DURATION]                = "Duration";
  199.         ds[DVS_SUBPICFOUND]             = "DVD subtitles";
  200.         ds[DVS_ANGLE]                = "angle";
  201.  
  202. ds[SIZE_OOR]                = "Size is out of range. Try another value",
  203. ds[SIZE_NOT16]                = "The number is not divisible by 16",
  204. ds[TIME_IS_NOT_POSITIVE]    = "The Time you entered is invalid",
  205. ds[TC_LARGER_THAN_HEIGHT]    = "Top crop is larger than image height",
  206. ds[BC_LARGER_THAN_HEIGHT]    = "Bottop crop is larger than image height",
  207. ds[INCORRECT_SETTING]        = "This setting is invalid. Read the docs for correct settings",
  208. ds[UNS_FILE_OPEN]            = "An error ocurred when opening the file",
  209. ds[NO_VIDEO_TRACK]            = "No video track was found in the input file. At least one video track is mandatory.";
  210. ds[ERROR_PLUGIN]            = "There was a problem loading the plugins.\nNo output plugins were found. Please, check the installation\n and read the manual\n\n   Program will exit";
  211. ds[IFO_PARSING_ERROR]        = "There was a problem while parsing the IFO file. \nRead the documentation for its posible causes.";
  212. ds[ERROR_COMPILE]            = "An error ocurred when trying to generate the file.\n Check that you're not using the output file or the program is\n setup correctly.";
  213.  
  214.  
  215.  
  216. // Stats
  217.  
  218. ds[LANG_STATS_PIXELS]       = "Pixels";
  219. ds[LANG_STATS_PROGRESSIVE]  = "Progressive";
  220. ds[LANG_STATS_INTERLACED]   = "Interlaced";
  221.  
  222.         
  223.     }
  224. #endif
  225.  
  226. class CLanguage  
  227. {
  228. public:
  229.     int ReadLanguage(int language);
  230.     char * GetString(int str_id);
  231.     int SetLanguage( int n_lang );
  232.     int GetLanguage();
  233.     char * GetLanguageID();
  234.     int GetNumberLang();
  235.     int Start();
  236.     CLanguage(char *program_directory);
  237.     virtual ~CLanguage();
  238.  
  239. private:
  240.     char program_directory[MAX_PATH];
  241.     int  selected_language;
  242.     int  n_lang;
  243.     int GetStrings( FILE *file);
  244. };
  245.  
  246. #endif // !defined(AFX_LANGUAGE_H__205B0701_EB94_11D3_816D_00000100CF13__INCLUDED_)
  247.