Beispiel #1
0
 public ApplicationVM()
 {
     viewDictionary = new ViewConverter();
     View_ViewModel = new Dictionary <string, LinkViewToViewModel>();
     NavigationList = new List <IControlItem>();
     InitialiseLists();
 }
        protected override void OnMouseMove(MouseEventArgs e)
        {
            if (!_dragging && _mouseDownLocation != Point.Empty && e.Button == MouseButtons.Left)
            {
                _mouseRelativeLocation = new Point(e.X - _mouseDownLocation.X,
                                                   e.Y - _mouseDownLocation.Y);

                if (!withinDragTolerance(e.Location))
                {
                    _dragging = true;
                    _mousePreviousLocation = _mouseDownLocation;
                }
            }

            if (_dragging)
            {
                onMoveTo(ViewConverter.Convert(e.Location));
                _mousePreviousLocation = e.Location;
            }
            else
            {
                onHover(ViewConverter.Convert(e.Location));
            }

            base.OnMouseMove(e);
        }
Beispiel #3
0
        public void ParseLabel()
        {
            ViewConverter converter = ViewConverter.GetInstance();

            XmlDocument document = converter.LoadXmlDocument(TEST3);
            XmlNodeList rootNode = document.GetElementsByTagName("GroupBox");

            Assert.AreEqual(1, rootNode.Count);
            Assert.AreEqual("GroupBox", rootNode[0].Name);

            GroupBox box = new GroupBox();

            converter.ConvertDocument(rootNode[0], box);

            Assert.AreEqual(1, box.Controls.Count);

            GroupBox parent = box.Controls[0] as GroupBox;

            Assert.AreEqual("groupBox1", parent.Text);
            Assert.AreEqual("groupBox1", parent.Name);
            Assert.AreEqual(new Size(50, 50), parent.Size);

            Label label = parent.Controls[0] as Label;

            Assert.AreEqual("label1", label.Name);
            Assert.AreEqual("How are you?", label.Text);
        }
Beispiel #4
0
        public void ConvertFromXmlRecursivelyTest()
        {
            ViewConverter converter = ViewConverter.GetInstance();

            XmlDocument document = converter.LoadXmlDocument(TEST2);
            XmlNodeList formNode = document.GetElementsByTagName("Form");

            Assert.AreEqual(1, formNode.Count);
            Assert.AreEqual("Form", formNode[0].Name);

            GroupBox box = new GroupBox();

            converter.ConvertDocument(formNode[0], box);

            Assert.AreEqual(1, box.Controls.Count);

            GroupBox parent = box.Controls[0] as GroupBox;

            Assert.AreEqual("Hello, World", parent.Text);
            Assert.AreEqual("Form1", parent.Name);
            Assert.AreEqual(new Size(100, 100), parent.Size);

            Assert.AreEqual("groupBox1", box.Controls[0].Controls[0].Name);
            Assert.AreEqual("groupBox1", box.Controls[0].Controls[0].Text);
            Assert.AreEqual(new Size(50, 50), box.Controls[0].Controls[0].Size);
        }
Beispiel #5
0
        public IEnumerable <WorkerLabel> GetWorkers()
        {
            if (UserRank == WorkerView.Rank.Manager)
            {
                try
                {
                    workers.Open();
                }catch (RepositoryOpenFailedExceptiom e)
                {
                    log.Exception(e, "Failed on tring to get all the users.");
                    log.Fetal("Fetal Error, App shuting down.");
                    Shutdown(1);
                }
                List <WorkerLabel> list = new List <WorkerLabel>();
                foreach (var item in workers.GetAll())
                {
                    list.Add(ViewConverter.CreateWorkerLabel(item));
                }
                try
                {
                    workers.Close();
                }catch (RepositorySaveFailedExceptiom e)
                {
                    log.Exception(e, "Failed on tring to get all the users.");
                    log.Fetal("Fetal Error, App shuting down.");
                    Shutdown(1);
                }

                return(list);
            }
            else
            {
                throw new UserAccessException("You dont have access to Workes Reposetory.");
            }
        }
