You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

100 lines
3.0 KiB

  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License. You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. /*
  18. * $Id: Xlat_ICUResourceBundle.hpp 470094 2006-11-01 20:41:30Z amassari $
  19. */
  20. #ifndef ICU_RESBUND_FORMATTER_H
  21. #define ICU_RESBUND_FORMATTER_H
  22. class ICUResBundFormatter : public XlatFormatter
  23. {
  24. public :
  25. // -----------------------------------------------------------------------
  26. // Public Constructors and Destructor
  27. // -----------------------------------------------------------------------
  28. ICUResBundFormatter();
  29. virtual ~ICUResBundFormatter();
  30. // -----------------------------------------------------------------------
  31. // Implementation of the formatter interface
  32. // -----------------------------------------------------------------------
  33. virtual void endDomain
  34. (
  35. const XMLCh* const domainName
  36. , const unsigned int msgCount
  37. );
  38. virtual void endMsgType
  39. (
  40. const MsgTypes type
  41. );
  42. virtual void endOutput();
  43. virtual void nextMessage
  44. (
  45. const XMLCh* const msgText
  46. , const XMLCh* const msgId
  47. , const unsigned int messageId
  48. , const unsigned int curId
  49. );
  50. virtual void startDomain
  51. (
  52. const XMLCh* const domainName
  53. , const XMLCh* const nameSpace
  54. );
  55. virtual void startMsgType
  56. (
  57. const MsgTypes type
  58. );
  59. virtual void startOutput
  60. (
  61. const XMLCh* const locale
  62. , const XMLCh* const outPath
  63. );
  64. private :
  65. // -----------------------------------------------------------------------
  66. // Unimplemented constructors and operators
  67. // -----------------------------------------------------------------------
  68. ICUResBundFormatter(const ICUResBundFormatter&);
  69. void operator=(const ICUResBundFormatter&);
  70. // -----------------------------------------------------------------------
  71. // Private data members
  72. //
  73. // fOutFl
  74. // This is the current output file for the message catalog contents.
  75. //
  76. // fTranscoder
  77. // This is our transcoder. We transcode to the local code page in
  78. // order to output Unicode based text to the message catalog.
  79. // -----------------------------------------------------------------------
  80. FILE* fOutFl;
  81. XMLLCPTranscoder* fTranscoder;
  82. };
  83. #endif