DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ EnscriptHistoryForward()

void EnscriptHistoryForward ( )
protected

См. определение в файле ScriptConsoleEnfScriptTab.c строка 453

454{
455 protected static ScriptConsoleEnfScriptTab m_Instance;
456 protected int m_EnscriptHistoryRow;
457 protected int m_EnscriptHistoryRowServer;
460 protected PluginLocalEnscriptHistory m_ModuleLocalEnscriptHistory;
461 protected PluginLocalEnscriptHistoryServer m_ModuleLocalEnscriptHistoryServer;
462 protected MultilineEditBoxWidget m_EnfScriptEdit;
463 protected ButtonWidget m_EnfScriptRun;
464 protected ButtonWidget m_EnfScriptClear;
465 protected TextListboxWidget m_ScriptOutputListbox;
466 protected bool m_AllowScriptOutput;
467 protected int m_RunColor;
468
470
471 void ScriptConsoleEnfScriptTab(Widget root, ScriptConsole console, Widget button, ScriptConsoleTabBase parent = null)
472 {
473 m_Instance = this;
474 m_ModuleLocalEnscriptHistory = PluginLocalEnscriptHistory.Cast(GetPlugin(PluginLocalEnscriptHistory));
475 m_ModuleLocalEnscriptHistoryServer = PluginLocalEnscriptHistoryServer.Cast(GetPlugin(PluginLocalEnscriptHistoryServer));
478 m_EnfScriptEdit = MultilineEditBoxWidget.Cast(root.FindAnyWidget("MultilineEditBoxWidget0"));
479 m_EnfScriptRun = ButtonWidget.Cast(root.FindAnyWidget("RunButton"));
480 m_EnfScriptClear = ButtonWidget.Cast(root.FindAnyWidget("ClearButton"));
481 m_ScriptOutputListbox = TextListboxWidget.Cast(root.FindAnyWidget("ScriptOutputListbox"));
482 m_RunColor = m_EnfScriptRun.GetColor();
483 }
484
486 {
487 m_Instance = null;
488 }
489
490 override void OnSelected()
491 {
492 int index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
493 if (m_EnscriptConsoleHistory.IsValidIndex(index))
494 {
495 string text = m_EnscriptConsoleHistory.Get(index);
496 m_EnfScriptEdit.SetText(text);
497 }
499 }
500
501 static void PrintS(string message)
502 {
503 Print(message);
504 if (m_Instance)
505 m_Instance.Add(message);
506 }
507
508 static void PrintS(bool message)
509 {
510 PrintS(message.ToString());
511 }
512
513 static void PrintS(int message)
514 {
515 PrintS(message.ToString());
516 }
517
518 static void PrintS(float message)
519 {
520 PrintS(message.ToString());
521 }
522
523 static void PrintS(vector message)
524 {
525 PrintS(message.ToString());
526 }
527
528 static void PrintS(Object message)
529 {
530 PrintS(message.ToString());
531 }
532
533
534 void Add(string message, bool isReload = false)
535 {
536 if (message != string.Empty)
537 {
539 {
540 if (!isReload)
541 m_ScriptOutputHistory.Insert(message);
542 m_ScriptOutputListbox.AddItem(String(message), NULL, 0);
543 m_ScriptOutputListbox.EnsureVisible(m_ScriptOutputListbox.GetNumItems());
544 }
545 }
546 }
547
548 protected void Clear(bool clearFile = false)
549 {
550 if(clearFile)
552 m_ScriptOutputListbox.ClearItems();
553 }
554
555
556
557 protected void ReloadScriptOutput()
558 {
559 m_ScriptOutputListbox.ClearItems();
560 m_AllowScriptOutput = true;
561 foreach ( string s: m_ScriptOutputHistory)
562 {
563 Add(s, true);
564 }
565 m_AllowScriptOutput = false;
566 }
567
568 void HistoryBack()
569 {
570
572 }
573
574 void HistoryForward()
575 {
577 }
578
579 protected void RunEnscript()
580 {
581 #ifdef DEVELOPER
582 string code;
583 m_EnfScriptEdit.GetText(code);
584 string codeNoReplace = code;
586 m_AllowScriptOutput = true;
587 code.Replace("Print(","ScriptConsoleEnfScriptTab.PrintS(");
588 code.Replace("Print (","ScriptConsoleEnfScriptTab.PrintS(");
589 bool success = GetGame().ExecuteEnforceScript("void scConsMain() \n{\n" + code + "\n}\n", "scConsMain");
590 m_AllowScriptOutput = false;
591 ColorRunButton(success);
592
593 m_EnscriptConsoleHistory.Insert(codeNoReplace);
594 m_ModuleLocalEnscriptHistory.AddNewLine(codeNoReplace);
595 #endif
596 }
597
598 protected void ColorRunButton(bool success)
599 {
600 if (success)
601 {
602 m_EnfScriptRun.SetColor(ARGB(255,0,255,0));
603 }
604 else
605 {
606 m_EnfScriptRun.SetColor(ARGB(255,255,0,0));
607 }
609 }
610
611 protected void ResetRunButtonColor()
612 {
613 m_EnfScriptRun.SetColor(m_RunColor);
614 }
615
616 protected void RunEnscriptServer()
617 {
618 string code;
619 m_EnfScriptEdit.GetText(code);
621 m_ModuleLocalEnscriptHistoryServer.AddNewLine(code);
623 GetGame().RPCSingleParam(GetGame().GetPlayer(), ERPCs.DEV_RPC_SERVER_SCRIPT, CachedObjectsParams.PARAM1_STRING, true, GetGame().GetPlayer().GetIdentity());
624 }
625
626 protected void EnscriptHistoryBack()
627 {
628 int history_index;
629 if (m_EnfScriptEdit)
630 {
632 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
633 if (history_index > -1)
634 {
635 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
636 }
638 }
639 }
640
641
642 protected void EnscriptHistoryForward()
643 {
644 if (m_EnfScriptEdit)
645 {
646 int history_index;
648 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
649 if (history_index < m_EnscriptConsoleHistory.Count())
650 {
651 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
652 }
654 }
655 }
656
657 override void OnRPCEx(int rpc_type, ParamsReadContext ctx)
658 {
659 super.OnRPCEx(rpc_type, ctx);
660 #ifdef DIAG_DEVELOPER
661 switch (rpc_type)
662 {
663 case ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT:
664 {
666 {
668 }
669 break;
670 }
671 }
672 #endif
673 }
674
675 override bool OnClick(Widget w, int x, int y, int button)
676 {
677 super.OnClick(w,x,y,button);
678 if (w == m_EnfScriptRun)
679 {
680 RunEnscript();
681 return true;
682 }
683 else if (w == m_EnfScriptClear)
684 {
685 m_ScriptOutputListbox.ClearItems();
686 m_ScriptOutputHistory.Clear();
687 return true;
688 }
689
690 return false;
691 }
692
693 override bool OnChange(Widget w, int x, int y, bool finished)
694 {
695 super.OnChange(w, x, y, finished);
696 return false;
697 }
698
699
700 override void Show(bool show, ScriptConsoleTabBase selectedHandler)
701 {
702 if (!show && (selectedHandler.Type() == ScriptConsoleEnfScriptTab || selectedHandler.Type() == ScriptConsoleEnfScriptServerTab))
703 {
704 //do nothing
705 }
706 else
707 {
708 m_Root.Show(show);
709 m_Root.Enable(show);
710 }
711 }
712
713}
714
715class ScriptConsoleEnfScriptServerTab : ScriptConsoleEnfScriptTab
716{
717 override void OnSelected()
718 {
720 if (m_EnscriptConsoleHistoryServer.IsValidIndex(index))
721 {
722 string text = m_EnscriptConsoleHistoryServer.Get(index);
723 m_EnfScriptEdit.SetText(text);
724 }
726 }
727
728 override protected void EnscriptHistoryBack()
729 {
730 int history_index;
731 if (m_EnfScriptEdit)
732 {
735 if (history_index > -1)
736 {
737 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
738 }
740 }
741 }
742
743 override protected void EnscriptHistoryForward()
744 {
745 if (m_EnfScriptEdit)
746 {
747 int history_index;
748
751 if (history_index < m_EnscriptConsoleHistoryServer.Count())
752 {
753 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
754 }
756 }
757 }
758
759 override bool OnClick(Widget w, int x, int y, int button)
760 {
761 if (w == m_EnfScriptRun)
762 {
764 return true;
765 }
766 else if (w == m_EnfScriptClear)
767 {
768 m_ScriptOutputListbox.ClearItems();
769 m_ScriptOutputHistory.Clear();
770 return true;
771 }
772
773 return false;
774 }
775
776}
void Show()
Определения DayZGame.c:162
ERPCs
Определения ERPCs.c:2
Empty
Определения Hand_States.c:14
Icon x
Icon y
PlayerBase GetPlayer()
Определения ModifierBase.c:51
PluginBase GetPlugin(typename plugin_type)
Определения PluginManager.c:316
PlayerBase _player
Определения QuickBarBase.c:18
static ref RadialMenu m_Instance
Определения RadialMenu.c:55
ref TStringArray m_EnscriptConsoleHistoryServer
Определения ScriptConsoleEnfScriptTab.c:270
int m_EnscriptHistoryRowServer
Определения ScriptConsoleEnfScriptTab.c:268
override void OnRPCEx(int rpc_type, ParamsReadContext ctx)
Определения ScriptConsoleEnfScriptTab.c:468
ButtonWidget m_EnfScriptClear
Определения ScriptConsoleEnfScriptTab.c:275
ScriptConsoleEnfScriptTab ScriptConsoleTabBase OnSelected()
Определения ScriptConsoleEnfScriptTab.c:265
void ResetRunButtonColor()
Определения ScriptConsoleEnfScriptTab.c:422
void Add(string message, bool isReload=false)
Определения ScriptConsoleEnfScriptTab.c:345
void HistoryForward()
Определения ScriptConsoleEnfScriptTab.c:385
TextListboxWidget m_ScriptOutputListbox
Определения ScriptConsoleEnfScriptTab.c:276
void ScriptConsoleEnfScriptTab(Widget root, ScriptConsole console, Widget button, ScriptConsoleTabBase parent=null)
Определения ScriptConsoleEnfScriptTab.c:282
bool m_AllowScriptOutput
Определения ScriptConsoleEnfScriptTab.c:277
static ref TStringArray m_ScriptOutputHistory
Определения ScriptConsoleEnfScriptTab.c:280
int m_RunColor
Определения ScriptConsoleEnfScriptTab.c:278
static void PrintS(string message)
Определения ScriptConsoleEnfScriptTab.c:312
void RunEnscriptServer()
Определения ScriptConsoleEnfScriptTab.c:427
void ~ScriptConsoleEnfScriptTab()
Определения ScriptConsoleEnfScriptTab.c:296
override bool OnClick(Widget w, int x, int y, int button)
Определения ScriptConsoleEnfScriptTab.c:486
PluginLocalEnscriptHistoryServer m_ModuleLocalEnscriptHistoryServer
Определения ScriptConsoleEnfScriptTab.c:272
void Clear(bool clearFile=false)
Определения ScriptConsoleEnfScriptTab.c:359
void ReloadScriptOutput()
Определения ScriptConsoleEnfScriptTab.c:368
ButtonWidget m_EnfScriptRun
Определения ScriptConsoleEnfScriptTab.c:274
void EnscriptHistoryBack()
Определения ScriptConsoleEnfScriptTab.c:437
override bool OnChange(Widget w, int x, int y, bool finished)
Определения ScriptConsoleEnfScriptTab.c:504
void RunEnscript()
Определения ScriptConsoleEnfScriptTab.c:390
int m_EnscriptHistoryRow
Определения ScriptConsoleEnfScriptTab.c:267
void HistoryBack()
Определения ScriptConsoleEnfScriptTab.c:379
PluginLocalEnscriptHistory m_ModuleLocalEnscriptHistory
Определения ScriptConsoleEnfScriptTab.c:271
ref TStringArray m_EnscriptConsoleHistory
Определения ScriptConsoleEnfScriptTab.c:269
void ColorRunButton(bool success)
Определения ScriptConsoleEnfScriptTab.c:409
MultilineEditBoxWidget m_EnfScriptEdit
Определения ScriptConsoleEnfScriptTab.c:273
void EnscriptHistoryForward()
Определения ScriptConsoleEnfScriptTab.c:453
Widget m_Root
Определения SizeToChild.c:91
proto native void RPCSingleParam(Object target, int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient=null)
see CGame.RPC
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1187
proto native bool ExecuteEnforceScript(string expression, string mainFnName)
Delevoper only: Executes Enforce Script expression, if there is an error, is printed into the script ...
static ref Param1< bool > PARAM1_BOOL
Определения UtilityClasses.c:12
static ref Param1< string > PARAM1_STRING
Определения UtilityClasses.c:14
static void ClearLogs()
Определения Debug.c:557
Определения Debug.c:2
Определения ObjectTyped.c:2
Определения PlayerBaseClient.c:2
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
override void OnSelected()
Определения ScriptConsoleEnfScriptTab.c:38
override bool OnClick(Widget w, int x, int y, int button)
Определения ScriptConsoleEnfScriptTab.c:223
proto bool Read(void value_in)
Определения EnWidgets.c:190
string ToString()
Определения EnConvert.c:3
proto string ToString(bool simple=true)
proto string ToString(bool beautify=true)
Vector to string.
Определения EnConvert.c:106
Serializer ParamsReadContext
Определения gameplay.c:15
proto native CGame GetGame()
proto void Print(void var)
Prints content of variable to console/log.
array< string > TStringArray
Определения EnScript.c:685
string String(string s)
Helper for passing string expression to functions with void parameter. Example: Print(String("Hello "...
Определения EnScript.c:339
proto int Replace(string sample, string replace)
Replace all occurrances of 'sample' in 'str' by 'replace'.
const int CALL_CATEGORY_SYSTEM
Определения tools.c:8
WorkspaceWidget Widget
Defined in code.
int ARGB(int a, int r, int g, int b)
Определения proto.c:322