This commit is contained in:
codeboss 2024-08-03 10:15:15 +08:00
parent 75e239a92f
commit 239b9a15bb
7 changed files with 58 additions and 43 deletions

View File

@ -1,5 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="PROJECT_PROFILE" value="Default" />
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>

View File

@ -5,11 +5,10 @@
</component>
<component name="ChangeListManager">
<list default="true" id="f609c0f2-cd0d-4eea-87f1-8caf02d3f04f" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/profiles_settings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/profiles_settings.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/frame/ContentView.py" beforeDir="false" afterPath="$PROJECT_DIR$/frame/ContentView.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/graph/undirected_graph/UDGPresent.py" beforeDir="false" afterPath="$PROJECT_DIR$/graph/undirected_graph/UDGPresent.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/manage/NovelManage.py" beforeDir="false" afterPath="$PROJECT_DIR$/manage/NovelManage.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/manage/wnss.bat" beforeDir="false" afterPath="$PROJECT_DIR$/manage/wnss.bat" afterDir="false" />
<change beforePath="$PROJECT_DIR$/entry.py" beforeDir="false" afterPath="$PROJECT_DIR$/entry.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/frame/CompareViews.py" beforeDir="false" afterPath="$PROJECT_DIR$/frame/CompareViews.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -37,33 +36,34 @@
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"Python.CompareViews.executor": "Run",
"Python.CompareWindow.executor": "Run",
"Python.ContentView.executor": "Run",
"Python.DAGGraph (1).executor": "Run",
"Python.DAGGraph.executor": "Run",
"Python.DAGLayout (1).executor": "Run",
"Python.DAGLayout.executor": "Run",
"Python.DAGPresent.executor": "Run",
"Python.MergeView.executor": "Run",
"Python.MileStone.executor": "Run",
"Python.NovelManage.executor": "Debug",
"Python.ReferView.executor": "Run",
"Python.StoryMap.executor": "Run",
"Python.UDGLayout.executor": "Run",
"Python.UDGPresent.executor": "Run",
"Python.ast_load.executor": "Debug",
"Python.entry.executor": "Run",
"Python.test.executor": "Run",
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
"git-widget-placeholder": "master",
"last_opened_file_path": "D:/Projects/Python/StoryTools",
"settings.editor.selected.configurable": "debugger.dataViews"
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;ASKED_ADD_EXTERNAL_FILES&quot;: &quot;true&quot;,
&quot;Python.CompareViews.executor&quot;: &quot;Run&quot;,
&quot;Python.CompareWindow.executor&quot;: &quot;Run&quot;,
&quot;Python.ContentView.executor&quot;: &quot;Run&quot;,
&quot;Python.DAGGraph (1).executor&quot;: &quot;Run&quot;,
&quot;Python.DAGGraph.executor&quot;: &quot;Run&quot;,
&quot;Python.DAGLayout (1).executor&quot;: &quot;Run&quot;,
&quot;Python.DAGLayout.executor&quot;: &quot;Run&quot;,
&quot;Python.DAGPresent.executor&quot;: &quot;Run&quot;,
&quot;Python.MergeView.executor&quot;: &quot;Run&quot;,
&quot;Python.MileStone.executor&quot;: &quot;Run&quot;,
&quot;Python.NovelManage.executor&quot;: &quot;Debug&quot;,
&quot;Python.ReferView.executor&quot;: &quot;Run&quot;,
&quot;Python.StoryMap.executor&quot;: &quot;Run&quot;,
&quot;Python.UDGLayout.executor&quot;: &quot;Run&quot;,
&quot;Python.UDGPresent.executor&quot;: &quot;Run&quot;,
&quot;Python.ast_load.executor&quot;: &quot;Debug&quot;,
&quot;Python.entry.executor&quot;: &quot;Run&quot;,
&quot;Python.test.executor&quot;: &quot;Run&quot;,
&quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;master&quot;,
&quot;last_opened_file_path&quot;: &quot;D:/Projects/Python/StoryTools&quot;,
&quot;settings.editor.selected.configurable&quot;: &quot;preferences.lookFeel&quot;
}
}]]></component>
}</component>
<component name="PyDebuggerOptionsProvider">
<option name="mySaveCallSignatures" value="true" />
<option name="mySupportGeventDebugging" value="true" />
@ -219,6 +219,9 @@
<component name="UnknownFeatures">
<option featureType="com.intellij.fileTypeFactory" implementationName="*.bat" />
</component>
<component name="VcsManagerConfiguration">
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>

2
.pylintrc Normal file
View File

@ -0,0 +1,2 @@
extension-pkg-whitelist=PyQt5

View File

@ -1,8 +1,15 @@
import sys, os
"""
CompareViews
对比Storylines基线和最新Storylines编译结果差异对比
"""
import sys
import os
from typing import List, Dict, Tuple
from PyQt5.QtCore import QModelIndex
from PyQt5.QtGui import QStandardItemModel, QStandardItem
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QTableView, QSplitter, QApplication, QMainWindow
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
from frame.MergeView import LinesMergeView, MergeDestination
from manage.MileStone import base_store_path, current_store_path
@ -20,7 +27,7 @@ class ResultList(QTableView):
self.setSelectionBehavior(QTableView.SelectionBehavior.SelectRows)
pass
def present_affected_fragments(self,graph_new: Dict[str, StoryMap], cmp_result: Dict[ModifyReason, List[FragmentSlice]]):
def present_affected_fragments(self, graph_new: Dict[str, StoryMap], cmp_result: Dict[ModifyReason, List[FragmentSlice]]):
"""
展示影响节点
:return:
@ -101,7 +108,7 @@ class ResultList(QTableView):
return retvs
def __filter_and_related_defines_seek(self, affect_directed: List[FragmentSlice])-> List[Tuple[str, str]]:
def __filter_and_related_defines_seek(self, affect_directed: List[FragmentSlice]) -> List[Tuple[str, str]]:
story_fragment_names: Dict[str, Tuple[str, str]] = {}
for node in affect_directed:
# 情节定义节点
@ -118,13 +125,15 @@ class ResultList(QTableView):
return list(story_fragment_names.values())
def __append_fragments_list(self, fragment_keys: List[Tuple[str, str]], type: str) -> None:
def __append_fragments_list(self, fragment_keys: List[Tuple[str, str]], comp_type: str) -> None:
for key_def in fragment_keys:
row = []
row.append(QStandardItem(key_def[0]))
row.append(QStandardItem(key_def[1]))
row.append(QStandardItem(type))
for cell in row: cell.setEditable(False)
row = [
QStandardItem(key_def[0]),
QStandardItem(key_def[1]),
QStandardItem(comp_type)
]
for cell in row:
cell.setEditable(False)
self.model.appendRow(row)
pass
pass

View File

@ -1,7 +1,7 @@
from PyQt5.QtWidgets import QTextEdit, QWidget, QSplitter, QVBoxLayout, QApplication
from PyQt5.Qt import Qt
from abc import abstractmethod
from typing import List
from typing import List, Protocol
import sys

View File

@ -1,6 +1,6 @@
from math import floor,ceil
from graph.DataType import Point, Arrow
from typing import List, Dict, Tuple
from math import floor,ceil
class DAGLayerHelper: