+Layout TextClass::createBasicLayout(docstring const & name, bool unknown) const
+{
+ static Layout * defaultLayout = NULL;
+
+ if (defaultLayout) {
+ defaultLayout->setUnknown(unknown);
+ defaultLayout->setName(name);
+ return *defaultLayout;
+ }
+
+ static char const * s = "Margin Static\n"
+ "LatexType Paragraph\n"
+ "LatexName dummy\n"
+ "Align Block\n"
+ "AlignPossible Left, Right, Center\n"
+ "LabelType No_Label\n"
+ "End";
+ istringstream ss(s);
+ Lexer lex(textClassTags);
+ lex.setStream(ss);
+ defaultLayout = new Layout;
+ defaultLayout->setUnknown(unknown);
+ defaultLayout->setName(name);
+ if (!readStyle(lex, *defaultLayout)) {
+ // The only way this happens is because the hardcoded layout above
+ // is wrong.
+ LASSERT(false, /**/);
+ };
+ return *defaultLayout;
+}
+
+/////////////////////////////////////////////////////////////////////////
+//
+// DocumentClassBundle
+//
+/////////////////////////////////////////////////////////////////////////
+
+DocumentClassBundle::~DocumentClassBundle()
+{
+ for (size_t i = 0; i != documentClasses_.size(); ++i)
+ delete documentClasses_[i];
+ documentClasses_.clear();
+}
+