Beispiel #6
0
        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {
            groupBox1.Controls.Clear();
            int pos = richTextBox1.SelectionStart;

            try
            {
                ViewConverter converter = ViewConverter.GetInstance();

                XmlDocument document = converter.LoadXmlDocument(richTextBox1.Text);
                XmlNode     rootNode = document.FirstChild;
                converter.ConvertDocument(rootNode, groupBox1);

                HashSet <string> names = new HashSet <string>();
                converter.GetAllTagsNames(rootNode, names);

                UpdateRichTextStyle(names.ToArray());
            }
            catch (XmlException xmlException)
            {
                UpdateRichTextStyle(null, xmlException.LineNumber);
            }
            catch (Exception exception)
            {
                //MessageBox.Show(exception.Message);
            }
            finally
            {
                richTextBox1.SelectionStart = pos;
            }
        }
Beispiel #7
0
        public override IEnumerable <GdiRenderObject> RenderSymbols(IEnumerable <Point2D> locations, Symbol2D symbol,
                                                                    Symbol2D highlightSymbol, Symbol2D selectSymbol,
                                                                    RenderState renderState)
        {
            if (renderState == RenderState.Selected)
            {
                symbol = selectSymbol;
            }
            if (renderState == RenderState.Highlighted)
            {
                symbol = highlightSymbol;
            }

            foreach (Point2D location in locations)
            {
                Bitmap bitmapSymbol = getSymbol(symbol);
                if (bitmapSymbol.PixelFormat != PixelFormat.Undefined)
                {
                    System.Drawing.Drawing2D.Matrix    transform      = ViewConverter.Convert(symbol.AffineTransform);
                    System.Drawing.Imaging.ColorMatrix colorTransform = ViewConverter.Convert(symbol.ColorTransform);
                    RectangleF      bounds = new RectangleF(ViewConverter.Convert(location), bitmapSymbol.Size);
                    GdiRenderObject holder = new GdiRenderObject(bitmapSymbol, bounds, transform, colorTransform);
                    holder.State = renderState;
                    yield return(holder);
                }
                else
                {
                    Debug.WriteLine("Unkbown pixel format");
                }
            }
        }
Beispiel #8
0
        public void RemoveStorItem(int id)
        {
            StoreItem item;

            if (storeItems.RemoveById(id, out item))
            {
                ItemRemoved?.Invoke(this, ViewConverter.CreateStoreItemView(item));
            }
        }
Beispiel #9
0
        public IEnumerable <StoreItemControl> GetStoreItems()
        {
            List <StoreItemControl> list = new List <StoreItemControl>();

            foreach (var item in storeItems.GetAll())
            {
                list.Add(ViewConverter.CreateStoreItemControl(item));
            }
            return(list);
        }
Beispiel #10
0
        protected override void OnMouseDown(MouseEventArgs e)
        {
            _mouseDownLocation = e.Location;

            if (e.Button == MouseButtons.Left) // dragging
            {
                onBeginAction(ViewConverter.Convert(e.Location));
            }

            base.OnMouseDown(e);
        }
Beispiel #11
0
        public void ConvertFromXmlTest()
        {
            ViewConverter converter = ViewConverter.GetInstance();

            XmlDocument document = converter.LoadXmlDocument(TEST1);
            XmlNodeList formNode = document.GetElementsByTagName("Form");

            Assert.AreEqual(1, formNode.Count);
            Assert.AreEqual("Hello, World", formNode[0].Attributes["Text"]?.InnerText);
            Assert.AreEqual("Form1", formNode[0].Attributes["Name"]?.InnerText);
            Assert.AreEqual(null, formNode[0].Attributes["DoubleBuffered"]?.InnerText);
        }
Beispiel #12
0
        private void onRequestZoomToViewBounds(Rectangle2D viewBounds)
        {
            EventHandler <MapViewPropertyChangeEventArgs <Rectangle2D> > e = ZoomToViewBoundsRequested;

            if (e != null)
            {
                MapViewPropertyChangeEventArgs <Rectangle2D> args =
                    new MapViewPropertyChangeEventArgs <Rectangle2D>(
                        ViewConverter.Convert(ClientRectangle), viewBounds);

                e(this, args);
            }
        }
