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

◆ EnscriptHistoryForward()

void EnscriptHistoryForward ( )
protected

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

458{
459 protected static ScriptConsoleEnfScriptTab m_Instance;
460 protected int m_EnscriptHistoryRow;
461 protected int m_EnscriptHistoryRowServer;
464 protected PluginLocalEnscriptHistory m_ModuleLocalEnscriptHistory;
465 protected PluginLocalEnscriptHistoryServer m_ModuleLocalEnscriptHistoryServer;
466 protected MultilineEditBoxWidget m_EnfScriptEdit;
467 protected ButtonWidget m_EnfScriptRun;
468 protected ButtonWidget m_EnfScriptClear;
469 protected TextListboxWidget m_ScriptOutputListbox;
470 protected bool m_AllowScriptOutput;
471 protected int m_RunColor;
472
474
475 override void InitializeTab(Widget root, ScriptConsole console, Widget button, ScriptConsoleTabBase parent = null)
476 {
477 super.InitializeTab(root, console, button, parent);
478
479 m_Instance = this;
480 m_ModuleLocalEnscriptHistory = PluginLocalEnscriptHistory.Cast(GetPlugin(PluginLocalEnscriptHistory));
481 m_ModuleLocalEnscriptHistoryServer = PluginLocalEnscriptHistoryServer.Cast(GetPlugin(PluginLocalEnscriptHistoryServer));
484 m_EnfScriptEdit = MultilineEditBoxWidget.Cast(root.FindAnyWidget("MultilineEditBoxWidget0"));
485 m_EnfScriptRun = ButtonWidget.Cast(root.FindAnyWidget("RunButton"));
486 m_EnfScriptClear = ButtonWidget.Cast(root.FindAnyWidget("ClearButton"));
487 m_ScriptOutputListbox = TextListboxWidget.Cast(root.FindAnyWidget("ScriptOutputListbox"));
488 m_RunColor = m_EnfScriptRun.GetColor();
489 }
490
492 {
493 m_Instance = null;
494 }
495
496 override void OnSelected()
497 {
498 int index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
499 if (m_EnscriptConsoleHistory.IsValidIndex(index))
500 {
501 string text = m_EnscriptConsoleHistory.Get(index);
502 m_EnfScriptEdit.SetText(text);
503 }
505 }
506
507 static void PrintS(string message)
508 {
509 Print(message);
510 if (m_Instance)
511 m_Instance.Add(message);
512 }
513
514 static void PrintS(bool message)
515 {
516 PrintS(message.ToString());
517 }
518
519 static void PrintS(int message)
520 {
521 PrintS(message.ToString());
522 }
523
524 static void PrintS(float message)
525 {
526 PrintS(message.ToString());
527 }
528
529 static void PrintS(vector message)
530 {
531 PrintS(message.ToString());
532 }
533
534 static void PrintS(Object message)
535 {
536 PrintS(message.ToString());
537 }
538
539
540 void Add(string message, bool isReload = false)
541 {
542 if (message != string.Empty)
543 {
545 {
546 if (!isReload)
547 m_ScriptOutputHistory.Insert(message);
548 m_ScriptOutputListbox.AddItem(String(message), NULL, 0);
549 m_ScriptOutputListbox.EnsureVisible(m_ScriptOutputListbox.GetNumItems());
550 }
551 }
552 }
553
554 protected void Clear(bool clearFile = false)
555 {
556 if(clearFile)
558 m_ScriptOutputListbox.ClearItems();
559 }
560
561
562
563 protected void ReloadScriptOutput()
564 {
565 m_ScriptOutputListbox.ClearItems();
566 m_AllowScriptOutput = true;
567 foreach ( string s: m_ScriptOutputHistory)
568 {
569 Add(s, true);
570 }
571 m_AllowScriptOutput = false;
572 }
573
574 void HistoryBack()
575 {
576
578 }
579
580 void HistoryForward()
581 {
583 }
584
585 protected void RunEnscript()
586 {
587 #ifdef DEVELOPER
588 string code;
589 m_EnfScriptEdit.GetText(code);
590 string codeNoReplace = code;
591 _player = PlayerBase.Cast(g_Game.GetPlayer());
592 m_AllowScriptOutput = true;
593 code.Replace("Print(","ScriptConsoleEnfScriptTab.PrintS(");
594 code.Replace("Print (","ScriptConsoleEnfScriptTab.PrintS(");
595 bool success = g_Game.ExecuteEnforceScript("void scConsMain() \n{\n" + code + "\n}\n", "scConsMain");
596 m_AllowScriptOutput = false;
597 ColorRunButton(success);
598
599 m_EnscriptConsoleHistory.Insert(codeNoReplace);
600 m_ModuleLocalEnscriptHistory.AddNewLine(codeNoReplace);
601 #endif
602 }
603
604 protected void ColorRunButton(bool success)
605 {
606 if (success)
607 {
608 m_EnfScriptRun.SetColor(ARGB(255,0,255,0));
609 }
610 else
611 {
612 m_EnfScriptRun.SetColor(ARGB(255,255,0,0));
613 }
614 g_Game.GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(ResetRunButtonColor,600);
615 }
616
617 protected void ResetRunButtonColor()
618 {
619 m_EnfScriptRun.SetColor(m_RunColor);
620 }
621
622 protected void RunEnscriptServer()
623 {
624 string code;
625 m_EnfScriptEdit.GetText(code);
627 m_ModuleLocalEnscriptHistoryServer.AddNewLine(code);
629 g_Game.RPCSingleParam(g_Game.GetPlayer(), ERPCs.DEV_RPC_SERVER_SCRIPT, CachedObjectsParams.PARAM1_STRING, true, g_Game.GetPlayer().GetIdentity());
630 }
631
632 protected void EnscriptHistoryBack()
633 {
634 int history_index;
635 if (m_EnfScriptEdit)
636 {
638 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
639 if (history_index > -1)
640 {
641 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
642 }
644 }
645 }
646
647
648 protected void EnscriptHistoryForward()
649 {
650 if (m_EnfScriptEdit)
651 {
652 int history_index;
654 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
655 if (history_index < m_EnscriptConsoleHistory.Count())
656 {
657 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
658 }
660 }
661 }
662
663 override void OnRPCEx(int rpc_type, ParamsReadContext ctx)
664 {
665 super.OnRPCEx(rpc_type, ctx);
666 #ifdef DIAG_DEVELOPER
667 switch (rpc_type)
668 {
669 case ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT:
670 {
672 {
674 }
675 break;
676 }
677 }
678 #endif
679 }
680
681 override bool OnClick(Widget w, int x, int y, int button)
682 {
683 super.OnClick(w,x,y,button);
684 if (w == m_EnfScriptRun)
685 {
686 RunEnscript();
687 return true;
688 }
689 else if (w == m_EnfScriptClear)
690 {
691 m_ScriptOutputListbox.ClearItems();
692 m_ScriptOutputHistory.Clear();
693 return true;
694 }
695
696 return false;
697 }
698
699 override bool OnChange(Widget w, int x, int y, bool finished)
700 {
701 super.OnChange(w, x, y, finished);
702 return false;
703 }
704
705
706 override void Show(bool show, ScriptConsoleTabBase selectedHandler)
707 {
708 if (!show && (selectedHandler.Type() == ScriptConsoleEnfScriptTab || selectedHandler.Type() == ScriptConsoleEnfScriptServerTab))
709 {
710 //do nothing
711 }
712 else
713 {
714 m_Root.Show(show);
715 m_Root.Enable(show);
716 }
717 }
718
719}
720
721class ScriptConsoleEnfScriptServerTab : ScriptConsoleEnfScriptTab
722{
723 override void OnSelected()
724 {
726
728 if (m_EnscriptConsoleHistoryServer.IsValidIndex(index))
729 {
730 string text = m_EnscriptConsoleHistoryServer.Get(index);
731 m_EnfScriptEdit.SetText(text);
732 }
734 }
735
736 override protected void EnscriptHistoryBack()
737 {
738 int history_index;
739 if (m_EnfScriptEdit)
740 {
743 if (history_index > -1)
744 {
745 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
746 }
748 }
749 }
750
751 override protected void EnscriptHistoryForward()
752 {
753 if (m_EnfScriptEdit)
754 {
755 int history_index;
756
759 if (history_index < m_EnscriptConsoleHistoryServer.Count())
760 {
761 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
762 }
764 }
765 }
766
767 override bool OnClick(Widget w, int x, int y, int button)
768 {
769 if (w == m_EnfScriptRun)
770 {
772 return true;
773 }
774 else if (w == m_EnfScriptClear)
775 {
776 m_ScriptOutputListbox.ClearItems();
777 m_ScriptOutputHistory.Clear();
778 return true;
779 }
780
781 return false;
782 }
783}
override void Clear()
Определения ConstructionInfoIcons.c:41
DayZGame g_Game
Определения DayZGame.c:4074
void Show()
Определения DayZGame.c:171
ERPCs
Определения ERPCs.c:2
Empty
Определения Hand_States.c:14
Icon x
Icon y
PluginBase GetPlugin(typename plugin_type)
Определения PluginManager.c:326
PlayerBase _player
Определения QuickBarBase.c:18
static ref RadialMenu m_Instance
Определения RadialMenu.c:55
void ScriptConsole()
Определения ScriptConsole.c:114
ref TStringArray m_EnscriptConsoleHistoryServer
Определения ScriptConsoleEnfScriptTab.c:272
int m_EnscriptHistoryRowServer
Определения ScriptConsoleEnfScriptTab.c:270
override void OnRPCEx(int rpc_type, ParamsReadContext ctx)
Определения ScriptConsoleEnfScriptTab.c:472
ButtonWidget m_EnfScriptClear
Определения ScriptConsoleEnfScriptTab.c:277
ScriptConsoleEnfScriptTab ScriptConsoleTabBase OnSelected()
Определения ScriptConsoleEnfScriptTab.c:267
void ResetRunButtonColor()
Определения ScriptConsoleEnfScriptTab.c:426
void Add(string message, bool isReload=false)
Определения ScriptConsoleEnfScriptTab.c:349
void HistoryForward()
Определения ScriptConsoleEnfScriptTab.c:389
TextListboxWidget m_ScriptOutputListbox
Определения ScriptConsoleEnfScriptTab.c:278
bool m_AllowScriptOutput
Определения ScriptConsoleEnfScriptTab.c:279
static ref TStringArray m_ScriptOutputHistory
Определения ScriptConsoleEnfScriptTab.c:282
int m_RunColor
Определения ScriptConsoleEnfScriptTab.c:280
static void PrintS(string message)
Определения ScriptConsoleEnfScriptTab.c:316
void RunEnscriptServer()
Определения ScriptConsoleEnfScriptTab.c:431
void ~ScriptConsoleEnfScriptTab()
Определения ScriptConsoleEnfScriptTab.c:300
override bool OnClick(Widget w, int x, int y, int button)
Определения ScriptConsoleEnfScriptTab.c:490
PluginLocalEnscriptHistoryServer m_ModuleLocalEnscriptHistoryServer
Определения ScriptConsoleEnfScriptTab.c:274
void ReloadScriptOutput()
Определения ScriptConsoleEnfScriptTab.c:372
ButtonWidget m_EnfScriptRun
Определения ScriptConsoleEnfScriptTab.c:276
void EnscriptHistoryBack()
Определения ScriptConsoleEnfScriptTab.c:441
override bool OnChange(Widget w, int x, int y, bool finished)
Определения ScriptConsoleEnfScriptTab.c:508
void RunEnscript()
Определения ScriptConsoleEnfScriptTab.c:394
override void InitializeTab(Widget root, ScriptConsole console, Widget button, ScriptConsoleTabBase parent=null)
Определения ScriptConsoleEnfScriptTab.c:284
int m_EnscriptHistoryRow
Определения ScriptConsoleEnfScriptTab.c:269
void HistoryBack()
Определения ScriptConsoleEnfScriptTab.c:383
PluginLocalEnscriptHistory m_ModuleLocalEnscriptHistory
Определения ScriptConsoleEnfScriptTab.c:273
ref TStringArray m_EnscriptConsoleHistory
Определения ScriptConsoleEnfScriptTab.c:271
void ColorRunButton(bool success)
Определения ScriptConsoleEnfScriptTab.c:413
MultilineEditBoxWidget m_EnfScriptEdit
Определения ScriptConsoleEnfScriptTab.c:275
void EnscriptHistoryForward()
Определения ScriptConsoleEnfScriptTab.c:457
Widget m_Root
Определения SizeToChild.c:91
static ref Param1< bool > PARAM1_BOOL
Определения UtilityClasses.c:12
static ref Param1< string > PARAM1_STRING
Определения UtilityClasses.c:14
static void ClearLogs()
Определения 3_Game/DayZ/tools/Debug.c:666
Определения 3_Game/DayZ/tools/Debug.c:2
Определения ObjectTyped.c:2
Определения PlayerBaseClient.c:2
override void OnSelected()
Определения ScriptConsoleEnfScriptTab.c:40
override bool OnClick(Widget w, int x, int y, int button)
Определения ScriptConsoleEnfScriptTab.c:225
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:119
Serializer ParamsReadContext
Определения gameplay.c:15
proto void Print(void var)
Prints content of variable to console/log.
string String(string s)
Helper for passing string expression to functions with void parameter. Example: Print(String("Hello "...
Определения EnScript.c:339
class array< Class T > TStringArray
proto int Replace(string sample, string replace)
Replace all occurrances of 'sample' in 'str' by 'replace'.
proto string Get(int index)
Gets n-th character from string.
const int CALL_CATEGORY_SYSTEM
Определения 3_Game/DayZ/tools/tools.c:8
proto native void SetFocus(Widget w)
WorkspaceWidget Widget
Defined in code.
int ARGB(int a, int r, int g, int b)
Определения proto.c:322