using Gestor.Model.Common; using Gestor.Model.Domain.Seguros; using System; using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Markup; namespace Gestor.Application.Converters { public class IsNamedObjectVisibilityConverter : MarkupExtension, IValueConverter { private static int column; private static TipoTela tela; public IsNamedObjectVisibilityConverter() { } public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { PermissaoUsuario permissaoUsuario = (PermissaoUsuario)value; Visibility visibility = Visibility.Visible; if (permissaoUsuario.get_Tela() != IsNamedObjectVisibilityConverter.tela) { IsNamedObjectVisibilityConverter.tela = permissaoUsuario.get_Tela(); IsNamedObjectVisibilityConverter.column = 1; } TipoTela tela = permissaoUsuario.get_Tela(); if (tela != 10) { if (tela - 12 > 1) { if (tela == 18) { if (IsNamedObjectVisibilityConverter.column == 3) { visibility = Visibility.Hidden; } IsNamedObjectVisibilityConverter.column++; return visibility; } IsNamedObjectVisibilityConverter.column++; return visibility; } else if (IsNamedObjectVisibilityConverter.column == 1 || IsNamedObjectVisibilityConverter.column == 3) { visibility = Visibility.Hidden; IsNamedObjectVisibilityConverter.column++; return visibility; } else { IsNamedObjectVisibilityConverter.column++; return visibility; } } if (IsNamedObjectVisibilityConverter.column == 3) { visibility = Visibility.Hidden; } IsNamedObjectVisibilityConverter.column++; return visibility; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { return null; } public override object ProvideValue(IServiceProvider serviceProvider) { return this; } } }