Пример #1
0
        public void Init(CameraOptions objOptions)
        {
            Xdk.OnCameraPictureAdd    += OnCamera;
            Xdk.OnCameraPictureBusy   += OnCamera;
            Xdk.OnCameraPictureCancel += OnCamera;

            console.Log("camera object wrapper initialized");

            if (objOptions.inject != null)
            {
                //inject a div to display an image and a camera button
                HtmlDivElement cameraDiv = new HtmlDivElement();
                cameraDiv.id = "cameradiv";
                document.body.AppendChild(cameraDiv);

                HtmlImageElement imgLarge = new HtmlImageElement();
                imgLarge.id            = "largeImage";
                imgLarge.style.display = "none";
                Element.GetById("cameradiv").AppendChild(imgLarge);

                HtmlButtonElement btnCapture = new HtmlButtonElement();
                btnCapture.id        = "btnPicture";
                btnCapture.innerText = "Take Picture";
                Xdk.multitouch.Add(btnCapture, TouchEventType.TouchStart, CapturePhoto);
                Element.GetById("cameradiv").AppendChild(btnCapture);
            }
        }
Пример #2
0
        public void addView(JsString url, object viewData)
        {
            if (!hasView(url))
            {
                //this is one point that I conced we should consider making async
                var content  = contentParser.parse(contentLoader.synchronousFragmentLoad(url));
                var div      = new HtmlDivElement();
                var fragment = jQueryContext.J(div);
                fragment.hide();
                fragment.html(content);
                fragment.css("width", "100%");
                fragment.css("height", "100%");
                fragment.css("position", "absolute");
                fragment.css("top", "0");
                fragment.css("left", "0");

                var mediatorCapturer = new MediatorCapturer();
                domWalker.walkDomFragment(div, mediatorCapturer);

                rootElement.append(div);
                views[url]     = fragment;
                mediators[url] = mediatorCapturer.mediator;
            }

            selectView(url, viewData);
        }
Пример #3
0
        public void DOMStringMapHasNoAttribute()
        {
            var document = new HtmlDocument();
            var div      = new HtmlDivElement(document);

            Assert.IsTrue(div.Dataset["user"] == null);
        }
Пример #4
0
        public void DOMStringMapBindingSet()
        {
            var value = "SomeUser";
            var div   = new HtmlDivElement(document);

            div.Dataset["user"] = value;
            Assert.AreEqual(div.GetAttribute("data-user"), value);
        }
Пример #5
0
        public void DOMTokenListCorrectlyInitializedFindsClass()
        {
            var testClass = "myclass";
            var div       = new HtmlDivElement(document);

            div.ClassName = testClass + " whatever anotherclass";
            Assert.IsTrue(div.ClassList.Contains(testClass));
        }
Пример #6
0
        public void DOMStringMapHasAttributesButRequestedMissing()
        {
            var div = new HtmlDivElement(document);

            div.SetAttribute("data-some", "test");
            div.SetAttribute("data-another", "");
            div.SetAttribute("data-test", "third attribute");
            Assert.IsTrue(div.Dataset["user"] == null);
        }
