<?xml version="1.0" encoding="UTF-8"?>

<!--***********************************************************
 *
 * 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
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 *
 ***********************************************************-->

<helpdocument version="1.0">
<meta>
<topic id="textsharedguideredlining_enterxml" indexer="include" status="PUBLISH">
<title xml-lang="en-US" id="tit">Recording Changes</title>
<filename>/text/shared/guide/redlining_enter.xhp</filename>
</topic>
</meta>
<body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3155364">
<bookmark_value>changes; recording</bookmark_value>
<bookmark_value>recording; changes</bookmark_value>
<bookmark_value>comments; on changes</bookmark_value>
<bookmark_value>review function;tracking changes</bookmark_value>
</bookmark><comment>UFI: deleted index review function;recording changes</comment><comment>MW changed "settings;tracking changes" </comment>
<paragraph xml-lang="en-US" id="hd_id3155364" role="heading" level="1" l10n="U"><variable id="redlining_enter"><link href="text/shared/guide/redlining_enter.xhp" name="Recording Changes">Recording Changes</link>
</variable></paragraph>
<paragraph xml-lang="en-US" id="par_id7271645" role="note" l10n="NEW">The review function is available in %PRODUCTNAME for text documents and spreadsheet documents.</paragraph>
<paragraph xml-lang="en-US" id="par_id3145669" role="paragraph" l10n="CHG">Not all changes are recorded. For example, the changing of a tab stop from align left to align right is not recorded. However, all usual changes made by a proofreader are recorded, such as additions, deletions, text alterations, and usual formatting.</paragraph>
<table id="tbl_id3147399">
<tablerow>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3147088" role="paragraph" l10n="U">1.</paragraph>
</tablecell>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3149095" role="paragraph" l10n="U">To start recording changes, open the document to be edited and choose <link href="text/shared/01/02230000.xhp" name="Edit - Changes"><emph>Edit - Changes</emph></link> and then choose <emph>Record</emph>.</paragraph>
</tablecell>
</tablerow>
<tablerow>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3154749" role="paragraph" l10n="U">2.</paragraph>
</tablecell>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3163802" role="paragraph" l10n="U">Now start making your changes. You will note that all new text passages that you enter are underlined in color, while all text that you delete remains visible but is crossed out and shown in color.</paragraph>
</tablecell>
</tablerow>
<tablerow>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3152349" role="paragraph" l10n="U">3.</paragraph>
</tablecell>
<tablecell>
<paragraph xml-lang="en-US" id="par_id3149578" role="paragraph" l10n="CHG">If you move to a marked change with the mouse pointer, you will see a reference to the type of change, the author, date and time of day for the change in the Help Tip. If the Extended Tips are also enabled, you will also see any available comments on this change.</paragraph>
</tablecell>
</tablerow>
</table>
<paragraph role="paragraph" id="par_id3156119" xml-lang="en-US" l10n="U">Changes in a spreadsheet document are highlighted by a border around the cells; when you point to the cell you can see more detailed information on this change in the Help Tip.</paragraph>
<paragraph role="paragraph" id="par_id3148473" xml-lang="en-US" l10n="U">You can enter a comment on each recorded change by placing the cursor in the area of the change and then choosing <emph>Edit - Changes - Comment</emph>. In addition to Extended Tips, the comment is also displayed in the list in the <link href="text/shared/01/02230400.xhp" name="Accept or Reject Changes"><emph>Accept or Reject Changes</emph></link> dialog.</paragraph>
<paragraph role="paragraph" id="par_id3153542" xml-lang="en-US" l10n="U">To stop recording changes, choose <emph>Edit - Changes - Record</emph> again. The check mark is removed and you can now save the document.</paragraph>
<paragraph role="paragraph" id="par_id3153627" xml-lang="en-US" l10n="U">In a text document, you can highlight all lines that you have changed with an additional colored marking. This can be in the form of a red line in the margin, for example.</paragraph>
<paragraph role="paragraph" id="par_id3147530" xml-lang="en-US" l10n="CHG">To change the settings for tracking changes, choose <emph><switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - %PRODUCTNAME Writer</emph> - <link href="text/shared/optionen/01040700.xhp" name="Changes"><emph>Changes</emph></link> or on the <emph><switchinline select="sys"><caseinline select="MAC">%PRODUCTNAME - Preferences</caseinline><defaultinline>Tools - Options</defaultinline></switchinline> - %PRODUCTNAME Calc</emph> - <link href="text/shared/optionen/01060600.xhp" name="Changes"><emph>Changes</emph></link>.</paragraph>
<embed href="text/shared/00/00000004.xhp#related"/>
<embed href="text/shared/guide/redlining.xhp#redlining"/>
<embed href="text/shared/guide/redlining_accept.xhp#redlining_accept"/>
<embed href="text/shared/guide/redlining_doccompare.xhp#redlining_doccompare"/>
<embed href="text/shared/guide/redlining_docmerge.xhp#redlining_docmerge"/>
<embed href="text/shared/guide/redlining_versions.xhp#redlining_versions"/>
</body>
</helpdocument>