Beispiel #13
0
        public void UpdateWorker(WorkerView updated, WorkerView toUpdate)
        {
            if (!IsUserLoggedIn)
            {
                throw new UserLoggedInException();
            }

            Worker upTo = ViewConverter.CreateWorker(updated);

            try
            {
                workers.Open();
                if (!workers.UpdateWorker(toUpdate.Id, upTo))
                {
                    workers.Close();
                    throw new WorkerUpdateFailedException();
                }
                if (currentUser.Id == toUpdate.Id)
                {
                    WorkerUpdated?.Invoke(this, ViewConverter.CreateWorkerView(workers.GetById(currentUser.Id)));
                }
                workers.Close();
            }
            catch (DAL.Repositorys.PrimeryKeyAllReadyExistException e)
            {
                log.Exception(e);
                throw new util.PrimeryKeyAllReadyExistException();
            }catch (RepositoryOpenFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to update a user.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
                return;
            }catch (RepositorySaveFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to update a user.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
                return;
            }
            catch (Exception e)
            {
                log.Exception(e, "Unknown exception, Closing App.");
                Shutdown(1);
                return;
            }
            finally
            {
                workers.Close();
            }
        }
Beispiel #14
0
        public void GetAllTagsNamesTest()
        {
            ViewConverter converter = ViewConverter.GetInstance();

            XmlDocument      document = converter.LoadXmlDocument(TEST2);
            XmlNode          rootNode = document.FirstChild;
            HashSet <string> names    = new HashSet <string>();

            converter.GetAllTagsNames(rootNode, names);

            Assert.AreEqual(2, names.Count);
            Assert.IsTrue(names.Contains("Form"));
            Assert.IsTrue(names.Contains("GroupBox"));
        }
Beispiel #15
0
        public IEnumerable <WorkerLabel> GetWorkers(params Predicate <WorkerView>[] predicates)
        {
            if (UserRank == WorkerView.Rank.Manager)
            {
                try
                {
                    workers.Open();
                }
                catch (RepositoryOpenFailedExceptiom e)
                {
                    log.Exception(e, "Failed on tring to get users.");
                    log.Fetal("Fetal Error, App shuting down.");
                    Shutdown(1);
                }
                List <WorkerLabel> list = new List <WorkerLabel>();
                foreach (var item in workers.GetAll())
                {
                    var  itemView = ViewConverter.CreateWorkerView(item);
                    bool found    = false;
                    foreach (var pred in predicates)
                    {
                        if (pred(itemView))
                        {
                            found = true;
                            break;
                        }
                    }

                    if (found)
                    {
                        list.Add(ViewConverter.CreateWorkerLabel(itemView));
                    }
                }
                try
                {
                    workers.Close();
                }
                catch (RepositorySaveFailedExceptiom e)
                {
                    log.Exception(e, "Failed on tring to get all the users.");
                    log.Fetal("Fetal Error, App shuting down.");
                    Shutdown(1);
                }
                return(list);
            }
            else
            {
                throw new UserAccessException("You dont have access to Workes Reposetory.");
            }
        }
Beispiel #16
0
        public void AddWorker(WorkerView work, byte[] hashedpass)
        {
            if (!IsUserLoggedIn)
            {
                throw new UserLoggedInException();
            }

            if (currentUser.WorkerRank != WorkerView.Rank.Manager)
            {
                throw new UserAccessException($"{WorkerView.Rank.Manager} Access needed for that action, your Access is {currentUser.WorkerRank}.");
            }

            try
            {
                workers.Open();
            }
            catch (RepositoryOpenFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to add user.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
            }
            Worker w = ViewConverter.CreateWorker(work);

            try
            {
                w.Password = SHA256.Create().ComputeHash(hashedpass);
                workers.Add(w);
                workers.Close();
                WorkerAdded?.Invoke(this, work);
            }
            catch (DAL.Repositorys.PrimeryKeyAllReadyExistException e)
            {
                log.Exception(e);
                throw new util.PrimeryKeyAllReadyExistException();
            }catch (RepositorySaveFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to add user.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
            }
            catch (Exception e)
            {
                log.Exception(e);
                log.Fetal("Fetal Error Closing down app...");
                Shutdown(1);
            }
        }
        public void TestAddStoreItem()
        {
            TestLogin();


            StoreItemView item = ViewConverter.CreateStoreItemView(book1);

            try
            {
                Logic.Instance.AddStoreItem(item);
            }catch (PrimeryKeyAllReadyExistException e)
            {
                Logger.Exception(e, "Testing add item.");
                Assert.Fail("Created an item with an all ready taken ISBN");
            }
        }
