Пример #1
0
        public ScriptView OnPaperMetadataSearch(ScriptView view)
        {
            var grid = view.GetElement <DataTableSE>("paperMetadatas");

            grid.Load();
            return(view);
        }
Пример #2
0
        public ScriptView OnEdit(ScriptView view)
        {
            var sender = view.GetSender();
            var id     = sender.Data.Id;

            var data = ServiceContext.InvokeDynamic("getAccount", (arg) =>
            {
                arg.id = id;
            });

            data.Transform("roles.id=>value");
            data.Transform("roles.name=>text");
            data.Transform("rpassword=password");
            data.Transform("isEnabled=status.isEnabled");

            var form = view.GetElement <FormSE>("formEdit");

            form.Set(data);

            var modal = view.GetElement <ModalSE>("editDialog");

            modal.SetTitle(string.Format(Strings.ModifyAccountInformationTip, data.Dynamic.name));
            modal.Open();

            return(view);
        }
Пример #3
0
        private DTObject LoadRoles(ScriptView view, DataTableSE element)
        {
            var arg  = element.GetQuery();
            var data = ServiceContext.Invoke("getRolePage", arg);

            return(data);
        }
Пример #4
0
        public ScriptView OnSubmitEdit(ScriptView view)
        {
            var form = view.GetElement <FormSE>("formEdit");
            var data = form.Data;

            data.Transform("isEnabled=isEnabled", (t) =>
            {
                return(DataUtil.ToValue <bool>(t));
            });
            data.Transform("roles=>roleIds");

            ServiceContext.Invoke("updateAccount", data);

            MenuHelper.RemoveMenuCode(data.Dynamic.Id.ToString());

            var modal = view.GetElement <ModalSE>("editDialog");

            modal.Close();

            var grid = view.GetElement <DataTableSE>("list");

            grid.Reload();

            return(view);
        }
Пример #5
0
        private IScriptView Load(ScriptView view)
        {
            if (this.LoadData == null)
            {
                throw new XamlException(Strings.NoLoadDataMethod);
            }
            var sender = view.GetSender <DataTableSE>();
            var data   = this.LoadData(view, sender);

            //datatable组件不识别日期类型,必须得转换成字符串
            ProcessDate(sender, data);

            //将数据转为客户端组件可以识别的格式
            data.Transform("meta.page=@pageIndex", (value) =>
            {
                return(DataUtil.ToValue <int>(value));
            });
            data.Transform("meta.pages=@pageCount");
            data.Transform("meta.perpage=@pageSize");
            data.Transform("meta.total=@dataCount");
            data.Transform("rows=>data");
            data.Transform("~meta,data");

            return(new DataView(data));
        }
Пример #6
0
        private IScriptView OnScriptCallback(ScriptView view)
        {
            var grid = view.GetElement <DataTableSE>("list");

            grid.Load();
            return(view);
        }
Пример #7
0
        public ScriptView OnSearch(ScriptView view)
        {
            var grid = view.GetElement <DataTableSE>("list");

            grid.Load();
            return(view);
        }
Пример #8
0
        private void debugger_Paused(object sender, PausedEventArgs e)
        {
            if (_isFirstDebugStop)
            {
                // ignore first pause
                _isFirstDebugStop = false;
                return;
            }

            ScriptView view = null;

            view = OpenFile(Debugger.FileName) as ScriptView;
            if (view != null)
            {
                view.ActiveLine = Debugger.LineNumber;
                if (e.Reason == PauseReason.Exception)
                {
                    view.ErrorLine = Debugger.LineNumber;
                }
            }
            if (!Debugger.Running)
            {
                Activate();
            }
            UpdateControls();
        }
Пример #9
0
        private IScriptView Load(ScriptView view)
        {
            var sender = view.GetSender <PaperSE>();
            var code   = string.Format("<!DOCTYPE xaml><qa:Paper xmlns:qa=\"http://schemas.codeart.cn/web/xaml/qa\" metadataId=\"{0}\" disabled=\"{1}\" />", sender.PaperMetadataId, this.Disabled);
            var data   = _getPaperCode.Get(code);

            return(new DataView(data));
        }
Пример #10
0
 /// <summary>
 /// 绘制脚本回调方法指令
 /// </summary>
 private void DrawScriptCallback(PageBrush brush)
 {
     if (this.ScriptCallback != null)
     {
         var view   = new ScriptView();
         var result = this.ScriptCallback(view);
         brush.DrawScriptCallback(result);
     }
 }
Пример #11
0
        private IScriptView OnEditorInited(ScriptView view)
        {
            if (this.EditorInited == null)
            {
                return(view);
            }
            var sender = view.GetSender <EditorSE>();

            return(this.EditorInited(view, sender));
        }
