using namespace Tizen;
using namespace Tizen::Base;
using namespace Tizen::Base::Collection;
+using namespace Tizen::Base::Utility;
using namespace Tizen::Base::Runtime;
using namespace Tizen::Graphics;
using namespace Tizen::Social;
__pDateFormatter = ResourceManager::CreateDateFormatterN(Locales::DATE_TIME_STYLE_FULL);
String pattern = __pDateFormatter->GetPattern();
- int startIndex = -1;
- int endIndex = -1;
- pattern.IndexOf(L"E", 0, startIndex);
- pattern.IndexOf(L" ", startIndex, endIndex);
- if (endIndex > 0)
- {
- pattern.Remove(startIndex, endIndex - startIndex + 1);
- }
- else
- {
- pattern.Remove(startIndex, pattern.GetLength() - startIndex);
- }
- startIndex = -1;
- endIndex = -1;
- pattern.IndexOf(L"d", 0, startIndex);
- pattern.IndexOf(L" ", startIndex, endIndex);
- if (endIndex > 0)
- {
- pattern.Remove(startIndex, endIndex - startIndex + 1);
- }
- else
- {
- pattern.Remove(startIndex, pattern.GetLength() - startIndex);
- }
__pMonthFormatter = ResourceManager::CreateDateFormatterN(Locales::DATE_TIME_STYLE_NONE);
- __pMonthFormatter->ApplyPattern(pattern);
+ __pMonthFormatter->ApplyPattern(GetMonthFormatterPattern(pattern));
- startIndex = -1;
- endIndex = -1;
- pattern.IndexOf(L"y", 0, startIndex);
- pattern.IndexOf(L" ", startIndex, endIndex);
- if (endIndex > 0)
- {
- pattern.Remove(endIndex, pattern.GetLength() - endIndex);
- }
- else
- {
- pattern.Remove(0, startIndex);
- }
__pYearFormatter = ResourceManager::CreateDateFormatterN(Locales::DATE_TIME_STYLE_NONE);
- __pYearFormatter->ApplyPattern(pattern);
+ __pYearFormatter->ApplyPattern(GetYearFormatterPattern(pattern));
__pTimeFormatter = ResourceManager::CreateTimeFormatterN();
}
}
+const String
+EventListPresentationModel::GetMonthFormatterPattern(const String& fullDatePattern) const
+{
+ String pattern;
+ StringTokenizer tokenizer(fullDatePattern);
+ bool addPattern = false;
+ while (tokenizer.HasMoreTokens() == true)
+ {
+ String token;
+ tokenizer.GetNextToken(token);
+ if (token.StartsWith(L"M", 0) == true || token.StartsWith(L"y", 0) == true)
+ {
+ if (pattern.IsEmpty() == true)
+ {
+ pattern = token;
+ }
+ else
+ {
+ pattern.Append(L" ");
+ pattern.Append(token);
+ }
+ addPattern = true;
+ }
+ else if (token.StartsWith(L"E", 0) == true || token.StartsWith(L"d", 0) == true)
+ {
+ addPattern = false;
+ }
+ else if (addPattern == true)
+ {
+ pattern.Append(L" ");
+ pattern.Append(token);
+ }
+ }
+ return pattern;
+}
+
+const String
+EventListPresentationModel::GetYearFormatterPattern(const String& fullDatePattern) const
+{
+ String pattern;
+ StringTokenizer tokenizer(fullDatePattern);
+ bool addPattern = false;
+ while (tokenizer.HasMoreTokens() == true)
+ {
+ String token;
+ tokenizer.GetNextToken(token);
+ if (token.StartsWith(L"y", 0) == true)
+ {
+ if (pattern.IsEmpty() == true)
+ {
+ pattern = token;
+ }
+ else
+ {
+ pattern.Append(L" ");
+ pattern.Append(token);
+ }
+ addPattern = true;
+ }
+ else if (token.StartsWith(L"M", 0) == true || token.StartsWith(L"E", 0) == true || token.StartsWith(L"d", 0) == true)
+ {
+ addPattern = false;
+ }
+ else if (addPattern == true)
+ {
+ pattern.Append(L" ");
+ pattern.Append(token);
+ }
+ }
+ return pattern;
+}
+
result
EventListPresentationModel::LoadEvents(const DateTime& start, const DateTime& end)
{