*
* @brief Declaration of CDiffTextBuffer class
*/
-// ID line follows -- this is updated by SVN
-// $Id: DiffTextBuffer.h 6879 2009-06-29 10:00:33Z kimmov $
-
-#ifndef _DIFFTEXT_BUFFER_H_
-#define _DIFFTEXT_BUFFER_H_
+#pragma once
#include "GhostTextBuffer.h"
#include "FileTextEncoding.h"
-class CMergedoc;
+class CMergeDoc;
class PackingInfo;
/**
CMergeDoc * m_pOwnerDoc; /**< Merge document owning this buffer. */
int m_nThisPane; /**< Left/Right side */
String m_strTempPath; /**< Temporary files folder. */
- int m_unpackerSubcode; /**< Plugin information. */
+ String m_strTempFileName; /**< Temporary file name. */
+ std::vector<int> m_unpackerSubcodes; /**< Plugin information. */
bool m_bMixedEOL; /**< EOL style of this buffer is mixed? */
/**
CDiffTextBuffer(CMergeDoc * pDoc, int pane);
void SetTempPath(const String &path);
+ String GetTempFileName() const { return m_strTempFileName; }
virtual void AddUndoRecord (bool bInsert, const CPoint & ptStartPos,
- const CPoint & ptEndPos, LPCTSTR pszText, int cchText,
- int nLinesToValidate, int nActionType = CE_ACTION_UNKNOWN,
- CDWordArray *paSavedRevisonNumbers = NULL);
+ const CPoint & ptEndPos, LPCTSTR pszText, size_t cchText,
+ int nActionType = CE_ACTION_UNKNOWN,
+ CDWordArray *paSavedRevisionNumbers = nullptr) override;
bool curUndoGroup();
void ReplaceFullLines(CDiffTextBuffer& dbuf, CDiffTextBuffer& sbuf, CCrystalTextView * pSource, int nLineBegin, int nLineEnd, int nAction =CE_ACTION_UNKNOWN);
- int LoadFromFile(LPCTSTR pszFileName, PackingInfo * infoUnpacker,
+ int LoadFromFile(LPCTSTR pszFileName, PackingInfo& infoUnpacker,
LPCTSTR filteredFilenames, bool & readOnly, CRLFSTYLE nCrlfStyle,
const FileTextEncoding & encoding, CString &sError);
int SaveToFile (const String& pszFileName, bool bTempFile, String & sError,
- PackingInfo * infoUnpacker = NULL, CRLFSTYLE nCrlfStyle = CRLF_STYLE_AUTOMATIC,
- bool bClearModifiedFlag = TRUE, int nStartLine = 0, int nLines = -1);
+ PackingInfo& infoUnpacker, CRLFSTYLE nCrlfStyle = CRLFSTYLE::AUTOMATIC,
+ bool bClearModifiedFlag = true, int nStartLine = 0, int nLines = -1);
ucr::UNICODESET getUnicoding() const { return m_encoding.m_unicoding; }
void setUnicoding(ucr::UNICODESET value) { m_encoding.m_unicoding = value; }
int getCodepage() const { return m_encoding.m_codepage; }
// if line has any text (including eol), set strLine to text (including eol)
bool GetFullLine(int nLineIndex, CString &strLine) const;
- virtual void SetModified (bool bModified = TRUE);
+ virtual void SetModified (bool bModified = true) override;
void prepareForRescan();
- virtual void OnNotifyLineHasBeenEdited(int nLine);
+ virtual void OnNotifyLineHasBeenEdited(int nLine) override;
bool IsInitialized() const;
+ virtual bool DeleteText2 (CCrystalTextView * pSource, int nStartLine,
+ int nStartPos, int nEndLine, int nEndPos,
+ int nAction = CE_ACTION_UNKNOWN, bool bHistory = true) override;
};
-#endif // _DIFFTEXT_BUFFER_H_
+/**
+ * @brief Set the folder for temp files.
+ * @param [in] path Temp files folder.
+ */
+inline void CDiffTextBuffer::SetTempPath(const String &path)
+{
+ m_strTempPath = path;
+}
+
+/**
+ * @brief Is the buffer initialized?
+ * @return true if the buffer is initialized, false otherwise.
+ */
+inline bool CDiffTextBuffer::IsInitialized() const
+{
+ return !!m_bInit;
+}
+