From d213429d76893daf6d0a8fb43d362c474e64699c Mon Sep 17 00:00:00 2001 From: Igor Khmurets Date: Fri, 15 Nov 2013 18:35:02 +0300 Subject: [PATCH] Added IsFirstLaunch() method to settings --- platform/settings.cpp | 13 ++++++++++--- platform/settings.hpp | 4 ++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/platform/settings.cpp b/platform/settings.cpp index dbe52ff14f..52aafc8de9 100644 --- a/platform/settings.cpp +++ b/platform/settings.cpp @@ -17,6 +17,8 @@ #include "../std/iostream.hpp" +#define FIRST_LAUNCH_KEY "FirstLaunchOnDate" + static char const DELIM_CHAR = '='; namespace Settings @@ -317,14 +319,19 @@ namespace Settings bool IsFirstLaunchForDate(int date) { - char const * key = "FirstLaunchOnDate"; int savedDate; - if (!Get(key, savedDate) || savedDate < date) + if (!Get(FIRST_LAUNCH_KEY, savedDate) || savedDate < date) { - Set(key, date); + Set(FIRST_LAUNCH_KEY, date); return true; } else return false; } + + bool IsFirstLaunch() + { + int unused; + return !Get(FIRST_LAUNCH_KEY, unused); + } } diff --git a/platform/settings.hpp b/platform/settings.hpp index f9fcbb549e..39c01aeb89 100644 --- a/platform/settings.hpp +++ b/platform/settings.hpp @@ -42,4 +42,8 @@ namespace Settings /// Use this function for running some stuff once according to date. /// @param[in] date Current date in format yymmdd. bool IsFirstLaunchForDate(int date); + /// @Returns true when user launched app first time + /// Use to track new installs + /// @warning Can be used only before IsFirstLaunchForDate(int) call + bool IsFirstLaunch(); }