Avances ventana Limpieza

ConfiguracionSimplificada
Elena 2021-07-20 23:09:29 +02:00
parent 0dca74c4ad
commit 34108e7ec3
16 changed files with 270 additions and 60 deletions

View File

@ -130,7 +130,6 @@
<Compile Include="Button\ButtonLimp.cs" />
<Compile Include="Button\ButtonMaq.cs" />
<Compile Include="Button\ButtonRec.cs" />
<Compile Include="View\NumberSpin.cs" />
<Compile Include="OptionsMenuItem.cs" />
<Compile Include="ViewModel\PaneLimpiezaSub4ViewModel.cs" />
<Compile Include="ViewModel\PaneLimpiezaSub3ViewModel.cs" />

View File

@ -9,7 +9,7 @@
xmlns:viewModel="clr-namespace:OliviaAddInPro"
xmlns:view="clr-namespace:OliviaAddInPro"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
d:DesignHeight="500" d:DesignWidth="300"
d:DataContext="{Binding Path=ui.DockpaneLimpiezaViewModel}">
<UserControl.Resources>
<ResourceDictionary>

View File

@ -1,13 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xceed.Wpf.Toolkit;
namespace OliviaAddInPro
{
class NumberSpin : IntegerUpDown
{
}
}

View File

@ -46,7 +46,7 @@
<!--TextBlock Text="Add your custom content here" VerticalAlignment="Center" HorizontalAlignment="Center"></-->
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="300"/>
<RowDefinition Height="350"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0">

View File

@ -6,7 +6,7 @@
xmlns:extensions="clr-namespace:ArcGIS.Desktop.Extensions;assembly=ArcGIS.Desktop.Extensions"
xmlns:ui="clr-namespace:OliviaAddInPro"
mc:Ignorable="d" d:DesignWidth="300"
d:DataContext="{Binding Path=ui.PaneLimpiezaSub1ViewModel}" Height="300">
d:DataContext="{Binding Path=ui.PaneLimpiezaSub1ViewModel}" Height="350">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
@ -14,7 +14,7 @@
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<StackPanel Orientation="Vertical" Height="Auto">
<StackPanel Orientation="Vertical" Height="Auto" Margin="0,0,0,10">
<Label Content="Capa de Limpieza" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" FontWeight="DemiBold"/>
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
@ -26,13 +26,33 @@
<ImageBrush ImageSource="openfolder.png"/>
</Button.Background>
</Button>
<Label Content="{Binding LblCapaLimp}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,0,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="3"/>
<Label x:Name="label_capalimp" Content="{Binding Path=LblCapaLimp, Mode = TwoWay}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,0,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="3"/>
</Grid>
<Label Content="Tipo de Tratamiento" HorizontalAlignment="Left" Margin="15,0,0,0" VerticalAlignment="Top" FontWeight="DemiBold"/>
<ComboBox HorizontalAlignment="Left" Margin="20,0,0,0" VerticalAlignment="Top" Width="260" DropDownOpened="ComboBox_DropDownOpened"/>
<ComboBox x:Name="comboBox_tto" HorizontalAlignment="Left" Margin="20,0,0,0" VerticalAlignment="Top" Width="260" DropDownOpened="ComboBox_DropDownOpened"/>
<Label Content="Ámbitos de Trabajo" HorizontalAlignment="Left" Margin="15,0,0,0" VerticalAlignment="Top" RenderTransformOrigin="-0.391,-0.203" FontWeight="DemiBold"/>
<ComboBox HorizontalAlignment="Left" Margin="20,0,0,0" VerticalAlignment="Top" Width="260"/>
<ListBox HorizontalAlignment="Left" Height="100" Margin="20,2,0,0" VerticalAlignment="Top" Width="260"/>
<CheckBox Content="Respeta el sentido de circulación" HorizontalAlignment="Left" Margin="20,2,0,0" VerticalAlignment="Top"/>
</StackPanel>
<ComboBox x:Name="comboBox_ambitos" HorizontalAlignment="Left" Margin="20,0,0,0" VerticalAlignment="Top" Width="260"/>
<ListBox x:Name="listBox_ambitos" HorizontalAlignment="Left" Height="100" Margin="20,2,0,0" VerticalAlignment="Top" Width="260"/>
<CheckBox x:Name="checkBox_sentidocirc" Content="Respeta el sentido de circulación" HorizontalAlignment="Left" Margin="20,2,0,0" VerticalAlignment="Top"/>
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="6*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Label x:Name="label_velodespl" Margin="15,0,0,0" Content="Velocidad de desplazamiento"/>
<TextBox x:Name="txtBox_velodespl" Grid.Column="1" Margin="10,2,10,4" TextWrapping="Wrap" Text="{Binding Path=TextVeloDespl, Mode = TwoWay}" TextAlignment="Right" MaxLength="4" PreviewTextInput="TextBox_velodespl_PreviewTextInput"/>
<Label x:Name="label_udsvelodespl" Grid.Column="2" Content="{Binding LblUdsVeloDespl}" Margin="0,0,0,0"/>
</Grid>
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="6*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Label x:Name="label_tiempotto" Margin="15,0,0,0" Content="Tiempo de tratamiento"/>
<TextBox x:Name="txtBox_tiempotto" Grid.Column="1" Margin="10,2,10,4" TextWrapping="Wrap" Text="{Binding Path=TimeTto, Mode = TwoWay}" TextAlignment="Right" MaxLength="4" PreviewTextInput="TextBox_tiempotto_PreviewTextInput"/>
<Label x:Name="label_udstiempotto" Grid.Column="2" Content="{Binding LblUdsTimeTto}" Margin="0,0,0,0"/>
</Grid>
</StackPanel>
</UserControl>

