- using Godot;
-
- namespace Editor
- {
- public class CodePanel : Control
- {
- /// <summary>
- /// 初始缩放
- /// </summary>
- public Vector2 StartScale { get; private set; }
-
- private Control ScalePanel;
- private TextEditPainter _editPainter;
-
- private CodeTextEditor _codeTextEditor;
-
-
- public override void _Ready()
- {
- _codeTextEditor = GetNode<CodeTextEditor>("ScalePanel/TextEdit");
- _editPainter = _codeTextEditor.GetNode<TextEditPainter>("TextEditPainter");
-
- ScalePanel = GetNode<Control>("ScalePanel");
- StartScale = ScalePanel.RectScale;
-
- _editPainter.SetIdePanel(this);
- _editPainter.SetTextEdit(_codeTextEditor);
-
- _on_ScalePanel_resized();
- }
-
- public override void _Process(float delta)
- {
- _editPainter.Update();
- }
-
- private void _on_ScalePanel_resized()
- {
- //更新textEditor的缩放
- if (ScalePanel != null)
- {
- ScalePanel.SetSize(RectSize / StartScale);
- }
- }
- }
- }