1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
30 #include "cmd_sincedata.hxx"
33 // NOT FULLY DEFINED SERVICES
34 #include <cosv/file.hxx>
35 #include <cosv/tpl/tpltools.hxx>
36 #include "adc_cmds.hxx"
45 SinceTagTransformationData::SinceTagTransformationData()
46 : aTransformationTable()
50 SinceTagTransformationData::~SinceTagTransformationData()
55 SinceTagTransformationData::DoesTransform() const
57 return NOT aTransformationTable
.empty();
61 SinceTagTransformationData::DisplayOf( const String
& i_versionNumber
) const
67 sl() << i_versionNumber
;
68 sl().strip_frontback_whitespace();
70 sVersionNumber(sl().c_str());
73 ret
= csv::find_in_map(aTransformationTable
, sVersionNumber
);
80 return i_versionNumber
;
85 SinceTagTransformationData::do_Init( opt_iter
& it
,
88 ++it
; // Cur is since-file path.
90 CHECKOPT( it
!= itEnd
,
94 csv::File
aSinceFile(*it
);
95 csv::OpenCloseGuard
aSinceFileGuard(aSinceFile
);
100 for ( sLine
.operator_read_line(aSinceFile
);
102 sLine
.operator_read_line(aSinceFile
) )
105 if (*sLine
.begin() != '"')
108 const char * pVersion
= sLine
.c_str() + 1;
109 const char * pVersionEnd
= strchr(pVersion
, '"');
110 if (pVersionEnd
== 0)
112 const char * pDisplay
= strchr(pVersionEnd
+1, '"');
116 const char * pDisplayEnd
= strchr(pDisplay
, '"');
117 if (pDisplayEnd
== 0)
120 aTransformationTable
[ String(pVersion
,pVersionEnd
) ]
121 = String(pDisplay
,pDisplayEnd
);
126 ++it
; // Cur is next option.
129 } // namespace command
130 } // namespace autodoc
132 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */