qscistyledtext.cpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // This module implements the QsciStyledText class.
  2. //
  3. // Copyright (c) 2017 Riverbank Computing Limited <info@riverbankcomputing.com>
  4. //
  5. // This file is part of QScintilla.
  6. //
  7. // This file may be used under the terms of the GNU General Public License
  8. // version 3.0 as published by the Free Software Foundation and appearing in
  9. // the file LICENSE included in the packaging of this file. Please review the
  10. // following information to ensure the GNU General Public License version 3.0
  11. // requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  12. //
  13. // If you do not wish to use this file under the terms of the GPL version 3.0
  14. // then you may purchase a commercial license. For more information contact
  15. // info@riverbankcomputing.com.
  16. //
  17. // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  18. // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  19. #include "Qsci/qscistyledtext.h"
  20. #include "Qsci/qsciscintillabase.h"
  21. #include "Qsci/qscistyle.h"
  22. // A ctor.
  23. QsciStyledText::QsciStyledText(const QString &text, int style)
  24. : styled_text(text), style_nr(style), explicit_style(0)
  25. {
  26. }
  27. // A ctor.
  28. QsciStyledText::QsciStyledText(const QString &text, const QsciStyle &style)
  29. : styled_text(text), style_nr(-1)
  30. {
  31. explicit_style = new QsciStyle(style);
  32. }
  33. // Return the number of the style.
  34. int QsciStyledText::style() const
  35. {
  36. return explicit_style ? explicit_style->style() : style_nr;
  37. }
  38. // Apply any explicit style to an editor.
  39. void QsciStyledText::apply(QsciScintillaBase *sci) const
  40. {
  41. if (explicit_style)
  42. explicit_style->apply(sci);
  43. }