summaryrefslogtreecommitdiff
path: root/idl/inc
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2016-03-11 14:05:30 +0200
committerNoel Grandin <noel@peralex.com>2016-06-22 09:27:15 +0200
commit3e53c6ba9313dae334c0b4db78c911fa960a9fe2 (patch)
tree6680afe56b8c5f0cf7a36049e176c2f1001b374f /idl/inc
parent5a39ad3b259a20fa1c78e34ca9146dcec7fe90b0 (diff)
move the attribute parsing code to SvParser
and simplify considerably Change-Id: I2a4af15e77904b62abc81dad78a2990e2eab05f0
Diffstat (limited to 'idl/inc')
-rw-r--r--idl/inc/parser.hxx6
-rw-r--r--idl/inc/slot.hxx2
2 files changed, 6 insertions, 2 deletions
diff --git a/idl/inc/parser.hxx b/idl/inc/parser.hxx
index d4d6abb440a3..cc2696b1e7c7 100644
--- a/idl/inc/parser.hxx
+++ b/idl/inc/parser.hxx
@@ -30,6 +30,7 @@ class SvMetaTypeEnum;
class SvStringHashEntry;
class SvMetaType;
class SvMetaClass;
+class SvBOOL;
class SvIdlParser
{
@@ -44,16 +45,19 @@ public:
void ReadInclude( SvMetaModule& rModule );
void ReadInterfaceOrShell( SvMetaModule& rModule, MetaTypeType aMetaTypeType );
void ReadInterfaceOrShellEntry( SvMetaClass& rClass );
- bool ReadInterfaceOrShellSlot( SvMetaSlot& rSlot );
+ bool ReadSlot( SvMetaSlot& rSlot );
void ReadInterfaceOrShellMethod( SvMetaAttribute& rAttr );
void ReadItem();
void ReadStruct();
void ReadEnum();
void ReadEnumValue( SvMetaTypeEnum& rEnum );
void ReadSlotId(SvIdentifier& rSlotId);
+ void ReadSlotAttribute( SvMetaSlot& rSlot );
SvMetaClass* ReadKnownClass();
SvMetaType* ReadKnownType();
void Read(char cChar);
+ bool ReadIfBoolAttribute( SvBOOL&, SvStringHashEntry* pName);
+ bool ReadIfIdAttribute( SvIdentifier& rIdentifier, SvStringHashEntry* pName );
bool ReadIf(char cChar);
void ReadDelimiter();
bool ReadIfDelimiter();
diff --git a/idl/inc/slot.hxx b/idl/inc/slot.hxx
index 93f127dd2a7a..bb807844447f 100644
--- a/idl/inc/slot.hxx
+++ b/idl/inc/slot.hxx
@@ -25,6 +25,7 @@
class SvMetaSlot : public SvMetaAttribute
{
+public:
tools::SvRef<SvMetaType> aSlotType;
tools::SvRef<SvMetaSlot> aMethod;
SvIdentifier aGroupId;
@@ -69,7 +70,6 @@ class SvMetaSlot : public SvMetaAttribute
bool IsVariable() const;
bool IsMethod() const;
-protected:
void SetToggle( bool bSet ) { aToggle = bSet; }
void SetAutoUpdate( bool bSet ) { aAutoUpdate = bSet; }
void SetAsynchron( bool bSet ) { aAsynchron = bSet; }