From 88b8f3760acd9e4ea0697c6dd21522151d5dba4a Mon Sep 17 00:00:00 2001 From: AlexandreSajus Date: Tue, 4 Jan 2022 11:44:57 +0100 Subject: [PATCH 1/2] :beetle: editing a block resets output's states --- opencodeblocks/blocks/codeblock.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/opencodeblocks/blocks/codeblock.py b/opencodeblocks/blocks/codeblock.py index 229f5681..c93bcfea 100644 --- a/opencodeblocks/blocks/codeblock.py +++ b/opencodeblocks/blocks/codeblock.py @@ -5,13 +5,12 @@ from typing import OrderedDict, Optional from PyQt5.QtWidgets import ( - QApplication, QPushButton, QTextEdit, QWidget, QStyleOptionGraphicsItem, ) -from PyQt5.QtCore import QTimer, Qt +from PyQt5.QtCore import Qt from PyQt5.QtGui import QPen, QColor, QPainter, QPainterPath from ansi2html import Ansi2HTMLConverter @@ -19,7 +18,6 @@ from opencodeblocks.blocks.block import OCBBlock from opencodeblocks.blocks.executableblock import OCBExecutableBlock -from opencodeblocks.graphics.socket import OCBSocket from opencodeblocks.graphics.pyeditor import PythonEditor conv = Ansi2HTMLConverter() @@ -209,6 +207,11 @@ def source(self) -> str: @source.setter def source(self, value: str): if value != self._source: + # If text has changed, set self and all output blocks to not run + output_blocks, _ = self.custom_bfs(self, reverse=True) + for block in output_blocks: + block.has_been_run = False + self._source = value self.has_been_run = False self.source_editor.setText(value) self._source = value From a03255662d00c49014287742d940630d0ed5db21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=AFs=20F=C3=A9d=C3=A9rico?= <60117466+MathisFederico@users.noreply.github.com> Date: Tue, 4 Jan 2022 21:47:39 +0100 Subject: [PATCH 2/2] :fire: Remove duplicated line --- opencodeblocks/blocks/codeblock.py | 1 - 1 file changed, 1 deletion(-) diff --git a/opencodeblocks/blocks/codeblock.py b/opencodeblocks/blocks/codeblock.py index c93bcfea..996242df 100644 --- a/opencodeblocks/blocks/codeblock.py +++ b/opencodeblocks/blocks/codeblock.py @@ -211,7 +211,6 @@ def source(self, value: str): output_blocks, _ = self.custom_bfs(self, reverse=True) for block in output_blocks: block.has_been_run = False - self._source = value self.has_been_run = False self.source_editor.setText(value) self._source = value