Beispiel #18
0
        protected override void OnMouseUp(MouseEventArgs e)
        {
            base.OnMouseUp(e);

            if (e.Button == MouseButtons.Left)
            {
                onEndAction(ViewConverter.Convert(e.Location));
            }

            _mouseDownLocation = Point.Empty;

            if (_dragging)
            {
                _dragging = false;
                _mouseRelativeLocation = Point.Empty;
                _mousePreviousLocation = Point.Empty;
            }
        }
Beispiel #19
0
        /// <summary>
        ///  kbd4hire 20090318 Method no longer used!
        /// </summary>
        /// <returns></returns>
        private GdiMatrix getGdiViewTransform()
        {
            if (_gdiViewMatrix == null)
            {
                _gdiViewMatrix = ToViewTransform == null
                                     ? new GdiMatrix()
                                     : ViewConverter.Convert(ToViewTransform);

                return(_gdiViewMatrix);
            }

            Matrix2D viewMatrix = ToViewTransform ?? new Matrix2D();

            Single[] gdiElements = _gdiViewMatrix.Elements;

            if (gdiElements[0] != (Single)viewMatrix.M11 ||
                gdiElements[1] != (Single)viewMatrix.M12 ||
                gdiElements[2] != (Single)viewMatrix.M21 ||
                gdiElements[3] != (Single)viewMatrix.M22 ||
                gdiElements[4] != (Single)viewMatrix.OffsetX ||
                gdiElements[5] != (Single)viewMatrix.OffsetY)
            {
                Debug.WriteLine(
                    String.Format(
                        "Disposing GDI matrix on values: {0} : {1}; {2} : {3}; {4} : {5}; {6} : {7}; {8} : {9}; {10} : {11}",
                        gdiElements[0],
                        (Single)viewMatrix.M11,
                        gdiElements[1],
                        (Single)viewMatrix.M12,
                        gdiElements[2],
                        (Single)viewMatrix.M21,
                        gdiElements[3],
                        (Single)viewMatrix.M22,
                        gdiElements[4],
                        (Single)viewMatrix.OffsetX,
                        gdiElements[5],
                        (Single)viewMatrix.OffsetY));

                _gdiViewMatrix.Dispose();
                _gdiViewMatrix = ViewConverter.Convert(ToViewTransform);
            }

            return(_gdiViewMatrix);
        }
Beispiel #20
0
        public void ConvertFromXmlNestedElementsTest()
        {
            ViewConverter converter = ViewConverter.GetInstance();

            XmlDocument document = converter.LoadXmlDocument(TEST2);
            XmlNodeList formNode = document.GetElementsByTagName("Form");

            Assert.AreEqual(1, formNode.Count);
            Assert.AreEqual("Hello, World", formNode[0].Attributes["Text"]?.InnerText);
            Assert.AreEqual("Form1", formNode[0].Attributes["Name"]?.InnerText);
            Assert.AreEqual(null, formNode[0].Attributes["DoubleBuffered"]?.InnerText);
            Assert.AreEqual("Form", formNode[0].Name);

            XmlNode groupBoxNode = formNode[0].FirstChild;

            Assert.AreEqual("GroupBox", groupBoxNode.Name);
            Assert.AreEqual("groupBox1", groupBoxNode.Attributes["Text"]?.InnerText);
            Assert.AreEqual("groupBox1", groupBoxNode.Attributes["Name"]?.InnerText);
        }
