+++ /dev/null
-package tim.prune.tips;
-
-/**
- * Class to manage the showing of tips according
- * to the fixed TipDefinitions
- */
-public abstract class TipManager
-{
- public static final int Tip_UseAMapCache = 0;
- public static final int Tip_LearnTimeParams = 1;
- public static final int Tip_DownloadSrtm = 2;
- public static final int Tip_UseSrtmFor3d = 3;
- public static final int Tip_ManuallyCorrelateOne = 4;
- private static final int Number_Tips = Tip_ManuallyCorrelateOne + 1;
-
- /** Array of tip definitions */
- private static TipDefinition[] TIPDEFS = new TipDefinition[Number_Tips];
-
- /** Static block to initialise tip definitions */
- static
- {
- TIPDEFS[Tip_UseAMapCache] = new TipDefinition("tip.useamapcache", 150);
- TIPDEFS[Tip_LearnTimeParams] = new TipDefinition("tip.learntimeparams");
- TIPDEFS[Tip_DownloadSrtm] = new TipDefinition("tip.downloadsrtm", 5);
- TIPDEFS[Tip_UseSrtmFor3d] = new TipDefinition("tip.usesrtmfor3d");
- TIPDEFS[Tip_ManuallyCorrelateOne] = new TipDefinition("tip.manuallycorrelateone");
- }
-
- /**
- * Fire a trigger for the specified tip and get the message key if tip should be shown
- * @param inTipNumber number of tip from constants
- * @return message key if a message should be shown, or null otherwise
- */
- public static String fireTipTrigger(int inTipNumber)
- {
- try {
- TipDefinition tip = TIPDEFS[inTipNumber];
- if (tip.shouldShowMessage()) {
- return tip.getMessageKey();
- }
- }
- catch (ArrayIndexOutOfBoundsException obe) {} // unrecognised tip given
- return null;
- }
-}