Пример #7
0
        public static void Show(JsString strPrompt, JsString strTitle, JsString strOKPrompt, JsString strCancelPrompt, JsString OKFunction, JsString CancelFunction)
        {
            //Defaults
            if (strPrompt == null)
            {
                strPrompt = "Would you like to confirm or cancel this action?";
            }
            if (strTitle == null)
            {
                strTitle = "Confirmation";
            }
            if (strOKPrompt == null)
            {
                strOKPrompt = "Confirm";
            }
            if (strCancelPrompt == null)
            {
                strCancelPrompt = "Cancel";
            }

            //create the hidden DIV to hold the confirmation box on load
            if (divConfirmationBox == null)
            {
                divConfirmationBox                       = new HtmlDivElement();
                divConfirmationBox.id                    = "divConfirmatonPopup";
                divConfirmationBox.style.display         = "none";
                divConfirmationBox.style.backgroundColor = "#333";
                divConfirmationBox.style.textAlign       = "center";
                divConfirmationBox.style.position        = "absolute";
                divConfirmationBox.style.width           = "1px";
                divConfirmationBox.style.height          = "1px";
                divConfirmationBox.style.top             = "312px";
                divConfirmationBox.style.left            = "84px";
                divConfirmationBox.style.opacity         = ".8";
                divConfirmationBox.style.border          = "solid 3px #aaa";
                divConfirmationBox.style.fontSize        = "24px";
                divConfirmationBox.style.overflow        = "hidden";
                //                divConfirmationBox.style.borderRadius = "30px";
                divConfirmationBox.SetAttribute("style", "border-radius:30px");
                HtmlBodyElement.GetByTagName()[0].AppendChild(divConfirmationBox);
            }

            //set the confirmation box actions
            confirmationBox_OKCall     = OKFunction;
            confirmationBox_CancelCall = CancelFunction;

            JsString tmpPopupHTML = "<table width='600' height='400'><tr><td colspan='2' valign='top'><span style='font-size:32pt;font-weight:bold;'>" + strTitle + "</span></td></tr><tr><td colspan='2' valign='middle'>" + strPrompt + "</td></tr>";

            tmpPopupHTML += "<tr><td valign='bottom' align='middle' width='50%' ontouchstart='eval(confirmationBox_OKCall);confirmationBox_hide();'    ><div style='border-radius:30px;opacity:.95;border: solid 3px #aaa;background-color:#000;width:250px;font-size:28pt;font-weight:bold;padding-top:30px;padding-bottom:30px;margin-bottom:15px;'>" + strOKPrompt + "</div></td>";
            tmpPopupHTML += "<td valign='bottom' align='middle' width='50%' ontouchstart='eval(confirmationBox_CancelCall);confirmationBox_hide();'><div style='border-radius:30px;opacity:.95;border: solid 3px #aaa;background-color:#000;width:250px;font-size:28pt;font-weight:bold;padding-top:30px;padding-bottom:30px;margin-bottom:15px;'>" + strCancelPrompt + "</div></td></tr></table>";


            HtmlDivElement.GetById("divConfirmatonPopup").innerHTML     = tmpPopupHTML;
            HtmlDivElement.GetById("divConfirmatonPopup").style.width   = "600px";
            HtmlDivElement.GetById("divConfirmatonPopup").style.height  = "400px";
            HtmlDivElement.GetById("divConfirmatonPopup").style.display = "block";
        }
Пример #8
0
        public void DOMTokenListCorrectlyInitializedNoClass()
        {
            var document  = new HtmlDocument();
            var testClass = "myclass1";
            var div       = new HtmlDivElement(document);

            div.ClassName = "myclass2 whatever anotherclass";
            Assert.IsFalse(div.ClassList.Contains(testClass));
        }
Пример #9
0
        public void DOMTokenListWritesBack()
        {
            var testClass = "myclass";
            var div       = new HtmlDivElement(document);

            div.ClassName = "";
            div.ClassList.Add(testClass);
            Assert.AreEqual(testClass, div.ClassName);
        }
Пример #10
0
        public void DOMTokenListToggleWorksTurnOn()
        {
            var testClass    = "myclass";
            var otherClasses = "otherClass someOther more";
            var div          = new HtmlDivElement(document);

            div.ClassName = otherClasses;
            div.ClassList.Toggle(testClass);
            Assert.AreEqual(div.ClassName, otherClasses + " " + testClass);
        }
Пример #11
0
 public static void WarnUpdateAvailable(JsString strUpdateMessage)
 {
     if (strUpdateMessage == null)
     {
         strUpdateMessage = "Live Update Available";
     }
     strUpdateMessage += " - Touch Here To Update Application";
     HtmlDivElement.GetById("divFooter").innerHTML = strUpdateMessage;
     HtmlDivElement.GetById("divFooter").className = "marquee";
     HtmlDivElement.GetById("divFooter").AddEventListener("click", UpdateApplication, false);
 }