Beispiel #21
0
        public void AddStoreItem(StoreItemView item)
        {
            if (!IsUserLoggedIn)
            {
                throw new UserLoggedInException();
            }

            if (currentUser.WorkerRank != WorkerView.Rank.Manager)
            {
                throw new UserAccessException($"{WorkerView.Rank.Manager} Access needed for that action, your Access is {currentUser.WorkerRank}.");
            }

            try
            {
                if (item is BookView)
                {
                    storeItems.Add(ViewConverter.CreateBook((BookView)item));
                    ItemAdded?.Invoke(this, item);
                }
                else if (item is JournalView)
                {
                    storeItems.Add(ViewConverter.CreateJournal((JournalView)item));
                    ItemAdded?.Invoke(this, item);
                }
                storeItems.Save();
            }
            catch (DAL.Repositorys.PrimeryKeyAllReadyExistException e)
            {
                log.Exception(e);
                throw new util.PrimeryKeyAllReadyExistException();
            }catch (RepositorySaveFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to add a new item.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
            }
            catch (Exception e)
            {
                log.Exception(e);
                log.Fetal("Fetal Error Closing down app...");
                Shutdown(1);
            }
        }
Beispiel #22
0
        public void ConvertLocation()
        {
            ViewConverter converter = ViewConverter.GetInstance();
            XmlDocument   document  = converter.LoadXmlDocument(TEST4);
            XmlNode       rootNode  = document.FirstChild;

            Assert.AreEqual("Label", rootNode.Name);

            GroupBox box = new GroupBox();

            converter.ConvertDocument(rootNode, box);

            Assert.AreEqual(1, box.Controls.Count);

            Label label = box.Controls[0] as Label;

            Assert.AreEqual("Привет", label.Text);
            Assert.AreEqual("label1", label.Name);
            Assert.AreEqual(new Point(20, 20), label.Location);
            Assert.AreEqual(new Size(50, 50), label.Size);
        }
Beispiel #23
0
        public void RemoveWorker(int id)
        {
            if (!IsUserLoggedIn)
            {
                throw new UserLoggedInException();
            }

            if (currentUser.WorkerRank != WorkerView.Rank.Manager)
            {
                throw new UserAccessException($"{WorkerView.Rank.Manager} Access needed for that action, your Access is {currentUser.WorkerRank}.");
            }

            Worker worker;

            try
            {
                workers.Open();
            }catch (RepositoryOpenFailedExceptiom e)
            {
                log.Exception(e, "Failed on tring to update a user.");
                log.Fetal("Fetal Error, App shuting down.");
                Shutdown(1);
            }
            if (workers.RemoveById(id, out worker))
            {
                try
                {
                    workers.Close();
                }
                catch (RepositorySaveFailedExceptiom e)
                {
                    log.Exception(e, "Failed on tring to get user.");
                    log.Fetal("Fetal Error, App shuting down.");
                    Shutdown(1);
                }
                WorkerRemoved?.Invoke(this, ViewConverter.CreateWorkerView(worker));
            }
        }
Beispiel #24
0
        public IEnumerable <StoreItemControl> GetStoreItems(params Predicate <StoreItemView>[] predicates)
        {
            List <StoreItemControl> list = new List <StoreItemControl>();

            foreach (var item in storeItems.GetAll())
            {
                var  itemView = ViewConverter.CreateStoreItemView(item);
                bool fined    = true;
                foreach (var pred in predicates)
                {
                    if (!pred(itemView))
                    {
                        fined = false;
                        break;
                    }
                }
                if (fined)
                {
                    list.Add(ViewConverter.CreateStoreItemControl(item));
                }
            }
            return(list);
        }
Beispiel #25
0
        public Image Render(WebMapView mapView, out string mimeType)
        {
            Bitmap   bmp = new Bitmap(Width, Height, PixelFormat);
            Graphics g   = Graphics.FromImage(bmp);

            g.SmoothingMode = SmoothingMode.AntiAlias;

            //g.Transform = GetGdiViewTransform();
            if (!MapView.Presenter.IsRenderingSelection)
            {
                g.Clear(ViewConverter.Convert(MapView.BackgroundColor));
            }


            while (_renderQ.Count > 0)
            {
                RenderObject(_renderQ.Dequeue(), g);
            }

            g.Dispose();

            mimeType = "image/bmp";
            return(bmp);
        }
