/// <summary> /// Provides the color according to the info status /// </summary> /// <param name="info"></param> /// <returns></returns> protected Color ColorBasedOnInfo(MessageInfoEnum info) { Color retVal = NothingColor; if ((info & MessageInfoEnum.Error) != 0) { retVal = ErrorColor; } else if ((info & MessageInfoEnum.PathToError) != 0) { retVal = PathToErrorColor; } else if ((info & MessageInfoEnum.Warning) != 0) { retVal = WarningColor; } else if ((info & MessageInfoEnum.PathToWarning) != 0) { retVal = PathToWarningColor; } else if ((info & MessageInfoEnum.Info) != 0) { retVal = InfoColor; } else if ((info & MessageInfoEnum.PathToInfo) != 0) { retVal = PathToInfoColor; } return(retVal); }
/// <summary> /// Updates the message info when a new message is added /// </summary> /// <param name="info"></param> protected void UpdateMessageInfo(MessageInfoEnum info) { if ((MessagePathInfo & info) == 0) { // Flag is not yet handled in this model element MessagePathInfo = MessagePathInfo | info; ModelElement enclosing = Enclosing as ModelElement; if (enclosing != null) { MessageInfoEnum nextInfo = info; switch (info) { case MessageInfoEnum.Error: nextInfo = MessageInfoEnum.PathToError; break; case MessageInfoEnum.Warning: nextInfo = MessageInfoEnum.PathToWarning; break; case MessageInfoEnum.Info: nextInfo = MessageInfoEnum.PathToInfo; break; } enclosing.UpdateMessageInfo(nextInfo); } } }
/// <summary> /// Creates a path to the info provided /// </summary> /// <param name="info"></param> /// <returns></returns> public static MessageInfoEnum CreatePathTo(MessageInfoEnum info) { MessageInfoEnum retVal = MessageInfoEnum.NoMessage; if ((info & (MessageInfoEnum.Error | MessageInfoEnum.PathToError)) != 0) { retVal = retVal | MessageInfoEnum.PathToError; } if ((info & (MessageInfoEnum.Warning | MessageInfoEnum.PathToWarning)) != 0) { retVal = retVal | MessageInfoEnum.PathToWarning; } if ((info & (MessageInfoEnum.Info | MessageInfoEnum.PathToInfo)) != 0) { retVal = retVal | MessageInfoEnum.PathToInfo; } return retVal; }
/// <summary> /// Creates a path to the info provided /// </summary> /// <param name="info"></param> /// <returns></returns> public static MessageInfoEnum CreatePathTo(MessageInfoEnum info) { MessageInfoEnum retVal = MessageInfoEnum.NoMessage; if ((info & (MessageInfoEnum.Error | MessageInfoEnum.PathToError)) != 0) { retVal = retVal | MessageInfoEnum.PathToError; } if ((info & (MessageInfoEnum.Warning | MessageInfoEnum.PathToWarning)) != 0) { retVal = retVal | MessageInfoEnum.PathToWarning; } if ((info & (MessageInfoEnum.Info | MessageInfoEnum.PathToInfo)) != 0) { retVal = retVal | MessageInfoEnum.PathToInfo; } return(retVal); }