0030493: Draw, ViewerTest - minor improvement of vdisplay command
[occt.git] / src / DDF / DDF_AttributeBrowser.cxx
CommitLineData
b311480e 1// Created by: DAUTRY Philippe
2// Copyright (c) 1997-1999 Matra Datavision
973c2be1 3// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 4//
973c2be1 5// This file is part of Open CASCADE Technology software library.
b311480e 6//
d5f74e42 7// This library is free software; you can redistribute it and/or modify it under
8// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 9// by the Free Software Foundation, with special exception defined in the file
10// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11// distribution for complete text of the license and disclaimer of any warranty.
b311480e 12//
973c2be1 13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
b311480e 15
7fd59977 16// ------------------------
7fd59977 17
18// Version: 0.0
b311480e 19//Version Date Purpose
7fd59977 20// 0.0 Oct 6 1997 Creation
21
22
23
24#include <DDF_AttributeBrowser.hxx>
25
26static DDF_AttributeBrowser* DDF_FirstBrowser = NULL;
27
28//=======================================================================
29//function : DDF_AttributeBrowser
30//purpose :
31//=======================================================================
32
33DDF_AttributeBrowser::DDF_AttributeBrowser
34(Standard_Boolean (*test)(const Handle(TDF_Attribute)&),
35 TCollection_AsciiString (*open)(const Handle(TDF_Attribute)&),
36 TCollection_AsciiString (*text)(const Handle(TDF_Attribute)&))
37: myTest(test),
38 myOpen(open),
39 myText(text),
40 myNext(DDF_FirstBrowser)
41{
42 DDF_FirstBrowser = this;
43}
44
45
46//=======================================================================
47//function : Test
48//purpose :
49//=======================================================================
50
51Standard_Boolean DDF_AttributeBrowser::Test
52(const Handle(TDF_Attribute)&anAtt) const
53{return (*myTest) (anAtt);}
54
55
56//=======================================================================
57//function : Open
58//purpose :
59//=======================================================================
60
61TCollection_AsciiString DDF_AttributeBrowser::Open
62(const Handle(TDF_Attribute)& anAtt) const
63{ return (*myOpen) (anAtt);}
64
65
66//=======================================================================
67//function : Text
68//purpose :
69//=======================================================================
70
71TCollection_AsciiString DDF_AttributeBrowser::Text
72(const Handle(TDF_Attribute)& anAtt) const
73{return (*myText) (anAtt);}
74
75
76//=======================================================================
77//function : FindBrowser
78//purpose :
79//=======================================================================
80
81DDF_AttributeBrowser* DDF_AttributeBrowser::FindBrowser
82(const Handle(TDF_Attribute)&anAtt)
83{
84 DDF_AttributeBrowser* browser = DDF_FirstBrowser;
85 while (browser) {
86 if (browser->Test(anAtt)) break;
87 browser = browser->Next();
88 }
89 return browser;
90}