ScriptDebuggerRemote::ScriptDebuggerRemote() : profiling(false), max_frame_functions(16), skip_profile_frame(false), reload_all_scripts(false), tcp_client(StreamPeerTCP::create_ref()), packet_peer_stream(Ref<PacketPeerStream>(memnew(PacketPeerStream))), last_perf_time(0), performance(ProjectSettings::get_singleton()->get_singleton_object("Performance")), requested_quit(false), mutex(Mutex::create()), max_cps(GLOBAL_GET("network/limits/debugger_stdout/max_chars_per_second")), char_count(0), last_msec(0), msec_count(0), locking(false), poll_every(0), request_scene_tree(NULL), live_edit_funcs(NULL) { packet_peer_stream->set_stream_peer(tcp_client); packet_peer_stream->set_output_buffer_max_size(1024 * 1024 * 8); //8mb should be way more than enough phl.printfunc = _print_handler; phl.userdata = this; add_print_handler(&phl); eh.errfunc = _err_handler; eh.userdata = this; add_error_handler(&eh); profile_info.resize(CLAMP(int(ProjectSettings::get_singleton()->get("debug/settings/profiler/max_functions")), 128, 65535)); profile_info_ptrs.resize(profile_info.size()); }
EditorLog::EditorLog() { VBoxContainer *vb = memnew( VBoxContainer); add_child(vb); vb->set_v_size_flags(SIZE_EXPAND_FILL); HBoxContainer *hb = memnew( HBoxContainer ); vb->add_child(hb); title = memnew( Label ); title->set_text(" Output:"); title->set_h_size_flags(SIZE_EXPAND_FILL); hb->add_child(title); button = memnew( ToolButton ); button->set_text_align(Button::ALIGN_LEFT); button->connect("pressed",this,"_flip_request"); button->set_focus_mode(FOCUS_NONE); button->set_clip_text(true); button->set_tooltip("Open/Close output panel."); //pd = memnew( PaneDrag ); //hb->add_child(pd); //pd->connect("dragged",this,"_dragged"); //pd->set_default_cursor_shape(Control::CURSOR_MOVE); tb = memnew( TextureButton ); hb->add_child(tb); tb->connect("pressed",this,"_close_request"); ec = memnew( EmptyControl); vb->add_child(ec); ec->set_minsize(Size2(0,100)); ec->set_v_size_flags(SIZE_EXPAND_FILL); PanelContainer *pc = memnew( PanelContainer ); pc->add_style_override("panel",get_stylebox("normal","TextEdit")); ec->add_child(pc); pc->set_area_as_parent_rect(); log = memnew( RichTextLabel ); log->set_scroll_follow(true); pc->add_child(log); add_message(VERSION_FULL_NAME" (c) 2010-2014 www.fengei.com."); //log->add_text("Initialization Complete.\n"); //because it looks cool. add_style_override("panel",get_stylebox("panelf","Panel")); eh.errfunc=_error_handler; eh.userdata=this; add_error_handler(&eh); current=Thread::get_caller_ID(); EditorNode::get_undo_redo()->set_commit_notify_callback(_undo_redo_cbk,this); hide(); }
ScriptDebuggerRemote::ScriptDebuggerRemote() { tcp_client = StreamPeerTCP::create_ref(); packet_peer_stream = Ref<PacketPeerStream>( memnew(PacketPeerStream) ); packet_peer_stream->set_stream_peer(tcp_client); mutex = Mutex::create(); locking=false; phl.printfunc=_print_handler; phl.userdata=this; add_print_handler(&phl); requested_quit=false; performance = Globals::get_singleton()->get_singleton_object("Performance"); last_perf_time=0; poll_every=0; request_scene_tree=NULL; live_edit_funcs=NULL; max_cps = GLOBAL_DEF("debug/max_remote_stdout_chars_per_second",2048); char_count=0; msec_count=0; last_msec=0; eh.errfunc=_err_handler; eh.userdata=this; add_error_handler(&eh); }
EditorLog::EditorLog() { VBoxContainer *vb = this; add_constant_override("separation",get_constant("separation","VBoxContainer")); HBoxContainer *hb = memnew( HBoxContainer ); vb->add_child(hb); title = memnew( Label ); title->set_text(" Output:"); title->set_h_size_flags(SIZE_EXPAND_FILL); hb->add_child(title); //pd = memnew( PaneDrag ); //hb->add_child(pd); //pd->connect("dragged",this,"_dragged"); //pd->set_default_cursor_shape(Control::CURSOR_MOVE); clearbutton = memnew( Button ); hb->add_child(clearbutton); clearbutton->set_text(TTR("Clear")); clearbutton->connect("pressed", this,"_clear_request"); ec = memnew( Control); vb->add_child(ec); ec->set_custom_minimum_size(Size2(0,180)); ec->set_v_size_flags(SIZE_EXPAND_FILL); PanelContainer *pc = memnew( PanelContainer ); pc->add_style_override("panel",get_stylebox("normal","TextEdit")); ec->add_child(pc); pc->set_area_as_parent_rect(); log = memnew( RichTextLabel ); log->set_scroll_follow(true); log->set_selection_enabled(true); log->set_focus_mode(FOCUS_CLICK); pc->add_child(log); add_message(VERSION_FULL_NAME" (c) 2008-2016 Juan Linietsky, Ariel Manzur."); //log->add_text("Initialization Complete.\n"); //because it looks cool. eh.errfunc=_error_handler; eh.userdata=this; add_error_handler(&eh); current=Thread::get_caller_ID(); EditorNode::get_undo_redo()->set_commit_notify_callback(_undo_redo_cbk,this); }
void RenameDialog::_update_preview(String new_text) { if (lock_preview_update || preview_node == NULL) return; has_errors = false; add_error_handler(&eh); String new_name = _apply_rename(preview_node, spn_count_start->get_value()); if (!has_errors) { lbl_preview_title->set_text(TTR("Preview")); lbl_preview->set_text(new_name); if (new_name == preview_node->get_name()) { lbl_preview->add_color_override("font_color", Color(0, 0.5f, 0.25f, 1)); } else { lbl_preview->add_color_override("font_color", Color(0, 1, 0.5f, 1)); } } remove_error_handler(&eh); }