Salome HOME
049a2e4538bab3fbfa4daa01eab1dd7c3bd095ff
[modules/kernel.git] / src / SALOMEDS / README_attributes
1 Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
2
3 Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Lesser General Public
8 License as published by the Free Software Foundation; either
9 version 2.1 of the License, or (at your option) any later version.
10
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 Lesser General Public License for more details.
15
16 You should have received a copy of the GNU Lesser General Public
17 License along with this library; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19
20 See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 -----------------------------------------
22
23 How to add a new attribute (without WOK): 
24 -----------------------------------------
25
26 This works only for simple types (ex: string)
27
28 example: add attribute FileType (string)
29
30 # new files (copied from files specific to ExternalFileDef attribute = string):
31
32 ? src/SALOMEDS/Handle_SALOMEDS_FileType.hxx      <---  Handle_SALOMEDS_ExternalFileDef.hxx
33 ? src/SALOMEDS/SALOMEDS_AttributeFileType_i.cxx  <---  SALOMEDS_AttributeExternalFileDef_i.cxx
34 ? src/SALOMEDS/SALOMEDS_AttributeFileType_i.hxx  <---  SALOMEDS_AttributeExternalFileDef_i.hxx
35 ? src/SALOMEDS/SALOMEDS_FileType.cdl             <---  SALOMEDS_ExternalFileDef.cdl
36 ? src/SALOMEDS/SALOMEDS_FileType.cxx             <---  SALOMEDS_ExternalFileDef.cxx
37 ? src/SALOMEDS/SALOMEDS_FileType.hxx             <---  SALOMEDS_ExternalFileDef.hxx
38 ? src/SALOMEDS/SALOMEDS_FileType.ixx             <---  SALOMEDS_ExternalFileDef.ixx
39 ? src/SALOMEDS/SALOMEDS_FileType.jxx             <---  SALOMEDS_ExternalFileDef.jxx
40
41 # files modified:
42
43 M idl/SALOMEDS_Attributes.idl
44 M src/SALOMEDS/Makefile.in
45 M src/SALOMEDS/SALOMEDS_SObject_i.cxx
46 M src/SALOMEDS/SALOMEDS_StudyBuilder_i.cxx
47
48 # detailled modifications:
49
50 - in new files,
51 change ExternalFileDef in FileType everywhere
52 - in SALOMEDS_FileType.cxx,
53 Standard_GUID (Global Universal IDentifier) must be changed.
54 To obtain a new GUID, it is possible to use guidgen.exe on windows (with visual C++).
55
56 - in src/SALOMEDS/Makefile.in,
57 add under LIB_SRC = \
58                   SALOMEDS_FileType.cxx \
59                   SALOMEDS_AttributeExternalFileDef_i.cxx \
60
61 - in src/SALOMEDS/SALOMEDS_SObject_i.cxx,
62 - in src/SALOMEDS/SALOMEDS_StudyBuilder_i.cxx,
63 - in idl/SALOMEDS_Attributes.idl,
64 find portions of code containing ExternalFileDef, duplicate and replace
65