author | llornkcor <llornkcor> | 2002-12-26 03:48:32 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-12-26 03:48:32 (UTC) |
commit | f736bf0ae774159a80a97b9492d7624e7caf07a3 (patch) (unidiff) | |
tree | 6e66396c264e2d878920ba273487c81abe7a474e /noncore/apps/tinykate/libkate/document/katedocument.cpp | |
parent | 451d6a8692cf65d970b0c582e96e8a59072df191 (diff) | |
download | opie-f736bf0ae774159a80a97b9492d7624e7caf07a3.zip opie-f736bf0ae774159a80a97b9492d7624e7caf07a3.tar.gz opie-f736bf0ae774159a80a97b9492d7624e7caf07a3.tar.bz2 |
added setDocFile function to change the filename needs more work
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 | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/noncore/apps/tinykate/libkate/document/katedocument.cpp b/noncore/apps/tinykate/libkate/document/katedocument.cpp index 10bc976..df1de8d 100644 --- a/noncore/apps/tinykate/libkate/document/katedocument.cpp +++ b/noncore/apps/tinykate/libkate/document/katedocument.cpp | |||
@@ -307,48 +307,49 @@ void KateDocument::openURL(const QString &filename) | |||
307 | #warning fixme | 307 | #warning fixme |
308 | // buffer->insertFile(0, m_file, KGlobal::charsets()->codecForName(myEncoding)); | 308 | // buffer->insertFile(0, m_file, KGlobal::charsets()->codecForName(myEncoding)); |
309 | qDebug("Telling buffer to open file"); | 309 | qDebug("Telling buffer to open file"); |
310 | buffer->insertFile(0, m_file, QTextCodec::codecForLocale()); | 310 | buffer->insertFile(0, m_file, QTextCodec::codecForLocale()); |
311 | 311 | ||
312 | setMTime(); | 312 | setMTime(); |
313 | 313 | ||
314 | if (myWordWrap) | 314 | if (myWordWrap) |
315 | wrapText (myWordWrapAt); | 315 | wrapText (myWordWrapAt); |
316 | 316 | ||
317 | int hl = hlManager->wildcardFind( m_file ); | 317 | int hl = hlManager->wildcardFind( m_file ); |
318 | 318 | ||
319 | setHighlight(hl); | 319 | setHighlight(hl); |
320 | 320 | ||
321 | updateLines(); | 321 | updateLines(); |
322 | updateViews(); | 322 | updateViews(); |
323 | 323 | ||
324 | emit fileNameChanged(); | 324 | emit fileNameChanged(); |
325 | 325 | ||
326 | return ; | 326 | return ; |
327 | } | 327 | } |
328 | 328 | ||
329 | bool KateDocument::saveFile() | 329 | bool KateDocument::saveFile() |
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 | ||
337 | stream.setEncoding(QTextStream::RawUnicode); // disable Unicode headers | 338 | stream.setEncoding(QTextStream::RawUnicode); // disable Unicode headers |
338 | #warning fixme | 339 | #warning fixme |
339 | // stream.setCodec(KGlobal::charsets()->codecForName(myEncoding)); | 340 | // stream.setCodec(KGlobal::charsets()->codecForName(myEncoding)); |
340 | stream.setCodec(QTextCodec::codecForLocale()); // this line sets the mapper to the correct codec | 341 | stream.setCodec(QTextCodec::codecForLocale()); // this line sets the mapper to the correct codec |
341 | 342 | ||
342 | int maxLine = numLines(); | 343 | int maxLine = numLines(); |
343 | int line = 0; | 344 | int line = 0; |
344 | while(true) | 345 | while(true) |
345 | { | 346 | { |
346 | stream << getTextLine(line)->getString(); | 347 | stream << getTextLine(line)->getString(); |
347 | line++; | 348 | line++; |
348 | if (line >= maxLine) break; | 349 | if (line >= maxLine) break; |
349 | 350 | ||
350 | if (eolMode == KateDocument::eolUnix) stream << "\n"; | 351 | if (eolMode == KateDocument::eolUnix) stream << "\n"; |
351 | else if (eolMode == KateDocument::eolDos) stream << "\r\n"; | 352 | else if (eolMode == KateDocument::eolDos) stream << "\r\n"; |
352 | else if (eolMode == KateDocument::eolMacintosh) stream << '\r'; | 353 | else if (eolMode == KateDocument::eolMacintosh) stream << '\r'; |
353 | }; | 354 | }; |
354 | f.close(); | 355 | f.close(); |
@@ -1904,49 +1905,50 @@ void KateDocument::tagAll() { | |||
1904 | } | 1905 | } |
1905 | 1906 | ||
1906 | void KateDocument::updateLines(int startLine, int endLine, int flags, int cursorY) { | 1907 | void KateDocument::updateLines(int startLine, int endLine, int flags, int cursorY) { |
1907 | TextLine::Ptr textLine; | 1908 | TextLine::Ptr textLine; |
1908 | int line, last_line; | 1909 | int line, last_line; |
1909 | int ctxNum, endCtx; | 1910 | int ctxNum, endCtx; |
1910 | // kdDebug(13020)<<"******************KateDocument::updateLines Checkpoint 1"<<endl; | 1911 | // kdDebug(13020)<<"******************KateDocument::updateLines Checkpoint 1"<<endl; |
1911 | if (buffer->line(startLine)==0) {kdDebug(13020)<<"********************No buffer for line " << startLine << " found**************"<<endl; return;}; | 1912 | if (buffer->line(startLine)==0) {kdDebug(13020)<<"********************No buffer for line " << startLine << " found**************"<<endl; return;}; |
1912 | // kdDebug(13020)<<"KateDocument::updateLines Checkpoint 2"<<endl; | 1913 | // kdDebug(13020)<<"KateDocument::updateLines Checkpoint 2"<<endl; |
1913 | last_line = lastLine(); | 1914 | last_line = lastLine(); |
1914 | // if (endLine >= last_line) endLine = last_line; | 1915 | // if (endLine >= last_line) endLine = last_line; |
1915 | 1916 | ||
1916 | line = startLine; | 1917 | line = startLine; |
1917 | ctxNum = 0; | 1918 | ctxNum = 0; |
1918 | if (line > 0) ctxNum = getTextLine(line - 1)->getContext(); | 1919 | if (line > 0) ctxNum = getTextLine(line - 1)->getContext(); |
1919 | do { | 1920 | do { |
1920 | // kdDebug(13020)<<QString("**************Working on line: %1").arg(line)<<endl; | 1921 | // kdDebug(13020)<<QString("**************Working on line: %1").arg(line)<<endl; |
1921 | textLine = getTextLine(line); | 1922 | textLine = getTextLine(line); |
1922 | if (textLine==0) kdDebug(13020)<<"****updateLines()>> error textLine==0"<<endl; | 1923 | if (textLine==0) kdDebug(13020)<<"****updateLines()>> error textLine==0"<<endl; |
1923 | if (line <= endLine && line != cursorY) { | 1924 | if (line <= endLine && line != cursorY) { |
1924 | if (flags & KateView::cfRemoveSpaces) textLine->removeSpaces(); | 1925 | if (flags & KateView::cfRemoveSpaces) textLine->removeSpaces(); |
1925 | updateMaxLength(textLine); | 1926 | updateMaxLength(textLine); |
1926 | } | 1927 | } |
1927 | endCtx = textLine->getContext(); | 1928 | endCtx = textLine->getContext(); |
1928 | qDebug("DOHIGHLIGHT"); | 1929 | // qDebug("DOHIGHLIGHT"); |
1930 | |||
1929 | ctxNum = m_highlight->doHighlight(ctxNum,textLine); | 1931 | ctxNum = m_highlight->doHighlight(ctxNum,textLine); |
1930 | textLine->setContext(ctxNum); | 1932 | textLine->setContext(ctxNum); |
1931 | line++; | 1933 | line++; |
1932 | } while ((buffer->line(line)!=0) && (line <= endLine || endCtx != ctxNum)); | 1934 | } while ((buffer->line(line)!=0) && (line <= endLine || endCtx != ctxNum)); |
1933 | // kdDebug(13020)<<"updateLines :: while loop left"<<endl; | 1935 | // kdDebug(13020)<<"updateLines :: while loop left"<<endl; |
1934 | tagLines(startLine, line - 1); | 1936 | tagLines(startLine, line - 1); |
1935 | } | 1937 | } |
1936 | 1938 | ||
1937 | 1939 | ||
1938 | void KateDocument::updateMaxLength(TextLine::Ptr &textLine) { | 1940 | void KateDocument::updateMaxLength(TextLine::Ptr &textLine) { |
1939 | int len; | 1941 | int len; |
1940 | 1942 | ||
1941 | len = textWidth(textLine,textLine->length()); | 1943 | len = textWidth(textLine,textLine->length()); |
1942 | 1944 | ||
1943 | if (len > maxLength) { | 1945 | if (len > maxLength) { |
1944 | longestLine = textLine; | 1946 | longestLine = textLine; |
1945 | maxLength = len; | 1947 | maxLength = len; |
1946 | newDocGeometry = true; | 1948 | newDocGeometry = true; |
1947 | } else { | 1949 | } else { |
1948 | if (!longestLine || (textLine == longestLine && len <= maxLength*3/4)) { | 1950 | if (!longestLine || (textLine == longestLine && len <= maxLength*3/4)) { |
1949 | maxLength = -1; | 1951 | maxLength = -1; |
1950 | for (int i = 0; i < numLines();i++) { | 1952 | for (int i = 0; i < numLines();i++) { |
1951 | textLine = getTextLine(i); | 1953 | textLine = getTextLine(i); |
1952 | len = textWidth(textLine,textLine->length()); | 1954 | len = textWidth(textLine,textLine->length()); |
@@ -3009,48 +3011,54 @@ void KateDocument::clipboardChanged() { //slot | |||
3009 | if (m_singleSelection) { | 3011 | if (m_singleSelection) { |
3010 | disconnect(QApplication::clipboard(), SIGNAL(dataChanged()), | 3012 | disconnect(QApplication::clipboard(), SIGNAL(dataChanged()), |
3011 | this, SLOT(clipboardChanged())); | 3013 | this, SLOT(clipboardChanged())); |
3012 | deselectAll(); | 3014 | deselectAll(); |
3013 | updateViews(); | 3015 | updateViews(); |
3014 | } | 3016 | } |
3015 | //#endif | 3017 | //#endif |
3016 | } | 3018 | } |
3017 | 3019 | ||
3018 | #if 0 | 3020 | #if 0 |
3019 | void KateDocument::guiActivateEvent( KParts::GUIActivateEvent *ev ) | 3021 | void KateDocument::guiActivateEvent( KParts::GUIActivateEvent *ev ) |
3020 | { | 3022 | { |
3021 | KParts::ReadWritePart::guiActivateEvent( ev ); | 3023 | KParts::ReadWritePart::guiActivateEvent( ev ); |
3022 | if ( ev->activated() ) | 3024 | if ( ev->activated() ) |
3023 | emit selectionChanged(); | 3025 | emit selectionChanged(); |
3024 | } | 3026 | } |
3025 | #endif | 3027 | #endif |
3026 | 3028 | ||
3027 | void KateDocument::setDocName (QString docName) | 3029 | void KateDocument::setDocName (QString docName) |
3028 | { | 3030 | { |
3029 | myDocName = docName; | 3031 | myDocName = docName; |
3030 | emit nameChanged (this); | 3032 | emit nameChanged (this); |
3031 | } | 3033 | } |
3032 | 3034 | ||
3035 | void KateDocument::setDocFile (QString docFile) | ||
3036 | { | ||
3037 | m_file = docFile; | ||
3038 | emit fileNameChanged (); | ||
3039 | } | ||
3040 | |||
3033 | void KateDocument::setMTime() | 3041 | void KateDocument::setMTime() |
3034 | { | 3042 | { |
3035 | if (fileInfo && !fileInfo->fileName().isEmpty()) { | 3043 | if (fileInfo && !fileInfo->fileName().isEmpty()) { |
3036 | fileInfo->refresh(); | 3044 | fileInfo->refresh(); |
3037 | mTime = fileInfo->lastModified(); | 3045 | mTime = fileInfo->lastModified(); |
3038 | } | 3046 | } |
3039 | } | 3047 | } |
3040 | 3048 | ||
3041 | void KateDocument::isModOnHD(bool forceReload) | 3049 | void KateDocument::isModOnHD(bool forceReload) |
3042 | { | 3050 | { |
3043 | if (fileInfo && !fileInfo->fileName().isEmpty()) { | 3051 | if (fileInfo && !fileInfo->fileName().isEmpty()) { |
3044 | fileInfo->refresh(); | 3052 | fileInfo->refresh(); |
3045 | if (fileInfo->lastModified() > mTime) { | 3053 | if (fileInfo->lastModified() > mTime) { |
3046 | if ( forceReload || | 3054 | if ( forceReload || |
3047 | (KMessageBox::warningContinueCancel(0, | 3055 | (KMessageBox::warningContinueCancel(0, |
3048 | (i18n("The file %1 has changed on disk.\nDo you want to reload it?\n\nIf you cancel you will lose these changes next time you save this file")).arg(m_url), | 3056 | (i18n("The file %1 has changed on disk.\nDo you want to reload it?\n\nIf you cancel you will lose these changes next time you save this file")).arg(m_url), |
3049 | i18n("File has changed on Disk"), | 3057 | i18n("File has changed on Disk"), |
3050 | i18n("Yes") ) == KMessageBox::Continue) | 3058 | i18n("Yes") ) == KMessageBox::Continue) |
3051 | ) | 3059 | ) |
3052 | reloadFile(); | 3060 | reloadFile(); |
3053 | else | 3061 | else |
3054 | setMTime(); | 3062 | setMTime(); |
3055 | } | 3063 | } |
3056 | } | 3064 | } |