summaryrefslogtreecommitdiffstats
path: root/qt/qextscintillaapis.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qt/qextscintillaapis.cpp')
-rw-r--r--qt/qextscintillaapis.cpp213
1 files changed, 0 insertions, 213 deletions
diff --git a/qt/qextscintillaapis.cpp b/qt/qextscintillaapis.cpp
deleted file mode 100644
index 7c94af1..0000000
--- a/qt/qextscintillaapis.cpp
+++ /dev/null
@@ -1,213 +0,0 @@
-// This module implements the QextScintillaAPIs class.
-//
-// Copyright (c) 2006
-// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
-//
-// This file is part of TQScintilla.
-//
-// This copy of TQScintilla is free software; you can redistribute it and/or
-// modify it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; either version 2, or (at your option) any
-// later version.
-//
-// TQScintilla is supplied in the hope that it will be useful, but WITHOUT ANY
-// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
-// details.
-//
-// You should have received a copy of the GNU General Public License along with
-// TQScintilla; see the file LICENSE. If not, write to the Free Software
-// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include <tqfile.h>
-#include <tqregexp.h>
-
-#include "qextscintillaapis.h"
-
-
-// The ctor.
-QextScintillaAPIs::QextScintillaAPIs() : sorted(TRUE), ctcursor(0)
-{
-}
-
-
-// The dtor.
-QextScintillaAPIs::~QextScintillaAPIs()
-{
-}
-
-
-// Clear out all API information.
-bool QextScintillaAPIs::load(const TQString &fname)
-{
- TQFile f(fname);
-
- if (!f.open(IO_ReadOnly))
- return FALSE;
-
- TQTextStream ts(&f);
-
- for (;;)
- {
- TQString line = ts.readLine();
-
- if (line.isNull())
- break;
-
- apis.append(line);
- }
-
- sorted = FALSE;
-
- return TRUE;
-}
-
-
-// Add a single API entry.
-void QextScintillaAPIs::add(const TQString &entry)
-{
- apis.append(entry);
- sorted = FALSE;
-}
-
-
-// Clear out all API information.
-void QextScintillaAPIs::clear()
-{
- apis.clear();
- sorted = TRUE;
-}
-
-
-// Add auto-completion words to an existing list.
-void QextScintillaAPIs::autoCompletionList(const TQString &starts, bool cs,
- TQStringList &wlist)
-{
- ensureSorted();
-
- TQStringList::ConstIterator it = apis.begin();
-
- // Find the first match in the sorted list.
- while (it != apis.end())
- {
- if ((*it).find(starts, 0, cs) == 0)
- break;
-
- ++it;
- }
-
- TQString prev;
-
- while (it != apis.end())
- {
- if ((*it).find(starts, 0, cs) != 0)
- break;
-
- TQString w = (*it).section('(', 0, 0);
-
- if (w != prev)
- {
- if (wlist.findIndex(w) < 0)
- wlist.append(w);
-
- prev = w;
- }
-
- ++it;
- }
-}
-
-
-// Return the call tip for a function.
-TQString QextScintillaAPIs::callTips(const TQString &function,int maxnr,
- int commas)
-{
- ensureSorted();
-
- TQStringList::ConstIterator it;
-
- // Find the first match in the sorted list.
- for (it = apis.begin(); it != apis.end(); ++it)
- if ((*it).startsWith(function))
- break;
-
- TQStringList cts;
- TQString prev;
-
- while (it != apis.end() && (*it).startsWith(function))
- {
- if (maxnr > 0 && maxnr == cts.count())
- break;
-
- TQString w = *it;
-
- // Remove any image ID used by auto-completion.
- w.replace(TQRegExp("\\?[^(]*"),"");
-
- if (w.find('(') == function.length() && w.contains(',') >= commas && w != prev)
- {
- cts.append(w);
- prev = w;
- }
-
- ++it;
- }
-
- // See if we want to add a down arrow.
- if (maxnr < 0 && cts.count() > 1)
- {
- // Remember the state so we can scroll through it later.
- ctlist = cts;
- ctcursor = 0;
-
- TQString ct = cts[0];
-
- ct.prepend('\002');
-
- return ct;
- }
-
- ctlist.clear();
-
- return cts.join("\n");
-}
-
-
-// Return the next or previous call tip.
-TQString QextScintillaAPIs::callTipsNextPrev(int dir)
-{
- TQString ct;
-
- // Get the call tip.
- if (dir == 1 && ctcursor > 0)
- ct = ctlist[--ctcursor];
- else if (dir == 2 && ctcursor < ctlist.count() - 1)
- ct = ctlist[++ctcursor];
-
- // Add the arrows.
- if (!ct.isNull())
- {
- if (ctcursor < ctlist.count() - 1)
- ct.prepend('\002');
-
- if (ctcursor > 0)
- ct.prepend('\001');
- }
-
- return ct;
-}
-
-
-// Ensure the list is sorted.
-void QextScintillaAPIs::ensureSorted()
-{
- if (!sorted)
- {
- apis.sort();
- sorted = TRUE;
- }
-}