// // StringList.h // // StringList: Specialized List containing String objects. // // Part of the ht://Dig package // Copyright (c) 1999-2004 The ht://Dig Group // For copyright details, see the file COPYING in your distribution // or the GNU Library General Public License (LGPL) version 2 or later // // // $Id: StringList.h,v 1.12 2004/05/28 13:15:21 lha Exp $ // #ifndef _StringList_h_ #define _StringList_h_ #include "Object.h" #include "List.h" #include "htString.h" class StringList : public List { public: // // Construction/Destruction // StringList(); // // Creation of a String from a string or String // StringList(const char *str, char sep = '\t') { Create(str, sep); } StringList(const String &str, char sep = '\t') { Create(str, sep); } StringList(const char *str, const char *sep) { Create(str, sep); } StringList(const String &str, const char *sep) { Create(str, sep); } int Create(const char *str, char sep = '\t'); int Create(const String &str, char sep = '\t') { return Create(str.get(), sep); } int Create(const char *str, const char *sep); int Create(const String &str, const char *sep) { return Create(str.get(), sep); } // // Standard List operations... // void Add(const char *); void Add(String *obj) { List::Add(obj); } void Insert(const char *, int pos); void Insert(String *obj, int pos) { List::Insert(obj, pos); } void Assign(const char *, int pos); void Assign(String *obj, int pos) { List::Assign(obj, pos); } // // Since we know we only store strings, we can reliably sort them. // If direction is 1, the sort will be in descending order // void Sort(int direction = 0); // // Join the Elements of the StringList together // String Join(char) const; // // Getting at the parts of the StringList // char *operator [] (int n); private: }; #endif