View File

@ -30,5 +30,14 @@ namespace OliviaAddInPro
{
}
private void TextBox_velodespl_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = !PanelGlobal.IsValid(((TextBox)sender).Text + e.Text, 1, 100);
}
private void TextBox_tiempotto_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = !PanelGlobal.IsValid(((TextBox)sender).Text + e.Text, 1, 100);
}
}
}

View File

@ -29,7 +29,7 @@
<ImageBrush ImageSource="openfolder.png"/>
</Button.Background>
</Button>
<Label Content="{Binding LblCapaRestr}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
<Label Content="{Binding Path=LblCapaRestr, Mode = TwoWay}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
</Grid>
<Label Margin="15,0,0,0" Content="Niveles" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
@ -42,7 +42,7 @@
<ImageBrush ImageSource="openfolder.png"/>
</Button.Background>
</Button>
<Label Content="{Binding LblCapaNiv}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
<Label Content="{Binding Path=LblCapaNiv, Mode = TwoWay}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
</Grid>
<Label Margin="15,0,0,0" Content="Zonas" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
@ -55,7 +55,7 @@
<ImageBrush ImageSource="openfolder.png"/>
</Button.Background>
</Button>
<Label Content="{Binding LblCapaZon}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
<Label Content="{Binding Path=LblCapaZon, Mode = TwoWay}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
</Grid>
<Label Margin="15,0,0,0" Content="Instalación" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
@ -68,7 +68,7 @@
<ImageBrush ImageSource="openfolder.png"/>
</Button.Background>
</Button>
<Label Content="{Binding LblCapaInst}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
<Label Content="{Binding Path=LblCapaInst, Mode = TwoWay}" Grid.Column="1" HorizontalAlignment="Left" Margin="13,0,-33,0" VerticalAlignment="Top" Width="221" Height="30" Grid.ColumnSpan="2"/>
</Grid>
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
@ -77,7 +77,7 @@
<ColumnDefinition Width="50"/>
</Grid.ColumnDefinitions>
<Label Margin="15,0,0,0" Content="Buffer de exportación"/>
<TextBox Grid.Column="1" Margin="10,2,30,4" TextWrapping="Wrap" Text="{Binding TxtBuffExport}" TextAlignment="Right"/>
<TextBox x:Name="txtBox_buffexport" Grid.Column="1" Margin="10,2,30,4" TextWrapping="Wrap" Text="{Binding Path=TxtBuffExport, Mode = TwoWay}" TextAlignment="Right" MaxLength="4" PreviewTextInput="TextBox_PreviewTextInput"/>
<Label Grid.Column="2" Content="m" Margin="0,0,0,0"/>
</Grid>
</StackPanel>

View File

@ -25,5 +25,11 @@ namespace OliviaAddInPro
{
InitializeComponent();
}
private void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = !PanelGlobal.IsValid(((TextBox)sender).Text + e.Text,0,9999);
}
}
}

View File

