Compilacion .NET6 + modificado para pasarle IP/puerto desde el que conectarse

Gerardo/Compilacion.net
Gerardo 2023-02-13 18:09:52 +01:00
parent 114abcccc2
commit c2f857ba48
16 changed files with 3044 additions and 414 deletions

View File

@ -24,7 +24,7 @@ namespace OliviaAddIn
//devuelve -1 si no se ha podido crear socket
//0 si no se puede conectar
//1 si conectado
public bool conecta(string ip, int puerto)
public bool conecta(string ip, int puerto, string ip_local = "")
{
termina();
try
@ -39,7 +39,7 @@ namespace OliviaAddIn
return false;
try
{
return str_socket_conecta(sc, ip, puerto) != 0;
return str_socket_conecta(sc, ip, puerto, ip_local) != 0;
}
catch
{
@ -120,7 +120,7 @@ namespace OliviaAddIn
unsafe public static extern IntPtr str_socket_crea();
[DllImport("utiles.dll", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Ansi)]
unsafe public static extern int str_socket_conecta(IntPtr soc, String ip, int puerto);
unsafe public static extern int str_socket_conecta(IntPtr soc, String ip, int puerto, String ip_local = null);
[DllImport("utiles.dll", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Ansi)]
unsafe public static extern int str_socket_envia(IntPtr soc, String txt);//solo este

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<ArcGIS defaultAssembly="OliviaAddInPro.dll" defaultNamespace="OliviaAddInPro" xmlns="http://schemas.esri.com/DADF/Registry" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.esri.com/DADF/Registry file:///C:/Program%20Files/ArcGIS/Pro/bin/ArcGIS.Desktop.Framework.xsd">
<AddInInfo id="{10742570-cf59-42f2-bea2-2a38002a06ee}" version="3.0" desktopVersion="3.0.3.36057">
<AddInInfo id="{10742570-cf59-42f2-bea2-2a38002a06ee}" version="3.1" desktopVersion="3.0.3.36057">
<Name>OliviaAddInPro</Name>
<Description>AddIn de Optimización de la Limpieza Viaria para ArcGIs Pro</Description>
<Image>Images\AddinDesktop32.png</Image>
<Author>VSM</Author>
<Company>VSM - Narvaling</Company>
<Date>08/07/2022 12:00:00, 2022</Date>
<Date>18/01/2023 12:00:00, 2023</Date>
<Subject>Framework</Subject>
<!-- Note subject can be one or more of these topics:
Content, Framework, Editing, Geodatabase, Geometry, Geoprocessing, Layouts, Map Authoring, Map Exploration -->

View File

@ -487,7 +487,7 @@ namespace OliviaAddInPro.Helper
}
else //mira a ver si es shapefile
{
ftclss = GetFtClassFromShpSync(pathFtClss).Result;
ftclss = GetFtClassFromShpSync(pathFtClss);
}
Free(gdb);
Free(dtset);
@ -809,6 +809,27 @@ namespace OliviaAddInPro.Helper
return fields_st;
}
//Devuelve una lista con los campos de una feature class
public static IReadOnlyList<ArcGIS.Core.Data.Field> GetFieldsSyncEx(FeatureClass fc)
{
FeatureClassDefinition ftcldef = null;
IReadOnlyList<ArcGIS.Core.Data.Field> fields = null;
ReiniciaOutStr();
if (fc == null)
return null;
try
{
ftcldef = fc.GetDefinition();
fields = ftcldef.GetFields();
}
catch (Exception ex)
{
HelperGdb.OutStr = "Error al leer los campos " + fc.GetName() + ": " + ex.Message;
return fields;
}
return fields;
}
/*
* Comprueba que en la capa dada exista un campo con nombre 'field'
@ -1483,7 +1504,7 @@ namespace OliviaAddInPro.Helper
var environments = Geoprocessing.MakeEnvironmentArray(outputCoordinateSystem: sr);
//SpatialReferenceBuilder.CreateSpatialReference(3857)
double valini = cps.GetProgress();
IGPResult gpResult = Geoprocessing.ExecuteToolAsync("FeatureClassToFeatureClass_conversion", args,
var gpres = Geoprocessing.ExecuteToolAsync("FeatureClassToFeatureClass_conversion", args,
environments, null,
(event_name, o) => // implement delegate and handle events
@ -1517,8 +1538,10 @@ namespace OliviaAddInPro.Helper
break;
}
}
}).Result;
});
while (!gpres.IsCompleted && !gpres.IsCanceled && !gpres.IsFaulted)
Thread.Sleep(10);
IGPResult gpResult = gpres.Result;
if (gpResult.IsCanceled)
{
cps.Setcancelled();
@ -1534,6 +1557,8 @@ namespace OliviaAddInPro.Helper
OutStr = "Error: " + msg;
return false;
}
gpres.Dispose();
return true;
}
catch (Exception ex)
@ -2390,6 +2415,7 @@ namespace OliviaAddInPro.Helper
msg = e.Message;
}*/
res.Value = true;
gpres.Dispose();
//actualiza la gdb
Refresh(System.IO.Path.GetDirectoryName(Gdb_dataset));
return res;
@ -2664,7 +2690,9 @@ namespace OliviaAddInPro.Helper
try
{
var gpres = Geoprocessing.ExecuteToolAsync("management.AlterField", args);
if (gpres.Result.IsFailed)
while (!gpres.IsCompleted && !gpres.IsCanceled && !gpres.IsFaulted)
Thread.Sleep(10);
if (!gpres.IsCompletedSuccessfully)
{
var gpResult = gpres.Result;
string msg;
@ -2675,6 +2703,7 @@ namespace OliviaAddInPro.Helper
}
else
res= true; //ha ido bien
gpres.Dispose();
return res;
}
catch
@ -2741,7 +2770,9 @@ namespace OliviaAddInPro.Helper
try
{
var gpres = Geoprocessing.ExecuteToolAsync("management.AddFields", args);
if (gpres.Result.IsFailed)
while (!gpres.IsCompleted && !gpres.IsCanceled && !gpres.IsFaulted)
Thread.Sleep(10);
if (gpres.IsFaulted)
{
var gpResult = gpres.Result;
string msg;
@ -2752,6 +2783,7 @@ namespace OliviaAddInPro.Helper
}
else
res = true; //ha ido bien
gpres.Dispose();
return res;
}
catch