Пример #12
0
        private IScriptView ValueChanged(ScriptView view)
        {
            if (this.Changed == null)
            {
                return(view);
            }
            var sender = view.GetSender <DropdownSE>();

            return(this.Changed(view, sender));
        }
Пример #13
0
        private IScriptView ChangedValue(ScriptView view)
        {
            if (this.Changed == null)
            {
                return(view);
            }
            var sender = view.GetSender <TreeSE>();

            return(this.Changed(view, sender));
        }
Пример #14
0
        private IScriptView TreeLoadData(ScriptView view)
        {
            if (this.LoadData == null)
            {
                throw new XamlException("没有为组件Tree设置LoadData方法,无法加载数据");
            }
            var sender = view.GetSender <TreeSE>();
            var data   = this.LoadData(view, sender);

            return(new DataView(data));
        }
Пример #15
0
        private IScriptView LoadOptions(ScriptView view)
        {
            if (this.LoadOptionsData == null)
            {
                throw new XamlException("没有为组件设置LoadOptionsData方法,无法加载下拉数据");
            }
            var sender = view.GetSender <DropdownSE>();
            var data   = this.LoadOptionsData(view, sender);

            return(new DataView(data));
        }
Пример #16
0
        public ScriptView OnDeletes(ScriptView view)
        {
            var grid  = view.GetElement <DataTableSE>("list");
            var items = grid.SelectedValues;

            ServiceContext.Invoke("deleteRoles", items.ToReusableObject("ids"));

            MenuHelper.RemoveAllMenuCode();

            grid.Reload(items);
            return(view);
        }
Пример #17
0
        private void Script_Executed(object sender, ExecutedRoutedEventArgs e)
        {
            TabItem TabItem = MainWindow.NewTab("Script");

            this.Tabs.Items.Add(TabItem);

            ScriptView ScriptView = new ScriptView();

            TabItem.Content = ScriptView;

            this.Tabs.SelectedItem = TabItem;
        }
Пример #18
0
        public ScriptView OnAdd(ScriptView view)
        {
            var form = view.GetElement <FormSE>("formAdd");

            form.Reset();

            var modal = view.GetElement <ModalSE>("addDialog");

            modal.Open();

            return(view);
        }
Пример #19
0
 /// <summary>
 /// 执行注册的脚本行为
 /// </summary>
 /// <param name="actionName"></param>
 /// <param name="arg"></param>
 /// <returns></returns>
 internal bool CallRegisteredScriptAction(string actionName, ScriptView arg, ref IScriptView returnValue)
 {
     if (_registeredScriptActions != null)
     {
         Func <ScriptView, IScriptView> action = null;
         if (_registeredScriptActions.TryGetValue(actionName, out action))
         {
             returnValue = action(arg);
             return(true);
         }
     }
     return(false);
 }
Пример #20
0
 public static void SweetAlertConfirm(this ScriptView view, string title, string text, Action ifTrue, Action ifFalse = null)
 {
     view.WriteCode(string.Format("$$metronic.sweetAlert.confirm({0},{1},function()", JSON.GetCode(title), JSON.GetCode(text)));
     view.WriteCode("{");
     ifTrue();
     view.WriteCode("}");
     if (ifFalse != null)
     {
         view.WriteCode(",function(){");
         ifFalse();
         view.WriteCode("}");
     }
     view.WriteCode(");");
 }
Пример #21
0
 public static void BootboxConfirm(this ScriptView view, string message, Action ifTrue, Action ifFalse = null)
 {
     view.WriteCode(string.Format("bootbox.confirm({0}, function (r) ", JSON.GetCode(message)));
     view.WriteCode("{");
     view.WriteCode("        if (r) {");
     ifTrue();
     view.WriteCode("        }");
     if (ifFalse != null)
     {
         view.WriteCode("        else{");
         ifFalse();
         view.WriteCode("        }");
     }
     view.WriteCode("    });");
 }
Пример #22
0
        public ScriptView OnEdit(ScriptView view)
        {
            var sender = view.GetSender();
            var data   = sender.Data;
            var form   = view.GetElement <FormSE>("formEdit");

            form.Set(data);

            var modal = view.GetElement <ModalSE>("editDialog");

            modal.SetTitle(string.Format(Strings.EditFunction, data.name));
            modal.Open();

            return(view);
        }
Пример #23
0
        public ScriptView OnBaseSubmit(ScriptView view)
        {
            var form = view.GetElement <FormSE>("baseForm");
            var data = form.Data;

            data["id"] = Principal.Id;

            ServiceContext.Invoke("updateUser", data);

            Init(view);

            form.AlertSuccess(Strings.SuccessfulOperation);

            return(view);
        }
