X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fdebug.C;h=f0bace4332b21e384b4c6cc0e93266e72358b72d;hb=de3c8e5b80effa940c92980032389c868f377d6b;hp=3d4d54d382c091bbd11b8556c1ad5d5dc0165389;hpb=af1ecc336d7334b47897724a30090d234ac6e6be;p=lyx.git diff --git a/src/debug.C b/src/debug.C index 3d4d54d382..f0bace4332 100644 --- a/src/debug.C +++ b/src/debug.C @@ -1,18 +1,34 @@ -/* This file is part of -* ====================================================== -* -* LyX, The Document Processor -* -* Copyright (C) 1999 The LyX Team. -* -* ====================================================== */ - -#ifdef __GNUG__ -#pragma implementation -#endif +/** + * \file debug.C + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Lars Gullik Bjønnes + * \author Jean-Marc Lasgouttes + * + * Full author contact details are available in file CREDITS. + */ #include + #include "debug.h" +#include "gettext.h" + +#include "support/lstrings.h" + +#include +#include + +using lyx::support::ascii_lowercase; +using lyx::support::bformat; +using lyx::support::isStrInt; +using lyx::support::strToInt; + +using std::setw; +using std::string; +using std::ostream; + +namespace { struct error_item { Debug::type level; @@ -20,43 +36,57 @@ struct error_item { char const * desc; }; -static error_item errorTags[] = { - { Debug::INFO, "info", "General information"}, - { Debug::INIT, "init", "Program initialisation"}, - { Debug::KEY, "key", "Keyboard events handling"}, - { Debug::TOOLBAR, "toolbar", "Toolbar handling"}, - { Debug::PARSER, "parser", "Lyxlex grammer parser"}, - { Debug::LYXRC, "lyxrc", "Configuration files reading"}, - { Debug::KBMAP, "kbmap", "Custom keyboard definition"}, - { Debug::LATEX, "latex", "LaTeX generation/execution"}, - { Debug::MATHED, "mathed", "Math editor"}, - { Debug::FONT, "font", "Font handling"}, - { Debug::TCLASS, "tclass", "Textclass files reading"}, - { Debug::LYXVC, "lyxvc", "Version control"}, - { Debug::LYXSERVER, "lyxserver", "External control interface"}, - { Debug::ROFF, "roff", "Keep *roff temporary files"}, - { Debug::ACTION, "action", "User commands"}, - { Debug::NONE, "none", "No debugging message"}, - { Debug::ANY, "any", "All debugging messages"} + +error_item errorTags[] = { + { Debug::NONE, "none", N_("No debugging message")}, + { Debug::INFO, "info", N_("General information")}, + { Debug::INIT, "init", N_("Program initialisation")}, + { Debug::KEY, "key", N_("Keyboard events handling")}, + { Debug::GUI, "gui", N_("GUI handling")}, + { Debug::PARSER, "parser", N_("Lyxlex grammar parser")}, + { Debug::LYXRC, "lyxrc", N_("Configuration files reading")}, + { Debug::KBMAP, "kbmap", N_("Custom keyboard definition")}, + { Debug::LATEX, "latex", N_("LaTeX generation/execution")}, + { Debug::MATHED, "mathed", N_("Math editor")}, + { Debug::FONT, "font", N_("Font handling")}, + { Debug::TCLASS, "tclass", N_("Textclass files reading")}, + { Debug::LYXVC, "lyxvc", N_("Version control")}, + { Debug::LYXSERVER, "lyxserver", N_("External control interface")}, + { Debug::ROFF, "roff", N_("Keep *roff temporary files")}, + { Debug::ACTION, "action", N_("User commands")}, + { Debug::LYXLEX, "lyxlex", N_("The LyX Lexxer")}, + { Debug::DEPEND, "depend", N_("Dependency information")}, + { Debug::INSETS, "insets", N_("LyX Insets")}, + { Debug::FILES, "files", N_("Files used by LyX")}, + { Debug::WORKAREA, "workarea", N_("Workarea events")}, + { Debug::INSETTEXT, "insettext", N_("Insettext/tabular messages")}, + { Debug::GRAPHICS, "graphics", N_("Graphics conversion and loading")}, + { Debug::CHANGES, "changes", N_("Change tracking")}, + { Debug::EXTERNAL, "external", N_("External template/inset messages")}, + { Debug::ANY, "any", N_("All debugging messages")} }; -static const int numErrorTags = sizeof(errorTags)/sizeof(error_item); -Debug::type Debug::value(string const & val) +int const numErrorTags = sizeof(errorTags)/sizeof(error_item); + +} // namespace anon + + +lyx_debug_trait::type lyx_debug_trait::value(string const & val) { type l = Debug::NONE; string v(val); while (!v.empty()) { string::size_type st = v.find(','); - string tmp(lowercase(v.substr(0, st))); - if (tmp.empty()) + string tmp(ascii_lowercase(v.substr(0, st))); + if (tmp.empty()) break; // Is it a number? - if (isStrInt(tmp)) + if (isStrInt(tmp)) l |= static_cast(strToInt(tmp)); else // Search for an explicit name - for (int i = 0 ; i