2771
Helper/HelperGdb.cs.bak Normal file

File diff suppressed because it is too large Load Diff

View File

@ -69,7 +69,7 @@ namespace OliviaAddInPro.Model
public OliviaConf()
{
Ip = "0.0.0.0";
Ip = "127.0.0.1";
Puerto = 19995;
TiempoOutSocket = 20;
}

View File

@ -272,7 +272,7 @@ namespace OliviaAddInPro.Model
ArcGIS.Core.Data.FeatureClass ft = HelperGdb.GetFtClass(OliviaGlob.Paths.PathGdbNw);
if (ft == null)
return false;
HelperGdb.Free(ft);
int NCAMPS = 4;
string[] camps;
camps = new string[NCAMPS];
@ -332,9 +332,10 @@ namespace OliviaAddInPro.Model
try
{
string[] ips = OliviaGlob.dame_local_ips();
if (ips != null && ips.Length > 0)
/*if (ips != null && ips.Length > 0)
Conexion.Ip = ips[0];
else
Conexion.Ip = "127.0.0.1";*/
Conexion.Ip = "127.0.0.1";
resp.Value = true;
return resp;
@ -396,12 +397,12 @@ namespace OliviaAddInPro.Model
HelperGlobal.ponMsg("No se encuentra el archivo " + OliviaGlob.Paths.PathManualOlivia);
else
{
System.Diagnostics.Process.Start(OliviaGlob.Paths.PathManualOlivia);
Process.Start(new ProcessStartInfo(OliviaGlob.Paths.PathManualOlivia) { UseShellExecute = true });
}
}
catch (Exception)
catch (Exception ex)
{
HelperGlobal.ponMsg("Error al abrir el manual de ayuda " + OliviaGlob.Paths.PathManualOlivia);
HelperGlobal.ponMsg("Error al abrir el manual de ayuda " + OliviaGlob.Paths.PathManualOlivia + " "+ex.Message);
return;
}
}

View File

@ -138,7 +138,7 @@ namespace OliviaAddInPro.Model
}
private ObservableCollection<string> nombCamposOrig = new ObservableCollection<string>();
private IReadOnlyList<ArcGIS.Core.Data.Field> camposOrig = null;
/**
* Para la ventana de progreso
*/
@ -197,7 +197,7 @@ namespace OliviaAddInPro.Model
ambitos = string.Empty;
}
/**
* Restaura el nombre original del campo si se ha truncado a 10 car al exportar a shp
* Devuelve los campos característicos de Limpieza o Recogida
*/
public virtual string[] GetCampos(string capa=null)
{
@ -235,37 +235,42 @@ namespace OliviaAddInPro.Model
if (fc == null)
return resp;
////////////////////////////////////////////////////////
string[] camps = GetCamposOrig();
if (camps == null)
if (camposOrig == null || camposOrig.Count==0)
{
HelperGdb.Free(fc);
return resp;
}
ObservableCollection<string> fields = HelperGdb.GetFieldsSync(fc);
HelperGdb.Free(fc);
if (fields == null)
{
HelperGdb.Free(fc);
return resp;
}
try
{
int i = 0;
int indx;
string campTrunc = string.Empty;
for (i = 0; i < camps.Length; i++)
for (i = 0; i < camposOrig.Count; i++)
{
if (camps[i].Length <= LENGTHCAMPSHP)
if (camposOrig[i].Name.Length <= LENGTHCAMPSHP)
continue;
if (EstaRepeNomb(fields, camps[i]))
if (EstaRepeNomb(fields, camposOrig[i].Name))
continue;
campTrunc = camps[i].Substring(0, LENGTHCAMPSHP);
campTrunc = camposOrig[i].Name.Substring(0, LENGTHCAMPSHP);
//si tiene más de 10 caracteres, lo ha truncado al exportar
//busca el nombre actual del campo en la fc
indx = fields.IndexOf(campTrunc);
if (indx < 0)
break;
if (!HelperGdb.RenameFieldSync(nombFtClass, campTrunc, camps[i],camps[i]))
if (!HelperGdb.RenameFieldSync(nombFtClass, campTrunc, camposOrig[i].Name, camposOrig[i].AliasName))
break;
}
if (i < camps.Length)
if (i < camposOrig.Count)
{
resp.Error.Add("Error en el campo " + camps[i]);
resp.Error.Add("Error en el campo " + camposOrig[i].Name);
}
else
resp.Value = true;
@ -274,7 +279,7 @@ namespace OliviaAddInPro.Model
{
}
HelperGdb.Free(fc);
return resp;
}
@ -302,5 +307,19 @@ namespace OliviaAddInPro.Model
nombCamposOrig = new ObservableCollection<string>();
HelperGdb.Free(fc);
}
/**
* Guarda el nombre de los campos originales para luego restaurarlos
*/
public void GuardaCamposOrig(string pathFtClass)
{
FeatureClass fc = HelperGdb.GetFtClassSync(pathFtClass);
if (fc != null)
{
camposOrig = HelperGdb.GetFieldsSyncEx(fc);
}
else
camposOrig = null;
HelperGdb.Free(fc);
}
}
}