Пример #12
0
        public void Create_ReturnTagAsHtmlString_WhenTagIsEmpty()
        {
            // Arrange
            htmlBuilder = new HtmlBuilder();

            HtmlDivElement htmlTag = new HtmlDivElement();

            // Act
            IHtmlContent result = htmlBuilder.CreateHtmlContent(htmlTag);

            // Assert
            Assert.Equal("<div></div>", result.ToString());
        }
Пример #13
0
 public static void PrependToLog(HtmlElement log, JsString message)
 {
     HtmlDivElement child = new HtmlDivElement();
     child.innerHTML = message;
     if (log.firstChild == null)
     {
         log.AppendChild(child);
     }
     else
     {
         log.InsertBefore(child, log.firstChild);
     }
 }
Пример #14
0
        public void DOMStringMapIEnumerableWorking()
        {
            var div = new HtmlDivElement(document);

            div.SetAttribute("data-some", "test");
            div.SetAttribute("data-another", "");
            div.SetAttribute("data-test", "third attribute");
            Assert.AreEqual(3, div.Dataset.Count());
            Assert.AreEqual("some", div.Dataset.First().Key);
            Assert.AreEqual("test", div.Dataset.First().Value);
            Assert.AreEqual("test", div.Dataset.Last().Key);
            Assert.AreEqual("third attribute", div.Dataset.Last().Value);
        }
Пример #15
0
        public static void PrependToLog(HtmlElement log, JsString message)
        {
            HtmlDivElement child = new HtmlDivElement();

            child.innerHTML = message;
            if (log.firstChild == null)
            {
                log.AppendChild(child);
            }
            else
            {
                log.InsertBefore(child, log.firstChild);
            }
        }
Пример #16
0
        public static void Show(JsString strPrompt, JsString strTitle, JsString strOKPrompt, JsString strCancelPrompt, JsString OKFunction, JsString CancelFunction)
        {
            //Defaults
            if (strPrompt == null) { strPrompt = "Would you like to confirm or cancel this action?"; }
            if (strTitle == null) { strTitle = "Confirmation"; }
            if (strOKPrompt == null) { strOKPrompt = "Confirm"; }
            if (strCancelPrompt == null) { strCancelPrompt = "Cancel"; }

            //create the hidden DIV to hold the confirmation box on load
            if (divConfirmationBox == null)
            {
                divConfirmationBox = new HtmlDivElement();
                divConfirmationBox.id = "divConfirmatonPopup";
                divConfirmationBox.style.display = "none";
                divConfirmationBox.style.backgroundColor = "#333";
                divConfirmationBox.style.textAlign = "center";
                divConfirmationBox.style.position = "absolute";
                divConfirmationBox.style.width = "1px";
                divConfirmationBox.style.height = "1px";
                divConfirmationBox.style.top = "312px";
                divConfirmationBox.style.left = "84px";
                divConfirmationBox.style.opacity = ".8";
                divConfirmationBox.style.border = "solid 3px #aaa";
                divConfirmationBox.style.fontSize = "24px";
                divConfirmationBox.style.overflow = "hidden";
                //                divConfirmationBox.style.borderRadius = "30px";
                divConfirmationBox.SetAttribute("style", "border-radius:30px");
                HtmlBodyElement.GetByTagName()[0].AppendChild(divConfirmationBox);
            }

            //set the confirmation box actions
            confirmationBox_OKCall = OKFunction;
            confirmationBox_CancelCall = CancelFunction;

            JsString tmpPopupHTML = "<table width='600' height='400'><tr><td colspan='2' valign='top'><span style='font-size:32pt;font-weight:bold;'>" + strTitle + "</span></td></tr><tr><td colspan='2' valign='middle'>" + strPrompt + "</td></tr>";
            tmpPopupHTML += "<tr><td valign='bottom' align='middle' width='50%' ontouchstart='eval(confirmationBox_OKCall);confirmationBox_hide();'    ><div style='border-radius:30px;opacity:.95;border: solid 3px #aaa;background-color:#000;width:250px;font-size:28pt;font-weight:bold;padding-top:30px;padding-bottom:30px;margin-bottom:15px;'>" + strOKPrompt + "</div></td>";
            tmpPopupHTML += "<td valign='bottom' align='middle' width='50%' ontouchstart='eval(confirmationBox_CancelCall);confirmationBox_hide();'><div style='border-radius:30px;opacity:.95;border: solid 3px #aaa;background-color:#000;width:250px;font-size:28pt;font-weight:bold;padding-top:30px;padding-bottom:30px;margin-bottom:15px;'>" + strCancelPrompt + "</div></td></tr></table>";


            HtmlDivElement.GetById("divConfirmatonPopup").innerHTML = tmpPopupHTML;
            HtmlDivElement.GetById("divConfirmatonPopup").style.width = "600px";
            HtmlDivElement.GetById("divConfirmatonPopup").style.height = "400px";
            HtmlDivElement.GetById("divConfirmatonPopup").style.display = "block";
        }