@ -17,15 +17,16 @@
</ResourceDictionary>
</UserControl.Resources>
<StackPanel Orientation="Vertical">
<Label Margin="15,5,0,0" Content="Control" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="180"/>
</Grid.ColumnDefinitions>
<Label Content="Puntos de control" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:IntegerUpDown Grid.Column="1" Height="20" Width="70" FormatString="N0" Value="3" Increment="1" Maximum="10" Minimum="3" Margin="8,10,102,5"/>
<xctk:IntegerUpDown x:Name="spinner_ptosctrl" Value="{Binding Path=NumPtosCtrl, Mode = TwoWay}" Grid.Column="1" Height="20" Width="70" FormatString="N0" Increment="1" Maximum="10" Minimum="3" Margin="8,10,102,5" AllowTextInput ="False"/>
</Grid>
<Label Content="Sectores" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" FontWeight="DemiBold"/>
<Label Content="Sectores" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="275" Height="30" FontWeight="DemiBold" BorderThickness="1"/>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
@ -34,9 +35,9 @@
<ColumnDefinition Width="Auto" MinWidth="100"/>
</Grid.ColumnDefinitions>
<Label Content="Nº de sectores" HorizontalAlignment="Left" Margin="15,0,0,0" VerticalAlignment="Top" Width="90" Height="30"/>
<xctk:IntegerUpDown Grid.Column="1" Height="20" Width="70" FormatString="N0" Value="3" Increment="1" Maximum="20" Minimum="1" Margin="17,4,2,6"/>
<CheckBox Grid.Column="2" Margin="9,6,9,-1" Content="Automático"/>
<xctk:IntegerUpDown x:Name="spinner_nsect" Value="{Binding Path=NumSect, Mode = TwoWay}" Grid.Column="1" Height="20" Width="70" FormatString="N0" Increment="1" Maximum="20" Minimum="1" Margin="17,4,2,6" AllowTextInput ="False"/>
<CheckBox x:Name="checkBox_sectauto" Grid.Column="2" Margin="9,6,9,-1" Content="Automático" IsChecked="{Binding Path=CheckSectAuto, Mode = TwoWay}"/>
</Grid>
<CheckBox Margin="18,5,0,0" Content="Ajustar sectores a jornada"/>
<CheckBox x:Name="checkBox_ajustsect" Margin="18,5,0,0" Content="Ajustar sectores a jornada" IsChecked="{Binding Path=CheckAjustSect, Mode = TwoWay}"/>
</StackPanel>
</UserControl>

View File

@ -4,6 +4,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:extensions="clr-namespace:ArcGIS.Desktop.Extensions;assembly=ArcGIS.Desktop.Extensions"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" xmlns:xcdg="http://schemas.xceed.com/wpf/xaml/datagrid"
xmlns:ui="clr-namespace:OliviaAddInPro"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
@ -15,5 +16,56 @@
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<StackPanel Orientation="Vertical">
<Label Margin="15,5,0,0" Content="Tiempos" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Carga y Descarga" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:DateTimeUpDown Grid.Column="1" Height="20" Format="Custom" FormatString="HH 'h' mm 'm'" Value="{Binding Path=timeCargDesc, Mode = TwoWay}" Margin="9,8,14,7"/>
</Grid>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Desplazamiento ini/fin" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:DateTimeUpDown Grid.Column="1" Height="20" Format="Custom" FormatString="HH 'h' mm 'm'" Value="{Binding Path=timeDespIniFin, Mode = TwoWay}" Margin="9,8,14,7"/>
</Grid>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Hora inicio jornada" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:DateTimeUpDown Grid.Column="1" Height="20" Format="Custom" FormatString="HH 'h' mm 'm'" Value="{Binding Path=timeIniJornada, Mode = TwoWay}" Margin="9,8,14,7"/>
</Grid>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Reducción por tráfico (%)" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<TextBox Grid.Column="1" Height="20" Margin="10,8,32,7" PreviewTextInput="TextBox_PreviewTextInput" Text="{Binding Path=TextPercentTrafico, Mode = TwoWay}" TextAlignment="Right" MaxLength="3"/>
</Grid>
<Label Margin="15,5,0,0" Content="Tiempos del convenio" FontWeight="DemiBold"/>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Jornada" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:DateTimeUpDown Grid.Column="1" Height="20" Format="Custom" FormatString="HH 'h' mm 'm'" Value="{Binding Path=timeJornadaConv, Mode = TwoWay}" Margin="9,8,14,7"/>
</Grid>
<Grid Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Label Content="Descanso personal" HorizontalAlignment="Left" Margin="15,5,0,0" VerticalAlignment="Top" Width="177" Height="30" Grid.ColumnSpan="2"/>
<xctk:DateTimeUpDown Grid.Column="1" Height="20" Format="Custom" FormatString="HH 'h' mm 'm'" Value="{Binding Path=timeDescPers, Mode = TwoWay}" Margin="9,8,14,7"/>
</Grid>
</StackPanel>
</UserControl>

