public void UpdateDataSource()
        {
            if (BufferResult != null && BufferResult.IsNotEmpty)
            {
                BufferResult.EndLoadData();

                LastFocusRow = gvMain.FocusedRowHandle;
                if (BufferResult.Rows.Count > 0)
                {
                    btnExport.Enabled = true;
                }

                gcMain.DataSource = BufferResult;
                gvMain.ExpandAllGroups();

                gvMain.FocusedRowHandle = LastFocusRow;
                gvMain.Focus();

                if (StatisticsInfo.AutoFitWidthColumns != CODES.MODSEARCH.AUTOFITWIDTH.NO)
                {
                    BestFitColumns();
                }
            }
            else
            {
                gcMain.DataSource = null;
                btnExport.Enabled = false;
            }
        }
        public void ExecuteFetchResult()
        {
            CurrentThread = new WorkerThread(
                delegate
            {
                LockUserAction();
                try
                {
                    if (StatisticsInfo.PageMode == CODES.MODSEARCH.PAGEMODE.ALL_FROM_DATASET)
                    {
                        BufferResult.GetFullBuffer();
                    }
                    else if (StatisticsInfo.PageMode == CODES.MODSEARCH.PAGEMODE.APPEND_FROM_READER)
                    {
                        BufferResult.GetMoreRows(SelectedPage);
                    }
                    else
                    {
                        BufferResult.GetBuffer(SelectedPage);
                    }
                }
                catch (Exception ex)
                {
                    ShowError(ex);
                }
                finally
                {
                    UnLockUserAction();
                }
            }, this);

            CurrentThread.ProcessComplete += ExecuteFetchResult_ProcessComplete;
            CurrentThread.Start();
        }
 public void DisposeLastSearchResult()
 {
     if (BufferResult != null)
     {
         BufferResult.Dispose();
         BufferResult = null;
     }
 }
Esempio n. 4
0
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }

            if (BufferResult != null)
            {
                BufferResult.Dispose();
            }
            base.Dispose(disposing);
        }
Esempio n. 5
0
        public BufferResult NextPage(BufferResult result)
        {
            var current = (BufferHeader *)((byte *)result.Buffer - BufferHeader.BufferHeaderSize);
            var next    = (*current).Next;

            if (next == null)
            {
                return(new BufferResult());
            }

            return(new BufferResult()
            {
                Length = (*next).Used, Buffer = (IntPtr)BufferHeader.Data(next)
            });
        }
Esempio n. 6
0
        public void Prepare(DeviceContextHolder holder, bool useMsaa)
        {
            if (_effect == null)
            {
                OnInitialize(holder);
            }

            var width             = holder.Width;
            var height            = holder.Height;
            var sampleDescription = useMsaa ? holder.SampleDescription : (SampleDescription?)null;

            if (BufferScene.Resize(holder, width, height, sampleDescription))
            {
                BufferBaseReflection.Resize(holder, width, height, sampleDescription);
                BufferResult.Resize(holder, width, height, null);
            }

            holder.DeviceContext.ClearRenderTargetView(BufferBaseReflection.TargetView, (Color4) new Vector4(0));
        }
Esempio n. 7
0
 public void Dispose()
 {
     BufferScene.Dispose();
     BufferResult.Dispose();
     BufferBaseReflection.Dispose();
 }
Esempio n. 8
0
        public BufferResult NextPage(BufferResult result)
        {
            var current = (BufferHeader*)((byte*)result.Buffer - BufferHeader.BufferHeaderSize);
            var next = (*current).Next;
            if (next == null)
                return new BufferResult();

            return new BufferResult() { Length = (*next).Used, Buffer = (IntPtr)BufferHeader.Data(next) };
        }
        private async void MyMap_MouseClick(object sender, ESRI.ArcGIS.Client.Map.MouseEventArgs e)
        {
            try
            {
                if (_cts != null)
                {
                    _cts.Cancel();
                }

                _cts = new CancellationTokenSource();

                Graphic clickGraphic = new Graphic();
                clickGraphic.Symbol   = LayoutRoot.Resources["DefaultMarkerSymbol"] as ESRI.ArcGIS.Client.Symbols.Symbol;
                clickGraphic.Geometry = e.MapPoint;
                clickGraphic.Geometry.SpatialReference = MyMap.SpatialReference;

                _pointAndBufferGraphicsLayer.Graphics.Clear();
                _resultsGraphicsLayer.Graphics.Clear();

                clickGraphic.SetZIndex(2);
                _pointAndBufferGraphicsLayer.Graphics.Add(clickGraphic);

                ESRI.ArcGIS.Client.Tasks.BufferParameters bufferParams = new ESRI.ArcGIS.Client.Tasks.BufferParameters()
                {
                    BufferSpatialReference = new SpatialReference(4326),
                    OutSpatialReference    = MyMap.SpatialReference,
                    Unit = LinearUnit.Meter,
                };
                bufferParams.Distances.Add(100);
                bufferParams.Features.Add(clickGraphic);

                BufferResult bufferResult = await _geometryService.BufferTaskAsync(bufferParams, _cts.Token);

                Graphic bufferGraphic = new Graphic();
                bufferGraphic.Geometry = bufferResult.Results[0].Geometry;
                bufferGraphic.Symbol   = LayoutRoot.Resources["BufferSymbol"] as ESRI.ArcGIS.Client.Symbols.Symbol;
                bufferGraphic.SetZIndex(1);

                _pointAndBufferGraphicsLayer.Graphics.Add(bufferGraphic);

                ESRI.ArcGIS.Client.Tasks.Query query = new ESRI.ArcGIS.Client.Tasks.Query();
                query.ReturnGeometry      = true;
                query.OutSpatialReference = MyMap.SpatialReference;
                query.Geometry            = bufferGraphic.Geometry;
                query.OutFields.Add("OWNERNME1");

                QueryResult queryResult = await _queryTask.ExecuteTaskAsync(query, _cts.Token);

                if (queryResult.FeatureSet.Features.Count < 1)
                {
                    MessageBox.Show("No features found");
                    return;
                }

                foreach (Graphic selectedGraphic in queryResult.FeatureSet.Features)
                {
                    selectedGraphic.Symbol = LayoutRoot.Resources["ParcelSymbol"] as ESRI.ArcGIS.Client.Symbols.Symbol;
                    _resultsGraphicsLayer.Graphics.Add(selectedGraphic);
                }
            }
            catch (Exception ex)
            {
                if (ex is ServiceException)
                {
                    MessageBox.Show(String.Format("{0}: {1}", (ex as ServiceException).Code.ToString(), (ex as ServiceException).Details[0]), "Error", MessageBoxButton.OK);
                    return;
                }
            }
        }