Salome HOME
Merge from V6_main_20120808 08Aug12
[modules/kernel.git] / src / SALOMEDS / README_attributes
1 Copyright (C) 2007-2012  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.
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