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

Comparing SiteMapper/Page.cpp (file contents):
Revision 129 by Douglas Thrift, 2004-03-23T22:49:41-08:00 vs.
Revision 136 by Douglas Thrift, 2004-03-25T01:21:21-08:00

# Line 12 | Line 12 | Page::Page(const string& address, const
12          setAddress(address);
13          setPath(path);
14          setTitle(title);
15 +
16 +        tab = 0;
17   }
18  
19 < Page::Page(const string& url)
19 > Page::Page(const string& url, const string& title)
20   {
21          setUrl(url);
22 +        setTitle(title);
23 +
24 +        tab = 0;
25   }
26  
27   void Page::setUrl(const string& url)
# Line 46 | Line 51 | void Page::setUrl(const string& url)
51  
52   bool Page::operator==(const string& thing)
53   {
54 <        //
54 >        if (address == thing)
55 >        {
56 >                return true;
57 >        }
58 >        else if (path == thing)
59 >        {
60 >                return true;
61 >        }
62 >        else if (title == thing)
63 >        {
64 >                return true;
65 >        }
66  
67          return false;
68   }
69  
70   bool Page::operator==(Page& page)
71   {
72 <        //
72 >        if (address == page.address)
73 >        {
74 >                if (path == page.path || title == page.title) return true;
75 >        }
76  
77          return false;
78   }
79  
80   bool Page::operator<(Page& page)
81   {
82 <        //
82 >        if (address < page.address) if (path < page.path) return true;
83  
84          return false;
85   }
86  
87   bool Page::operator>(Page& page)
88   {
89 <        //
89 >        if (address > page.address) if (path > page.path) return true;
90  
91          return false;
92   }
93 +
94 + ostream& operator<<(ostream& output, Page& page)
95 + {
96 +        string tab(page.tab, '\t');
97 +
98 +        output << tab << "<item><link address=\"" << page.getUrl() << "\">"
99 +                << page.title << "</link>\n";
100 +
101 +        if (!page.children.empty())
102 +        {
103 +                output << tab << "\t<list>\n";
104 +
105 +                for (int index = 0; index < page.children.size(); index++)
106 +                {
107 +                        output << page.children[index](page.tab + 1) << '\n';
108 +                }
109 +
110 +                output << tab << "\t</list>\n";
111 +        }
112 +
113 +        output << tab << "</item>";
114 +
115 +        return output;
116 + }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines