예제 #1
0
            protected override bool OnScriptCall(SciterElement se, string name, SciterValue[] args, out SciterValue result)
            {
                result = null;

                switch (name)
                {
                case "Host_OnOptionSelect":
                {
                    Debug.Assert(dbg_on_navigate == false);
                    uint          uid       = (uint)el_tree.Value.Get(0);
                    SciterElement el_origin = App.AppWindow.ElementByUID(uid);
                    Inspecting.PageElemInspect(el_origin, false);
                    return(true);
                }

                case "Host_OnOptionDelete":
                {
                    uint          uid       = (uint)el_tree.Value.Get(0);
                    SciterElement el_origin = App.AppWindow.ElementByUID(uid);
                    if (el_origin != State.g_el_frameroot[0])                                   // not allowed to delete <html>
                    {
                        el_origin.Delete();
                    }
                    Inspecting.PageElemRemoveHighlight();                                    // avoids an A/V
                    return(true);
                }

                case "Host_OnOptionHover":
                {
                    uint          uid       = (uint)args[0].Get(0);
                    SciterElement el_origin = App.AppWindow.ElementByUID(uid);
                    if (el_origin != null)                                   // happens when deleting element and the mouse is over it in the DOM tree
                    {
                        Inspecting.PageElemHighlight(el_origin);
                    }
                    return(true);
                }

                case "Host_OnEndHover":
                    Inspecting.PageElemRemoveHighlight();
                    return(true);

                case "Host_OnTagPathClick":
                    el_tree.Value = args[0];
                    el_tree.SendEvent((uint)SciterXBehaviors.BEHAVIOR_EVENTS.SELECT_SELECTION_CHANGED);
                    return(true);
                }
                return(false);
            }