/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
class SwRangeRedline; class SwTableRowRedline; class SwTableCellRedline; class SwPaM; struct SwPosition; class SwStartNode; class SwNode; class SwViewShell;
enumclass RedlineFlags
{
NONE = 0x000, ///< no RedlineFlags
On = 0x001, ///< RedlineFlags on
Ignore = 0x002, ///< ignore Redlines (only set from code, temporarily)
ShowInsert = 0x010, ///< show all inserts
ShowDelete = 0x020, ///< show all deletes
ShowMask = ShowInsert | ShowDelete,
// For internal management: // remove the original Redlines together with their content // (Clipboard/text modules).
DeleteRedlines = 0x100, // don't combine any redlines. This flag may be only used in Undo.
DontCombineRedlines = 0x400,
}; namespace o3tl
{ template<> struct typed_flags<RedlineFlags> : is_typed_flags<RedlineFlags, 0x533> {};
}
inline OUString SwRedlineTypeToOUString(RedlineType eType)
{
OUString sRet; switch(eType)
{ case RedlineType::Insert: sRet = "Insert"; break; case RedlineType::Delete: sRet = "Delete"; break; case RedlineType::Format: sRet = "Format"; break; case RedlineType::ParagraphFormat: sRet = "ParagraphFormat"; break; case RedlineType::Table: sRet = "TextTable"; break; case RedlineType::FmtColl:sRet = "Style"; break; default: break;
} return sRet;
};
enumclass AppendResult { IGNORED, MERGED, APPENDED }; /** Append a new redline
@param pNewRedl redline to insert
@param bCallDelete if set, then for a new DELETE redline that is inserted so that it overlaps an existing INSERT redline with the same author, the overlapping range is deleted, i.e. the new DELETE removes existing INSERT for that range
@returns APPENDED if pNewRedl is still alive and was appended MERGED if pNewRedl was deleted but has been merged with existing one IGNORED if pNewRedl was deleted and ignored/invalid
*/ virtual AppendResult AppendRedline(/*[in]*/ SwRangeRedline* pNewRedl, /*[in]*/ bool bCallDelete, /*[in]*/ sal_uInt32 nMoveIDToDelete = 0) = 0;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.