Пример #24
0
        /// <summary>
        /// Constructs a Script Editor control.
        /// </summary>
        public ScriptEditor()
        {
            InitializeComponent();

            // try to use a plugin for script editing
            var plugin = PluginManager.Get <IEditor <ScriptView> >(PluginManager.Core.Settings.ScriptEditor);

            _view = plugin != null?plugin.CreateEditView() : null;

            if (_view != null)
            {
                _view.Dock = DockStyle.Fill;
                Controls.Add(_view);
                fallbackTextBox.Hide();
            }
        }
Пример #25
0
        private DTObject LoadAccounts(ScriptView view, DataTableSE element)
        {
            var arg  = element.GetQuery();
            var data = ServiceContext.Invoke("getAccountPage", arg);

            data.Transform("rows.LoginTime=status.loginInfo.lastTime");
            data.Transform("rows.LoginIp=status.loginInfo.lastIp");
            data.Transform("rows.LoginTimes=status.loginInfo.total");
            data.Transform("rows.IsEnabled=status.isEnabled", (v) =>
            {
                var isEnabled = (bool)v;
                return(isEnabled ? Strings.Enable : Strings.Disable);
            });
            data.Transform("!rows.status");
            return(data);
        }
Пример #26
0
        public ScriptView OnSubmitAdd(ScriptView view)
        {
            var form = view.GetElement <FormSE>("formAdd");
            var data = form.Data;

            ServiceContext.Invoke("addPermission", data);
            form.Reset();

            form.AlertSuccess(Strings.SavedSuccessfully);

            var grid = view.GetElement <DataTableSE>("list");

            grid.Reload();

            return(view);
        }
Пример #27
0
        public FormMain(SCIPackage package, SCIPackage translate)
        {
            _package   = package;
            _translate = translate;

            InitializeComponent();

            Text = package.GameDirectory;

            SetStyle(ControlStyles.OptimizedDoubleBuffer, true);

            sc.Panel2.Controls.Add(hexViewer  = new HexViewer());
            sc.Panel2.Controls.Add(textViewer = new TextViewer());
            sc.Panel2.Controls.Add(fontView   = new FontView());
            sc.Panel2.Controls.Add(scriptView = new ScriptView());
            sc.Panel2.Controls.Add(vocabView  = new VocabView());
            sc.Panel2.Controls.Add(msgView    = new MsgView());
            sc.Panel2.Controls.Add(picView    = new PicView());

            foreach (ResType resType in Enum.GetValues(typeof(ResType)))
            {
                var resources = package.GetResources(resType);
                if (!resources.Any())
                {
                    continue;
                }

                TreeNode tnRes = tv.Nodes.Add(ResTypeName(resType));
                tnRes.ImageKey         = "folder";
                tnRes.SelectedImageKey = tnRes.ImageKey;

                foreach (var res in resources)
                {
                    TreeNode tnRec = tnRes.Nodes.Add(res.ToString());
                    tnRec.ImageKey         = ResTypeKey(resType);
                    tnRec.SelectedImageKey = tnRec.ImageKey;
                    tnRec.Tag = res;
                }
            }

            if (_translate == null)
            {
                tsbTranslated.Checked = false;
                tsbTranslated.Visible = false;
                tsbSave.Visible       = false;
            }
        }
Пример #28
0
        private IScriptView Register(ScriptView view)
        {
            var form   = view.GetElement <FormSE>("registerForm");
            var data   = form.Data;
            var result = SignUp(data);

            if (result.Success)
            {
                view.WriteCode("SnippetLogin.displaySignInForm();");
                view.WriteCode(string.Format("$$('#loginForm').show('{0}');", Strings.OperationSucceededPleaseLogin));
            }
            else
            {
                view.WriteCode(string.Format("registerForm.proxy().showError('{0}');", result.Message));
            }
            return(view);
        }
Пример #29
0
 protected override void OnViewLoaded(object view)
 {
     _scriptView = view as ScriptView;
     ActiveScene.RunningChanged += (sender, e) =>
     {
         _scriptView.CodeEditor.IsReadOnly = ActiveScene.Running;
     };
     _scriptView.CodeEditor.Text         = _script.source;
     _scriptView.CodeEditor.TextChanged += CodeEditorTextChanged;
     using (Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream("Flex.Resources.FlexJS.xshd"))
     {
         using (XmlTextReader reader = new XmlTextReader(s))
         {
             _scriptView.CodeEditor.SyntaxHighlighting = HighlightingLoader.Load(reader, HighlightingManager.Instance);
         }
     }
 }
Пример #30
0
        private IScriptView UpdateUser(ScriptView view)
        {
            var e    = view.GetElement(this.Id);
            var data = e.Data;

            var getUser = ModuleController.GetHandler("user.detail");
            var info    = getUser.Process(para => {
                para["id"] = data.GetValue("userId");
            });

            var handler = ModuleController.GetHandler("user.update");

            info.SetValue("imageId", data.GetValue("photoId"));
            handler.Process(info);

            return(view);
        }