Пример #17
0
        public static string GetSpinnerHtml(string message)
        {
            var div = new HtmlDivElement
            {
                Class    = "d-flex justify-content-center",
                Children = new Node[]
                {
                    new HtmlDivElement
                    {
                        Class = "spinner-border",
                    },
                    new HtmlDivElement
                    {
                        Class     = "ml-2",
                        InnerText = message
                    }
                }
            };

            return(div.GetHtml());
        }
Пример #18
0
        public static void MapEvent(HtmlDivElement element)
        {
            if (!UnityEngine.Input.GetKey(KeyCode.LeftAlt))
            {
                CameraController cameraController = Camera.main.GetComponent <CameraController>();

                var elementPos = new Vector2(element.getBoundingClientRect().X, element.getBoundingClientRect().Y);
                var mousePos   = InputPointer.All[0].Position;
                var mapPoint   = (mousePos - elementPos) / new Vector2(element.getBoundingClientRect().Width, element.getBoundingClientRect().Height);
                if (UnityEngine.Input.GetMouseButton(0))
                {
                    MoveCameraToPoint(mapPointToPosition(mapPoint));
                }
                else if (UnityEngine.Input.GetMouseButton(1))
                {
                    foreach (var unit in cameraController.selectedObjects)
                    {
                        unit.GetComponent <BaseBehavior>().GiveOrder(mapPointToPosition(mapPoint), true, true);
                    }
                }
            }
        }
Пример #19
0
 public static void Hide()
 {
     confirmationBox_OKCall     = null;
     confirmationBox_CancelCall = null;
     HtmlDivElement.GetById("divConfirmatonPopup").style.display = "none";
 }
Пример #20
0
        public void Init(CameraOptions objOptions)
        {

            Xdk.OnCameraPictureAdd += OnCamera;
            Xdk.OnCameraPictureBusy += OnCamera;
            Xdk.OnCameraPictureCancel += OnCamera;

            console.Log("camera object wrapper initialized");

            if (objOptions.inject != null)
            {
                //inject a div to display an image and a camera button
                HtmlDivElement cameraDiv = new HtmlDivElement();
                cameraDiv.id = "cameradiv";
                document.body.AppendChild(cameraDiv);

                HtmlImageElement imgLarge = new HtmlImageElement();
                imgLarge.id = "largeImage";
                imgLarge.style.display = "none";
                Element.GetById("cameradiv").AppendChild(imgLarge);

                HtmlButtonElement btnCapture = new HtmlButtonElement();
                btnCapture.id = "btnPicture";
                btnCapture.innerText = "Take Picture";
                Xdk.multitouch.Add(btnCapture, TouchEventType.TouchStart, CapturePhoto);
                Element.GetById("cameradiv").AppendChild(btnCapture);
            }
        }
Пример #21
0
 public void SetUp()
 {
     _window   = Mock.Of <IWindow>();
     _document = new HtmlDocument(_window);
     _div      = (HtmlDivElement)_document.CreateElement("DIV");
 }