/// <summary>
        /// Функция изменения видимости слоя. Возвращает видимость слоя после попытки изменения
        /// </summary>
        /// <param name="table"></param>
        /// <returns></returns>
        internal override bool MakeLayerVisible(AbsM.TableBaseM table, bool?value)
        {
            mvLayer layer = _mv.getLayer(table.Name);

            layer.Visible = value ?? false;
            return(layer.Visible);
        }
        /// <summary>
        /// Применить фильтр на карте
        /// </summary>
        public void ApplyOnMap(object parameter = null)
        {
            AxmvMapLib.AxMapLIb axMapLib = Program.mainFrm1.axMapLIb1;
            Pg_M.PgTableBaseM   pgTable  = _source.Table as Pg_M.PgTableBaseM;

            mvLayer layer = axMapLib.getLayer(pgTable.NameMap);

            if (layer != null)
            {
                List <IParams> listParams = new List <IParams>();
                String         query      = GetWhere(DynamicFilter, listParams);
                // todo: (Dias) На текущий момент axMapLib в строке фильтра не использует параметры.
                // Поэтому приходится парсить параметры. Нужно чтобы карта поддерживала параметры в фильтрах
                foreach (IParams param in listParams)
                {
                    if (param.type == DbType.Date ||
                        param.type == DbType.DateTime ||
                        param.type == DbType.String)
                    {
                        query = query.Replace(param.paramName, String.Format("'{0}'", param.value));
                    }
                    else
                    {
                        query = query.Replace(param.paramName, String.Format("{0}", param.value));
                    }
                }
                layer.Filter = query;
            }
        }
示例#3
0
 void CosmeticTableBaseM_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
 {
     if (e.PropertyName == "ShowLabels")
     {
         mvLayer mvLayer = _axMapLib.getLayer(NameMap);
         if (mvLayer != null)
         {
             mvLayer.showlabels = ShowLabels;
         }
     }
 }
示例#4
0
 public void ReloadFullInfo()
 {
     _tables.Clear();
     _groups[0].Tables.Clear();
     _bottomLayers = new List <mvLayer>();
     for (int i = 0; i < _mv.LayersCount; i++)
     {
         mvLayer ll = _mv.getLayerByNum(i);
         ll.selectable = false;
         _bottomLayers.Add(ll);
     }
     UpdateBottomLayers();
 }
示例#5
0
        public LabelStyle(int idT)
        {
            _idT = idT;
            _ti  = classesOfMetods.getTableInfo(idT);
            String layerName = Program.RelationVisbleBdUser.GetNameInBd(idT);

            tLayer = Program.app.mapLib.getLayer(layerName);
            save   = false;

            CenterToParent();
            InitializeComponent();

            if (!SyncController.HasRight(idT))
            {
                button_save.Enabled = false;
            }
        }
示例#6
0
        public VMPDataRepositoryVM(TmM.ITableManagerVM source)
            : base(source, AbsM.ERepositoryType.VMP, true)
        {
            _groups.Add(new AbsM.GroupM(this, 0)
            {
                Text = "Группа слоев подложки"
            });

            _bottomLayers = new List <mvLayer>();
            for (int i = 0; i < _mv.LayersCount; i++)
            {
                mvLayer ll = _mv.getLayerByNum(i);
                ll.selectable = false;
                _bottomLayers.Add(ll);
            }
            //ReloadInfo();
            Title = Properties.Resources.LocBaseLayersConfig;
            Text  = Properties.Resources.LocSourceBaseLayers;
        }
示例#7
0
        private void PastFromSQLite(object obj)
        {
            int      countRow = 0;
            var      rowNum   = 0;
            TimeSpan tSnap    = TimeSpan.Zero;

            try
            {
                var startDT = DateTime.Now;
                countRow = SqlCopyPaste.CountRowsSQLite();
                rowNum   = SqlCopyPaste.PastFromSQLite(CurrentTable);
                tSnap    = DateTime.Now - startDT;
            }
            catch (Exception ex)
            {
                mf.StatusInfo = ex.Message;
            }

            if (rowNum > 0)
            {
                var countErrorGeom = countRow - rowNum;
                var str            = "Объектов вставлено: " + rowNum;
                if (countErrorGeom != 0)
                {
                    str = str + ", пропущено: " + countErrorGeom;
                }
                mf.StatusInfo = str;
#if DEBUG
                mf.StatusInfo += " \tЗатраченое время: " + tSnap;
#endif
                if (CurrentTable is DataAccess.SourceCosmetic.Model.CosmeticTableBaseM)
                {
                    mvLayer layer = mf.axMapLIb1.getLayer((CurrentTable as DataAccess.SourceCosmetic.Model.CosmeticTableBaseM).NameMap);
                    layer.ExternalFullReloadVisible();
                }
                mf.axMapLIb1.mapRepaint();
            }
        }