View File

@ -25,5 +25,11 @@ namespace OliviaAddInPro
{
InitializeComponent();
}
private void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = !PanelGlobal.IsValid(((TextBox)sender).Text + e.Text, 0,100);
}
}
}

View File

@ -4,6 +4,7 @@ using System.Linq;
using System.Threading.Tasks;
using ArcGIS.Core.CIM;
using ArcGIS.Core.Data;
using ArcGIS.Core.Data.UtilityNetwork.Trace;
using ArcGIS.Core.Geometry;
using ArcGIS.Desktop.Catalog;
using ArcGIS.Desktop.Core;
@ -22,6 +23,10 @@ namespace OliviaAddInPro
public PaneLimpiezaSub1ViewModel ()
{
lblCapaLimp = Resource1.String_selec_capa;
timeTto = 10;
textVeloDespl = 10;
lblUdsTimeTto = "min";
lblUdsVeloDespl = "km/h";
}
#region Properties
@ -35,7 +40,33 @@ namespace OliviaAddInPro
public string LblCapaLimp
{
get { return lblCapaLimp; }
set { LblCapaLimp=lblCapaLimp; }
set { base.SetProperty(ref lblCapaLimp, value, () => LblCapaLimp); }
}
private int textVeloDespl;
public int TextVeloDespl
{
get { return textVeloDespl; }
set { base.SetProperty(ref textVeloDespl, value, () => TextVeloDespl); }
}
private string lblUdsVeloDespl;
public string LblUdsVeloDespl
{
get { return lblUdsVeloDespl; }
set { base.SetProperty(ref lblUdsVeloDespl, value, () => LblUdsVeloDespl); }
}
private int timeTto;
public int TimeTto
{
get { return timeTto; }
set { base.SetProperty(ref timeTto, value, () => TimeTto); }
}
private string lblUdsTimeTto;
public string LblUdsTimeTto
{
get { return lblUdsTimeTto; }
set { base.SetProperty(ref lblUdsTimeTto, value, () => LblUdsTimeTto); }
}
#endregion Properties

View File

@ -22,7 +22,7 @@ namespace OliviaAddInPro
public PaneLimpiezaSub2ViewModel()
{
lblCapaRestr= lblCapaNiv= lblCapaZon= lblCapaInst = Resource1.String_selec_capa;
txtBuffExport = "1000";
txtBuffExport = 1000;
}
@ -37,31 +37,31 @@ namespace OliviaAddInPro
public string LblCapaRestr
{
get { return lblCapaRestr; }
set { LblCapaRestr = lblCapaRestr; }
set { base.SetProperty(ref lblCapaRestr, value, () => LblCapaRestr); }
}
private string lblCapaNiv;
public string LblCapaNiv
{
get { return lblCapaNiv; }
set { LblCapaNiv = lblCapaNiv; }
set { base.SetProperty(ref lblCapaNiv, value, () => LblCapaNiv); }
}
private string lblCapaZon;
public string LblCapaZon
{
get { return lblCapaZon; }
set { LblCapaZon = lblCapaZon; }
set { base.SetProperty(ref lblCapaZon, value, () => LblCapaZon); }
}
private string lblCapaInst;
public string LblCapaInst
{
get { return lblCapaInst; }
set { LblCapaInst = lblCapaInst; }
set { base.SetProperty(ref lblCapaInst, value, () => LblCapaInst); }
}
private string txtBuffExport;
public string TxtBuffExport
private int txtBuffExport;
public int TxtBuffExport
{
get { return txtBuffExport; }
set { TxtBuffExport = txtBuffExport; }
set { base.SetProperty(ref txtBuffExport, value, () => TxtBuffExport); }
}
#endregion Properties
}

