49 lines
1.5 KiB
C++
49 lines
1.5 KiB
C++
// Copyright 2014 The PDFium Authors
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
|
|
|
#ifndef XFA_FGAS_CRT_LOCALE_IFACE_H_
|
|
#define XFA_FGAS_CRT_LOCALE_IFACE_H_
|
|
|
|
#include "core/fxcrt/widestring.h"
|
|
|
|
class LocaleIface {
|
|
public:
|
|
enum class DateTimeSubcategory {
|
|
kDefault,
|
|
kShort,
|
|
kMedium,
|
|
kFull,
|
|
kLong,
|
|
};
|
|
|
|
enum class NumSubcategory {
|
|
kPercent,
|
|
kCurrency,
|
|
kDecimal,
|
|
kInteger,
|
|
};
|
|
|
|
virtual ~LocaleIface() = default;
|
|
|
|
virtual WideString GetName() const = 0;
|
|
virtual WideString GetDecimalSymbol() const = 0;
|
|
virtual WideString GetGroupingSymbol() const = 0;
|
|
virtual WideString GetPercentSymbol() const = 0;
|
|
virtual WideString GetMinusSymbol() const = 0;
|
|
virtual WideString GetCurrencySymbol() const = 0;
|
|
virtual WideString GetDateTimeSymbols() const = 0;
|
|
virtual WideString GetMonthName(int32_t nMonth, bool bAbbr) const = 0;
|
|
virtual WideString GetDayName(int32_t nWeek, bool bAbbr) const = 0;
|
|
virtual WideString GetMeridiemName(bool bAM) const = 0;
|
|
virtual int GetTimeZoneInMinutes() const = 0;
|
|
virtual WideString GetEraName(bool bAD) const = 0;
|
|
virtual WideString GetDatePattern(DateTimeSubcategory eType) const = 0;
|
|
virtual WideString GetTimePattern(DateTimeSubcategory eType) const = 0;
|
|
virtual WideString GetNumPattern(NumSubcategory eType) const = 0;
|
|
};
|
|
|
|
#endif // XFA_FGAS_CRT_LOCALE_IFACE_H_
|