317{
318
319
320
321
322
323
324
325
326
327
328 QCString f = file;
329 if (!f.
isEmpty() && f.
at(0)==
'^')
return;
330
332 {
333 f = "doxygen_blank";
336 {
339 if (!blankFile.is_open())
340 {
341 term(
"Could not open file {} for writing\n",fileName);
342 }
343 TextStream blank;
345 blank << "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n";
347 blank << "<head>\n";
348 blank << "<title>Validator / crawler helper</title>\n";
349 blank << "<meta http-equiv=\"Content-Type\" content=\"text/xhtml;charset=UTF-8\"/>\n";
350 blank << "<meta http-equiv=\"X-UA-Compatible\" content=\"IE=11\"/>\n";
351
352 blank << "<meta name=\"generator\" content=\"Doxygen " + getDoxygenVersion() + "\"/>\n";
353 blank << "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"/>\n";
354 blank << "</head>\n";
355 blank << "<body>\n";
356 blank << "</body>\n";
357 blank << "</html>\n";
359 blankFile.close();
361 });
362 }
363 QCString finalRef =
makeRef(f, anchor);
364 p->sectionTree.addSection(name,finalRef);
365}
char & at(size_t i)
Returns a reference to the character at index i.
bool isEmpty() const
Returns TRUE iff the string is empty.
void addFile(const QCString &)
void setStream(std::ostream *s)
Sets or changes the std::ostream to write to.
void flush()
Flushes the buffer.
virtual QCString trISOLang()=0
#define Config_getString(name)
Translator * theTranslator
std::ofstream openOutputStream(const QCString &name, bool append=false)
static QCString makeRef(const QCString &withoutExtension, const QCString &anchor)
static std::once_flag g_blankWritten
void addHtmlExtensionIfMissing(QCString &fName)