/// <summary> /// Записывает информацию о запускаемом приложении (лого). /// Информация содержит имя приложения, версию и авторские права. /// </summary> void WriteLogo(DescriptionContext context) { WriteText(context, appInfo.Title); WriteText(context, " v" + appInfo.Version, true); WriteText(context, appInfo.Description, true); WriteText(context, appInfo.Copyright, true); context.WriteLine(); }
/// <summary> /// Пишет информацию об использовании приложения в указанный <paramref name="writer"/>. /// </summary> /// <param name="writer">Объект для вывода информации об использовании приложения.</param> public void Print(TextWriter writer) { var context = new DescriptionContext(appInfo, modelType, writer); if (showLogo) { WriteLogo(context); } new SyntaxWriter(context).Write(); context.WriteLine(2); new DetailsWriter(context).Write(); }
/// <summary> /// Пишет непустой текст в контекст описания. /// </summary> /// <param name="context">Контекст описания модели.</param> /// <param name="text">Текст.</param> /// <param name="newline">Флаг, равный true, если нужно добавить перевод строки после записи текста.</param> /// <remarks>Если строка для вывода пустая, то флаг <paramref name="newline"/> игнорируется.</remarks> static void WriteText(DescriptionContext context, string text, bool newline = false) { if (string.IsNullOrWhiteSpace(text)) { return; } context.Writer.Write(text); if (newline) { context.WriteLine(); } }