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

◆ ReloadScriptOutput()

void OnSelected::ReloadScriptOutput ( )
protected

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

373{
374 protected static ScriptConsoleEnfScriptTab m_Instance;
375 protected int m_EnscriptHistoryRow;
376 protected int m_EnscriptHistoryRowServer;
379 protected PluginLocalEnscriptHistory m_ModuleLocalEnscriptHistory;
380 protected PluginLocalEnscriptHistoryServer m_ModuleLocalEnscriptHistoryServer;
381 protected MultilineEditBoxWidget m_EnfScriptEdit;
382 protected ButtonWidget m_EnfScriptRun;
383 protected ButtonWidget m_EnfScriptClear;
384 protected TextListboxWidget m_ScriptOutputListbox;
385 protected bool m_AllowScriptOutput;
386 protected int m_RunColor;
387
389
390 override void InitializeTab(Widget root, ScriptConsole console, Widget button, ScriptConsoleTabBase parent = null)
391 {
392 super.InitializeTab(root, console, button, parent);
393
394 m_Instance = this;
395 m_ModuleLocalEnscriptHistory = PluginLocalEnscriptHistory.Cast(GetPlugin(PluginLocalEnscriptHistory));
396 m_ModuleLocalEnscriptHistoryServer = PluginLocalEnscriptHistoryServer.Cast(GetPlugin(PluginLocalEnscriptHistoryServer));
399 m_EnfScriptEdit = MultilineEditBoxWidget.Cast(root.FindAnyWidget("MultilineEditBoxWidget0"));
400 m_EnfScriptRun = ButtonWidget.Cast(root.FindAnyWidget("RunButton"));
401 m_EnfScriptClear = ButtonWidget.Cast(root.FindAnyWidget("ClearButton"));
402 m_ScriptOutputListbox = TextListboxWidget.Cast(root.FindAnyWidget("ScriptOutputListbox"));
403 m_RunColor = m_EnfScriptRun.GetColor();
404 }
405
407 {
408 m_Instance = null;
409 }
410
411 override void OnSelected()
412 {
413 int index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
414 if (m_EnscriptConsoleHistory.IsValidIndex(index))
415 {
416 string text = m_EnscriptConsoleHistory.Get(index);
417 m_EnfScriptEdit.SetText(text);
418 }
420 }
421
422 static void PrintS(string message)
423 {
424 Print(message);
425 if (m_Instance)
426 m_Instance.Add(message);
427 }
428
429 static void PrintS(bool message)
430 {
431 PrintS(message.ToString());
432 }
433
434 static void PrintS(int message)
435 {
436 PrintS(message.ToString());
437 }
438
439 static void PrintS(float message)
440 {
441 PrintS(message.ToString());
442 }
443
444 static void PrintS(vector message)
445 {
446 PrintS(message.ToString());
447 }
448
449 static void PrintS(Object message)
450 {
451 PrintS(message.ToString());
452 }
453
454
455 void Add(string message, bool isReload = false)
456 {
457 if (message != string.Empty)
458 {
460 {
461 if (!isReload)
462 m_ScriptOutputHistory.Insert(message);
463 m_ScriptOutputListbox.AddItem(String(message), NULL, 0);
464 m_ScriptOutputListbox.EnsureVisible(m_ScriptOutputListbox.GetNumItems());
465 }
466 }
467 }
468
469 protected void Clear(bool clearFile = false)
470 {
471 if(clearFile)
473 m_ScriptOutputListbox.ClearItems();
474 }
475
476
477
478 protected void ReloadScriptOutput()
479 {
480 m_ScriptOutputListbox.ClearItems();
481 m_AllowScriptOutput = true;
482 foreach ( string s: m_ScriptOutputHistory)
483 {
484 Add(s, true);
485 }
486 m_AllowScriptOutput = false;
487 }
488
489 void HistoryBack()
490 {
491
493 }
494
495 void HistoryForward()
496 {
498 }
499
500 protected void RunEnscript()
501 {
502 #ifdef DEVELOPER
503 string code;
504 m_EnfScriptEdit.GetText(code);
505 string codeNoReplace = code;
506 _player = PlayerBase.Cast(g_Game.GetPlayer());
507 m_AllowScriptOutput = true;
508 code.Replace("Print(","ScriptConsoleEnfScriptTab.PrintS(");
509 code.Replace("Print (","ScriptConsoleEnfScriptTab.PrintS(");
510 bool success = g_Game.ExecuteEnforceScript("void scConsMain() \n{\n" + code + "\n}\n", "scConsMain");
511 m_AllowScriptOutput = false;
512 ColorRunButton(success);
513
514 m_EnscriptConsoleHistory.Insert(codeNoReplace);
515 m_ModuleLocalEnscriptHistory.AddNewLine(codeNoReplace);
516 #endif
517 }
518
519 protected void ColorRunButton(bool success)
520 {
521 if (success)
522 {
523 m_EnfScriptRun.SetColor(ARGB(255,0,255,0));
524 }
525 else
526 {
527 m_EnfScriptRun.SetColor(ARGB(255,255,0,0));
528 }
529 g_Game.GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(ResetRunButtonColor,600);
530 }
531
532 protected void ResetRunButtonColor()
533 {
534 m_EnfScriptRun.SetColor(m_RunColor);
535 }
536
537 protected void RunEnscriptServer()
538 {
539 string code;
540 m_EnfScriptEdit.GetText(code);
542 m_ModuleLocalEnscriptHistoryServer.AddNewLine(code);
544 g_Game.RPCSingleParam(g_Game.GetPlayer(), ERPCs.DEV_RPC_SERVER_SCRIPT, CachedObjectsParams.PARAM1_STRING, true, g_Game.GetPlayer().GetIdentity());
545 }
546
547 protected void EnscriptHistoryBack()
548 {
549 int history_index;
550 if (m_EnfScriptEdit)
551 {
553 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
554 if (history_index > -1)
555 {
556 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
557 }
559 }
560 }
561
562
563 protected void EnscriptHistoryForward()
564 {
565 if (m_EnfScriptEdit)
566 {
567 int history_index;
569 history_index = m_EnscriptConsoleHistory.Count() - m_EnscriptHistoryRow - 1;
570 if (history_index < m_EnscriptConsoleHistory.Count())
571 {
572 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistory.Get(history_index));
573 }
575 }
576 }
577
578 override void OnRPCEx(int rpc_type, ParamsReadContext ctx)
579 {
580 super.OnRPCEx(rpc_type, ctx);
581 #ifdef DIAG_DEVELOPER
582 switch (rpc_type)
583 {
584 case ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT:
585 {
587 {
589 }
590 break;
591 }
592 }
593 #endif
594 }
595
596 override bool OnClick(Widget w, int x, int y, int button)
597 {
598 super.OnClick(w,x,y,button);
599 if (w == m_EnfScriptRun)
600 {
601 RunEnscript();
602 return true;
603 }
604 else if (w == m_EnfScriptClear)
605 {
606 m_ScriptOutputListbox.ClearItems();
607 m_ScriptOutputHistory.Clear();
608 return true;
609 }
610
611 return false;
612 }
613
614 override bool OnChange(Widget w, int x, int y, bool finished)
615 {
616 super.OnChange(w, x, y, finished);
617 return false;
618 }
619
620
621 override void Show(bool show, ScriptConsoleTabBase selectedHandler)
622 {
623 if (!show && (selectedHandler.Type() == ScriptConsoleEnfScriptTab || selectedHandler.Type() == ScriptConsoleEnfScriptServerTab))
624 {
625 //do nothing
626 }
627 else
628 {
629 m_Root.Show(show);
630 m_Root.Enable(show);
631 }
632 }
633
634}
635
636class ScriptConsoleEnfScriptServerTab : ScriptConsoleEnfScriptTab
637{
638 override void OnSelected()
639 {
641
643 if (m_EnscriptConsoleHistoryServer.IsValidIndex(index))
644 {
645 string text = m_EnscriptConsoleHistoryServer.Get(index);
646 m_EnfScriptEdit.SetText(text);
647 }
649 }
650
651 override protected void EnscriptHistoryBack()
652 {
653 int history_index;
654 if (m_EnfScriptEdit)
655 {
658 if (history_index > -1)
659 {
660 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
661 }
663 }
664 }
665
666 override protected void EnscriptHistoryForward()
667 {
668 if (m_EnfScriptEdit)
669 {
670 int history_index;
671
674 if (history_index < m_EnscriptConsoleHistoryServer.Count())
675 {
676 m_EnfScriptEdit.SetText(m_EnscriptConsoleHistoryServer.Get(history_index));
677 }
679 }
680 }
681
682 override bool OnClick(Widget w, int x, int y, int button)
683 {
684 if (w == m_EnfScriptRun)
685 {
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}
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