ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/SiteMapper/Page.hpp
(Generate patch)

Comparing SiteMapper/Page.hpp (file contents):
Revision 135 by Douglas Thrift, 2004-03-25T01:02:24-08:00 vs.
Revision 559 by douglas, 2005-07-17T04:58:55-07:00

# Line 7 | Line 7
7   #ifndef _Page_hpp_
8   #define _Page_hpp_
9  
10 < #include "SiteMapper.hpp"
10 > #ifdef MENES_PRAGMA_ONCE
11 > #pragma once
12 > #endif
13 >
14 > class Matcher;
15  
16   class Page
17   {
18   private:
19 <        string address;
20 <        string path;
21 <        string title;
18 <        vector<Page> children;
19 <        unsigned tab;
19 >        cse::String address, path, title;
20 >        ext::Vector<Page> children;
21 >        cse::String childOf;
22   public:
23 <        Page(const string& address, const string& path, const string& title);
24 <        Page(const string& url, const string& title);
23 >        Page() {}
24 >        Page(const cse::String& address, const cse::String& path, const cse::String& title) : address(address), path(path), title(title) {}
25 >        Page(const cse::String& url, const cse::String& title) : title(title) { SetUrl(url); }
26          ~Page() {}
27 <        string& getAddress(void) { return address; }
28 <        string& getPath(void) { return path; }
29 <        string& getTitle(void) { return title; }
30 <        vector<Page>& getChildren(void) { return children; }
31 <        string getUrl(void) { return "http://" + address + path; }
32 <        void setAddress(const string& address) { this->address = address; }
33 <        void setPath(const string& path) { this->path = path; }
34 <        void setTitle(const string& title) { this->title = title; }
35 <        void setChildren(vector<Page>& children) { this->children = children; }
36 <        void setUrl(const string& url);
37 <        Page& operator()(unsigned tab) { this->tab = tab; return *this; }
38 <        bool operator==(const string& thing);
39 <        bool operator==(Page& page);
40 <        bool operator!=(const string& thing) { return !(*this == thing); }
41 <        bool operator!=(Page& page) { return !(*this == page); }
42 <        bool operator<(Page& page);
40 <        bool operator>(Page& page);
27 >        cse::String& GetAddress() { return address; }
28 >        cse::String& GetPath() { return path; }
29 >        cse::String& GetTitle() { return title; }
30 >        ext::Vector<Page>& GetChildren() { return children; }
31 >        cse::String& GetChildOf() { return childOf; }
32 >        cse::String GetUrl() const { return _S<ios::String>() << _B("http://") << address << path; }
33 >        void SetAddress(const cse::String& address) { this->address = address; }
34 >        void SetPath(const cse::String& path) { this->path = path; }
35 >        void SetTitle(const cse::String& title) { this->title = title; }
36 >        void SetChildren(ext::Vector<Page>& children) { this->children = children; }
37 >        void SetChildOf(const cse::String& childOf) { this->childOf = childOf; }
38 >        void SetUrl(const cse::String& url);
39 >        bool operator==(const cse::String& thing);
40 >        bool operator==(const Page& page) const;
41 >        bool operator!=(const cse::String& thing) { return !(*this == thing); }
42 >        bool operator!=(const Page& page) const { return !(*this == page); }
43   // friends:
44 <        friend bool operator==(const string& thing, Page& page) { return page ==
45 <                thing; }
46 <        friend bool operator!=(const string& thing, Page& page) { return page ==
45 <                thing; }
46 <        friend ostream& operator<<(ostream& output, Page& page);
44 >        friend bool operator==(const cse::String& thing, Page& page) { return page == thing; }
45 >        friend bool operator!=(const cse::String& thing, Page& page) { return page != thing; }
46 >        friend xml::TextWriter& operator<<(xml::TextWriter& xml, Page& page);
47   };
48  
49   #endif // _Page_hpp_

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines