Group.h

Go to the documentation of this file.
00001 //---------------------------------------------------------------------------------------
00002 // Copyright (c) 2001-2008 by PDFTron Systems Inc. All Rights Reserved.
00003 // Consult legal.txt regarding legal and license information.
00004 //---------------------------------------------------------------------------------------
00005 
00006 #ifndef   H_CPPPDFOCGGroup
00007 #define   H_CPPPDFOCGGroup
00008 
00009 #include <PDF/OCG/Config.h>
00010 #include <C/PDF/OCG/TRN_OCG.h>
00011 
00012 namespace pdftron {
00013         namespace PDF {
00014                 class PDFDoc;
00015                 namespace OCG {
00016 
00051 class Group
00052 {
00053 public:
00054 
00061         static Group Create(PDFDoc& doc, const UString& name);
00062 
00067         Group(SDF::Obj ocg);
00068 
00072         bool IsValid() const;
00073 
00077         UString GetName() const;        
00078 
00083         void SetName(const UString& name);
00084 
00090         bool GetCurrentState(const class Context& context) const;   
00091 
00097         void SetCurrentState(class Context& context, bool state);
00098 
00108         bool GetInitialState(const class Config& config) const;
00109 
00117         void SetInitialState(class Config& config, bool state);
00118 
00128         SDF::Obj GetIntent() const;
00129 
00135         void SetIntent(SDF::Obj intent);
00136 
00142         bool IsLocked(const Config& config) const;
00143 
00151         void SetLocked(const Config& config, bool locked);
00152 
00156         bool HasUsage() const;
00157 
00166         SDF::Obj GetUsage(const char* key) const;
00167 
00171         SDF::Obj GetSDFObj () const;
00172 
00176         Group (const Group& g);
00177         Group& operator=(const Group& g);
00178 
00180         Group(TRN_OCG g) : mp_obj(g) {}
00181         TRN_OCG mp_obj;
00183 };
00184 
00185                 };      // namespace OCG
00186         };      // namespace PDF
00187 };      // namespace pdftron
00188 
00189 #endif

© 2002-2008 PDFTron Systems Inc.