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

◆ Add()

void OnSelected::Add ( string message,
bool isReload = false )
protected

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

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