Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Improvements and minor bug fixes in "browse" processing. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | experimental |
| Files: | files | file ages | folders |
| SHA1: |
b27d50b421bb12f2ab1b08c0489ab2f3 |
| User & Date: | drh 2010-10-25 21:47:05.000 |
Context
|
2010-10-26
| ||
| 12:51 | Merge the delta-manifest enhancement into the trunk. check-in: d13054ce84 user: drh tags: trunk | |
|
2010-10-25
| ||
| 21:47 | Improvements and minor bug fixes in "browse" processing. Closed-Leaf check-in: b27d50b421 user: drh tags: experimental | |
| 21:16 | The "fossil revert" command now clears merge history. Less frequent status output on rebuild. The FOSSIL_OMIT_DELTA_CKSUM_TEST compile-time option is available. check-in: 6c8ed4e147 user: drh tags: experimental | |
Changes
Changes to src/browse.c.
| ︙ | ︙ | |||
69 70 71 72 73 74 75 | ** to the "dir" page for the directory. ** ** There is no hyperlink on the file element of the path. ** ** The computed string is appended to the pOut blob. pOut should ** have already been initialized. */ | | > > > > | | > | 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
** to the "dir" page for the directory.
**
** There is no hyperlink on the file element of the path.
**
** The computed string is appended to the pOut blob. pOut should
** have already been initialized.
*/
void hyperlinked_path(const char *zPath, Blob *pOut, const char *zCI){
int i, j;
char *zSep = "";
for(i=0; zPath[i]; i=j){
for(j=i; zPath[j] && zPath[j]!='/'; j++){}
if( zPath[j] && g.okHistory ){
if( zCI ){
blob_appendf(pOut, "%s<a href=\"%s/dir?ci=%S&name=%#T\">%#h</a>",
zSep, g.zBaseURL, zCI, j, zPath, j-i, &zPath[i]);
}else{
blob_appendf(pOut, "%s<a href=\"%s/dir?name=%#T\">%#h</a>",
zSep, g.zBaseURL, j, zPath, j-i, &zPath[i]);
}
}else{
blob_appendf(pOut, "%s%#h", zSep, j-i, &zPath[i]);
}
zSep = "/";
while( zPath[j]=='/' ){ j++; }
}
}
|
| ︙ | ︙ | |||
137 138 139 140 141 142 143 |
}
/* Compute the title of the page */
blob_zero(&dirname);
if( zD ){
blob_append(&dirname, "in directory ", -1);
| | > > > > > | | > > | > | 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 |
}
/* Compute the title of the page */
blob_zero(&dirname);
if( zD ){
blob_append(&dirname, "in directory ", -1);
hyperlinked_path(zD, &dirname, zCI);
zPrefix = mprintf("%h/", zD);
}else{
blob_append(&dirname, "in the top-level directory", -1);
zPrefix = "";
}
if( zCI ){
char zShort[20];
memcpy(zShort, zUuid, 10);
zShort[10] = 0;
@ <h2>Files of check-in [<a href="vinfo?name=%T(zUuid)">%s(zShort)</a>]
@ %s(blob_str(&dirname))</h2>
zSubdirLink = mprintf("%s/dir?ci=%S&name=%T", g.zTop, zUuid, zPrefix);
if( zD ){
style_submenu_element("Top", "Top", "%s/dir?ci=%S", g.zTop, zUuid);
style_submenu_element("All", "All", "%s/dir?name=%t", g.zTop, zD);
}else{
style_submenu_element("All", "All", "%s/dir", g.zBaseURL);
}
}else{
int hasTrunk;
@ <h2>The union of all files from all check-ins
@ %s(blob_str(&dirname))</h2>
hasTrunk = db_exists(
"SELECT 1 FROM tagxref WHERE tagid=%d AND value='trunk'",
TAG_BRANCH);
zSubdirLink = mprintf("%s/dir?name=%T", g.zBaseURL, zPrefix);
if( zD ){
style_submenu_element("Top", "Top", "%s/dir", g.zBaseURL);
style_submenu_element("Tip", "Tip", "%s/dir?name=%t&ci=tip",
g.zBaseURL, zD);
if( hasTrunk ){
style_submenu_element("Trunk", "Trunk", "%s/dir?name=%t&ci=trunk",
g.zBaseURL,zD);
}
}else{
style_submenu_element("Tip", "Tip", "%s/dir?ci=tip", g.zBaseURL);
if( hasTrunk ){
style_submenu_element("Trunk", "Trunk", "%s/dir?ci=trunk", g.zBaseURL);
}
}
}
/* Compute the temporary table "localfiles" containing the names
** of all files and subdirectories in the zD[] directory.
**
** Subdirectory names begin with "/". This causes them to sort
|
| ︙ | ︙ |
Changes to src/finfo.c.
| ︙ | ︙ | |||
129 130 131 132 133 134 135 |
" AND event.objid=mlink.mid"
" ORDER BY event.mtime DESC /*sort*/",
TAG_BRANCH,
zFilename
);
blob_zero(&title);
blob_appendf(&title, "History of ");
| | | 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
" AND event.objid=mlink.mid"
" ORDER BY event.mtime DESC /*sort*/",
TAG_BRANCH,
zFilename
);
blob_zero(&title);
blob_appendf(&title, "History of ");
hyperlinked_path(zFilename, &title, 0);
@ <h2>%b(&title)</h2>
blob_reset(&title);
pGraph = graph_init();
@ <div id="canvas" style="position:relative;width:1px;height:1px;"></div>
@ <table class="timelineTable">
while( db_step(&q)==SQLITE_ROW ){
const char *zDate = db_column_text(&q, 0);
|
| ︙ | ︙ |