Beispiel #26
0
        private static Stream RandomIcon(out Size2D sz)
        {
            sz = RandomSymbolSize();
            Bitmap b = new Bitmap((int)sz.Width, (int)sz.Height);

            Graphics g = Graphics.FromImage(b);

            g.Clear(Color.Transparent);

            int rnd = random.Next(6);

            switch (rnd)
            {
            case 0:
            {
                StylePen p = RandomPen();
                g.DrawEllipse(ViewConverter.Convert(p), (int)Math.Ceiling(p.Width / 2),
                              (int)Math.Ceiling(p.Width / 2), b.Width - (int)p.Width,
                              b.Height - (int)p.Width);
                break;
            }

            case 1:
            {
                g.FillEllipse(ViewConverter.Convert(RandomBrush()), 0, 0, b.Width, b.Height);
                break;
            }

            case 2:
            {
                StylePen p = RandomPen();
                g.DrawRectangle(ViewConverter.Convert(p), (int)Math.Ceiling(p.Width / 2),
                                (int)Math.Ceiling(p.Width / 2), b.Width - (int)p.Width,
                                b.Height - (int)p.Width);
                break;
            }

            case 3:
                g.FillRectangle(ViewConverter.Convert(RandomBrush()), 0, 0, b.Width, b.Height);
                break;

            case 4:
            {
                StylePen p = RandomPen();
                g.FillEllipse(ViewConverter.Convert(RandomBrush()), 0, 0, b.Width, b.Height);
                g.DrawEllipse(ViewConverter.Convert(p), (int)Math.Ceiling(p.Width / 2),
                              (int)Math.Ceiling(p.Width / 2), b.Width - (int)p.Width,
                              b.Height - (int)p.Width);
                break;
            }

            case 5:
            {
                StylePen p = RandomPen();
                g.FillRectangle(ViewConverter.Convert(RandomBrush()), 0, 0, b.Width, b.Height);
                g.DrawRectangle(ViewConverter.Convert(p), (int)Math.Ceiling(p.Width / 2),
                                (int)Math.Ceiling(p.Width / 2), b.Width - (int)p.Width,
                                b.Height - (int)p.Width);
                break;
            }
            }

            MemoryStream ms = new MemoryStream();

            b.Save(ms, ImageFormat.Png);
            return(ms);
        }