View File

@ -1,378 +1,156 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{10742570-CF59-42F2-BEA2-2A38002A06EE}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OliviaAddInPro</RootNamespace>
<AssemblyName>OliviaAddInPro</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<PropertyGroup>
<ArcGISFolder>$([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\ArcGISPro', 'InstallDir', null, RegistryView.Registry64))</ArcGISFolder>
<ArcGISFolder Condition="'$(ArcGISFolder)' == ''">$(registry:HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro@InstallDir)</ArcGISFolder>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<StartAction>Program</StartAction>
<StartProgram>$(ArcGISFolder)\bin\ArcGISPro.exe</StartProgram>
<PlatformTarget>x64</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<StartAction>Program</StartAction>
<StartProgram>$(ArcGISFolder)\bin\ArcGISPro.exe</StartProgram>
<PlatformTarget>AnyCPU</PlatformTarget>
<TargetFramework>net6.0-windows</TargetFramework>
<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<NoWarn>CA1416</NoWarn>
<UseWPF>true</UseWPF>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
</PropertyGroup>
<ItemGroup>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="WindowsBase" />
<Reference Include="System.Xaml" />
<Reference Include="ArcGIS.Desktop.Framework">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.Framework.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Core">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Core.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Core">
<HintPath>$(ArcGISFolder)\bin\Extensions\Core\ArcGIS.Desktop.Core.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Mapping">
<HintPath>$(ArcGISFolder)\bin\Extensions\Mapping\ArcGIS.Desktop.Mapping.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Catalog">
<HintPath>$(ArcGISFolder)\bin\Extensions\Catalog\ArcGIS.Desktop.Catalog.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Editing">
<HintPath>$(ArcGISFolder)\bin\Extensions\Editing\ArcGIS.Desktop.Editing.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Extensions">
<HintPath>$(ArcGISFolder)\bin\Extensions\DesktopExtensions\ArcGIS.Desktop.Extensions.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.GeoProcessing">
<HintPath>$(ArcGISFolder)\bin\Extensions\GeoProcessing\ArcGIS.Desktop.GeoProcessing.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Layouts">
<HintPath>$(ArcGISFolder)\bin\Extensions\Layout\ArcGIS.Desktop.Layouts.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Shared.Wpf">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.Shared.Wpf.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Ribbon.Wpf">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.Ribbon.Wpf.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.DataGrid.Contrib.Wpf">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.DataGrid.Contrib.Wpf.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Resources">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.Resources.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ArcGIS.Desktop.Resources">
<HintPath>$(ArcGISFolder)\bin\ArcGIS.Desktop.Resources.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.ItemIndex">
<HintPath>$(ArcGISFolder)\bin\ESRI.ArcGIS.ItemIndex.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Xceed.Wpf.Toolkit, Version=4.1.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\bin\Release\Xceed.Wpf.Toolkit.dll</HintPath>
</Reference>
<Compile Remove=".git\**" />
<EmbeddedResource Remove=".git\**" />
<None Remove=".git\**" />
<Page Remove=".git\**" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="Config.daml" />
<AddInContent Include="Images\AddInDesktop16.png" />
<AddInContent Include="Images\AddInDesktop32.png" />
<AddInContent Include="DarkImages\AddInDesktop16.png" />
<AddInContent Include="DarkImages\AddInDesktop32.png" />
</ItemGroup>
<ItemGroup>
<Compile Include="Button\ButtonConfig.cs" />
<Compile Include="Button\ButtonLimp.cs" />
<Compile Include="Button\ButtonMaq.cs" />
<Compile Include="Button\ButtonRec.cs" />
<Compile Include="Conexion\Cstr_socket.cs" />
<Compile Include="Helper\EnabledComboBoxItem.cs" />
<Compile Include="Helper\CheckedListItem.cs" />
<Compile Include="Helper\HelperGdb.cs" />
<Compile Include="Helper\HelperGlobal.cs" />
<Compile Include="Model\ComunDef.cs" />
<Compile Include="Model\contract\IprocessManager.cs" />
<Compile Include="Model\ESRI.ArcGIS.Geometry.esriSRProjCS4Type.cs" />
<Compile Include="Model\Recogida.cs" />
<Compile Include="Model\RecogidaDef.cs" />
<Compile Include="Model\Respuesta.cs" />
<Compile Include="Model\TratamientoComun.cs" />
<Compile Include="Model\Limpieza.cs" />
<Compile Include="Model\LimpiezaDef.cs" />
<Compile Include="Services\EjecServ.cs" />
<Compile Include="Model\OliviaConf.cs" />
<Compile Include="Model\OliviaDef.cs" />
<Compile Include="Services\ConfigServ.cs" />
<Compile Include="Services\FinProcServ.cs" />
<Compile Include="Services\LanzaSrv\LanzaLimpSrv.cs" />
<Compile Include="Services\LanzaSrv\LanzaOlvServ.cs" />
<Compile Include="Services\LanzaSrv\LanzaRecoSrv.cs" />
<Compile Include="Services\LimpiezaServ.cs" />
<Compile Include="Services\ProcesoEjecServ.cs" />
<Compile Include="Services\RecogidaServ.cs" />
<Compile Include="ViewModel\Comun\MarchandoUnaDeViewModel.cs" />
<Compile Include="ViewModel\Configuracion\DockpaneConfigViewModel.cs" />
<Compile Include="ViewModel\Configuracion\PaneConfigViewModel.cs" />
<Compile Include="ViewModel\OptionsMenuItem.cs" />
<Compile Include="ViewModel\PaneEjecutarViewModel.cs" />
<Compile Include="ViewModel\Limpieza\PaneLimpiezaSub4ViewModel.cs" />
<Compile Include="ViewModel\Limpieza\PaneLimpiezaSub3ViewModel.cs" />
<Compile Include="ViewModel\Limpieza\PaneLimpiezaSub2ViewModel.cs" />
<Compile Include="ViewModel\Limpieza\PaneLimpiezaViewModel.cs" />
<Compile Include="ViewModel\PanelViewModelBase.cs" />
<Compile Include="ViewModel\Recogida\PaneRecogidaSub1ViewModel.cs" />
<Compile Include="View\Comun\MarchandoUnaDe.xaml.cs">
<DependentUpon>MarchandoUnaDe.xaml</DependentUpon>
</Compile>
<Compile Include="View\Configuracion\PropertyGridFilePickerFolder.xaml.cs">
<DependentUpon>PropertyGridFilePickerFolder.xaml</DependentUpon>
</Compile>
<Compile Include="View\Configuracion\PropertyGridFilePickerDataset.xaml.cs">
<DependentUpon>PropertyGridFilePickerDataset.xaml</DependentUpon>
</Compile>
<Compile Include="View\Configuracion\PropertyGridFilePickerLine.xaml.cs">
<DependentUpon>PropertyGridFilePickerLine.xaml</DependentUpon>
</Compile>
<Compile Include="View\Configuracion\PropertyGridFilePickerGDB.xaml.cs">
<DependentUpon>PropertyGridFilePickerGDB.xaml</DependentUpon>
</Compile>
<Compile Include="View\Recogida\PaneRecogidaSub1.xaml.cs">
<DependentUpon>PaneRecogidaSub1.xaml</DependentUpon>
</Compile>
<Compile Include="View\Recogida\PaneRecogida.xaml.cs">
<DependentUpon>PaneRecogida.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\Recogida\PaneRecogidaViewModel.cs" />
<Compile Include="View\Configuracion\DockPaneConfig.xaml.cs">
<DependentUpon>DockPaneConfig.xaml</DependentUpon>
</Compile>
<Compile Include="View\Configuracion\PaneConfigView.xaml.cs">
<DependentUpon>PaneConfigView.xaml</DependentUpon>
</Compile>
<Compile Include="View\PaneEjecutar.xaml.cs">
<DependentUpon>PaneEjecutar.xaml</DependentUpon>
</Compile>
<Compile Include="View\Limpieza\PaneLimpiezaSub4.xaml.cs">
<DependentUpon>PaneLimpiezaSub4.xaml</DependentUpon>
</Compile>
<Compile Include="View\Limpieza\PaneLimpiezaSub3.xaml.cs">
<DependentUpon>PaneLimpiezaSub3.xaml</DependentUpon>
</Compile>
<Compile Include="View\Limpieza\PaneLimpiezaSub2.xaml.cs">
<DependentUpon>PaneLimpiezaSub2.xaml</DependentUpon>
</Compile>
<Compile Include="View\Limpieza\PaneLimpiezaSub1.xaml.cs">
<DependentUpon>PaneLimpiezaSub1.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\Limpieza\PaneLimpiezaSub1ViewModel.cs" />
<Compile Include="View\Limpieza\PaneLimpieza.xaml.cs">
<DependentUpon>PaneLimpieza.xaml</DependentUpon>
</Compile>
<Compile Include="View\Limpieza\DockpaneLimpieza.xaml.cs">
<DependentUpon>DockpaneLimpieza.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\Limpieza\DockpaneLimpiezaViewModel.cs" />
<Compile Include="View\Recogida\DockpaneRecogida.xaml.cs">
<DependentUpon>DockpaneRecogida.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\Recogida\DockpaneRecogidaViewModel.cs" />
<Compile Include="Module1.cs" />
<Compile Include="Model\OliviaGlob.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Resource1.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resource1.resx</DependentUpon>
</Compile>
<Compile Include="View\ProWndSelectFields.xaml.cs">
<DependentUpon>ProWndSelectFields.xaml</DependentUpon>
</Compile>
<Compile Include="ViewModel\ShowProWndSelectFields.cs" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonBlue16.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonBlue32.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="Images\OliviaIconPro16.png" />
<AddInContent Include="Images\OliviaIconPro32.png" />
<Content Include="Config.daml" />
<Content Include="Images\AddInDesktop16.png" />
<Content Include="Images\AddInDesktop32.png" />
<Content Include="DarkImages\AddInDesktop16.png" />
<Content Include="DarkImages\AddInDesktop32.png" />
<Content Include="DarkImages\GenericButtonBlue16.png" />
<Content Include="DarkImages\GenericButtonBlue32.png" />
<Content Include="Images\OliviaIconPro16.png" />
<Content Include="Images\OliviaIconPro32.png" />
<Content Include="DarkImages\GenericButtonPurple16.png" />
<Content Include="DarkImages\GenericButtonPurple32.png" />
<Content Include="DarkImages\GenericButtonGreen16.png" />
<Content Include="DarkImages\GenericButtonGreen32.png" />
<Content Include="Images\reco2.png" />
<Content Include="Images\carrito2.png" />
<Content Include="Images\config2_olv.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="OliviaIconPro.ico" />
</ItemGroup>
<ItemGroup>
<Page Include="View\Comun\MarchandoUnaDe.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Configuracion\PropertyGridFilePickerFolder.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Configuracion\PropertyGridFilePickerDataset.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Configuracion\PropertyGridFilePickerLine.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Configuracion\PropertyGridFilePickerGDB.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Recogida\PaneRecogidaSub1.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Recogida\PaneRecogida.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Configuracion\DockPaneConfig.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Configuracion\PaneConfigView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\PaneEjecutar.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Limpieza\PaneLimpiezaSub4.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Limpieza\PaneLimpiezaSub3.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Limpieza\PaneLimpiezaSub2.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="View\Limpieza\PaneLimpiezaSub1.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Limpieza\PaneLimpieza.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Limpieza\DockpaneLimpieza.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\Recogida\DockpaneRecogida.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="View\ProWndSelectFields.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonPurple16.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonPurple32.png" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resource1.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resource1.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonGreen16.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="DarkImages\GenericButtonGreen32.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="View\OliviaIconPro16.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="View\OliviaIconPro.ico" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\inicio.png" />
<Resource Include="Resources\ptosctrl.png" />
<Resource Include="Resources\time.png" />
<Resource Include="Resources\zonas.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\openfolder.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="Images\reco2.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="Images\carrito2.png" />
</ItemGroup>
<ItemGroup>
<AddInContent Include="Images\config2_olv.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Images\help16Pro.png" />
</ItemGroup>
<<<<<<< HEAD
<ItemGroup>
<PackageReference Include="DotNetProjects.Extended.Wpf.Toolkit" Version="5.0.103" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
<Reference Include="ArcGIS.Desktop.Framework">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Framework.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Core">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Core.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Core">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Core\ArcGIS.Desktop.Core.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Layouts">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Layout\ArcGIS.Desktop.Layouts.dll</HintPath>
</Reference>
<Reference Include="ArcGIS.Desktop.Mapping">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Mapping\ArcGIS.Desktop.Mapping.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Catalog">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Catalog\ArcGIS.Desktop.Catalog.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Shared.Wpf">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Shared.Wpf.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Editing">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\Editing\ArcGIS.Desktop.Editing.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
<Reference Include="ArcGIS.Desktop.Extensions">
<HintPath>C:\Program Files\ArcGIS\Pro\bin\Extensions\DesktopExtensions\ArcGIS.Desktop.Extensions.dll</HintPath>
<CopyLocal>false</CopyLocal>
</Reference>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<None Include=".gitignore" />
<None Include="Backup-2.x.zip" />
<None Include="OliviaAddInPro.csproj.bak" />
<None Include="OliviaAddInPro.csproj.user" />
<None Include="OliviaIconPro.ico" />
<None Include="Images\config2_.png" />
<None Include="Images\config2_olv - copia.png" />
<None Include="Images\config_old.png" />
<None Include="Images\genericproperties32.png" />
<None Include="Images\help16Pro.png" />
<None Include="Images\masking32.png" />
<None Include="Images\OliviaIconPro.ico" />
<None Include="Images\OliviaIconPro32Web.png" />
<None Include="Images\open32.png" />
<None Include="Images\openfolder.png" />
<None Include="Images\openfolder32.png" />
<None Include="Images\time32.png" />
<None Include="Model\OliviaGlob.cs.bak" />
<None Include="Model\Recogida.cs.bak" />
<None Include="packages\Newtonsoft.Json.13.0.1\.signature.p7s" />
<None Include="packages\Newtonsoft.Json.13.0.1\LICENSE.md" />
<None Include="packages\Newtonsoft.Json.13.0.1\Newtonsoft.Json.13.0.1.nupkg" />
<None Include="packages\Newtonsoft.Json.13.0.1\packageIcon.png" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net20\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net20\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net35\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net35\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net40\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net40\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard1.0\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard1.0\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard1.3\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard1.3\Newtonsoft.Json.xml" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard2.0\Newtonsoft.Json.dll" />
<None Include="packages\Newtonsoft.Json.13.0.1\lib\netstandard2.0\Newtonsoft.Json.xml" />
<None Include="Resources\inicio.png" />
<None Include="Resources\inicio24.png" />
<None Include="Resources\ptosctrl.png" />
<None Include="Resources\ptosctrl24.png" />
<None Include="Resources\time.png" />
<None Include="Resources\time24.png" />
<None Include="Resources\zonas.png" />
<None Include="Resources\zonas24.png" />
<None Include="Services\ProcesoEjecServ.cs.bak" />
<None Include="View\OliviaIconPro.ico" />
<None Include="View\OliviaIconPro16.png" />
<None Include="View\Recogida\old\PaneRecogidaSub2.xaml.NotUsed" />
<None Include="View\Recogida\old\PaneRecogidaSub2.xaml.cs.NotUsed" />
<None Include="View\Recogida\old\PaneRecogidaSub4.xaml.NotUsed" />
<None Include="View\Recogida\old\PaneRecogidaSub4.xaml.cs.NotUsed" />
<None Include="ViewModel\Limpieza\PaneLimpiezaViewModel.cs.bak" />
<None Include="ViewModel\Recogida\old\PaneRecogidaSub2ViewModel.cs.NotUsed" />
<None Include="ViewModel\Recogida\old\PaneRecogidaSub4ViewModel.cs.NotUsed" />
</ItemGroup>
<ItemGroup>
<Compile Update="Resource1.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resource1.resx</DependentUpon>
</Compile>
</ItemGroup>
<Import Project="C:\Program Files\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets" Condition="Exists('C:\Program Files\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets') AND !Exists('Esri.ArcGISPro.Extensions.targets')" />
=======
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!--
PackageAction can be:
@ -393,6 +171,10 @@
<UsingTask AssemblyFile="$(ArcGISFolder)\bin\proapp-sdk-MSBuild.dll" TaskName="proapp_sdk_MSBuild.ConvertToRelativePath" />
<!--<Import Project="Esri.ArcGISPro.Extensions.targets" Condition="Exists('Esri.ArcGISPro.Extensions.targets')" />-->
<Import Project="$(ArcGISFolder)\bin\Esri.ProApp.SDK.Desktop.targets" Condition="Exists('$(ArcGISFolder)\bin\Esri.ProApp.SDK.Desktop.targets') AND !Exists('Esri.ArcGISPro.Extensions.targets')" />
<PropertyGroup>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
@ -403,4 +185,5 @@
<!--<Target Name="BeforeBuild">
<Error Text="C:\Users\Elena\AppData\Local\Programs\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets not found." Condition="!Exists('C:\Users\Elena\AppData\Local\Programs\ArcGIS\Pro\bin\Esri.ProApp.SDK.Desktop.targets') AND !Exists('Esri.ArcGISPro.Extensions.targets')" />
</Target>-->
>>>>>>> origin/develop
</Project>

View File

@ -15,7 +15,7 @@ namespace OliviaAddInPro.Services
private static string pathConfigDef = "C:\\Olivia";
private static ConfigServ configServ=null;
private static string nameDirWork = "%dir_work%";
public const string OlvRegKey = "SOFTWARE\\Narvaling\\Olivia_3_0";
public const string OlvRegKey = "SOFTWARE\\Narvaling\\Olivia_3_1";
public const string OlvRegName = "workdir";
public const string OlvConfigName = "olv.conf";
@ -60,6 +60,10 @@ namespace OliviaAddInPro.Services
res.path_exe = pon_path_absoluto(res.path_exe, res.path_work);
res.path_manual = pon_path_absoluto(res.path_manual, res.path_work);
//chapa
if (res.path_manual.Contains("Manual_Olivia_3_0.pdf"))
res.path_manual.Replace("Manual_Olivia_3_0.pdf", "Manual_Olivia.pdf");
//////////////
res.path_temp = pon_path_absoluto(res.path_temp, res.path_work);
res.path_data = pon_path_absoluto(res.path_data, res.path_work);
res.path_cfg_aux = @"%dir_work%cfg.ini";
@ -67,8 +71,9 @@ namespace OliviaAddInPro.Services
return res;
}
public void Guardar(OliviaConf conf)
public Respuesta<bool> Guardar(OliviaConf conf)
{
Respuesta<bool> resp = new Respuesta<bool> { Value = true };
conf.path_exe = pon_path_relativo(conf.path_exe, conf.path_work);
conf.path_manual = pon_path_relativo(conf.path_manual, conf.path_work);
conf.path_temp = pon_path_relativo(conf.path_temp, conf.path_work);
@ -81,10 +86,18 @@ namespace OliviaAddInPro.Services
conf.PathCartela = pon_path_relativo(conf.PathCartela, conf.path_work);
conf.Path_Eje_via = pon_path_relativo(conf.Path_Eje_via, conf.path_work);
try
{
string jsonString = JsonConvert.SerializeObject(conf);
var path_cfg = GetPathConfig();
path_cfg = Path.Combine(path_cfg, OlvConfigName);
File.WriteAllText(path_cfg, jsonString);
}
catch(Exception ex)
{
resp.Error.Add("Error al guardar archivo: " + ex.Message);
resp.Value = false;
}
conf.path_exe = pon_path_absoluto(conf.path_exe, conf.path_work);
conf.path_cfg_aux = pon_path_absoluto(conf.path_cfg_aux, conf.path_work);
@ -96,6 +109,8 @@ namespace OliviaAddInPro.Services
conf.PathSimbESRI = pon_path_absoluto(conf.PathSimbESRI, conf.path_work);
conf.PathCartela = pon_path_absoluto(conf.PathCartela, conf.path_work);
conf.Path_Eje_via = pon_path_absoluto(conf.Path_Eje_via, conf.path_work);
return resp;
}
/**
* cambia la carpeta referida a directorio de trabajo por los caracteres OliviaDirWork (%dir_work%)
@ -170,7 +185,7 @@ namespace OliviaAddInPro.Services
c.buffer_export = 1000;
c.path_exe=@"%dir_work%bin\OliviaTasks.exe";
c.path_manual= @"%dir_work%Manual_Olivia_3_0.pdf";
c.path_manual= @"%dir_work%Manual_Olivia.pdf";
c.path_temp = @"%dir_work%temp\";
c.path_data=@"%dir_work%data\";
c.Path_Eje_via = "";
@ -292,7 +307,7 @@ namespace OliviaAddInPro.Services
c.v_desp_LS=0;
//Reco
c.id= "OBJECTID";
c.id= "ID";
c.nomrec= "NOMB_TIP_REC";
c.lateralidad= "LATERALIDAD";
c.frac= "FRACCION";

View File

@ -82,7 +82,7 @@ namespace OliviaAddInPro.Services
//////////////////////////////////////////////
///Se guarda el nombre de los campos originales
///
com.GuardaNombCamposOrig(com.CapaElems);
com.GuardaCamposOrig(com.CapaElems);
//Cuenta las filas que cumplen la consulta
var nelems = HelperGdb.GetNumElemsSync(com.CapaElems, com.ConsultaAmbs);
@ -515,13 +515,9 @@ namespace OliviaAddInPro.Services
public bool ComprCreaColOid(string pathCapa, string pathCapaOrig, SpatialQueryFilter filter)
{
//comprueba si está el campo
int NCAMPS = 1;
string[] camps;
camps = new string[NCAMPS];
camps[0] = ComunDef.CamposCom.camp_oid;
int compCamp = HelperGdb.CheckFileds(pathCapa, camps);
bool compCamp = HelperGdb.CheckField(pathCapa, ComunDef.CamposCom.camp_oid);
ErrStr = HelperGdb.OutStr;
if (compCamp == 0)
if (compCamp)
return true; //tiene el campo
//no lo tiene, lo crea
@ -560,7 +556,7 @@ namespace OliviaAddInPro.Services
{
if (fc_shp == null)
return false;
int nelem_shp = HelperGdb.GetNumElemsSync(fc_shp);
long nelem_shp = HelperGdb.GetNumElemsSync(fc_shp);
if (nelem_shp != ids.Count)
return false;
@ -632,11 +628,13 @@ namespace OliviaAddInPro.Services
if (geomAux == null)
{
ErrStr = "Error al intersecar zonas y/o niveles.";
HelperGdb.Free(fc);
return null;
}
if (geomAux.IsEmpty)
{
ErrStr = "No existen ámbitos en la intersección entre zonas y/o niveles.";
HelperGdb.Free(fc);
return null;
}
}
@ -644,6 +642,7 @@ namespace OliviaAddInPro.Services
if ((geomAux == null) && (com.CapaElems == OliviaGlob.Paths.PathGdbNw))
{
ErrStr = "Al emplear ejes de calle como ámbitos es necesario indicar polígono de exportación";
HelperGdb.Free(fc);
return null;
}
@ -656,6 +655,7 @@ namespace OliviaAddInPro.Services
if (geomAmbits == null || geomAmbits.IsEmpty)
{
ErrStr = "No se ha podido generar geometría de los ámbitos" + com.ConsultaAmbs + HelperGdb.OutStr;
HelperGdb.Free(fc);
return null;
}
if (geomAux == null)
@ -673,6 +673,7 @@ namespace OliviaAddInPro.Services
if (geomAux == null)
{
ErrStr = "Error al intersecar con las restricciones.";
HelperGdb.Free(fc);
return null;
}
}
@ -878,9 +879,10 @@ namespace OliviaAddInPro.Services
//tratamiento = System.IO.Path.GetFileName(System.IO.Path.GetDirectoryName(path_aux));
amb_aux = System.IO.Path.GetFileNameWithoutExtension(path_aux);
//comprueba si ya existe ese ft class
FeatureClass ft = HelperGdb.GetFtClass(path_aux);
FeatureClass ft = HelperGdb.GetFtClassSync(path_aux);
if (ft != null)
sobreescribe = true;
HelperGdb.Free(ft);
}
}
//crea el dataset o comprueba si existe

View File

@ -280,7 +280,7 @@ namespace OliviaAddInPro.Services
if (string.IsNullOrEmpty(OliviaGlob.Paths.PathDatasetImport))
{ //ahora pide elegir nombre de ftclass
FtClssName = HelperGdb.SaveFileDlg("Seleccione ubicación e introduzca nombre de Feature Class a importar", GdbFileName, null, ArcGIS.Desktop.Catalog.ItemFilters.featureClasses_all);
FtClssName = HelperGdb.SaveFileDlg("Seleccione ubicación e introduzca nombre de Feature Class a importar", GdbFileName, null, ArcGIS.Desktop.Catalog.ItemFilters.FeatureClasses_All);
}
return res;

View File

@ -178,7 +178,7 @@ namespace OliviaAddInPro.Services
{
if (!conectado)
{
if (!soc.conecta(Ip, Puerto))
if (!soc.conecta(Ip, Puerto, Ip))
{
conectado = false;
return false;

View File

@ -43,6 +43,7 @@ namespace OliviaAddInPro.View.Configuracion
public FrameworkElement ResolveEditor(PropertyItem propertyItem)
{
Binding binding = new Binding("Value");
binding.Source = propertyItem;
binding.Mode = propertyItem.IsReadOnly ? BindingMode.OneWay : BindingMode.TwoWay;

View File

@ -77,7 +77,9 @@ namespace OliviaAddInPro
var guardar = HelperGlobal.ponMsg("¿Desea guardar los cambios antes de salir?", System.Windows.MessageBoxImage.Information, "OLIVIA", System.Windows.MessageBoxButton.YesNo);
if (guardar)
{
ConfigServ.Serv.Guardar(paneConfig.Configuracion);
Respuesta<bool> resp = ConfigServ.Serv.Guardar(paneConfig.Configuracion);
if (!resp.Value)
HelperGlobal.ponMsg(resp.Error.First());
}
paneConfig.hay_cambios = false;
}

View File

@ -42,7 +42,10 @@ namespace OliviaAddInPro
public void OnGuardar()
{
ConfigServ.Serv.Guardar(Configuracion);
Respuesta<bool> resp = ConfigServ.Serv.Guardar(Configuracion);
if (!resp.Value)
HelperGlobal.ponMsg(resp.Error.First());
else
HelperGlobal.ponMsg("Se ha guardado la configuración");
hay_cambios = false;
}

View File

@ -193,13 +193,12 @@ namespace OliviaAddInPro
public PaneLimpiezaSub1ViewModel()
{
LblCapaElems = Resource1.String_selec_capa;
timeTto = 10;
textVeloDespl = "10";
timeTto = 0;
textVeloDespl = "";
lblUdsTimeTto = "min";
lblUdsVeloDespl = "km/h";
limpServ = new LimpiezaServ(null); //no hace falta instancia limp
textAnchoVia = LimpiezaDef.Parametros.ancho_via.ToString();
}
/**
* Realiza las comprobaciones para cuando se ha abierto una capa
@ -212,6 +211,8 @@ namespace OliviaAddInPro
Ambitos.Clear();
TipoTto = -1;
VisTextAnchoVia = System.Windows.Visibility.Hidden;
TextVeloDespl = "";
cambia_tiempo_tto();
OliviaGlob.AddFlagTipEjec(TiposEjecucion.Config); //lo reinicia, por si estaba después de planificar
OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.Config2);
if (string.IsNullOrEmpty(capa))