View File

@ -21,7 +21,8 @@ namespace OliviaAddInPro
{
public PaneLimpiezaSub3ViewModel()
{
numPtosCtrl = numSect = 3;
checkAjustSect = checkSectAuto = false;
}
@ -32,12 +33,33 @@ namespace OliviaAddInPro
get { return Resource1.String_ctrol; }
}
/*private string lblCapaRestr;
public string LblCapaRestr
private int numPtosCtrl;
public int NumPtosCtrl
{
get { return lblCapaRestr; }
set { LblCapaRestr = lblCapaRestr; }
}*/
get { return numPtosCtrl; }
set { base.SetProperty(ref numPtosCtrl, value, () => NumPtosCtrl); }
}
private int numSect;
public int NumSect
{
get { return numSect; }
set { base.SetProperty(ref numSect, value, () => NumSect); }
}
private bool checkSectAuto;
public bool CheckSectAuto
{
get { return checkSectAuto; }
set { base.SetProperty(ref checkSectAuto, value, () => CheckSectAuto); }
}
private bool checkAjustSect;
public bool CheckAjustSect
{
get { return checkAjustSect; }
set { base.SetProperty(ref checkAjustSect, value, () => CheckAjustSect); }
}
#endregion Properties
}

View File

@ -21,7 +21,12 @@ namespace OliviaAddInPro
{
public PaneLimpiezaSub4ViewModel()
{
textPercentTrafico = 80;
timeCargDesc = 40;
timeDespIniFin = 25;
timeIniJornada = 7 * 60 + 30;
timeJornadaConv = 8 * 60;
timeDescPers = 30;
}
@ -32,12 +37,53 @@ namespace OliviaAddInPro
get { return Resource1.String_tiempos; }
}
/*private string lblCapaRestr;
public string LblCapaRestr
//en minutos
private int timeCargDesc;
public string TimeCargDesc
{
get { return lblCapaRestr; }
set { LblCapaRestr = lblCapaRestr; }
}*/
get { return PanelGlobal.Hm_int2str(timeCargDesc); }
set { base.SetProperty(ref timeCargDesc, PanelGlobal.Hm_str2int(value), () => TimeCargDesc); }
}
//en minutos
private int timeDespIniFin;
public int TimeDespIniFin
{
get { return timeDespIniFin; }
set { base.SetProperty(ref timeDespIniFin, value, () => TimeDespIniFin); }
}
//en minutos desde las 00 horas
private int timeIniJornada;
public int TimeIniJornada
{
get { return timeIniJornada; }
set { base.SetProperty(ref timeIniJornada, value, () => TimeIniJornada); }
}
//Tráfico, de 0 a 100
private int textPercentTrafico;
public int TextPercentTrafico
{
get { return textPercentTrafico; }
set { base.SetProperty(ref textPercentTrafico, value, () => TextPercentTrafico); }
}
//en minutos desde las 00 horas
private int timeJornadaConv;
public int TimeJornadaConv
{
get { return timeJornadaConv; }
set { base.SetProperty(ref timeJornadaConv, value, () => TimeJornadaConv); }
}
//en minutos
private int timeDescPers;
public int TimeDescPers
{
get { return timeDescPers; }
set { base.SetProperty(ref timeDescPers, value, () => TimeDescPers); }
}
#endregion Properties
}

View File

@ -7,7 +7,7 @@ using System.Threading.Tasks;
namespace OliviaAddInPro
{
public abstract class PanelViewModelBase : PropertyChangedBase
public abstract class PanelViewModelBase : PropertyChangedBase
{
#region Properties
@ -17,4 +17,35 @@ namespace OliviaAddInPro
#endregion Properties
}
//******************************************************
public static class PanelGlobal
{
public static bool IsValid(string str, int ini, int fin)
{
int i;
return int.TryParse(str, out i) && i >= ini && i <= fin;
}
/**
* Dado un tiempo en minutos devuelve las horas modulo 60 y los minutos restantes
*/
public static string Hm_int2str(double t)
{
int[] hm = { 0, 0 };
hm[0] = (int)(t / 60);
hm[1] = (int)(t - hm[0] * 60);
return String.Format("%dd:%dd",hm[0], hm[1]);
}
public static int Hm_str2int(string hm)
{
int t=0;
return t;
}
}
}