Beispiel #27
0
        public virtual WmsMapRequestConfig CreateConfig(HttpContext context)
        {
            WmsMapRequestConfig config = new WmsMapRequestConfig();

            config.ServiceDescription = Description;

            config.CacheKey = CreateCacheKey(context);


            bool ignorecase = true;

            if (context.Request.Params["REQUEST"] == null)
            {
                WmsException.ThrowWmsException("Required parameter REQUEST not specified");
            }

            //Check if version is supported
            if (context.Request.Params["VERSION"] != null)
            {
                if (String.Compare(context.Request.Params["VERSION"], "1.3.0", ignorecase) != 0)
                {
                    WmsException.ThrowWmsException("Only version 1.3.0 supported");
                }
            }
            else
            //Version is mandatory if REQUEST!=GetCapabilities. Check if this is a capabilities request, since VERSION is null
            {
                if (String.Compare(context.Request.Params["REQUEST"], "GetCapabilities", ignorecase) != 0)
                {
                    WmsException.ThrowWmsException("VERSION parameter not supplied");
                }
            }


            if (String.Compare(context.Request.Params["REQUEST"], "GetCapabilities", ignorecase) == 0)
            {
                //Service parameter is mandatory for GetCapabilities request
                if (context.Request.Params["SERVICE"] == null)
                {
                    WmsException.ThrowWmsException("Required parameter SERVICE not specified");
                }

                if (String.Compare(context.Request.Params["SERVICE"], "WMS") != 0)
                {
                    WmsException.ThrowWmsException(
                        "Invalid service for GetCapabilities Request. Service parameter must be 'WMS'");
                }

                config.WmsMode  = WmsMode.Capabilites;
                config.MimeType = "text/xml";
                return(config);
            }

            if (String.Compare(context.Request.Params["REQUEST"], "GetMap", ignorecase) != 0)
            {
                WmsException.ThrowWmsException("Invalid REQUEST parameter");
            }

            config.WmsMode = WmsMode.Map;


            //Check for required parameters
            if (context.Request.Params["LAYERS"] == null)
            {
                WmsException.ThrowWmsException("Required parameter LAYERS not specified");
            }
            config.EnabledLayerNames = new List <string>(context.Request.Params["LAYERS"].Split(','));

            if (context.Request.Params["STYLES"] == null)
            {
                WmsException.ThrowWmsException("Required parameter STYLES not specified");
            }

            if (context.Request.Params["CRS"] == null)
            {
                WmsException.ThrowWmsException("Required parameter CRS not specified");
            }
            config.Crs      = context.Request.Params["CRS"];
            config.BaseSrid = config.Crs;

            if (context.Request.Params["BBOX"] == null)
            {
                WmsException.ThrowWmsException(WmsExceptionCode.InvalidDimensionValue,
                                               "Required parameter BBOX not specified");
            }

            if (context.Request.Params["WIDTH"] == null)
            {
                WmsException.ThrowWmsException(WmsExceptionCode.InvalidDimensionValue,
                                               "Required parameter WIDTH not specified");
            }

            if (context.Request.Params["HEIGHT"] == null)
            {
                WmsException.ThrowWmsException(WmsExceptionCode.InvalidDimensionValue,
                                               "Required parameter HEIGHT not specified");
            }

            if (context.Request.Params["FORMAT"] == null)
            {
                WmsException.ThrowWmsException("Required parameter FORMAT not specified");
            }

            Color bkgnd = Color.White;

            //Set background color of map
            if (String.Compare(context.Request.Params["TRANSPARENT"], "TRUE", ignorecase) == 0)
            {
                bkgnd = Color.Transparent;
            }
            else if (context.Request.Params["BGCOLOR"] != null)
            {
                try
                {
                    bkgnd = ColorTranslator.FromHtml(context.Request.Params["BGCOLOR"]);
                }
                catch
                {
                    WmsException.ThrowWmsException("Invalid parameter BGCOLOR");
                }
                ;
            }


            config.BackgroundColor = ViewConverter.Convert(bkgnd);
            config.MimeType        = context.Request.Params["FORMAT"];

            //Parse map size
            int width  = 0;
            int height = 0;

            if (!int.TryParse(context.Request.Params["WIDTH"], out width))
            {
                WmsException.ThrowWmsException(WmsExceptionCode.InvalidDimensionValue, "Invalid parameter WIDTH");
            }
            else if (Description.MaxWidth > 0 && width > Description.MaxWidth)
            {
                WmsException.ThrowWmsException(WmsExceptionCode.OperationNotSupported, "Parameter WIDTH too large");
            }

            if (!int.TryParse(context.Request.Params["HEIGHT"], out height))
            {
                WmsException.ThrowWmsException(WmsExceptionCode.InvalidDimensionValue, "Invalid parameter HEIGHT");
            }
            else if (Description.MaxHeight > 0 && height > Description.MaxHeight)
            {
                WmsException.ThrowWmsException(WmsExceptionCode.OperationNotSupported, "Parameter HEIGHT too large");
            }


            config.OutputSize = new Size2D(width, height);

            if (context.Request.Params["BBOX"] == null)
            {
                WmsException.ThrowWmsException("Invalid parameter BBOX");
            }

            config.RealWorldBounds = UrlUtility.ParseExtents(new GeometryServices()[config.Crs],
                                                             context.Request.Params["BBOX"]);


            return(config);
        }
Beispiel #28
0
 protected override void SetViewBackgroundColor(StyleColor fromColor, StyleColor toColor)
 {
     ViewControl.BackColor = ViewConverter.Convert(toColor);
 }
 public UserLoggedInEventArgs(Worker work)
 {
     Worker       = ViewConverter.CreateWorkerView(work);
     IsManager    = (Worker.WorkerRank == ViewModel.Models.WorkerView.Rank.Manager);
     LoggedInTime = DateTime.Now;
 }
Beispiel #30
0
 protected override void OnBackColorChanged(EventArgs e)
 {
     base.OnBackColorChanged(e);
     BackgroundColor = ViewConverter.Convert(BackColor);
 }