Diffstat (limited to 'noncore/apps/tinykate/libkate/document/katedocument.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/tinykate/libkate/document/katedocument.cpp | 73 |
1 files changed, 37 insertions, 36 deletions
diff --git a/noncore/apps/tinykate/libkate/document/katedocument.cpp b/noncore/apps/tinykate/libkate/document/katedocument.cpp index 0c742d7..6dc4fd2 100644 --- a/noncore/apps/tinykate/libkate/document/katedocument.cpp +++ b/noncore/apps/tinykate/libkate/document/katedocument.cpp | |||
@@ -3,13 +3,13 @@ | |||
3 | ------------------- | 3 | ------------------- |
4 | begin : Mon Jan 15 2001 | 4 | begin : Mon Jan 15 2001 |
5 | copyright : (C) 2001 by Christoph "Crossfire" Cullmann | 5 | copyright : (C) 2001 by Christoph "Crossfire" Cullmann |
6 | (C) 2002 by Joseph Wenninger | 6 | (C) 2002 by Joseph Wenninger |
7 | email : crossfire@babylon2k.de | 7 | email : crossfire@babylon2k.de |
8 | jowenn@kde.org | 8 | jowenn@kde.org |
9 | 9 | ||
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | /*************************************************************************** | 12 | /*************************************************************************** |
13 | * * | 13 | * * |
14 | * This program is free software; you can redistribute it and/or modify * | 14 | * This program is free software; you can redistribute it and/or modify * |
15 | * it under the terms of the GNU General Public License as published by * | 15 | * it under the terms of the GNU General Public License as published by * |
@@ -36,50 +36,51 @@ | |||
36 | along with this library; see the file COPYING.LIB. If not, write to | 36 | along with this library; see the file COPYING.LIB. If not, write to |
37 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 37 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
38 | Boston, MA 02111-1307, USA. | 38 | Boston, MA 02111-1307, USA. |
39 | */ | 39 | */ |
40 | 40 | ||
41 | #include "katedocument.h" | 41 | #include "katedocument.h" |
42 | #include "kmessagebox.h" | ||
43 | #include "kglobal.h" | ||
42 | 44 | ||
45 | //#include "kcharsets.h" | ||
46 | #include "kdebug.h" | ||
47 | //#include "kinstance.h" | ||
43 | 48 | ||
44 | #include <qfileinfo.h> | 49 | #include "kglobalsettings.h" |
45 | #include <qdatetime.h> | 50 | //#include "kaction.h" |
51 | //#include "kstdaction.h" | ||
46 | 52 | ||
47 | #include <kmessagebox.h> | 53 | #include "../view/kateview.h" |
48 | #include <qpe/config.h> | 54 | #include "katebuffer.h" |
49 | #include <qstring.h> | 55 | #include "katetextline.h" |
50 | 56 | ||
51 | #include <sys/time.h> | 57 | #include "katecmd.h" |
52 | #include <unistd.h> | ||
53 | 58 | ||
54 | #include <stdio.h> | 59 | /* OPIE */ |
60 | #include <opie2/odebug.h> | ||
61 | #include <qpe/config.h> | ||
55 | 62 | ||
63 | /* QT */ | ||
64 | #include <qfileinfo.h> | ||
65 | #include <qdatetime.h> | ||
66 | #include <qstring.h> | ||
56 | #include <qtimer.h> | 67 | #include <qtimer.h> |
57 | #include <qobject.h> | 68 | #include <qobject.h> |
58 | #include <qapplication.h> | 69 | #include <qapplication.h> |
59 | #include <qclipboard.h> | 70 | #include <qclipboard.h> |
60 | #include <qfont.h> | 71 | #include <qfont.h> |
61 | #include <qpainter.h> | 72 | #include <qpainter.h> |
62 | #include <qfile.h> | 73 | #include <qfile.h> |
63 | #include <qtextstream.h> | 74 | #include <qtextstream.h> |
64 | #include <qtextcodec.h> | 75 | #include <qtextcodec.h> |
65 | #include <kglobal.h> | ||
66 | 76 | ||
67 | //#include <kcharsets.h> | 77 | /* STD */ |
68 | #include <kdebug.h> | 78 | #include <sys/time.h> |
69 | //#include <kinstance.h> | 79 | #include <unistd.h> |
70 | 80 | #include <stdio.h> | |
71 | #include <kglobalsettings.h> | ||
72 | //#include <kaction.h> | ||
73 | //#include <kstdaction.h> | ||
74 | |||
75 | #include "../view/kateview.h" | ||
76 | #include "katebuffer.h" | ||
77 | #include "katetextline.h" | ||
78 | |||
79 | #include "katecmd.h" | ||
80 | 81 | ||
81 | KateAction::KateAction(Action a, PointStruc &cursor, int len, const QString &text) | 82 | KateAction::KateAction(Action a, PointStruc &cursor, int len, const QString &text) |
82 | : action(a), cursor(cursor), len(len), text(text) { | 83 | : action(a), cursor(cursor), len(len), text(text) { |
83 | } | 84 | } |
84 | 85 | ||
85 | KateActionGroup::KateActionGroup(PointStruc &aStart, int type) | 86 | KateActionGroup::KateActionGroup(PointStruc &aStart, int type) |
@@ -127,35 +128,35 @@ const int KateDocument::maxAttribs = 32; | |||
127 | 128 | ||
128 | QStringList KateDocument::searchForList = QStringList(); | 129 | QStringList KateDocument::searchForList = QStringList(); |
129 | QStringList KateDocument::replaceWithList = QStringList(); | 130 | QStringList KateDocument::replaceWithList = QStringList(); |
130 | 131 | ||
131 | uint KateDocument::uniqueID = 0; | 132 | uint KateDocument::uniqueID = 0; |
132 | 133 | ||
133 | QPtrDict<KateDocument::KateDocPrivate>* KateDocument::d_ptr = 0; | 134 | QPtrDict<KateDocument::KateDocPrivate>* KateDocument::d_ptr = 0; |
134 | 135 | ||
135 | 136 | ||
136 | KateDocument::KateDocument(bool bSingleViewMode, bool bBrowserView, | 137 | KateDocument::KateDocument(bool bSingleViewMode, bool bBrowserView, |
137 | QWidget *parentWidget, const char *widgetName, | 138 | QWidget *parentWidget, const char *widgetName, |
138 | QObject *, const char *) | 139 | QObject *, const char *) |
139 | : Kate::Document (), | 140 | : Kate::Document (), |
140 | myFont(KGlobalSettings::generalFont()), myFontBold(KGlobalSettings::generalFont()), myFontItalic(KGlobalSettings::generalFont()), myFontBI(KGlobalSettings::generalFont()), | 141 | myFont(KGlobalSettings::generalFont()), myFontBold(KGlobalSettings::generalFont()), myFontItalic(KGlobalSettings::generalFont()), myFontBI(KGlobalSettings::generalFont()), |
141 | myFontMetrics (myFont), myFontMetricsBold (myFontBold), myFontMetricsItalic (myFontItalic), myFontMetricsBI (myFontBI), | 142 | myFontMetrics (myFont), myFontMetricsBold (myFontBold), myFontMetricsItalic (myFontItalic), myFontMetricsBI (myFontBI), |
142 | hlManager(HlManager::self ()) | 143 | hlManager(HlManager::self ()) |
143 | { | 144 | { |
144 | 145 | ||
145 | d(this)->hlSetByUser = false; | 146 | d(this)->hlSetByUser = false; |
146 | PreHighlightedTill=0; | 147 | PreHighlightedTill=0; |
147 | RequestPreHighlightTill=0; | 148 | RequestPreHighlightTill=0; |
148 | 149 | ||
149 | m_bSingleViewMode=bSingleViewMode; | 150 | m_bSingleViewMode=bSingleViewMode; |
150 | m_bBrowserView = bBrowserView; | 151 | m_bBrowserView = bBrowserView; |
151 | 152 | ||
152 | m_url = QString::null; | 153 | m_url = QString::null; |
153 | 154 | ||
154 | // NOTE: QFont::CharSet doesn't provide all the charsets KDE supports | 155 | // NOTE: QFont::CharSet doesn't provide all the charsets KDE supports |
155 | // (esp. it doesn't distinguish between UTF-8 and iso10646-1) | 156 | // (esp. it doesn't distinguish between UTF-8 and iso10646-1) |
156 | 157 | ||
157 | myEncoding = QString::fromLatin1(QTextCodec::codecForLocale()->name()); | 158 | myEncoding = QString::fromLatin1(QTextCodec::codecForLocale()->name()); |
158 | 159 | ||
159 | maxLength = -1; | 160 | maxLength = -1; |
160 | 161 | ||
161 | setFont (KGlobalSettings::generalFont()); | 162 | setFont (KGlobalSettings::generalFont()); |
@@ -289,26 +290,26 @@ KateDocument::~KateDocument() | |||
289 | delete_d(this); | 290 | delete_d(this); |
290 | } | 291 | } |
291 | 292 | ||
292 | void KateDocument::openURL(const QString &filename) | 293 | void KateDocument::openURL(const QString &filename) |
293 | { | 294 | { |
294 | 295 | ||
295 | m_file=filename; | 296 | m_file=filename; |
296 | fileInfo->setFile (m_file); | 297 | fileInfo->setFile (m_file); |
297 | setMTime(); | 298 | setMTime(); |
298 | 299 | ||
299 | if (!fileInfo->exists() || !fileInfo->isReadable()) | 300 | if (!fileInfo->exists() || !fileInfo->isReadable()) |
300 | { | 301 | { |
301 | qDebug("File doesn't exit or couldn't be read"); | 302 | odebug << "File doesn't exit or couldn't be read" << oendl; |
302 | return ; | 303 | return ; |
303 | } | 304 | } |
304 | 305 | ||
305 | buffer->clear(); | 306 | buffer->clear(); |
306 | #warning fixme | 307 | #warning fixme |
307 | // buffer->insertFile(0, m_file, KGlobal::charsets()->codecForName(myEncoding)); | 308 | // buffer->insertFile(0, m_file, KGlobal::charsets()->codecForName(myEncoding)); |
308 | qDebug("Telling buffer to open file"); | 309 | odebug << "Telling buffer to open file" << oendl; |
309 | buffer->insertFile(0, m_file, QTextCodec::codecForLocale()); | 310 | buffer->insertFile(0, m_file, QTextCodec::codecForLocale()); |
310 | 311 | ||
311 | setMTime(); | 312 | setMTime(); |
312 | 313 | ||
313 | if (myWordWrap) | 314 | if (myWordWrap) |
314 | wrapText (myWordWrapAt); | 315 | wrapText (myWordWrapAt); |
@@ -318,19 +319,19 @@ void KateDocument::openURL(const QString &filename) | |||
318 | setHighlight(hl); | 319 | setHighlight(hl); |
319 | 320 | ||
320 | updateLines(); | 321 | updateLines(); |
321 | updateViews(); | 322 | updateViews(); |
322 | 323 | ||
323 | emit fileNameChanged(); | 324 | emit fileNameChanged(); |
324 | 325 | ||
325 | return ; | 326 | return ; |
326 | } | 327 | } |
327 | 328 | ||
328 | bool KateDocument::saveFile() | 329 | bool KateDocument::saveFile() |
329 | { | 330 | { |
330 | 331 | ||
331 | QFile f( m_file ); | 332 | QFile f( m_file ); |
332 | if ( !f.open( IO_WriteOnly ) ) | 333 | if ( !f.open( IO_WriteOnly ) ) |
333 | return false; // Error | 334 | return false; // Error |
334 | 335 | ||
335 | QTextStream stream(&f); | 336 | QTextStream stream(&f); |
336 | 337 | ||
@@ -608,13 +609,13 @@ void KateDocument::readConfig() | |||
608 | m_singleSelection = config->readBoolEntry("SingleSelection", false); | 609 | m_singleSelection = config->readBoolEntry("SingleSelection", false); |
609 | myEncoding = config->readEntry("Encoding", QString::fromLatin1(QTextCodec::codecForLocale()->name())); | 610 | myEncoding = config->readEntry("Encoding", QString::fromLatin1(QTextCodec::codecForLocale()->name())); |
610 | setFont (config->readFontEntry("Font", myFont)); | 611 | setFont (config->readFontEntry("Font", myFont)); |
611 | 612 | ||
612 | colors[0] = config->readColorEntry("Color Background", colors[0]); | 613 | colors[0] = config->readColorEntry("Color Background", colors[0]); |
613 | colors[1] = config->readColorEntry("Color Selected", colors[1]); | 614 | colors[1] = config->readColorEntry("Color Selected", colors[1]); |
614 | 615 | ||
615 | // config->sync(); | 616 | // config->sync(); |
616 | } | 617 | } |
617 | 618 | ||
618 | void KateDocument::writeConfig() | 619 | void KateDocument::writeConfig() |
619 | { | 620 | { |
620 | KateConfig *config = KGlobal::config(); | 621 | KateConfig *config = KGlobal::config(); |
@@ -680,13 +681,13 @@ void KateDocument::setHighlight(int n) { | |||
680 | PreHighlightedTill=0; | 681 | PreHighlightedTill=0; |
681 | RequestPreHighlightTill=0; | 682 | RequestPreHighlightTill=0; |
682 | emit(highlightChanged()); | 683 | emit(highlightChanged()); |
683 | } | 684 | } |
684 | 685 | ||
685 | void KateDocument::makeAttribs() { | 686 | void KateDocument::makeAttribs() { |
686 | qDebug("KateDocument::makeAttribs()"); | 687 | odebug << "KateDocument::makeAttribs()" << oendl; |
687 | m_numAttribs = hlManager->makeAttribs(m_highlight, m_attribs, maxAttribs); | 688 | m_numAttribs = hlManager->makeAttribs(m_highlight, m_attribs, maxAttribs); |
688 | updateFontData(); | 689 | updateFontData(); |
689 | updateLines(); | 690 | updateLines(); |
690 | } | 691 | } |
691 | 692 | ||
692 | void KateDocument::updateFontData() { | 693 | void KateDocument::updateFontData() { |
@@ -1920,14 +1921,14 @@ void KateDocument::updateLines(int startLine, int endLine, int flags, int cursor | |||
1920 | if (textLine==0) kdDebug(13020)<<"****updateLines()>> error textLine==0"<<endl; | 1921 | if (textLine==0) kdDebug(13020)<<"****updateLines()>> error textLine==0"<<endl; |
1921 | if (line <= endLine && line != cursorY) { | 1922 | if (line <= endLine && line != cursorY) { |
1922 | if (flags & KateView::cfRemoveSpaces) textLine->removeSpaces(); | 1923 | if (flags & KateView::cfRemoveSpaces) textLine->removeSpaces(); |
1923 | updateMaxLength(textLine); | 1924 | updateMaxLength(textLine); |
1924 | } | 1925 | } |
1925 | endCtx = textLine->getContext(); | 1926 | endCtx = textLine->getContext(); |
1926 | // qDebug("DOHIGHLIGHT"); | 1927 | // odebug << "DOHIGHLIGHT" << oendl; |
1927 | 1928 | ||
1928 | ctxNum = m_highlight->doHighlight(ctxNum,textLine); | 1929 | ctxNum = m_highlight->doHighlight(ctxNum,textLine); |
1929 | textLine->setContext(ctxNum); | 1930 | textLine->setContext(ctxNum); |
1930 | line++; | 1931 | line++; |
1931 | } while ((buffer->line(line)!=0) && (line <= endLine || endCtx != ctxNum)); | 1932 | } while ((buffer->line(line)!=0) && (line <= endLine || endCtx != ctxNum)); |
1932 | // kdDebug(13020)<<"updateLines :: while loop left"<<endl; | 1933 | // kdDebug(13020)<<"updateLines :: while loop left"<<endl; |
1933 | tagLines(startLine, line - 1); | 1934 | tagLines(startLine, line - 1); |