From 4dfb88353b3671a71bc397d5f210d71f67f8fb04 Mon Sep 17 00:00:00 2001
From: QuakeGod <quakegod@sina.com>
Date: 星期一, 23 十月 2023 15:17:10 +0800
Subject: [PATCH] fix1

---
 MTerm1/MTerm1View.h |   26 ++++++++++++++++++++++----
 1 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/MTerm1/MTerm1View.h b/MTerm1/MTerm1View.h
index 4276493..8647820 100644
--- a/MTerm1/MTerm1View.h
+++ b/MTerm1/MTerm1View.h
@@ -6,6 +6,7 @@
 
 #include <memory>
 #include <vector>
+#include <stack>
 
 #include "MTerm1Doc.h"
 class CMTerm1View : public CScrollView
@@ -42,6 +43,7 @@
 		typePN=15,  //涓嬮檷娌�
 		typeNOT=16,
 		typeDF = 17,
+
 		typeDF_ = 18, 
 		typeOUT=19,
 		typeSET=20,
@@ -113,7 +115,12 @@
 			return 0;
 		}
 	};
+	std::pair<int, int> popsPoint[100];
+	
+	int nPSHS = -1;
+	bool firstCoil = true;//鏈绗竴涓崟鍏冩牸
 
+	bool isPops = false;
 	int m_nTotalRow=0;
 	bool m_bMonitoring = false;		//鐩戞帶涓�
 	bool m_bShowComments = true;	//鏄剧ず娉ㄩ噴
@@ -123,14 +130,15 @@
 	int m_TopMargin = 0;		
 	int m_LeftMargin = 54;		//宸︿晶杈硅窛
 	int m_CellPerLine = 16;		//姣忚鍗曞厓鏁�
-	int m_CellWidth = 64;		//鍗曞厓瀹藉害
+ 	int m_CellWidth = 64;		//鍗曞厓瀹藉害
 	int m_CellHeight = 28;		//鍗曞厓楂樺害
 	int m_CommentHeight = 32;	//娉ㄩ噴楂樺害
 
 	int m_LinePosY = 20;		//鍏冧欢鏄剧ず浣嶇疆
 
-	int m_FocusRow = 0; 			//鐒︾偣琛屽垪浣嶇疆
+ 	int m_FocusRow = 0; 			//鐒︾偣琛屽垪浣嶇疆
 	int m_FocusCol = 0;
+
 	int m_oldFocusRow = 0;
 	int m_oldFocusCol = 0;
 	int m_nCurProgStep = 0;
@@ -197,6 +205,10 @@
 
 	void DrawCell(CDC* pDC, int nRow, int nCol);
 	int TransProgToLDS();
+
+	/// <summary>
+	/// Flag::鏄惁闇�瑕侀噸缁樿鍥撅紝榛樿涓�1=>true
+	/// </summary>
 	int needReDraw = 1;
 
 	int DoReDraw();
@@ -207,6 +219,8 @@
 	int ScrollCellIntoView(int nRow, int nCol);
 	int isCellInView(int nRow, int nCol);
 	int CellFocusChg(int nRow, int nCol);
+
+	std::pair<int, CString> CMTerm1View::LDSCheckRule();
 
 // 閲嶅啓
 public:
@@ -282,8 +296,12 @@
 	afx_msg void OnInputIoComment();
 	afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
 	int ScanLDSCells(int nStartLine, int nEndLine, int nPosY, int nPosX, int nLevel, stProgSection & progsec, CString & sProgSec, int &nSteps);
-	void SetCellToView(stCell cell1);
-
+	int ScanLDSCells2(int nStartLine, int nEndLine, int nPosY, int nPosX, int nSizeX, int nLevel, stProgSection& progsec, CString& sProgSec, int& nSteps);
+	int CMTerm1View::Translate2Prog(
+		int nType, int nCurPosY, int nCurPosX, CString sCellName,
+		stProgSection& progsec, CString& sProgSec, int& nSteps);
+	void SetCellToView(stCell cell1, int flag = 0);//modify0919zxd
+	
 };
 
 #ifndef _DEBUG  // MultiTerminal2View.cpp 涓殑璋冭瘯鐗堟湰

--
Gitblit v1.9.1