]> git.saurik.com Git - android/aapt.git/blobdiff - XMLNode.h
am 7fca18d4: am 29355534: Fix aapt to build in Windows SDK under Linux
[android/aapt.git] / XMLNode.h
index 86548a22c85805f8819a1b9e1980a6fd8b1d22b9..e9a263bf41d8e0c3516fd826b3d3db74a1ae923a 100644 (file)
--- a/XMLNode.h
+++ b/XMLNode.h
@@ -68,6 +68,8 @@ public:
     const String16& getElementName() const;
     const Vector<sp<XMLNode> >& getChildren() const;
 
     const String16& getElementName() const;
     const Vector<sp<XMLNode> >& getChildren() const;
 
+    const String8& getFilename() const;
+    
     struct attribute_entry {
         attribute_entry() : index(~(uint32_t)0), nameResId(0)
         {
     struct attribute_entry {
         attribute_entry() : index(~(uint32_t)0), nameResId(0)
         {
@@ -91,6 +93,10 @@ public:
 
     const Vector<attribute_entry>& getAttributes() const;
 
 
     const Vector<attribute_entry>& getAttributes() const;
 
+    const attribute_entry* getAttribute(const String16& ns, const String16& name) const;
+    
+    attribute_entry* editAttribute(const String16& ns, const String16& name);
+
     const String16& getCData() const;
 
     const String16& getComment() const;
     const String16& getCData() const;
 
     const String16& getComment() const;
@@ -98,8 +104,14 @@ public:
     int32_t getStartLineNumber() const;
     int32_t getEndLineNumber() const;
 
     int32_t getStartLineNumber() const;
     int32_t getEndLineNumber() const;
 
+    sp<XMLNode> searchElement(const String16& tagNamespace, const String16& tagName);
+    
+    sp<XMLNode> getChildElement(const String16& tagNamespace, const String16& tagName);
+    
     status_t addChild(const sp<XMLNode>& child);
 
     status_t addChild(const sp<XMLNode>& child);
 
+    status_t insertChildAt(const sp<XMLNode>& child, size_t index);
+
     status_t addAttribute(const String16& ns, const String16& name,
                           const String16& value);
 
     status_t addAttribute(const String16& ns, const String16& name,
                           const String16& value);
 
@@ -114,6 +126,8 @@ public:
 
     void removeWhitespace(bool stripAll=true, const char** cDataTags=NULL);
 
 
     void removeWhitespace(bool stripAll=true, const char** cDataTags=NULL);
 
+    void setUTF8(bool val) { mUTF8 = val; }
+
     status_t parseValues(const sp<AaptAssets>& assets, ResourceTable* table);
 
     status_t assignResourceIds(const sp<AaptAssets>& assets,
     status_t parseValues(const sp<AaptAssets>& assets, ResourceTable* table);
 
     status_t assignResourceIds(const sp<AaptAssets>& assets,
@@ -179,6 +193,9 @@ private:
     String8 mFilename;
     int32_t mStartLineNumber;
     int32_t mEndLineNumber;
     String8 mFilename;
     int32_t mStartLineNumber;
     int32_t mEndLineNumber;
+
+    // Encode compiled XML with UTF-8 StringPools?
+    bool mUTF8;
 };
 
 #endif
 };
 
 #endif