// -*- C++ -*-
+/**
+ * \file lyxmanip.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
#ifndef LYX_MANIP_H
#define LYX_MANIP_H
-#include <iomanip>
+#include "support/std_ostream.h"
+
+
+namespace lyx {
+
+///
+struct NewLineAndDepth_ {
+ int depth_;
+};
///
inline
-ostream & newlineAndDepth_helper(ostream & s, int n)
+NewLineAndDepth_ newlineAndDepth(int n)
{
- return s << '\n' << string(n, ' ');
+ NewLineAndDepth_ nlad_;
+ nlad_.depth_ = n;
+ return nlad_;
}
+
///
inline
-omanip<int> newlineAndDepth(int n)
+std::ostream & operator<<(std::ostream & os, NewLineAndDepth_ const & nlad_)
{
- return omanip<int>(newlineAndDepth_helper, n);
+ os << std::string(nlad_.depth_, ' ');
+ return os;
}
+
+} // namespace lyx
+
#endif