Compare commits

...

174 Commits

Author SHA1 Message Date
Michele Calgaro c7235ac2cc
Use tdeApp
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
3 weeks ago
Juan M Ayala ec6fc3514d Translated using Weblate (Spanish)
Currently translated at 100.0% (3 of 3 strings)

Translation: applications/kdbg - kdbg.desktop
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/es/
1 month ago
Michele Calgaro ed84b6954e
Use tdeprocess.h
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
3 months ago
Temuri Doghonadze d172d2339c Translated using Weblate (Georgian)
Currently translated at 100.0% (3 of 3 strings)

Translation: applications/kdbg - kdbg.desktop
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/ka/
4 months ago
Temuri Doghonadze 48715acbe4 Added translation using Weblate (Georgian) 4 months ago
Michele Calgaro 910fe32327
Rename __KDE_HAVE_GCC_VISIBILITY to __TDE_HAVE_GCC_VISIBILITY
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
8 months ago
Michele Calgaro a39a460e6d
Use proper TQt headers
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
9 months ago
Slávek Banko 28a7c978f6
Fix FTBFS from prior commit.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
10 months ago
Slávek Banko d1d6940000
Fix compatibility with C++17.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
10 months ago
TDE Weblate db9f1ffa27 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg - kdbg.desktop
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/
11 months ago
Michele Calgaro e2015a5dcf
Use centralized cmake version
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
11 months ago
Michele Calgaro b2529ec97a
Replace Qt with TQt
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
1 year ago
Michele Calgaro 5cccb18e08
Use new TQ_METHOD, TQ_SIGNAL, TQ_SLOT defines
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
1 year ago
Andrei Stepanov b171e1b204 Translated using Weblate (Russian)
Currently translated at 100.0% (3 of 3 strings)

Translation: applications/kdbg - kdbg.desktop
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/ru/
1 year ago
Slávek Banko 50163f671c
Raise the minimum required version of CMake to 3.5.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
1 year ago
Michele Calgaro 0714edbc07
Removed outdated files
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
1 year ago
Michele Calgaro 055a97a64c
Replace QObject, QWidget, QImage, QPair, QRgb, QColor, QChar, QString, QIODevice with TQ* version
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
1 year ago
Michele Calgaro 2b9bc633b6
Replace Q_OBJECT with TQ_OBJECT
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
2 years ago
Michele Calgaro eab187ac1b
Remove unnecessary backup translations.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
2 years ago
TDE Weblate 9c761c77e2 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
2 years ago
TDE Gitea 45faf4f3ec Update translation template. 2 years ago
Michele Calgaro cf76e5a86b
Remove unnecessary accelerator from .ui files.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
2 years ago
Michele Calgaro b0f1887ca0
Use TDE cmake macro to set version
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
3 years ago
Michele Calgaro 2fa7734055
Convert some TRACE() messages to avoid FTBFS with clang. This resolves issue #13.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
3 years ago
Michele Calgaro b97891ede2
Remove obsolete setting of CMAKE_MODULE_PATH in cmake files.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
3 years ago
Slávek Banko e6e4650cdd
Raise the minimum required version of CMake to 3.1 in CMakeL10n rules.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
3 years ago
Slávek Banko 16167cea41
Raise the minimum required version of CMake to 3.1.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
3 years ago
Sebastião Guerra 03d7e7b75b Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (3 of 3 strings)

Translation: applications/kdbg - kdbg.desktop
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/pt_BR/
3 years ago
Slávek Banko 250d613e33
Change README to markdown format.
Add translation status overview.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
3 years ago
TDE Weblate fb28d60c23 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
4 years ago
Michele Calgaro 977742ecad Translated using Weblate (Italian)
Currently translated at 100.0% (187 of 187 strings)

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/it/
4 years ago
Hugo Carvalho 9c02a2114b Translated using Weblate (Portuguese)
Currently translated at 13.3% (25 of 187 strings)

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/pt/
4 years ago
Michele Calgaro 5a80323e2e
Fixed detection of gdb when an executable file contains warnings about sections outside of ELF segments. This resolves isue #12.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Michele Calgaro ce9107072e
Fixed command execution and detection of gdb. This resolves issue #8.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Michele Calgaro a4307635e1
Guard mydebug.h file.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Michele Calgaro 72cca2cb47
Added translation of .desktop files.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Ray-V ae6f042898
Remove CMakeLists.txt for doc
Move doc directory up a level from kdbg/doc
Add macro call to source root CMakeLists.txt
Remove tde_conditional_add_subdirectory() macro call for doc

Signed-off-by: Ray-V <ray-v@inbox.lv>
4 years ago
Michele Calgaro c9d8d7c859
Removed original 'po' translation folder.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Michele Calgaro f422f1dc71
Copy translation files to new translations folder.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Michele Calgaro cb247846ee
Drop automake build support.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Ray-V dbf4baa42b
Use common rules for build and install documentation and translations.
Signed-off-by: Ray-V <ray-v@inbox.lv>
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
4 years ago
Michele Calgaro b59a439517
Fixed building with -DWITH_TRACE_OUTPUT=ON. This resolves issue #6.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
Slávek Banko 883def20d8
Remove cmake submodule since it has now been replaced by cmake-trinity dependency.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
4 years ago
TDE Gitea 66299ed32a Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Weblate 71769707b4 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
4 years ago
TDE Gitea 25587daff9 Update translation template. 4 years ago
Slávek Banko 627fc0ed62
Added controlled conversions to char* instead of automatic ascii conversions.
The definition of -UTQT_NO_ASCII_CAST is no longer needed.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
4 years ago
Michele Calgaro 4b34cf6bed
Update the use of TQRegExp so that it does not require an old API.
The definition of -UTQT_NO_COMPAT is no longer needed.

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
4 years ago
gregory guy 49c43d74d8
conversion to the cmake building system.
Signed-off-by: gregory guy <gregory-tde@laposte.net>
4 years ago
TDE Gitea 7201d60871 Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea 381e9fdc65 Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
TDE Gitea 8b1fbb5c79 Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea 57377df438 Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea fa227faea2 Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
TDE Gitea 9d5d211c0f Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea e401e6b55e Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea d194d55b29 Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
TDE Gitea 0c708ba16f Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea 860e05046f Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
Michele Calgaro c0b28c8038
Removed code formatting modelines.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
4 years ago
TDE Gitea afedb45d56 Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea 1f165a0f52 Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
TDE Gitea bc11d68d26 Reset submodule main/applications/kdbg/cmake to latest HEAD 4 years ago
TDE Gitea 3da71bc03b Reset submodule main/applications/kdbg/admin to latest HEAD 4 years ago
TDE Gitea 3e0cb094ff Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 6f8be948d3 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 10a68d1f76 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea dd5f20cbb6 Reset submodule main/applications/kdbg/admin to latest HEAD 5 years ago
TDE Gitea 68f2bb97fa Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea ae1b0d9bd6 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 8f29cf77ce Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 6bc7fc5781 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 69e02f9965 Reset submodule main/applications/kdbg/admin to latest HEAD 5 years ago
TDE Gitea fbce42a317 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 220232db09 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea d652ae64c4 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Weblate 50f799c36d Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
5 years ago
Slávek Banko 32fad04ce1 Update translation template. 5 years ago
TDE Gitea 94cc16c54c Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea c0d7511892 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 17d99e1884 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 2d8e4d7af8 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea 3cc32b432d Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
TDE Gitea ce5439a4d4 Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
Chris c37e0d3f29 Translated using Weblate (German)
Currently translated at 100.0% (187 of 187 strings)

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/de/
5 years ago
TDE Gitea ab58d29b9a Reset submodule main/applications/kdbg/cmake to latest HEAD 5 years ago
Slávek Banko 44941c982c
Switch all submodules to https.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
5 years ago
Chris 8bf4af0c03 Translated using Weblate (German)
Currently translated at 100.0% (187 of 187 strings)

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/de/
6 years ago
TDE Gitea 921cf23130 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Weblate c05dacf8a7 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
6 years ago
Slávek Banko 7c4d3fb560 Update translation template. 6 years ago
Johannes Sixt a6469516e6
Fix call of a member function dependent on a template parameter.
We must make the access of 'push_back' dependent, too. Otherwise, name
lookup does not find the name. Earlier compilers were more permissive and
did find the name.
(cherry picked from upstream commit 5f55847d441aba7742417e78c3b4fbe8344acc5e)
6 years ago
Johannes Sixt 26a2a75988
Fix parsing of disassembly produced by gdb 7.1.
Since gdb 7.1, the address does not start at the beginning of a line, and
it can be prefixed by a pointer => that indicates the current instruction.
(cherry picked from upstream commit 5c5f34852d30337ef7c23ef4e88d50ecee1c0703)
6 years ago
Johannes Sixt a8abc77457
Grok gdb 7's <incomplete sequence> marker in strings.
When a string ends in an incomplete multi-byte sequence, gdb adds an
<incomplete sequence...> fragment to the end of the string. Previously,
this resulted in a parse error and incomplete variable information.

Reported by Kevin Lemay.
(cherry picked from upstream commit 03da8a5ec97c8c7b125b2bd453d2f1c3a018d477)
6 years ago
Johannes Sixt a57f5f7c68
Fix assembler code display with gdb 7.1 and later.
The syntax of the 'disassemble' command changed in gdb 7.1: it now requires
a comma between the two address expressions. Previously, KDbg showed an
error message instead of assembler code when a plus in front of a source
code line was clicked.

Reported by Gerfried Essler.

This reverts part of the previous commit.
(cherry picked from upstream commit b6ee6a035abe41f7c0d59fbd830e895b6edeb748)
6 years ago
gregory guy 50d3d7881e
Drop gdb versionning.
Cherry picked and adapted from commit 0efc808f from the original author
of kdbg, code available at https://github.com/j6t/kdbg under GPL 2.0"

Quote from the author:
In early days of KDbg, it was important to use a suitable command to load
a core file. This was before gdb 4.16. To pick the right command, the
version number was parsed from gdb's greeting.

At least with modern gdb the regular expression does not match anymore.
So let's assume that nobody is using ancient gdb anymore, and always use
the modern command.

Signed-off-by: gregory guy <g-gregory@gmx.fr>
6 years ago
stefano 32c09ab3ef Translated using Weblate (Italian)
Currently translated at 100.0% (187 of 187 strings)

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/it/
6 years ago
gregory guy b84d4a9cc7
drop some qt2 deprecated
Signed-off-by: gregory guy <g-gregory@gmx.fr>
6 years ago
Timothy Pearson a4672953b8 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea f39c2f58d8 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea a5462deb7e Reset submodule main/applications/kdbg/admin to latest HEAD 6 years ago
TDE Gitea a86456a908 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea bd366120a2 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Weblate c2ec32453a Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
6 years ago
Slávek Banko 839bea53dc Update translation template. 6 years ago
TDE Gitea 49476166e7 Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea cd018f496b Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Weblate bf18d277b0 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: applications/kdbg
Translate-URL: https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/
6 years ago
Slávek Banko 71e86fb73f
Add CMakeL10n rules.
Create translation template.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
6 years ago
TDE Gitea da933fed1c Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea 4f0857485f Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea 1030d8b172 Reset submodule main/applications/kdbg/admin to latest HEAD 6 years ago
TDE Gitea 4a0957404f Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
TDE Gitea bd08fcc31b Reset submodule main/applications/kdbg/cmake to latest HEAD 6 years ago
Michele Calgaro e5133e6ac1
Replaced _BSD_SOURCE, _SVID_SOURCE with _DEFAULT_SOURCE. Removed AC_CHECK_GNU_EXTENSIONS.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
6 years ago
TDE Gitea 4dc4e19972 Reset submodule main/applications/kdbg/admin to latest HEAD 6 years ago
Michele Calgaro ff967f5ec2
qt -> tqt conversion:
kdeqt -> kdetqt
qtkde -> tqtkde
qtdesigner -> tqtdesigner

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro a88af62ef2
qt -> tqt conversion:
QT_NO_ASCII_CAST -> TQT_NO_ASCII_CAST
QT_NO_STL -> TQT_NO_STL
QT_NO_COMPAT -> TQT_NO_COMPAT
QT_NO_TRANSLATION -> TQT_NO_TRANSLATION

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro dcea3b6bb9
qt -> tqt conversion:
QTDIR -> TQTDIR
QTDOC -> TQTDOC
INCDIR_QT -> INCDIR_TQT
LIBDIR_QT -> LIBDIR_TQT
QT_INC -> TQT_INC
QT_LIB -> TQT_LIB

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro 7f3ad38727
qt -> tqt conversion:
qtlib -> tqtlib
libqt -> libtqt
QTLIB -> TQTLIB
LIBQT -> LIBTQT

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Slávek Banko 7b08a96241
qt_includes => tqt_includes conversion
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
7 years ago
Slávek Banko 97560438a1
QT_INCLUDES => TQT_INCLUDES conversion
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
7 years ago
TDE Gitea dfc8183ea9 Reset submodule main/applications/kdbg/admin to latest HEAD 7 years ago
Michele Calgaro 8b5ada660b
Remove QT_CLEAN_NAMESPACE/TQT_CLEAN_NAMESPACE unnecessary define.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro 3ee3d50c99
KDE_USE_QT* -> KDE_USE_TQT* conversion
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro 791cfc8d71
AC_PATH_QT* -> AC_PATH_TQT* conversion
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro 487c871de2
QT_THREAD_SUPPORT -> TQT_THREAD_SUPPORT conversion to align to updated admin module
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
Michele Calgaro 0ead791b7e
LIB_QT -> LIB_TQT conversion to align to updated admin module
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
7 years ago
TDE Gitea a1615e273a Reset submodule main/applications/kdbg/cmake to latest HEAD 7 years ago
TDE Gitea 9786c76639 Reset submodule main/applications/kdbg/admin to latest HEAD 7 years ago
Slávek Banko 1b83bd0016
Fix FTBFS due to improper automoc
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
7 years ago
Timothy Pearson 7681883693 Reset submodule main/applications/kdbg/admin to latest HEAD 7 years ago
Timothy Pearson 9bc2bc0884 Reset submodule main/applications/kdbg/admin to latest HEAD 7 years ago
Timothy Pearson 726951bc19 Reset submodule main/applications/kdbg/admin to latest HEAD 7 years ago
Slávek Banko a84230621f Reset submodule main/applications/kdbg/cmake to latest HEAD 8 years ago
Timothy Pearson f0b0bd52a9 Reset submodule main/applications/kdbg/cmake to latest HEAD 8 years ago
Slávek Banko b679e809d8 Reset submodule main/applications/kdbg/cmake to latest HEAD 8 years ago
Slávek Banko 7fc2d1d4aa cmake: add tde_add_check_executable macro 8 years ago
Timothy Pearson 6dff905445 Reset submodule main/applications/kdbg/admin to latest HEAD 9 years ago
Timothy Pearson 3d30b6ed34 Fix invalid headers in PNG files and optimize for size 9 years ago
Timothy Pearson fe620d0e0f Reset submodule main/applications/kdbg/cmake to latest HEAD 9 years ago
Timothy Pearson 50f5ad0e88 Reset submodule main/applications/kdbg/cmake to latest HEAD 9 years ago
Slávek Banko 4bac75bcbb Reset submodule main/applications/kdbg/cmake to latest HEAD 10 years ago
Slávek Banko b411cb9d8a Reset submodule main/applications/kdbg/cmake to latest HEAD 10 years ago
Slávek Banko 8f524d717d Reset submodule main/applications/kdbg/admin to latest HEAD 10 years ago
Timothy Pearson 25c290d4bc Reset submodule main/applications/kdbg/admin to latest HEAD 10 years ago
Timothy Pearson 8a8712b8e1 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson 8286ed1a22 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson 95b0d5bda2 Bring undo, redo, find, and revert icons into XDG compliance 11 years ago
Timothy Pearson 4d6ce37cf5 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson 47e9f3d59b Fix ServiceTypes, ExcludeServiceTypes, and DocPath desktop file entries to match XDG specifications 11 years ago
Timothy Pearson 176a5993cf Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson cf33d6867e Reset submodule main/applications/kdbg/admin to latest HEAD 11 years ago
Timothy Pearson 3fbea7e36c Reset submodule main/applications/kdbg/admin to latest HEAD 11 years ago
Timothy Pearson 42659db288 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson f9dd181e7d Reset submodule main/applications/kdbg/admin to latest HEAD 11 years ago
Michele Calgaro 8b81bdc82f Improved detection of gdb from GdbDriver (now aligned to detection used
in Kdbg v2.5.4). This resolves bug 1996 again.
11 years ago
Michele Calgaro 0b9cc25c2f Fixed detection of gdb from GdbDriver. This resolves bug 1996. 11 years ago
Timothy Pearson 37b4ec0e14 Reset submodule main/applications/kdbg/admin to latest HEAD 11 years ago
Timothy Pearson ef4d428dc8 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson 8893edffd8 Reset submodule main/applications/kdbg/cmake to latest HEAD 11 years ago
Timothy Pearson f413770288 Reset submodule main/applications/kdbg/admin to latest HEAD 11 years ago
Slávek Banko 03fcb669a1 Fix FTBFS 11 years ago
Darrell Anderson 150ca0beb4 Fix 'style assignments are not portable' build message. 11 years ago
Darrell Anderson 90a5ff374c Fix help handbook not appearing in main handbook table of contents. 11 years ago
Slávek Banko 82831cbdd2 Rename kdewidgets => tdewidgets 11 years ago
Timothy Pearson d8419748b4 Reset submodule main/applications/kdbg/cmake to latest HEAD 12 years ago
Timothy Pearson 2b4fc75d6e Reset submodule main/applications/kdbg/admin to latest HEAD 12 years ago
Slávek Banko e10f5ade99 Additional k => tde renaming and fixes 12 years ago
Slávek Banko 7fe702b52a Reset submodule main/applications/kdbg/admin to latest HEAD 12 years ago
Slávek Banko bed45886c4 Reset submodule main/applications/kdbg/admin to latest HEAD 12 years ago
Slávek Banko 6aedb013c5 Update common directories 12 years ago
Slávek Banko daeb1d9355 Initial TDE conversion 12 years ago
Slávek Banko 9dab0e253e Initial TQt conversion 12 years ago

6
.gitmodules vendored

@ -1,6 +0,0 @@
[submodule "admin"]
path = admin
url = http://system@scm.trinitydesktop.org/scm/git/tde-common-admin
[submodule "cmake"]
path = cmake
url = http://system@scm.trinitydesktop.org/scm/git/tde-common-cmake

@ -0,0 +1,26 @@
#################################################
#
# (C) 2018 Slávek Banko
# slavek.banko (AT) axis.cz
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
##### set project version ########################
include( TDEVersion )
cmake_minimum_required( VERSION ${TDE_CMAKE_MINIMUM_VERSION} )
##### include our cmake modules #################
include( TDEL10n )
##### create translation templates ##############
tde_l10n_auto_add_subdirectories( )

@ -0,0 +1,87 @@
############################################
# #
# Improvements and feedbacks are welcome #
# #
# This file is released under GPL >= 3 #
# #
############################################
##### set project version ########################
include( TDEVersion )
cmake_minimum_required( VERSION ${TDE_CMAKE_MINIMUM_VERSION} )
tde_set_project_version( )
#### general package setup
project( kdbg )
#### include essential cmake modules
include( FindPkgConfig )
include( CheckFunctionExists )
include( CheckSymbolExists )
include( CheckIncludeFile )
include( CheckLibraryExists )
include( CheckCSourceCompiles )
include( CheckCXXSourceCompiles )
#### include our cmake modules
include( TDEMacros )
##### setup install paths
include( TDESetupPaths )
tde_setup_paths( )
##### optional stuff
option( WITH_ALL_OPTIONS "Enable all optional support" OFF )
option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} )
option( WITH_TRACE_OUTPUT "Generate lots of trace output" OFF )
option( WITH_GDB_TRANSCRIPT "Provide file log" OFF )
##### user requested modules
option( BUILD_ALL "Build all" ON )
option( BUILD_DOC "Build documentation" ${BUILD_ALL} )
option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} )
option( BUILD_TESTPROGS "Build testprogs executables" OFF )
##### configure checks
include( ConfigureChecks.cmake )
###### global compiler settings
add_definitions( -DHAVE_CONFIG_H )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" )
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" )
set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" )
##### directories
add_subdirectory( ${PROJECT_NAME} )
##### other data ################################
tde_conditional_add_project_docs( BUILD_DOC )
tde_conditional_add_project_translations( BUILD_TRANSLATIONS )
##### write configure files
configure_file( config.h.cmake config.h @ONLY )

@ -0,0 +1,60 @@
###########################################
# #
# Improvements and feedback are welcome #
# #
# This file is released under GPL >= 3 #
# #
###########################################
# required stuff
find_package( TQt )
find_package( TDE )
tde_setup_architecture_flags( )
include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)
tde_setup_largefiles( )
##### check for gcc visibility support
if( WITH_GCC_VISIBILITY )
tde_setup_gcc_visibility( )
endif( WITH_GCC_VISIBILITY )
##### Trace outputs
if( WITH_TRACE_OUTPUT )
set( WANT_TRACE_OUTPUT 1 )
endif( WITH_TRACE_OUTPUT )
##### gdb-transcript
if( WITH_GDB_TRANSCRIPT )
set( GDB_TRANSCRIPT "./gdb-transcript" CACHE STRING "user specified file")
endif( WITH_GDB_TRANSCRIPT )
##### check for headers
check_include_file( "fcntl.h" HAVE_FCNTL_H )
check_include_file( "unistd.h" HAVE_UNISTD_H )
check_include_file( "sys/ioctl.h" HAVE_SYS_IOCTL_H )
check_include_file( "sys/stat.h" HAVE_SYS_STAT_H )
check_include_file( "pty.h" HAVE_PTY_H )
check_include_file( "libutil.h" HAVE_LIBUTIL_H )
check_include_file( "util.h" HAVE_UTIL_H )
##### search for 'ps' command
find_program( PS_COMMAND "ps" DOC "Path for the ps command" )
##### check for mkfifo function
check_function_exists( mkfifo HAVE_MKFIFO )

@ -0,0 +1,16 @@
Basic Installation
==================
kdbg relies on cmake to build.
Here are suggested default options:
-DCMAKE_INSTALL_PREFIX="/opt/trinity" \
-DCONFIG_INSTALL_DIR="/etc/trinity" \
-DSYSCONF_INSTALL_DIR="/etc/trinity" \
-DXDG_MENU_INSTALL_DIR="/etc/xdg/menus" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_VERBOSE_MAKEFILE="ON" \
-DCMAKE_SKIP_RPATH="OFF" \
-DBUILD_ALL="ON" \
-DWITH_ALL_OPTIONS="ON"

@ -1,29 +0,0 @@
SUBDIRS = kdbg po
# not a GNU package. You can remove this line, if
# have all needed files, that a GNU package needs
AUTOMAKE_OPTIONS = foreign
EXTRA_DIST = BUGS ChangeLog-pre-2.2.0 COPYING TODO admin \
ReleaseNotes-2.2.0 \
ReleaseNotes-2.2.1 \
ReleaseNotes-2.2.2
$(top_srcdir)/configure.in: configure.in.in $(top_srcdir)/subdirs
cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in ;
$(top_srcdir)/subdirs:
cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs
$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in
@cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in > acinclude.m4
MAINTAINERCLEANFILES = subdirs configure.in acinclude.m4 configure.files
package-messages:
$(MAKE) -f admin/Makefile.common package-messages
$(MAKE) -C po merge
dist-hook:
cd $(top_distdir) && perl admin/am_edit -padmin
cd $(top_distdir) && $(MAKE) -f admin/Makefile.common subdirs

@ -1,19 +0,0 @@
This is KDbg, a graphical user interface around gdb using
KDE, the K Desktop Environment.
To install:
./configure
make
make install
Problem reports as well as success stories are welcome!
The homepage is at
http://www.kdbg.org/
You'll find the most recent version of KDbg there as well as
other useful information concerning debugging.
Johannes Sixt <j6t@kdbg.org>

@ -0,0 +1,33 @@
KDbg graphical debugger interface
KDbg is a graphical user interface to gdb, the GNU debugger. It provides
an intuitive interface for setting breakpoints, inspecting variables,
stepping through code and much more. KDbg requires TDE but you can of
course debug any program.
.
Contributing
--------------
If you wish to contribute to kdbg, you might do so:
- TDE Gitea Workspace (TGW) collaboration tool.
https://mirror.git.trinitydesktop.org/gitea
- TDE Weblate Translation Workspace (TWTW) collaboration tool.
https://mirror.git.trinitydesktop.org/weblate
Translations status
---------------------
### messages
[![Translations status](https://mirror.git.trinitydesktop.org/weblate/widgets/applications/-/kdbg/multi-auto.svg
"Engage in translating")](https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg/)
### desktop files
[![Translations status](https://mirror.git.trinitydesktop.org/weblate/widgets/applications/-/kdbg-kdbgdesktop/multi-auto.svg
"Engage in translating")](https://mirror.git.trinitydesktop.org/weblate/projects/applications/kdbg-kdbgdesktop/)

File diff suppressed because it is too large Load Diff

881
aclocal.m4 vendored

@ -1,881 +0,0 @@
# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
# 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
m4_if(AC_AUTOCONF_VERSION, [2.63],,
[m4_warning([this file was generated for autoconf 2.63.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically `autoreconf'.])])
# Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# Automake X.Y traces this macro to ensure aclocal.m4 has been
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.10'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
m4_if([$1], [1.10.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# _AM_AUTOCONF_VERSION(VERSION)
# -----------------------------
# aclocal traces this macro to find the Autoconf version.
# This is a private macro too. Using m4_define simplifies
# the logic in aclocal, which can simply ignore this definition.
m4_define([_AM_AUTOCONF_VERSION], [])
# AM_SET_CURRENT_AUTOMAKE_VERSION
# -------------------------------
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.10.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
#
# Of course, Automake must honor this variable whenever it calls a
# tool from the auxiliary directory. The problem is that $srcdir (and
# therefore $ac_aux_dir as well) can be either absolute or relative,
# depending on how configure is run. This is pretty annoying, since
# it makes $ac_aux_dir quite unusable in subdirectories: in the top
# source directory, any form will work fine, but in subdirectories a
# relative path needs to be adjusted first.
#
# $ac_aux_dir/missing
# fails when called from a subdirectory if $ac_aux_dir is relative
# $top_srcdir/$ac_aux_dir/missing
# fails if $ac_aux_dir is absolute,
# fails when called from a subdirectory in a VPATH build with
# a relative $ac_aux_dir
#
# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
# are both prefixed by $srcdir. In an in-source build this is usually
# harmless because $srcdir is `.', but things will broke when you
# start a VPATH build or use an absolute $srcdir.
#
# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
# and then we would define $MISSING as
# MISSING="\${SHELL} $am_aux_dir/missing"
# This will work as long as MISSING is not called from configure, because
# unfortunately $(top_srcdir) has no meaning in configure.
# However there are other variables, like CC, which are often used in
# configure, and could therefore not use this "fixed" $ac_aux_dir.
#
# Another solution, used here, is to always expand $ac_aux_dir to an
# absolute PATH. The drawback is that using absolute paths prevent a
# configured tree to be moved without reconfiguration.
AC_DEFUN([AM_AUX_DIR_EXPAND],
[dnl Rely on autoconf to set up CDPATH properly.
AC_PREREQ([2.50])dnl
# expand $ac_aux_dir to an absolute path
am_aux_dir=`cd $ac_aux_dir && pwd`
])
# AM_CONDITIONAL -*- Autoconf -*-
# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 8
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
AC_DEFUN([AM_CONDITIONAL],
[AC_PREREQ(2.52)dnl
ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
AC_SUBST([$1_TRUE])dnl
AC_SUBST([$1_FALSE])dnl
_AM_SUBST_NOTMAKE([$1_TRUE])dnl
_AM_SUBST_NOTMAKE([$1_FALSE])dnl
if $2; then
$1_TRUE=
$1_FALSE='#'
else
$1_TRUE='#'
$1_FALSE=
fi
AC_CONFIG_COMMANDS_PRE(
[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
AC_MSG_ERROR([[conditional "$1" was never defined.
Usually this means the macro was only invoked conditionally.]])
fi])])
# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 9
# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
# will think it sees a *use*, and therefore will trigger all it's
# C support machinery. Also note that it means that autoscan, seeing
# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
# _AM_DEPENDENCIES(NAME)
# ----------------------
# See how the compiler implements dependency checking.
# NAME is "CC", "CXX", "GCJ", or "OBJC".
# We try a few techniques and use that to set a single cache variable.
#
# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
# dependency, and given that the user is not expected to run this macro,
# just rely on AC_PROG_CC.
AC_DEFUN([_AM_DEPENDENCIES],
[AC_REQUIRE([AM_SET_DEPDIR])dnl
AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
AC_REQUIRE([AM_MAKE_INCLUDE])dnl
AC_REQUIRE([AM_DEP_TRACK])dnl
ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
[$1], CXX, [depcc="$CXX" am_compiler_list=],
[$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
[$1], UPC, [depcc="$UPC" am_compiler_list=],
[$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
[depcc="$$1" am_compiler_list=])
AC_CACHE_CHECK([dependency style of $depcc],
[am_cv_$1_dependencies_compiler_type],
[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
# instance it was reported that on HP-UX the gcc test will end up
# making a dummy file named `D' -- because `-MD' means `put the output
# in D'.
mkdir conftest.dir
# Copy depcomp to subdir because otherwise we won't find it if we're
# using a relative directory.
cp "$am_depcomp" conftest.dir
cd conftest.dir
# We will build objects and dependencies in a subdirectory because
# it helps to detect inapplicable dependency modes. For instance
# both Tru64's cc and ICC support -MD to output dependencies as a
# side effect of compilation, but ICC will put the dependencies in
# the current directory while Tru64 will put them in the object
# directory.
mkdir sub
am_cv_$1_dependencies_compiler_type=none
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
fi
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
# we should not choose a depcomp mode which is confused by this.
#
# We need to recreate these files for each test, as the compiler may
# overwrite some of them when testing with obscure command lines.
# This happens at least with the AIX C compiler.
: > sub/conftest.c
for i in 1 2 3 4 5 6; do
echo '#include "conftst'$i'.h"' >> sub/conftest.c
# Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
# Solaris 8's {/usr,}/bin/sh.
touch sub/conftst$i.h
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
case $depmode in
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
if test "x$enable_dependency_tracking" = xyes; then
continue
else
break
fi
;;
none) break ;;
esac
# We check with `-c' and `-o' for the sake of the "dashmstdout"
# mode. It turns out that the SunPro C++ compiler does not properly
# handle `-M -o', and we need to detect this.
if depmode=$depmode \
source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
$SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
>/dev/null 2>conftest.err &&
grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
# that says an option was ignored or not supported.
# When given -MP, icc 7.0 and 7.1 complain thusly:
# icc: Command line warning: ignoring option '-M'; no argument required
# The diagnosis changed in icc 8.0:
# icc: Command line remark: option '-MP' not supported
if (grep 'ignoring option' conftest.err ||
grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
am_cv_$1_dependencies_compiler_type=$depmode
break
fi
fi
done
cd ..
rm -rf conftest.dir
else
am_cv_$1_dependencies_compiler_type=none
fi
])
AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
AM_CONDITIONAL([am__fastdep$1], [
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_$1_dependencies_compiler_type" = gcc3])
])
# AM_SET_DEPDIR
# -------------
# Choose a directory name for dependency files.
# This macro is AC_REQUIREd in _AM_DEPENDENCIES
AC_DEFUN([AM_SET_DEPDIR],
[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
])
# AM_DEP_TRACK
# ------------
AC_DEFUN([AM_DEP_TRACK],
[AC_ARG_ENABLE(dependency-tracking,
[ --disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors])
if test "x$enable_dependency_tracking" != xno; then
am_depcomp="$ac_aux_dir/depcomp"
AMDEPBACKSLASH='\'
fi
AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
AC_SUBST([AMDEPBACKSLASH])dnl
_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
])
# Generate code to set up dependency tracking. -*- Autoconf -*-
# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
#serial 3
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
[for mf in $CONFIG_FILES; do
# Strip MF so we end up with the name of the file.
mf=`echo "$mf" | sed -e 's/:.*$//'`
# Check whether this is an Automake generated Makefile or not.
# We used to match only the files named `Makefile.in', but
# some people rename them; so instead we look at the file content.
# Grep'ing the first line is not enough: some people post-process
# each Makefile.in and add a new line on top of each file to say so.
# Grep'ing the whole file is not good either: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000.
if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
dirpart=`AS_DIRNAME("$mf")`
else
continue
fi
# Extract the definition of DEPDIR, am__include, and am__quote
# from the Makefile without running `make'.
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
test -z "am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
# When using ansi2knr, U may be empty or an underscore; expand it
U=`sed -n 's/^U = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
# simplest approach to changing $(DEPDIR) to its actual value in the
# expansion.
for file in `sed -n "
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
# Make sure the directory exists.
test -f "$dirpart/$file" && continue
fdir=`AS_DIRNAME(["$file"])`
AS_MKDIR_P([$dirpart/$fdir])
# echo "creating $dirpart/$file"
echo '# dummy' > "$dirpart/$file"
done
done
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
# AM_OUTPUT_DEPENDENCY_COMMANDS
# -----------------------------
# This macro should only be invoked once -- use via AC_REQUIRE.
#
# This code is only required when automatic dependency tracking
# is enabled. FIXME. This creates each `.P' file that we will
# need in order to bootstrap the dependency handling code.
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
[AC_CONFIG_COMMANDS([depfiles],
[test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
[AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
])
# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 8
# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
# Do all the work for Automake. -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
# 2005, 2006, 2008 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 13
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
# The call with PACKAGE and VERSION arguments is the old style
# call (pre autoconf-2.50), which is being phased out. PACKAGE
# and VERSION should now be passed to AC_INIT and removed from
# the call to AM_INIT_AUTOMAKE.
# We support both call styles for the transition. After
# the next Automake release, Autoconf can make the AC_INIT
# arguments mandatory, and then we can depend on a new Autoconf
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
[AC_PREREQ([2.60])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
AC_REQUIRE([AC_PROG_INSTALL])dnl
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
# test to see if srcdir already configured
if test -f $srcdir/config.status; then
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
fi
fi
# test whether we have cygpath
if test -z "$CYGPATH_W"; then
if (cygpath --version) >/dev/null 2>/dev/null; then
CYGPATH_W='cygpath -w'
else
CYGPATH_W=echo
fi
fi
AC_SUBST([CYGPATH_W])
# Define the identity of the package.
dnl Distinguish between old-style and new-style calls.
m4_ifval([$2],
[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
AC_SUBST([PACKAGE], [$1])dnl
AC_SUBST([VERSION], [$2])],
[_AM_SET_OPTIONS([$1])dnl
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
_AM_IF_OPTION([no-define],,
[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
# Some tools Automake needs.
AC_REQUIRE([AM_SANITY_CHECK])dnl
AC_REQUIRE([AC_ARG_PROGRAM])dnl
AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
AM_MISSING_PROG(AUTOCONF, autoconf)
AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
AM_MISSING_PROG(AUTOHEADER, autoheader)
AM_MISSING_PROG(MAKEINFO, makeinfo)
AM_PROG_INSTALL_SH
AM_PROG_INSTALL_STRIP
AC_REQUIRE([AM_PROG_MKDIR_P])dnl
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
[_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
[_AM_PROG_TAR([v7])])])
_AM_IF_OPTION([no-dependencies],,
[AC_PROVIDE_IFELSE([AC_PROG_CC],
[_AM_DEPENDENCIES(CC)],
[define([AC_PROG_CC],
defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
AC_PROVIDE_IFELSE([AC_PROG_CXX],
[_AM_DEPENDENCIES(CXX)],
[define([AC_PROG_CXX],
defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
AC_PROVIDE_IFELSE([AC_PROG_OBJC],
[_AM_DEPENDENCIES(OBJC)],
[define([AC_PROG_OBJC],
defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
])
])
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
# that is generated. The stamp files are numbered to have different names.
# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
# loop where config.status creates the headers, so we can generate
# our stamp files there.
AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
[# Compute $1's index in $config_headers.
_am_arg=$1
_am_stamp_count=1
for _am_header in $config_headers :; do
case $_am_header in
$_am_arg | $_am_arg:* )
break ;;
* )
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_PROG_INSTALL_SH
# ------------------
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
AC_SUBST(install_sh)])
# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 2
# Check whether the underlying file-system supports filenames
# with a leading dot. For instance MS-DOS doesn't.
AC_DEFUN([AM_SET_LEADING_DOT],
[rm -rf .tst 2>/dev/null
mkdir .tst 2>/dev/null
if test -d .tst; then
am__leading_dot=.
else
am__leading_dot=_
fi
rmdir .tst 2>/dev/null
AC_SUBST([am__leading_dot])])
# Check to see how 'make' treats includes. -*- Autoconf -*-
# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 3
# AM_MAKE_INCLUDE()
# -----------------
# Check to see how make treats includes.
AC_DEFUN([AM_MAKE_INCLUDE],
[am_make=${MAKE-make}
cat > confinc << 'END'
am__doit:
@echo done
.PHONY: am__doit
END
# If we don't find an include directive, just comment out the code.
AC_MSG_CHECKING([for style of include used by $am_make])
am__include="#"
am__quote=
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
# We grep out `Entering directory' and `Leaving directory'
# messages which can occur if `w' ends up in MAKEFLAGS.
# In particular we don't look at `^make:' because GNU make might
# be invoked under some other name (usually "gmake"), in which
# case it prints its new name instead of `make'.
if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
am__include=include
am__quote=
_am_result=GNU
fi
# Now try BSD make style include.
if test "$am__include" = "#"; then
echo '.include "confinc"' > confmf
if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
am__include=.include
am__quote="\""
_am_result=BSD
fi
fi
AC_SUBST([am__include])
AC_SUBST([am__quote])
AC_MSG_RESULT([$_am_result])
rm -f confinc confmf
])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 5
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
AC_DEFUN([AM_MISSING_PROG],
[AC_REQUIRE([AM_MISSING_HAS_RUN])
$1=${$1-"${am_missing_run}$2"}
AC_SUBST($1)])
# AM_MISSING_HAS_RUN
# ------------------
# Define MISSING if not defined so far and test if it supports --run.
# If it does, set am_missing_run to use it, otherwise, to nothing.
AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
# Use eval to expand $SHELL
if eval "$MISSING --run true"; then
am_missing_run="$MISSING --run "
else
am_missing_run=
AC_MSG_WARN([`missing' script is too old or missing])
fi
])
# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_PROG_MKDIR_P
# ---------------
# Check for `mkdir -p'.
AC_DEFUN([AM_PROG_MKDIR_P],
[AC_PREREQ([2.60])dnl
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
dnl while keeping a definition of mkdir_p for backward compatibility.
dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
dnl Makefile.ins that do not define MKDIR_P, so we do our own
dnl adjustment using top_builddir (which is defined more often than
dnl MKDIR_P).
AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
case $mkdir_p in
[[\\/$]]* | ?:[[\\/]]*) ;;
*/*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
esac
])
# Helper functions for option handling. -*- Autoconf -*-
# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 3
# _AM_MANGLE_OPTION(NAME)
# -----------------------
AC_DEFUN([_AM_MANGLE_OPTION],
[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
# _AM_SET_OPTION(NAME)
# ------------------------------
# Set option NAME. Presently that only means defining a flag for this option.
AC_DEFUN([_AM_SET_OPTION],
[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
# _AM_SET_OPTIONS(OPTIONS)
# ----------------------------------
# OPTIONS is a space-separated list of Automake options.
AC_DEFUN([_AM_SET_OPTIONS],
[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
# -------------------------------------------
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
# Check to make sure that the build environment is sane. -*- Autoconf -*-
# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
# Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 4
# AM_SANITY_CHECK
# ---------------
AC_DEFUN([AM_SANITY_CHECK],
[AC_MSG_CHECKING([whether build environment is sane])
# Just in case
sleep 1
echo timestamp > conftest.file
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
if test "$[*]" = "X"; then
# -L didn't work.
set X `ls -t $srcdir/configure conftest.file`
fi
rm -f conftest.file
if test "$[*]" != "X $srcdir/configure conftest.file" \
&& test "$[*]" != "X conftest.file $srcdir/configure"; then
# If neither matched, then we have a broken ls. This can happen
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
alias in your environment])
fi
test "$[2]" = conftest.file
)
then
# Ok.
:
else
AC_MSG_ERROR([newly created file is older than distributed files!
Check your system clock])
fi
AC_MSG_RESULT(yes)])
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_PROG_INSTALL_STRIP
# ---------------------
# One issue with vendor `install' (even GNU) is that you can't
# specify the program used to strip binaries. This is especially
# annoying in cross-compiling environments, where the build's strip
# is unlikely to handle the host's binaries.
# Fortunately install-sh will honor a STRIPPROG variable, so we
# always use install-sh in `make install-strip', and initialize
# STRIPPROG with the value of the STRIP variable (set by the user).
AC_DEFUN([AM_PROG_INSTALL_STRIP],
[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
# Installed binaries are usually stripped using `strip' when the user
# run `make install-strip'. However `strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
# will honor the `STRIP' environment variable to overrule this program.
dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
if test "$cross_compiling" != no; then
AC_CHECK_TOOL([STRIP], [strip], :)
fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
# Copyright (C) 2006 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# _AM_SUBST_NOTMAKE(VARIABLE)
# ---------------------------
# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
# This macro is traced by Automake.
AC_DEFUN([_AM_SUBST_NOTMAKE])
# Check how to create a tarball. -*- Autoconf -*-
# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# serial 2
# _AM_PROG_TAR(FORMAT)
# --------------------
# Check how to create a tarball in format FORMAT.
# FORMAT should be one of `v7', `ustar', or `pax'.
#
# Substitute a variable $(am__tar) that is a command
# writing to stdout a FORMAT-tarball containing the directory
# $tardir.
# tardir=directory && $(am__tar) > result.tar
#
# Substitute a variable $(am__untar) that extract such
# a tarball read from stdin.
# $(am__untar) < result.tar
AC_DEFUN([_AM_PROG_TAR],
[# Always define AMTAR for backward compatibility.
AM_MISSING_PROG([AMTAR], [tar])
m4_if([$1], [v7],
[am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
[m4_case([$1], [ustar],, [pax],,
[m4_fatal([Unknown tar format])])
AC_MSG_CHECKING([how to create a $1 tar archive])
# Loop over all known methods to create a tar archive until one works.
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
_am_tools=${am_cv_prog_tar_$1-$_am_tools}
# Do not fold the above two line into one, because Tru64 sh and
# Solaris sh will not grok spaces in the rhs of `-'.
for _am_tool in $_am_tools
do
case $_am_tool in
gnutar)
for _am_tar in tar gnutar gtar;
do
AM_RUN_LOG([$_am_tar --version]) && break
done
am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
am__untar="$_am_tar -xf -"
;;
plaintar)
# Must skip GNU tar: if it does not support --format= it doesn't create
# ustar tarball either.
(tar --version) >/dev/null 2>&1 && continue
am__tar='tar chf - "$$tardir"'
am__tar_='tar chf - "$tardir"'
am__untar='tar xf -'
;;
pax)
am__tar='pax -L -x $1 -w "$$tardir"'
am__tar_='pax -L -x $1 -w "$tardir"'
am__untar='pax -r'
;;
cpio)
am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
am__untar='cpio -i -H $1 -d'
;;
none)
am__tar=false
am__tar_=false
am__untar=false
;;
esac
# If the value was cached, stop now. We just wanted to have am__tar
# and am__untar set.
test -n "${am_cv_prog_tar_$1}" && break
# tar/untar a dummy directory, and stop if the command works
rm -rf conftest.dir
mkdir conftest.dir
echo GrepMe > conftest.dir/file
AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
rm -rf conftest.dir
if test -s conftest.tar; then
AM_RUN_LOG([$am__untar <conftest.tar])
grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
fi
done
rm -rf conftest.dir
AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
AC_MSG_RESULT([$am_cv_prog_tar_$1])])
AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
m4_include([acinclude.m4])

@ -1 +0,0 @@
Subproject commit 6613b274c8ca9832e5a73e0e01f155ee3bac2070

@ -1 +0,0 @@
Subproject commit 9773bff74aa09637c11dc0ca65ad4cf18f308fe8

@ -0,0 +1,45 @@
#define VERSION "@VERSION@"
// Defined if you have fvisibility and fvisibility-inlines-hidden support.
#cmakedefine __TDE_HAVE_GCC_VISIBILITY 1
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@
/* Defined if you build with trace outputs */
#cmakedefine WANT_TRACE_OUTPUT @WANT_TRACE_OUTPUT@
/* Define the GDB_TRANCRIPT log file */
#cmakedefine GDB_TRANSCRIPT "@GDB_TRANSCRIPT@"
/* Defined if you have the <fcntl.h> header */
#cmakedefine HAVE_FCNTL_H 1
/* Defined if you have the <unistd.h> header */
#cmakedefine HAVE_UNISTD_H 1
/* Defined if you have the <sys/ioctl.h> header */
#cmakedefine HAVE_SYS_IOCTL_H 1
/* Defined if you have the <sys/stat.h> header */
#cmakedefine HAVE_SYS_STAT_H 1
/* Defined if you have the <pty.h> header */
#cmakedefine HAVE_PTY_H 1
/* Defined if you have the <libutil.h> header */
#cmakedefine HAVE_LIBUTIL_H 1
/* Defined if you have the <util.h> header */
#cmakedefine HAVE_UTIL_H 1
/* Define the ps command with its defaults arguments */
#cmakedefine PS_COMMAND "@PS_COMMAND@", "-eo", "pid,ppid,uid,vsz,etime,time,args"
/* Defined if you have the "mkfifo" function */
#cmakedefine HAVE_MKFIFO 1

@ -1,310 +0,0 @@
/* config.h.in. Generated from configure.in by autoheader. */
/* Define to the name of the file that communication with gdb should be logged
to; undefine it for no logging */
#undef GDB_TRANSCRIPT
/* Define to 1 if you have the <Carbon/Carbon.h> header file. */
#undef HAVE_CARBON_CARBON_H
/* Define if you have the CoreAudio API */
#undef HAVE_COREAUDIO
/* Define to 1 if you have the <crt_externs.h> header file. */
#undef HAVE_CRT_EXTERNS_H
/* Defines if your system has the crypt function */
#undef HAVE_CRYPT
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#undef HAVE_DIRENT_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define to 1 if you have the <fnmatch.h> header file. */
#undef HAVE_FNMATCH_H
/* Define if you have openpty */
#undef HAVE_FUNC_OPENPTY
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define if you have libjpeg */
#undef HAVE_LIBJPEG
/* Define if you have libpng */
#undef HAVE_LIBPNG
/* Define if you have a working libpthread (will enable threaded code) */
#undef HAVE_LIBPTHREAD
/* Define to 1 if you have the <libutil.h> header file. */
#undef HAVE_LIBUTIL_H
/* Define if you have libz */
#undef HAVE_LIBZ
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `mkfifo' function. */
#undef HAVE_MKFIFO
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
/* Define if your system needs _NSGetEnviron to set up the environment */
#undef HAVE_NSGETENVIRON
/* Define if placement new works */
#undef HAVE_PLACEMENT_NEW
/* Define to 1 if you have the <pty.h> header file. */
#undef HAVE_PTY_H
/* Define to 1 if you have the `putenv' function. */
#undef HAVE_PUTENV
/* Define if you have res_init */
#undef HAVE_RES_INIT
/* Define if you have the res_init prototype */
#undef HAVE_RES_INIT_PROTO
/* Define to 1 if you have the `setpgid' function. */
#undef HAVE_SETPGID
/* Define if you have a STL implementation by SGI */
#undef HAVE_SGI_STL
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define if you have strlcat */
#undef HAVE_STRLCAT
/* Define if you have the strlcat prototype */
#undef HAVE_STRLCAT_PROTO
/* Define if you have strlcpy */
#undef HAVE_STRLCPY
/* Define if you have the strlcpy prototype */
#undef HAVE_STRLCPY_PROTO
/* Define to 1 if you have the <sysent.h> header file. */
#undef HAVE_SYSENT_H
/* Define to 1 if you have the <sys/bitypes.h> header file. */
#undef HAVE_SYS_BITYPES_H
/* Define to 1 if you have the <sys/cdefs.h> header file. */
#undef HAVE_SYS_CDEFS_H
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/ioctl.h> header file. */
#undef HAVE_SYS_IOCTL_H
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_NDIR_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <util.h> header file. */
#undef HAVE_UTIL_H
/* Define to 1 if you have the `vsnprintf' function. */
#undef HAVE_VSNPRINTF
/* Suffix for lib directories */
#undef KDELIBSUFF
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define how to invoke ps */
#undef PS_COMMAND
/* The size of `char *', as computed by sizeof. */
#undef SIZEOF_CHAR_P
/* The size of `int', as computed by sizeof. */
#undef SIZEOF_INT
/* The size of `long', as computed by sizeof. */
#undef SIZEOF_LONG
/* The size of `short', as computed by sizeof. */
#undef SIZEOF_SHORT
/* The size of `size_t', as computed by sizeof. */
#undef SIZEOF_SIZE_T
/* The size of `unsigned long', as computed by sizeof. */
#undef SIZEOF_UNSIGNED_LONG
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Version number of package */
#undef VERSION
/* Define if you want to see voluminous trace output */
#undef WANT_TRACE_OUTPUT
/* Defined if compiling without arts */
#undef WITHOUT_ARTS
/*
* jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
* headers and I'm too lazy to write a configure test as long as only
* unixware is related
*/
#ifdef _UNIXWARE
#define HAVE_BOOLEAN
#endif
/*
* AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
* that defines bzero.
*/
#if defined(_AIX)
#include <strings.h>
#endif
#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
# include <sys/time.h>
# include <crt_externs.h>
# define environ (*_NSGetEnviron())
#endif
#if !defined(HAVE_RES_INIT_PROTO)
#ifdef __cplusplus
extern "C" {
#endif
int res_init(void);
#ifdef __cplusplus
}
#endif
#endif
#if !defined(HAVE_STRLCAT_PROTO)
#ifdef __cplusplus
extern "C" {
#endif
unsigned long strlcat(char*, const char*, unsigned long);
#ifdef __cplusplus
}
#endif
#endif
#if !defined(HAVE_STRLCPY_PROTO)
#ifdef __cplusplus
extern "C" {
#endif
unsigned long strlcpy(char*, const char*, unsigned long);
#ifdef __cplusplus
}
#endif
#endif
/*
* On HP-UX, the declaration of vsnprintf() is needed every time !
*/
#if !defined(HAVE_VSNPRINTF) || defined(hpux)
#if __STDC__
#include <stdarg.h>
#include <stdlib.h>
#else
#include <varargs.h>
#endif
#ifdef __cplusplus
extern "C"
#endif
int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
#ifdef __cplusplus
extern "C"
#endif
int snprintf(char *str, size_t n, char const *fmt, ...);
#endif
#if defined(__SVR4) && !defined(__svr4__)
#define __svr4__ 1
#endif
/* type to use in place of socklen_t if not defined */
#undef kde_socklen_t
/* type to use in place of socklen_t if not defined (deprecated, use
kde_socklen_t) */
#undef ksize_t

@ -1,3 +0,0 @@
./admin/configure.in.min
configure.in.in
configure.in.mid

@ -1,241 +0,0 @@
dnl =======================================================
dnl FILE: ./admin/configure.in.min
dnl =======================================================
dnl This file is part of the KDE libraries/packages
dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org)
dnl This file is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Library General Public
dnl License as published by the Free Software Foundation; either
dnl version 2 of the License, or (at your option) any later version.
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl Library General Public License for more details.
dnl You should have received a copy of the GNU Library General Public License
dnl along with this library; see the file COPYING.LIB. If not, write to
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
dnl Boston, MA 02110-1301, USA.
# Original Author was Kalle@kde.org
# I lifted it in some mater. (Stephan Kulow)
# I used much code from Janos Farkas
dnl Process this file with autoconf to produce a configure script.
AC_INIT(acinclude.m4) dnl a source file from your sub dir
dnl This is so we can use kde-common
AC_CONFIG_AUX_DIR(admin)
dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
unset CDPATH
dnl Checking host/target/build systems, for make, install etc.
AC_CANONICAL_SYSTEM
dnl Perform program name transformation
AC_ARG_PROGRAM
dnl Automake doc recommends to do this only here. (Janos)
AM_INIT_AUTOMAKE(kdbg, 2.2.2) dnl searches for some needed programs
KDE_SET_PREFIX
dnl generate the config header
AM_CONFIG_HEADER(config.h) dnl at the distribution this done
dnl Checks for programs.
AC_CHECK_COMPILERS
AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
KDE_PROG_LIBTOOL
dnl for NLS support. Call them in this order!
dnl WITH_NLS is for the po files
AM_KDE_WITH_NLS
dnl KDE_USE_QT
AC_PATH_KDE
dnl =======================================================
dnl FILE: configure.in.in
dnl =======================================================
#MIN_CONFIG
dnl PACKAGE set before
KDE_CREATE_SUBDIRSLIST
AC_CONFIG_FILES([ Makefile ])
AC_CONFIG_FILES([ kdbg/Makefile ])
AC_CONFIG_FILES([ kdbg/doc/Makefile ])
AC_CONFIG_FILES([ kdbg/doc/de/Makefile ])
AC_CONFIG_FILES([ kdbg/doc/en/Makefile ])
AC_CONFIG_FILES([ kdbg/doc/ru/Makefile ])
AC_CONFIG_FILES([ kdbg/pics/Makefile ])
AC_CONFIG_FILES([ kdbg/testprogs/Makefile ])
AC_CONFIG_FILES([ kdbg/typetables/Makefile ])
AC_CONFIG_FILES([ po/Makefile ])
dnl Checks for header files.
AC_LANG_C dnl switch to C
AC_HEADER_DIRENT dnl check for dirent.h
AC_HEADER_STDC dnl check for other stdc headers. More traditional ;)
dnl check for some more header files. You can remove some of
dnl them, if you want to. But it doesn't hurt
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/cdefs.h)
AC_CHECK_HEADERS(fnmatch.h sysent.h strings.h sys/stat.h)
AC_CHECK_HEADERS(sys/ioctl.h pty.h libutil.h util.h)
dnl Checks for libraries.
AC_CHECK_LIB(socket, socket, [LIBSOCKET="-lsocket -lnsl"]) dnl for Solaris' X11
AC_SUBST(LIBSOCKET)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_TIME
dnl Checks for library functions.
AC_CHECK_FUNCS(setpgid putenv socket vsnprintf mkfifo)
dnl pseudo tty support in glibc2
AC_SEARCH_LIBS(openpty, util,
AC_DEFINE_UNQUOTED(HAVE_FUNC_OPENPTY, 1, [Define if you have openpty]))
dnl Check whether we want much debugging output
AH_TEMPLATE([WANT_TRACE_OUTPUT],
[Define if you want to see voluminous trace output])
AC_MSG_CHECKING([whether kdbg should generate lots of trace output])
dnl Default is no trace output
AC_ARG_ENABLE(lots-a-trace,
[ --enable-lots-a-trace generate lots of trace output [default=no]],
WANT_TRACE_OUTPUT=$enableval, WANT_TRACE_OUTPUT=no)
AC_MSG_RESULT($WANT_TRACE_OUTPUT)
if test "x$WANT_TRACE_OUTPUT" = "xyes"; then
AC_DEFINE_UNQUOTED(WANT_TRACE_OUTPUT)
fi
dnl Check whether test programs should be compiled
dnl Default is not to compile them
AC_ARG_ENABLE(testprogs,
[ --enable-testprogs compile test programs [default=no]],
[buildtestprogs=$enableval],[buildtestprogs=no])
AM_CONDITIONAL(BUILDTESTPROGS,test "x$buildtestprogs" = "xyes")
dnl write a notice into the log
echo "build test programs: $buildtestprogs" >&5
dnl Check where the communication with gdb should be logged
AC_MSG_CHECKING([where communication with gdb should be logged])
dnl Default is ./gdb-transcript until kdbg is released
AC_ARG_WITH(transcript,
[ --with-transcript=file log communication with gdb [default=not logged]],
GDB_TRANSCRIPT=$withval, GDB_TRANSCRIPT=no)
if test "x$GDB_TRANSCRIPT" = "xyes"; then
GDB_TRANSCRIPT="./gdb-transcript"
fi
if test "x$GDB_TRANSCRIPT" = "xno"; then
GDB_TRANSCRIPT="not logged"
else
dnl add quotes
GDB_TRANSCRIPT=\"$GDB_TRANSCRIPT\"
AC_DEFINE_UNQUOTED(GDB_TRANSCRIPT, $GDB_TRANSCRIPT,
[Define to the name of the file that communication with gdb
should be logged to; undefine it for no logging])
fi
AC_MSG_RESULT($GDB_TRANSCRIPT)
dnl Check whether placement new works
AH_TEMPLATE([HAVE_PLACEMENT_NEW],[Define if placement new works])
AC_LANG_CPLUSPLUS
AC_MSG_CHECKING(whether placement new is available)
AC_CACHE_VAL(ac_cv_have_placement_new,
[
AC_TRY_COMPILE([
#include <new>
],
[
int ii;
new(&ii) int;
],
ac_cv_have_placement_new=yes,
ac_cv_have_placement_new=no)
])
AC_MSG_RESULT($ac_cv_have_placement_new)
if eval "test \"`echo `$ac_cv_have_placement_new\" = yes"; then
AC_DEFINE(HAVE_PLACEMENT_NEW)
fi
dnl -----------------
AC_PATH_PROG(PS_COMMAND, ps)
if test -n "$PS_COMMAND"; then
AC_MSG_CHECKING(for suitable ps invocation)
PS_COMMAND="$PS_COMMAND -eo pid,ppid,uid,vsz,etime,time,args"
if $PS_COMMAND > /dev/null 2>&1; then
# works in principle; check output: extract first line, but avoid 'head -1'
set x `$PS_COMMAND | (read firstline; echo "$firstline")`
if test "$*" = "x PID PPID UID VSZ ELAPSED TIME COMMAND"; then
: # fine
else
PS_COMMAND="" # not suitable
fi
else
PS_COMMAND="" # not suitable
fi
if test -n "$PS_COMMAND"; then
AC_MSG_RESULT($PS_COMMAND)
PS_COMMAND=\"`echo $PS_COMMAND | sed -e 's/ /", "/g'`\"
AC_DEFINE_UNQUOTED(PS_COMMAND, $PS_COMMAND,
[Define how to invoke ps])
else
AC_MSG_RESULT([not suitable])
fi
fi
AM_CONDITIONAL(HAVE_PS_COMMAND, test -n "$PS_COMMAND")
AC_OUTPUT
# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure
if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then
# And if so, warn when they don't match
if test "$kde_libs_prefix" != "$given_prefix"; then
# And if kde doesn't know about the prefix yet
echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null
if test $? -ne 0; then
echo ""
echo "Warning: you chose to install this package in $given_prefix,"
echo "but KDE was found in $kde_libs_prefix."
echo "For this to work, you will need to tell KDE about the new prefix, by ensuring"
echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix"
echo "Then restart KDE."
echo ""
fi
fi
fi
if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then
echo ""
echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility"
echo "was not included. Therefore, GCC symbol visibility support remains disabled."
echo ""
echo "For better performance, consider including the Qt visibility supporting patch"
echo "located at:"
echo ""
echo "http://bugs.kde.org/show_bug.cgi?id=109386"
echo ""
echo "and recompile all of Qt and KDE. Note, this is entirely optional and"
echo "everything will continue to work just fine without it."
echo ""
fi
if test "$all_tests" = "bad"; then
if test ! "$cache_file" = "/dev/null"; then
echo ""
echo "Please remove the file $cache_file after changing your setup"
echo "so that configure will find the changes next time."
echo ""
fi
else
echo ""
echo "Good - your configure finished. Start make now"
echo ""
fi

@ -1,4 +0,0 @@
#MIN_CONFIG
AM_INIT_AUTOMAKE(kdbg, 2.2.2)

@ -1,115 +0,0 @@
dnl Checks for header files.
AC_LANG_C dnl switch to C
AC_HEADER_DIRENT dnl check for dirent.h
AC_HEADER_STDC dnl check for other stdc headers. More traditional ;)
dnl check for some more header files. You can remove some of
dnl them, if you want to. But it doesn't hurt
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/cdefs.h)
AC_CHECK_HEADERS(fnmatch.h sysent.h strings.h sys/stat.h)
AC_CHECK_HEADERS(sys/ioctl.h pty.h libutil.h util.h)
dnl Checks for libraries.
AC_CHECK_LIB(socket, socket, [LIBSOCKET="-lsocket -lnsl"]) dnl for Solaris' X11
AC_SUBST(LIBSOCKET)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_TIME
dnl Checks for library functions.
AC_CHECK_FUNCS(setpgid putenv socket vsnprintf mkfifo)
dnl pseudo tty support in glibc2
AC_SEARCH_LIBS(openpty, util,
AC_DEFINE_UNQUOTED(HAVE_FUNC_OPENPTY, 1, [Define if you have openpty]))
dnl Check whether we want much debugging output
AH_TEMPLATE([WANT_TRACE_OUTPUT],
[Define if you want to see voluminous trace output])
AC_MSG_CHECKING([whether kdbg should generate lots of trace output])
dnl Default is no trace output
AC_ARG_ENABLE(lots-a-trace,
[ --enable-lots-a-trace generate lots of trace output [default=no]],
WANT_TRACE_OUTPUT=$enableval, WANT_TRACE_OUTPUT=no)
AC_MSG_RESULT($WANT_TRACE_OUTPUT)
if test "x$WANT_TRACE_OUTPUT" = "xyes"; then
AC_DEFINE_UNQUOTED(WANT_TRACE_OUTPUT)
fi
dnl Check whether test programs should be compiled
dnl Default is not to compile them
AC_ARG_ENABLE(testprogs,
[ --enable-testprogs compile test programs [default=no]],
[buildtestprogs=$enableval],[buildtestprogs=no])
AM_CONDITIONAL(BUILDTESTPROGS,test "x$buildtestprogs" = "xyes")
dnl write a notice into the log
echo "build test programs: $buildtestprogs" >&5
dnl Check where the communication with gdb should be logged
AC_MSG_CHECKING([where communication with gdb should be logged])
dnl Default is ./gdb-transcript until kdbg is released
AC_ARG_WITH(transcript,
[ --with-transcript=file log communication with gdb [default=not logged]],
GDB_TRANSCRIPT=$withval, GDB_TRANSCRIPT=no)
if test "x$GDB_TRANSCRIPT" = "xyes"; then
GDB_TRANSCRIPT="./gdb-transcript"
fi
if test "x$GDB_TRANSCRIPT" = "xno"; then
GDB_TRANSCRIPT="not logged"
else
dnl add quotes
GDB_TRANSCRIPT=\"$GDB_TRANSCRIPT\"
AC_DEFINE_UNQUOTED(GDB_TRANSCRIPT, $GDB_TRANSCRIPT,
[Define to the name of the file that communication with gdb
should be logged to; undefine it for no logging])
fi
AC_MSG_RESULT($GDB_TRANSCRIPT)
dnl Check whether placement new works
AH_TEMPLATE([HAVE_PLACEMENT_NEW],[Define if placement new works])
AC_LANG_CPLUSPLUS
AC_MSG_CHECKING(whether placement new is available)
AC_CACHE_VAL(ac_cv_have_placement_new,
[
AC_TRY_COMPILE([
#include <new>
],
[
int ii;
new(&ii) int;
],
ac_cv_have_placement_new=yes,
ac_cv_have_placement_new=no)
])
AC_MSG_RESULT($ac_cv_have_placement_new)
if eval "test \"`echo `$ac_cv_have_placement_new\" = yes"; then
AC_DEFINE(HAVE_PLACEMENT_NEW)
fi
dnl -----------------
AC_PATH_PROG(PS_COMMAND, ps)
if test -n "$PS_COMMAND"; then
AC_MSG_CHECKING(for suitable ps invocation)
PS_COMMAND="$PS_COMMAND -eo pid,ppid,uid,vsz,etime,time,args"
if $PS_COMMAND > /dev/null 2>&1; then
# works in principle; check output: extract first line, but avoid 'head -1'
set x `$PS_COMMAND | (read firstline; echo "$firstline")`
if test "$*" = "x PID PPID UID VSZ ELAPSED TIME COMMAND"; then
: # fine
else
PS_COMMAND="" # not suitable
fi
else
PS_COMMAND="" # not suitable
fi
if test -n "$PS_COMMAND"; then
AC_MSG_RESULT($PS_COMMAND)
PS_COMMAND=\"`echo $PS_COMMAND | sed -e 's/ /", "/g'`\"
AC_DEFINE_UNQUOTED(PS_COMMAND, $PS_COMMAND,
[Define how to invoke ps])
else
AC_MSG_RESULT([not suitable])
fi
fi
AM_CONDITIONAL(HAVE_PS_COMMAND, test -n "$PS_COMMAND")

@ -9,11 +9,11 @@
<p><a href="index.html">Contents</a></p>
<h1>Invoking KDbg from the command line</h1>
<p><pre>
Usage: kdbg [Qt-options] [KDE-options] [options] [program] [core]
Usage: kdbg [TQt-options] [KDE-options] [options] [program] [core]
Generic options:
--help Show help about options
--help-qt Show Qt specific options
--help-qt Show TQt specific options
--help-kde Show KDE specific options
--help-all Show all options
--author Show author information

@ -16,9 +16,9 @@ The information which member variable is displayed is stored in <em>type
tables</em>. There is generally one type table per shared library.</p>
<p>KDbg's default type tables are located under <tt>$prefix/share/apps/kdbg/types</tt>.
User defined type tables can be placed in <tt>${KDEHOME}/share/apps/kdbg/types</tt>, where
<tt>${KDEHOME}</tt> is <tt>~/.kde</tt> if it is not a defined environment variable.
The file names end with <tt>.kdbgtt</tt>. Example: The type table for <tt>libqt.so</tt>
User defined type tables can be placed in <tt>${TDEHOME}/share/apps/kdbg/types</tt>, where
<tt>${TDEHOME}</tt> is <tt>~/.kde</tt> if it is not a defined environment variable.
The file names end with <tt>.kdbgtt</tt>. Example: The type table for <tt>libtqt.so</tt>
is named <tt>qt.kdbgtt</tt>.
User defined type tables override the type tables provided by the system.</p>
<p>A type table file obeys the regular KDE configuration file syntax. The
@ -56,7 +56,7 @@ Sometimes the order in which the names are listed is important
<tt>ShlibRE</tt>. KDbg uses this entry to determine if the type table applies
to the program being debugged. For this purpose KDbg determines the shared
libraries to which the program is linked. If any of the libraries matches
this entry, the type table applies. The regular expression is a Qt-regular
this entry, the type table applies. The regular expression is a TQt-regular
expression (the metacharacters <tt>.*?[]^$\</tt> are recognized in the
usual way, but there is no possibility to group characters.)</li>
@ -71,9 +71,9 @@ type tables are listed to identify this type table.
library is used. Currently, two builtins are supported:
<ul>
<li>
<tt>QString::Data</tt> is used to display unicode strings of Qt's <tt>QString</tt>
<tt>TQString::Data</tt> is used to display unicode strings of TQt's <tt>TQString</tt>
class. See below.</li>
<li><tt>QCharIsShort</tt> is used only in connection with <tt>QString::Data</tt>
<li><tt>TQCharIsShort</tt> is used only in connection with <tt>TQString::Data</tt>
to specify that a unicode character is stored in an object of type <tt>short</tt>.
See <tt>qt3.kdbgtt</tt> for examples.</li></ul></li>
</ul>
@ -125,11 +125,11 @@ this type in the <tt>Types</tt><i>x</i> entries in the <tt>Type Table</tt>.</li>
<p><font size=-1>Currently the number of expressions per type is limited to
5. This can easily be changed if it's too restrictive, but I recommend
not to go to that limit at all - it will slow down the debugging process.</font></p>
<p>KDbg recognizes a special extension that is used to display Qt 2.x's and Qt 3.x's
unicode strings: If an <tt>Expr</tt><i>x</i> is prepended with <tt>/QString::Data</tt>,
it is assumed that the result of the expression is a pointer to a <tt>QString::Data</tt>.
The value displayed is the unicode string that this instance of <tt>QString::Data</tt>
represents (which can be <tt>QString::null</tt> if it is Qt's well-defined
<p>KDbg recognizes a special extension that is used to display TQt 2.x's and TQt 3.x's
unicode strings: If an <tt>Expr</tt><i>x</i> is prepended with <tt>/TQString::Data</tt>,
it is assumed that the result of the expression is a pointer to a <tt>TQString::Data</tt>.
The value displayed is the unicode string that this instance of <tt>TQString::Data</tt>
represents (which can be <tt>TQString::null</tt> if it is TQt's well-defined
null string or <tt>(null)</tt> if the <tt>unicode</tt> member is the null
pointer). See <tt>qt2.kdbgtt</tt> for examples.</p>
<p>Tip: It is not necessary to define derived types if they ought to be
@ -140,29 +140,29 @@ entry to quickly specify that a type should be treated like a non-leftmost
base class for a multiple-inheritance class.</p>
<h2>
An example</h2>
<p>The example shows how <tt>QString</tt> and <tt>QRect</tt> are defined
in <tt>qt3.kdbgtt</tt>. Furthermore, the template type <tt>QValueVector</tt>
is defined. This example applies to Qt 3.x, which is located in shared library
whose name ends in <tt>libqt-mt.so.3</tt>.</p>
<p>The example shows how <tt>TQString</tt> and <tt>TQRect</tt> are defined
in <tt>qt3.kdbgtt</tt>. Furthermore, the template type <tt>TQValueVector</tt>
is defined. This example applies to TQt 3.x, which is located in shared library
whose name ends in <tt>libtqt-mt.so.3</tt>.</p>
<pre>[Type Table]
Types1=QString,QRect
Types2=QValueVector
LibDisplayName=libqt 3.x
ShlibRE=libqt-mt\.so\.3$
EnableBuiltin=QString::Data,QCharIsShort
Types1=TQString,TQRect
Types2=TQValueVector
LibDisplayName=libtqt 3.x
ShlibRE=libtqt-mt\.so\.3$
EnableBuiltin=TQString::Data,TQCharIsShort
[QString]
[TQString]
Display={ % }
Expr1=/QString::Data (%s).d
Expr1=/TQString::Data (%s).d
[QValueVector]
Template=QValueVector<*>
[TQValueVector]
Template=TQValueVector<*>
Display={ size=% shared=% capacity=% }
Expr1=($tmp=(%s).sh)->finish-$tmp->start
Expr2=(%s).sh->count
Expr3=($tmp=(%s).sh)->end-$tmp->start
[QRect]
[TQRect]
Display={ tl=(%,%) br=(%,%) }
Expr1=(%s).x1
Expr2=(%s).y1
@ -170,7 +170,7 @@ Expr3=(%s).x2
Expr4=(%s).y2</pre>
<p>This example shows these features:</p>
<ul>
<li>The name of the template type, <tt>QValueVector</tt> is irrelevant.
<li>The name of the template type, <tt>TQValueVector</tt> is irrelevant.
The exact type name is specified under the <tt>Template=</tt> entry.
It specifies a single wildcard so that it applies to all specializations.
</li>

@ -0,0 +1,92 @@
.\" Hey, EMACS: -*- nroff -*-
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH KDBG 1 "March 25, 2005"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
kdbg \- a graphical debugger interface
.SH SYNOPSIS
.B kdbg
[ \fIgeneric-options\fP ]
[ \fB\-t\fP \fIfile\fP ] [ \fB\-r\fP \fIdevice\fP ]
[ \fB\-l\fP \fIlanguage\fP ] [ \fB\-p\fP \fIpid\fP ]
[ \fIprogram\fP ] [ \fIcore\fP ]
.SH DESCRIPTION
\fBKDbg\fP is a graphical user interface to \fBgdb\fP, the GNU debugger. It
provides an intuitive interface for setting breakpoints, inspecting
variables, stepping through code and much more. KDbg requires TDE but
you can of course debug any program.
.PP
KDbg can also debug XSLT (XML stylesheet translation) scripts by
interfacing with \fBxsldbg\fP. Debian users must install the \fIkxsldbg\fP
package to make use of this feature.
.PP
You can pass KDbg the path of the executable to debug (\fIprogram\fP) or
a core dump to debug (\fIcore\fP).
.PP
Features of KDbg include:
.PP
.RS
Inspection of variable values in a tree structure.
.PP
Direct member: For certain compound data types the most important
member values are displayed next to the variable name, so that it is
not necessary to expand the subtree of that variable in order to see
the member value. KDbg can also display TQt's TQString values, which
are Unicode strings.
.PP
Debugger at your finger tips: The basic debugger functions (step,
next, run, finish, until, set/clear/enable/disable breakpoint) are
bound to function keys F5 through F10. Quick and easy.
.PP
View source code, search text, set program arguments and environment
variables, display arbitrary expressions.
.PP
Debugging of core dumps, attaching to running processes is possible.
.PP
Conditional breakpoints.
.RE
.SH OPTIONS
Below are the kdbg-specific options.
For a full summary of options, run \fIkdbg \-\-help\fP.
.TP
\fB\-t\fP \fIfile\fP
Write a transcript of the conversation with the debugger to the given
file.
.TP
\fB\-r\fP \fIdevice\fP
Use remote debugging via the given device.
.TP
\fB\-l\fP \fIlanguage\fP
Specify the language of the program/script to debug.
This must be either \fIC\fP (for a C/C++ program) or
\fIXSL\fP (for an XSLT script).
If this option is not passed then KDbg will try to deduce the language
from the given filename.
.TP
\fB\-p\fP \fIpid\fP
Attach to the process with the given process ID.
.SH SEE ALSO
.BR gdb (1),
.BR xsldbg (1).
.PP
Full user documentation is available through the TDE Help Centre.
Alternatively the HTML documentation can be viewed directly from
\fI/opt/trinity/share/doc/tde/HTML/<lang>/kdbg/\fP.
.SH AUTHOR
KDbg was written by Johannes Sixt <Johannes.Sixt@telecom.at>.
.br
This manual page was prepared by Ben Burton <bab@debian.org>
for the Debian GNU/Linux system (but may be used by others).

@ -15,8 +15,8 @@ KDbg
переменная какого члена отображается, хранится в <i>таблицах типов</i>. Обычно
существует одна таблица на разделяемую библиотеку.
<p>Таблицы типов KDbg расположены в каталоге
<tt>$KDEDIR/share/apps/kdbg/types</tt>. Имена файло таблиц оканчиваются на
<tt>.kdbgtt</tt>. Например, таблица типов для <tt>libqt.so</tt> называется
<tt>$TDEDIR/share/apps/kdbg/types</tt>. Имена файло таблиц оканчиваются на
<tt>.kdbgtt</tt>. Например, таблица типов для <tt>libtqt.so</tt> называется
<tt>qt.kdbgtt</tt>.
<p>Файлы таблиц типов соответствуют стандартному синтаксису файлов конфигурации
KDE. Файл содержит следующие группы:
@ -53,7 +53,7 @@ KDE.
ли данную таблицу к текущей отлаживаемой программе. Для этого KDbg определяет
разделяемые библиотеки, используемые программой. Если хотя бы одна из них
совпадает со значением этого элемента, таблица используется. Используемые
регулярные выражения совпадают с регулярными выражениями Qt (метасимволы
регулярные выражения совпадают с регулярными выражениями TQt (метасимволы
<tt>.*?[]^$\</tt> распознаются обычным образом, однако отсутсвует возможность
группировать символы.)</li>
@ -89,11 +89,11 @@ KDE.
пятью. Это может быть с легкостью изменено, но я не рекомендую вообще
приближаться к данному рубежу - это только затормозить процесс отладки.</font>
<p>KDbg распознает специальное расширение, которое используется для вывода
строк Qt 2.0 в unicode: Если перед <tt>Expr</tt><i>x</i> стоит
<tt>/QString::Data</tt>, подразумевается, что результат операции является
указателем на <tt>QString::Data</tt>. Выводимое значение является строкой в
unicode, представленное <tt>QString::Data</tt> (которое может быть
<tt>QString::null</tt>, если это пустая строка Qt, или <tt>(null)</tt>, если
строк TQt 2.0 в unicode: Если перед <tt>Expr</tt><i>x</i> стоит
<tt>/TQString::Data</tt>, подразумевается, что результат операции является
указателем на <tt>TQString::Data</tt>. Выводимое значение является строкой в
unicode, представленное <tt>TQString::Data</tt> (которое может быть
<tt>TQString::null</tt>, если это пустая строка TQt, или <tt>(null)</tt>, если
<tt>unicode</tt> член структуры является нулевым указателем). Для примера см.
<tt>qt2.kdbgtt</tt>.
@ -103,24 +103,24 @@ unicode,
использовать элемент <tt>Alias</tt> для быстрого указания класса при
множественном наследовании, отличного от первого слева.
<h2>Пример</h2>
Этот пример показывает, как <tt>QString</tt> и <tt>QObject</tt> описаны в
<tt>qt.kdbgtt</tt>. Дополнительно определен <tt>QTableView</tt>, ссылающийся
на <tt>QObject</tt>. Этот пример применим к Qt 1.x, который расположен в
разделяемых библиотеках, имена которых оканчиваются как <tt>libqt.so.1</tt>.
Этот пример показывает, как <tt>TQString</tt> и <tt>TQObject</tt> описаны в
<tt>qt.kdbgtt</tt>. Дополнительно определен <tt>TQTableView</tt>, ссылающийся
на <tt>TQObject</tt>. Этот пример применим к TQt 1.x, который расположен в
разделяемых библиотеках, имена которых оканчиваются как <tt>libtqt.so.1</tt>.
<pre>[Type Table]
Types1=QString
Types2=QObject,QTableView
LibDisplayName=libqt 1.x
ShlibRE=libqt\.so\.1$
[QString]
Types1=TQString
Types2=TQObject,TQTableView
LibDisplayName=libtqt 1.x
ShlibRE=libtqt\.so\.1$
[TQString]
Display={ % }
Expr1=(%s).shd->data
[QObject]
[TQObject]
Display={ name=% #chld=% }
Expr1=(%s).objname
Expr2=(%s).childObjects->numNodes
[QTableView]
Alias=QObject</pre>
[TQTableView]
Alias=TQObject</pre>
Замечание: гораздо безопаснее заключать <tt>%s</tt> в скобки.
</body>
</html>

@ -1,67 +0,0 @@
%define name kdbg
%define version 2.0.0
%define release 1.kde2
%define prefix /usr
%define builddir $RPM_BUILD_DIR/%{name}-%{version}
Summary: KDbg - KDE Debugging GUI around gdb
Name: %{name}
Version: %{version}
Release: %{release}
Prefix: %{prefix}
Group: X11/KDE/Development
Copyright: GPL
Distribution: RedHat 7.0
Vendor: Johannes Sixt <j6t@kdbg.org>
Packager: Ullrich von Bassewitz <uz@musoftware.de>
Source: %{name}-%{version}.tar.gz
URL: http://www.kdbg.org/
Requires: kdelibs >= 2.0
BuildRoot: /tmp/build-%{name}-%{version}
%description
KDbg is a graphical user interface to gdb, the GNU debugger. It provides
an intuitive interface for setting breakpoints, inspecting variables, and
stepping through code.
%prep
rm -rf $RPM_BUILD_ROOT
rm -rf %{builddir}
%setup
touch `find . -type f`
%build
if [ -z "$KDEDIR" ]; then
export KDEDIR=%{prefix}
fi
CXXFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" ./configure \
--prefix=$KDEDIR
make
%install
if [ -z "$KDEDIR" ]; then
export KDEDIR=%{prefix}
fi
rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT install-strip
cd $RPM_BUILD_ROOT
find . -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > \
$RPM_BUILD_DIR/file.list.%{name}
find . -type f | sed -e 's,^\.,\%attr(-\,root\,root) ,' \
-e '/\/config\//s|^|%config|' >> \
$RPM_BUILD_DIR/file.list.%{name}
find . -type l | sed 's,^\.,\%attr(-\,root\,root) ,' >> \
$RPM_BUILD_DIR/file.list.%{name}
echo "%docdir $KDEDIR/share/doc/HTML" >> $RPM_BUILD_DIR/file.list.%{name}
%clean
rm -rf $RPM_BUILD_ROOT
rm -rf %{builddir}
rm -f $RPM_BUILD_DIR/file.list.%{name}
%files -f ../file.list.%{name}

@ -0,0 +1,8 @@
##### create translation templates ##############
tde_l10n_create_template( "messages/kdbg" )
tde_l10n_create_template(
CATALOG "desktop_files/kdbg.desktop/"
SOURCES kdbg.desktop
)

@ -0,0 +1,70 @@
tde_conditional_add_subdirectory( BUILD_TESTPROGS testprogs )
add_subdirectory( typetables )
add_subdirectory( pics )
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
${TDE_LIB_DIR}
)
##### kdbg (executable)
tde_add_executable( ${PROJECT_NAME} AUTOMOC
SOURCES
pgmargsbase.ui
procattachbase.ui
pgmargs.cpp
procattach.cpp
debugger.cpp
programconfig.cpp
dbgdriver.cpp
gdbdriver.cpp
xsldbgdriver.cpp
brkpt.cpp
exprwnd.cpp
regwnd.cpp
memwindow.cpp
threadlist.cpp
sourcewnd.cpp
winstack.cpp
ttywnd.cpp
typetable.cpp
prefdebugger.cpp
prefmisc.cpp
pgmsettings.cpp
mainwndbase.cpp
dbgmainwnd.cpp
main.cpp
LINK
tdecore-shared
tdeio-shared
tdeui-shared
DESTINATION ${BIN_INSTALL_DIR}
)
##### other data
install(
FILES kdbgui.rc
DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}
)
tde_create_translated_desktop( ${PROJECT_NAME}.desktop )
install(
FILES kdbgrc
DESTINATION ${CONFIG_INSTALL_DIR}
)

@ -1,98 +0,0 @@
# set the include path for X, qt and KDE
INCLUDES= $(all_includes)
# claim, which subdirectories you want to install
SUBDIRS = doc pics typetables testprogs
####### This part is very kdbg specific
# you can add here more. This one gets installed
bin_PROGRAMS = kdbg
# Which sources should be compiled for kdbg.
kdbg_SOURCES = \
pgmargs.cpp \
pgmargsbase.ui \
procattach.cpp \
procattachbase.ui \
debugger.cpp \
programconfig.cpp \
dbgdriver.cpp \
gdbdriver.cpp \
xsldbgdriver.cpp \
brkpt.cpp \
exprwnd.cpp \
regwnd.cpp \
memwindow.cpp \
threadlist.cpp \
sourcewnd.cpp \
winstack.cpp \
ttywnd.cpp \
typetable.cpp \
prefdebugger.cpp \
prefmisc.cpp \
pgmsettings.cpp \
mainwndbase.cpp \
dbgmainwnd.cpp \
main.cpp
# the library search path
kdbg_LDFLAGS = \
$(all_libraries) $(KDE_RPATH)
# the libraries to link against.
kdbg_LDADD = $(LIB_KIO) $(LIB_KDEUI) $(LIB_KDECORE) $(LIB_QT)
# this option you can leave out. Just, if you use "make dist", you need it
noinst_HEADERS = \
pgmargs.h \
procattach.h \
debugger.h \
programconfig.h \
dbgdriver.h \
gdbdriver.h \
xsldbgdriver.h \
brkpt.h \
exprwnd.h \
regwnd.h \
memwindow.h \
threadlist.h \
sourcewnd.h \
winstack.h \
ttywnd.h \
typetable.h \
prefdebugger.h \
prefmisc.h \
pgmsettings.h \
mainwndbase.h \
dbgmainwnd.h \
envvar.h \
commandids.h \
mydebug.h
kdbg_METASOURCES = AUTO
# if you "make clean", this files get removed. If you want to remove
# them while "make distclean", use DISTCLEANFILES
CLEANFILES = $(kdbg_METASOURCES)
xdg_apps_DATA = kdbg.desktop
configdir = $(kde_confdir)
config_DATA = kdbgrc
rcdir = $(kde_datadir)/kdbg
rc_DATA = kdbgui.rc
# Make messages.po and move it to $(top_srcdir)/po. "make merge" there.
# the -x is for skipping messages already translated in kdelibs
# Messages are generated in the source directory so that file names
# mentioned in the .pot file are not prefixed by $(srcdir).
messages:
cd $(srcdir) && \
extractrc *.rc *.ui > rc.cpp && \
LIST=`find . -name \*.h -o -name \*.cpp -o -name \*.cc -o -name \*.cxx -o -name \*.C` && \
$(XGETTEXT) -C -ki18n -kI18N_NOOP -x $(includedir)/kde.pot \
$$LIST && mv messages.po $(top_srcdir)/po/kdbg.pot; \
rm -f rc.cpp
EXTRA_DIST = kdbg.desktop kdbgrc

@ -4,15 +4,15 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <kapplication.h>
#include <klocale.h> /* i18n */
#include <tdeapplication.h>
#include <tdelocale.h> /* i18n */
#include <kiconloader.h>
#include <ksimpleconfig.h>
#include <qdialog.h>
#include <qkeycode.h>
#include <qpainter.h>
#include <qlabel.h>
#include <qbitmap.h>
#include <tqdialog.h>
#include <tqkeycode.h>
#include <tqpainter.h>
#include <tqlabel.h>
#include <tqbitmap.h>
#include "debugger.h"
#include "brkpt.h"
#include "dbgdriver.h"
@ -24,18 +24,18 @@
#include "mydebug.h"
class BreakpointItem : public QListViewItem, public Breakpoint
class BreakpointItem : public TQListViewItem, public Breakpoint
{
public:
BreakpointItem(QListView* list, const Breakpoint& bp);
BreakpointItem(TQListView* list, const Breakpoint& bp);
void updateFrom(const Breakpoint& bp);
void display(); /* sets icon and visible texts */
bool enabled() const { return Breakpoint::enabled; }
};
BreakpointTable::BreakpointTable(QWidget* parent, const char* name) :
QWidget(parent, name),
BreakpointTable::BreakpointTable(TQWidget* parent, const char* name) :
TQWidget(parent, name),
m_debugger(0),
m_bpEdit(this, "bpedit"),
m_list(this, "bptable"),
@ -50,51 +50,51 @@ BreakpointTable::BreakpointTable(QWidget* parent, const char* name) :
m_buttons(8)
{
m_bpEdit.setMinimumSize(m_bpEdit.sizeHint());
connect(&m_bpEdit, SIGNAL(returnPressed()), this, SLOT(addBP()));
connect(&m_bpEdit, TQ_SIGNAL(returnPressed()), this, TQ_SLOT(addBP()));
initListAndIcons();
connect(&m_list, SIGNAL(currentChanged(QListViewItem*)), SLOT(updateUI()));
connect(&m_list, TQ_SIGNAL(currentChanged(TQListViewItem*)), TQ_SLOT(updateUI()));
// double click on item is same as View code
connect(&m_list, SIGNAL(doubleClicked(QListViewItem*)), this, SLOT(viewBP()));
connect(&m_list, TQ_SIGNAL(doubleClicked(TQListViewItem*)), this, TQ_SLOT(viewBP()));
// need mouse button events
m_list.viewport()->installEventFilter(this);
m_btAddBP.setText(i18n("Add &Breakpoint"));
m_btAddBP.setMinimumSize(m_btAddBP.sizeHint());
connect(&m_btAddBP, SIGNAL(clicked()), this, SLOT(addBP()));
connect(&m_btAddBP, TQ_SIGNAL(clicked()), this, TQ_SLOT(addBP()));
m_btAddWP.setText(i18n("Add &Watchpoint"));
m_btAddWP.setMinimumSize(m_btAddWP.sizeHint());
connect(&m_btAddWP, SIGNAL(clicked()), this, SLOT(addWP()));
connect(&m_btAddWP, TQ_SIGNAL(clicked()), this, TQ_SLOT(addWP()));
m_btRemove.setText(i18n("&Remove"));
m_btRemove.setMinimumSize(m_btRemove.sizeHint());
connect(&m_btRemove, SIGNAL(clicked()), this, SLOT(removeBP()));
connect(&m_btRemove, TQ_SIGNAL(clicked()), this, TQ_SLOT(removeBP()));
// the Enable/Disable button changes its label
m_btEnaDis.setText(i18n("&Disable"));
// make a dummy button to get the size of the alternate label
{
QSize size = m_btEnaDis.sizeHint();
QPushButton dummy(this);
TQSize size = m_btEnaDis.sizeHint();
TQPushButton dummy(this);
dummy.setText(i18n("&Enable"));
QSize sizeAlt = dummy.sizeHint();
TQSize sizeAlt = dummy.sizeHint();
if (sizeAlt.width() > size.width())
size.setWidth(sizeAlt.width());
if (sizeAlt.height() > size.height())
size.setHeight(sizeAlt.height());
m_btEnaDis.setMinimumSize(size);
}
connect(&m_btEnaDis, SIGNAL(clicked()), this, SLOT(enadisBP()));
connect(&m_btEnaDis, TQ_SIGNAL(clicked()), this, TQ_SLOT(enadisBP()));
m_btViewCode.setText(i18n("&View Code"));
m_btViewCode.setMinimumSize(m_btViewCode.sizeHint());
connect(&m_btViewCode, SIGNAL(clicked()), this, SLOT(viewBP()));
connect(&m_btViewCode, TQ_SIGNAL(clicked()), this, TQ_SLOT(viewBP()));
m_btConditional.setText(i18n("&Conditional..."));
m_btConditional.setMinimumSize(m_btConditional.sizeHint());
connect(&m_btConditional, SIGNAL(clicked()), this, SLOT(conditionalBP()));
connect(&m_btConditional, TQ_SIGNAL(clicked()), this, TQ_SLOT(conditionalBP()));
m_layout.addLayout(&m_listandedit, 10);
m_layout.addLayout(&m_buttons);
@ -123,7 +123,7 @@ void BreakpointTable::updateBreakList()
{
std::list<BreakpointItem*> deletedItems;
for (QListViewItem* it = m_list.firstChild(); it != 0; it = it->nextSibling()) {
for (TQListViewItem* it = m_list.firstChild(); it != 0; it = it->nextSibling()) {
deletedItems.push_back(static_cast<BreakpointItem*>(it));
}
@ -151,8 +151,8 @@ nextItem:;
}
}
BreakpointItem::BreakpointItem(QListView* list, const Breakpoint& bp) :
QListViewItem(list),
BreakpointItem::BreakpointItem(TQListView* list, const Breakpoint& bp) :
TQListViewItem(list),
Breakpoint(bp)
{
display();
@ -167,7 +167,7 @@ void BreakpointItem::updateFrom(const Breakpoint& bp)
void BreakpointTable::addBP()
{
// set a breakpoint at the specified text
QString bpText = m_bpEdit.text();
TQString bpText = m_bpEdit.text();
bpText = bpText.stripWhiteSpace();
if (m_debugger->isReady())
{
@ -181,7 +181,7 @@ void BreakpointTable::addBP()
void BreakpointTable::addWP()
{
// set a watchpoint for the specified expression
QString wpExpr = m_bpEdit.text();
TQString wpExpr = m_bpEdit.text();
wpExpr = wpExpr.stripWhiteSpace();
if (m_debugger->isReady()) {
Breakpoint* bp = new Breakpoint;
@ -242,11 +242,11 @@ void BreakpointTable::updateUI()
m_btConditional.setEnabled(enableChkpt);
}
bool BreakpointTable::eventFilter(QObject* ob, QEvent* ev)
bool BreakpointTable::eventFilter(TQObject* ob, TQEvent* ev)
{
if (ev->type() == QEvent::MouseButtonPress)
if (ev->type() == TQEvent::MouseButtonPress)
{
QMouseEvent* mev = static_cast<QMouseEvent*>(ev);
TQMouseEvent* mev = static_cast<TQMouseEvent*>(ev);
if (mev->button() == MidButton) {
// enable or disable the clicked-on item
BreakpointItem* bp =
@ -258,30 +258,30 @@ bool BreakpointTable::eventFilter(QObject* ob, QEvent* ev)
return true;
}
}
return QWidget::eventFilter(ob, ev);
return TQWidget::eventFilter(ob, ev);
}
class ConditionalDlg : public QDialog
class ConditionalDlg : public TQDialog
{
public:
ConditionalDlg(QWidget* parent);
ConditionalDlg(TQWidget* parent);
~ConditionalDlg();
void setCondition(const QString& text) { m_condition.setText(text); }
QString condition() { return m_condition.text(); }
void setCondition(const TQString& text) { m_condition.setText(text); }
TQString condition() { return m_condition.text(); }
void setIgnoreCount(uint count);
uint ignoreCount();
protected:
QLabel m_conditionLabel;
QLineEdit m_condition;
QLabel m_ignoreLabel;
QLineEdit m_ignoreCount;
QPushButton m_buttonOK;
QPushButton m_buttonCancel;
QVBoxLayout m_layout;
QGridLayout m_inputs;
QHBoxLayout m_buttons;
TQLabel m_conditionLabel;
TQLineEdit m_condition;
TQLabel m_ignoreLabel;
TQLineEdit m_ignoreCount;
TQPushButton m_buttonOK;
TQPushButton m_buttonCancel;
TQVBoxLayout m_layout;
TQGridLayout m_inputs;
TQHBoxLayout m_buttons;
};
void BreakpointTable::conditionalBP()
@ -302,10 +302,10 @@ void BreakpointTable::conditionalBP()
dlg.setCondition(bp->condition);
dlg.setIgnoreCount(bp->ignoreCount);
if (dlg.exec() != QDialog::Accepted)
if (dlg.exec() != TQDialog::Accepted)
return;
QString conditionInput = dlg.condition();
TQString conditionInput = dlg.condition();
int ignoreCount = dlg.ignoreCount();
m_debugger->conditionalBreakpoint(id, conditionInput, ignoreCount);
}
@ -324,13 +324,13 @@ void BreakpointTable::initListAndIcons()
m_list.setSorting(-1);
// add pixmaps
QPixmap brkena = UserIcon("brkena.xpm");
QPixmap brkdis = UserIcon("brkdis.xpm");
QPixmap watchena = UserIcon("watchena.xpm");
QPixmap watchdis = UserIcon("watchdis.xpm");
QPixmap brktmp = UserIcon("brktmp.xpm");
QPixmap brkcond = UserIcon("brkcond.xpm");
QPixmap brkorph = UserIcon("brkorph.xpm");
TQPixmap brkena = UserIcon("brkena.xpm");
TQPixmap brkdis = UserIcon("brkdis.xpm");
TQPixmap watchena = UserIcon("watchena.xpm");
TQPixmap watchdis = UserIcon("watchdis.xpm");
TQPixmap brktmp = UserIcon("brktmp.xpm");
TQPixmap brkcond = UserIcon("brkcond.xpm");
TQPixmap brkorph = UserIcon("brkorph.xpm");
/*
* There are 32 different pixmaps: The basic enabled or disabled
@ -339,11 +339,11 @@ void BreakpointTable::initListAndIcons()
* the same sequence for watchpoints.
*/
m_icons.resize(32);
QPixmap canvas(16,16);
TQPixmap canvas(16,16);
for (int i = 0; i < 32; i++) {
{
QPainter p(&canvas);
TQPainter p(&canvas);
// clear canvas
p.fillRect(0,0, canvas.width(),canvas.height(), cyan);
// basic icon
@ -393,42 +393,42 @@ void BreakpointItem::display()
setText(0, Breakpoint::text);
} else if (!fileName.isEmpty()) {
// use only the file name portion
QString file = fileName;
TQString file = fileName;
int slash = file.findRev('/');
if (slash >= 0) {
file = file.mid(slash+1);
}
// correct zero-based line-numbers
setText(0, file + ":" + QString::number(lineNo+1));
setText(0, file + ":" + TQString::number(lineNo+1));
} else {
setText(0, "*" + address.asString());
}
int c = 0;
setText(++c, address.asString());
QString tmp;
TQString tmp;
if (hitCount == 0) {
setText(++c, QString());
setText(++c, TQString());
} else {
tmp.setNum(hitCount);
setText(++c, tmp);
}
if (ignoreCount == 0) {
setText(++c, QString());
setText(++c, TQString());
} else {
tmp.setNum(ignoreCount);
setText(++c, tmp);
}
if (condition.isEmpty()) {
setText(++c, QString());
setText(++c, TQString());
} else {
setText(++c, condition);
}
}
ConditionalDlg::ConditionalDlg(QWidget* parent) :
QDialog(parent, "conditional", true),
ConditionalDlg::ConditionalDlg(TQWidget* parent) :
TQDialog(parent, "conditional", true),
m_conditionLabel(this, "condLabel"),
m_condition(this, "condition"),
m_ignoreLabel(this, "ignoreLabel"),
@ -439,7 +439,7 @@ ConditionalDlg::ConditionalDlg(QWidget* parent) :
m_inputs(2, 2, 10),
m_buttons(4)
{
QString title = kapp->caption();
TQString title = tdeApp->caption();
title += i18n(": Conditional breakpoint");
setCaption(title);
@ -459,12 +459,12 @@ ConditionalDlg::ConditionalDlg(QWidget* parent) :
m_ignoreLabel.setBuddy(&m_ignoreCount);
m_buttonOK.setMinimumSize(100, 30);
connect(&m_buttonOK, SIGNAL(clicked()), SLOT(accept()));
connect(&m_buttonOK, TQ_SIGNAL(clicked()), TQ_SLOT(accept()));
m_buttonOK.setText(i18n("OK"));
m_buttonOK.setDefault(true);
m_buttonCancel.setMinimumSize(100, 30);
connect(&m_buttonCancel, SIGNAL(clicked()), SLOT(reject()));
connect(&m_buttonCancel, TQ_SIGNAL(clicked()), TQ_SLOT(reject()));
m_buttonCancel.setText(i18n("Cancel"));
m_layout.addLayout(&m_inputs);
@ -494,14 +494,14 @@ ConditionalDlg::~ConditionalDlg()
uint ConditionalDlg::ignoreCount()
{
bool ok;
QString input = m_ignoreCount.text();
TQString input = m_ignoreCount.text();
uint result = input.toUInt(&ok);
return ok ? result : 0;
}
void ConditionalDlg::setIgnoreCount(uint count)
{
QString text;
TQString text;
// set empty if ignore count is zero
if (count > 0) {
text.setNum(count);

@ -7,45 +7,45 @@
#ifndef BRKPT_H
#define BRKPT_H
#include <qlistview.h>
#include <qlayout.h>
#include <qpushbutton.h>
#include <qlineedit.h>
#include <qvaluevector.h>
#include <tqlistview.h>
#include <tqlayout.h>
#include <tqpushbutton.h>
#include <tqlineedit.h>
#include <tqvaluevector.h>
class KDebugger;
class BreakpointItem;
class BreakpointTable : public QWidget
class BreakpointTable : public TQWidget
{
Q_OBJECT
TQ_OBJECT
public:
BreakpointTable(QWidget* parent, const char* name);
BreakpointTable(TQWidget* parent, const char* name);
~BreakpointTable();
void setDebugger(KDebugger* deb) { m_debugger = deb; }
protected:
KDebugger* m_debugger;
QLineEdit m_bpEdit;
QListView m_list;
QPushButton m_btAddBP;
QPushButton m_btAddWP;
QPushButton m_btRemove;
QPushButton m_btEnaDis;
QPushButton m_btViewCode;
QPushButton m_btConditional;
QHBoxLayout m_layout;
QVBoxLayout m_listandedit;
QVBoxLayout m_buttons;
QValueVector<QPixmap> m_icons;
TQLineEdit m_bpEdit;
TQListView m_list;
TQPushButton m_btAddBP;
TQPushButton m_btAddWP;
TQPushButton m_btRemove;
TQPushButton m_btEnaDis;
TQPushButton m_btViewCode;
TQPushButton m_btConditional;
TQHBoxLayout m_layout;
TQVBoxLayout m_listandedit;
TQVBoxLayout m_buttons;
TQValueVector<TQPixmap> m_icons;
void insertBreakpoint(int num, bool temp, bool enabled, QString location,
QString fileName = 0, int lineNo = -1,
void insertBreakpoint(int num, bool temp, bool enabled, TQString location,
TQString fileName = 0, int lineNo = -1,
int hits = 0, uint ignoreCount = 0,
QString condition = QString());
TQString condition = TQString());
void initListAndIcons();
virtual bool eventFilter(QObject* ob, QEvent* ev);
virtual bool eventFilter(TQObject* ob, TQEvent* ev);
friend class BreakpointItem;
@ -60,7 +60,7 @@ signals:
* @param lineNo specifies the line number (0-based!).
* @param address specifies the exact address of the breakpoint.
*/
void activateFileLine(const QString& file, int lineNo, const DbgAddr& address);
void activateFileLine(const TQString& file, int lineNo, const DbgAddr& address);
public slots:
virtual void addBP();
virtual void addWP();

@ -6,7 +6,7 @@
#include "dbgdriver.h"
#include "exprwnd.h"
#include <qstringlist.h>
#include <tqstringlist.h>
#include <ctype.h>
#include <stdlib.h> /* strtol, atoi */
#include <algorithm>
@ -18,7 +18,7 @@
DebuggerDriver::DebuggerDriver() :
KProcess(),
TDEProcess(),
m_state(DSidle),
m_output(0),
m_outputLen(0),
@ -36,10 +36,10 @@ DebuggerDriver::DebuggerDriver() :
// m_promptLastChar and m_promptMinLen must also be set.
// debugger process
connect(this, SIGNAL(receivedStdout(KProcess*,char*,int)),
SLOT(slotReceiveOutput(KProcess*,char*,int)));
connect(this, SIGNAL(wroteStdin(KProcess*)), SLOT(slotCommandRead(KProcess*)));
connect(this, SIGNAL(processExited(KProcess*)), SLOT(slotExited(KProcess*)));
connect(this, TQ_SIGNAL(receivedStdout(TDEProcess*,char*,int)),
TQ_SLOT(slotReceiveOutput(TDEProcess*,char*,int)));
connect(this, TQ_SIGNAL(wroteStdin(TDEProcess*)), TQ_SLOT(slotCommandRead(TDEProcess*)));
connect(this, TQ_SIGNAL(processExited(TDEProcess*)), TQ_SLOT(slotExited(TDEProcess*)));
}
DebuggerDriver::~DebuggerDriver()
@ -53,7 +53,7 @@ int DebuggerDriver::commSetupDoneC()
{
TRACE(__PRETTY_FUNCTION__);
if (!KProcess::commSetupDoneC())
if (!TDEProcess::commSetupDoneC())
return 0;
close(STDERR_FILENO);
@ -61,7 +61,7 @@ int DebuggerDriver::commSetupDoneC()
}
bool DebuggerDriver::startup(QString cmdStr)
bool DebuggerDriver::startup(TQString cmdStr)
{
// clear command queues
delete m_activeCmd;
@ -74,14 +74,14 @@ bool DebuggerDriver::startup(QString cmdStr)
if (cmdStr.isEmpty())
cmdStr = defaultInvocation();
QStringList cmd = QStringList::split(' ', cmdStr);
TQStringList cmd = TQStringList::split(' ', cmdStr);
clearArguments();
for (QStringList::iterator i = cmd.begin(); i != cmd.end(); ++i) {
for (TQStringList::iterator i = cmd.begin(); i != cmd.end(); ++i) {
*this << *i;
}
if (!start(KProcess::NotifyOnExit,
KProcess::Communication(KProcess::Stdin|KProcess::Stdout))) {
if (!start(TDEProcess::NotifyOnExit,
TDEProcess::Communication(TDEProcess::Stdin|TDEProcess::Stdout))) {
return false;
}
@ -102,7 +102,7 @@ bool DebuggerDriver::startup(QString cmdStr)
return true;
}
void DebuggerDriver::slotExited(KProcess*)
void DebuggerDriver::slotExited(TDEProcess*)
{
static const char txt[] = "\n====== debugger exited ======\n";
if (m_logFile.isOpen()) {
@ -118,7 +118,7 @@ void DebuggerDriver::slotExited(KProcess*)
CmdQueueItem* DebuggerDriver::executeCmdString(DbgCommand cmd,
QString cmdString, bool clearLow)
TQString cmdString, bool clearLow)
{
// place a new command into the high-priority queue
CmdQueueItem* cmdItem = new CmdQueueItem(cmd, cmdString);
@ -130,8 +130,7 @@ CmdQueueItem* DebuggerDriver::executeCmdString(DbgCommand cmd,
m_state = DSinterrupted;
kill(SIGINT);
ASSERT(m_activeCmd != 0);
TRACE(QString().sprintf("interrupted the command %d",
(m_activeCmd ? m_activeCmd->m_cmd : -1)));
TRACE(TQString("interrupted the command %1").arg((m_activeCmd ? m_activeCmd->m_cmd : -1)));
delete m_activeCmd;
m_activeCmd = 0;
}
@ -152,14 +151,14 @@ bool CmdQueueItem::IsEqualCmd::operator()(CmdQueueItem* cmd) const
}
CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
QString cmdString, QueueMode mode)
TQString cmdString, QueueMode mode)
{
// place a new command into the low-priority queue
std::list<CmdQueueItem*>::iterator i;
CmdQueueItem* cmdItem = 0;
switch (mode) {
case QMoverrideMoreEqual:
case QMoverride:
case TQMoverrideMoreEqual:
case TQMoverride:
// check whether gdb is currently processing this command
if (m_activeCmd != 0 &&
m_activeCmd->m_cmd == cmd && m_activeCmd->m_cmdString == cmdString)
@ -171,7 +170,7 @@ CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
if (i != m_lopriCmdQueue.end()) {
// found one
cmdItem = *i;
if (mode == QMoverrideMoreEqual) {
if (mode == TQMoverrideMoreEqual) {
// All commands are equal, but some are more equal than others...
// put this command in front of all others
m_lopriCmdQueue.erase(i);
@ -180,7 +179,7 @@ CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
break;
} // else none found, so add it
// drop through
case QMnormal:
case TQMnormal:
cmdItem = new CmdQueueItem(cmd, cmdString);
m_lopriCmdQueue.push_back(cmdItem);
}
@ -220,12 +219,13 @@ void DebuggerDriver::writeCommand()
m_activeCmd = cmd;
TRACE("in writeCommand: " + cmd->m_cmdString);
const char* str = cmd->m_cmdString;
writeStdin(const_cast<char*>(str), cmd->m_cmdString.length());
const char* str = cmd->m_cmdString.local8Bit().data();
size_t cmdStrLen = strlen(str);
writeStdin(str, cmdStrLen);
// write also to log file
if (m_logFile.isOpen()) {
m_logFile.writeBlock(str, cmd->m_cmdString.length());
m_logFile.writeBlock(str, cmdStrLen);
m_logFile.flush();
}
@ -256,7 +256,7 @@ void DebuggerDriver::flushCommands(bool hipriOnly)
}
}
void DebuggerDriver::slotCommandRead(KProcess*)
void DebuggerDriver::slotCommandRead(TDEProcess*)
{
TRACE(__PRETTY_FUNCTION__);
@ -282,13 +282,13 @@ void DebuggerDriver::slotCommandRead(KProcess*)
// re-receive delayed output
while (!m_delayedOutput.empty()) {
QByteArray delayed = m_delayedOutput.front();
TQByteArray delayed = m_delayedOutput.front();
m_delayedOutput.pop();
slotReceiveOutput(0, const_cast<char*>(delayed.data()), delayed.size());
}
}
void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
void DebuggerDriver::slotReceiveOutput(TDEProcess*, char* buffer, int buflen)
{
/*
* The debugger should be running (processing a command) at this point.
@ -304,7 +304,7 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
* output, it will be re-sent by commandRead when it gets the
* acknowledgment for the uncommitted command.
*/
m_delayedOutput.push(QByteArray().duplicate(buffer, buflen));
m_delayedOutput.push(TQByteArray().duplicate(buffer, buflen));
return;
}
// write to log file (do not log delayed output - it would appear twice)
@ -321,7 +321,7 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
*/
if (m_activeCmd == 0 && m_state != DSinterrupted) {
// ignore the output
TRACE("ignoring stray output: " + QString::fromLatin1(buffer, buflen));
TRACE("ignoring stray output: " + TQString::fromLatin1(buffer, buflen));
return;
}
ASSERT(m_state == DSrunning || m_state == DSrunningLow || m_state == DSinterrupted);
@ -354,7 +354,7 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
* for the full prompt string.
*
* Note: Using the regular expression here is most expensive, because
* it translates m_output to a QString each time.
* it translates m_output to a TQString each time.
*
* Note: It could nevertheless happen that a character sequence that is
* equal to the prompt string appears at the end of the output,
@ -376,8 +376,8 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
promptStart = m_outputLen-m_promptMinLen;
}
} else {
QString output = QString::fromLatin1(m_output, m_outputLen);
#if QT_VERSION >= 300
TQString output = TQString::fromLatin1(m_output, m_outputLen);
#if TQT_VERSION >= 300
promptStart = m_promptRE.search(output);
#else
promptStart = m_promptRE.match(output);
@ -413,7 +413,7 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
*m_output = '\0';
// also clear delayed output if interrupted
if (m_state == DSinterrupted) {
m_delayedOutput = std::queue<QByteArray>();
m_delayedOutput = std::queue<TQByteArray>();
}
/*
@ -451,7 +451,7 @@ void DebuggerDriver::dequeueCmdByVar(VarTree* var)
}
QString DebuggerDriver::editableValue(VarTree* value)
TQString DebuggerDriver::editableValue(VarTree* value)
{
// by default, let the user edit what is visible
return value->value();
@ -464,7 +464,7 @@ StackFrame::~StackFrame()
}
DbgAddr::DbgAddr(const QString& aa) :
DbgAddr::DbgAddr(const TQString& aa) :
a(aa)
{
cleanAddr();
@ -483,25 +483,25 @@ void DbgAddr::cleanAddr()
}
}
void DbgAddr::operator=(const QString& aa)
void DbgAddr::operator=(const TQString& aa)
{
a = aa;
fnoffs = QString();
fnoffs = TQString();
cleanAddr();
}
/* Re-attach 0x in front of the address */
QString DbgAddr::asString() const
TQString DbgAddr::asString() const
{
if (a.isEmpty())
return QString();
return TQString();
else
return "0x" + a;
}
bool operator==(const DbgAddr& a1, const DbgAddr& a2)
{
return QString::compare(a1.a, a2.a) == 0;
return TQString::compare(a1.a, a2.a) == 0;
}
bool operator>(const DbgAddr& a1, const DbgAddr& a2)
@ -510,7 +510,7 @@ bool operator>(const DbgAddr& a1, const DbgAddr& a2)
return true;
if (a1.a.length() < a2.a.length())
return false;
return QString::compare(a1.a, a2.a) > 0;
return TQString::compare(a1.a, a2.a) > 0;
}

@ -7,10 +7,10 @@
#ifndef DBGDRIVER_H
#define DBGDRIVER_H
#include <qfile.h>
#include <qregexp.h>
#include <qcstring.h>
#include <kprocess.h>
#include <tqfile.h>
#include <tqregexp.h>
#include <tqcstring.h>
#include <tdeprocess.h>
#include <queue>
#include <list>
@ -19,7 +19,7 @@ class VarTree;
class ExprValue;
class ExprWnd;
class KDebugger;
class QStringList;
class TQStringList;
/**
@ -27,14 +27,14 @@ class QStringList;
*/
struct DbgAddr
{
QString a;
QString fnoffs;
TQString a;
TQString fnoffs;
DbgAddr() { }
DbgAddr(const QString& aa);
DbgAddr(const TQString& aa);
DbgAddr(const DbgAddr& src) : a(src.a), fnoffs(src.fnoffs) { }
void operator=(const QString& aa);
void operator=(const TQString& aa);
void operator=(const DbgAddr& src) { a = src.a; fnoffs = src.fnoffs; }
QString asString() const;
TQString asString() const;
bool isEmpty() const { return a.isEmpty(); }
protected:
void cleanAddr();
@ -83,7 +83,7 @@ enum DbgCommand {
DCprint,
DCprintDeref,
DCprintStruct,
DCprintQStringStruct,
DCprintTQStringStruct,
DCframe,
DCfindType,
DCinfosharedlib,
@ -142,13 +142,13 @@ struct Breakpoint;
struct CmdQueueItem
{
DbgCommand m_cmd;
QString m_cmdString;
TQString m_cmdString;
bool m_committed; /* just a debugging aid */
// remember which expression when printing an expression
VarTree* m_expr;
ExprWnd* m_exprWnd;
// remember file position
QString m_fileName;
TQString m_fileName;
int m_lineNo;
// the breakpoint info
Breakpoint* m_brkpt;
@ -156,7 +156,7 @@ struct CmdQueueItem
// whether command was emitted due to direct user request (only set when relevant)
bool m_byUser;
CmdQueueItem(DbgCommand cmd, const QString& str) :
CmdQueueItem(DbgCommand cmd, const TQString& str) :
m_cmd(cmd),
m_cmdString(str),
m_committed(false),
@ -170,10 +170,10 @@ struct CmdQueueItem
struct IsEqualCmd
{
IsEqualCmd(DbgCommand cmd, const QString& str) : m_cmd(cmd), m_str(str) { }
IsEqualCmd(DbgCommand cmd, const TQString& str) : m_cmd(cmd), m_str(str) { }
bool operator()(CmdQueueItem*) const;
DbgCommand m_cmd;
const QString& m_str;
const TQString& m_str;
};
};
@ -189,14 +189,14 @@ struct Breakpoint
} type;
bool temporary;
bool enabled;
QString location;
QString text; /* text if set using DCbreaktext */
TQString location;
TQString text; /* text if set using DCbreaktext */
DbgAddr address; /* exact address of breakpoint */
QString condition; /* condition as printed by gdb */
TQString condition; /* condition as printed by gdb */
int ignoreCount; /* ignore next that may hits */
int hitCount; /* as reported by gdb */
// the following items repeat the location, but in a better usable way
QString fileName;
TQString fileName;
int lineNo; /* zero-based line number */
Breakpoint();
bool isOrphaned() const { return id < 0; }
@ -207,7 +207,7 @@ struct Breakpoint
*/
struct FrameInfo
{
QString fileName;
TQString fileName;
int lineNo; /* zero-based line number */
DbgAddr address; /* exact address of PC */
};
@ -229,8 +229,8 @@ struct StackFrame : FrameInfo
struct ThreadInfo : FrameInfo
{
int id; /* gdb's number */
QString threadName; /* the SYSTAG */
QString function; /* where thread is halted */
TQString threadName; /* the SYSTAG */
TQString function; /* where thread is halted */
bool hasFocus; /* the thread whose stack we are watching */
};
@ -239,10 +239,10 @@ struct ThreadInfo : FrameInfo
*/
struct RegisterInfo
{
QString regName;
QString rawValue;
QString cookedValue; /* may be empty */
QString type; /* of vector register if not empty */
TQString regName;
TQString rawValue;
TQString cookedValue; /* may be empty */
TQString type; /* of vector register if not empty */
};
/**
@ -251,7 +251,7 @@ struct RegisterInfo
struct DisassembledCode
{
DbgAddr address;
QString code;
TQString code;
};
/**
@ -260,7 +260,7 @@ struct DisassembledCode
struct MemoryDump
{
DbgAddr address;
QString dump;
TQString dump;
};
/**
@ -270,29 +270,29 @@ struct MemoryDump
* interface to the commandline debugger. As such it implements the
* commands and parses the output.
*/
class DebuggerDriver : public KProcess
class DebuggerDriver : public TDEProcess
{
Q_OBJECT
TQ_OBJECT
public:
DebuggerDriver();
virtual ~DebuggerDriver() = 0;
virtual QString driverName() const = 0;
virtual TQString driverName() const = 0;
/**
* Returns the default command string to invoke the debugger driver.
*/
virtual QString defaultInvocation() const = 0;
virtual TQString defaultInvocation() const = 0;
/**
* Returns a list of options that can be turned on and off.
*/
virtual QStringList boolOptionList() const = 0;
virtual TQStringList boolOptionList() const = 0;
virtual bool startup(QString cmdStr);
void setLogFileName(const QString& fname) { m_logFileName = fname; }
virtual bool startup(TQString cmdStr);
void setLogFileName(const TQString& fname) { m_logFileName = fname; }
protected:
QString m_runCmd;
TQString m_runCmd;
enum DebuggerState {
DSidle, /* gdb waits for input */
@ -315,7 +315,7 @@ protected:
char* m_output; /* normal gdb output */
size_t m_outputLen; /* amount of data so far accumulated in m_output */
size_t m_outputAlloc; /* space available in m_output */
std::queue<QByteArray> m_delayedOutput; /* output colleced while we have receivedOutput */
std::queue<TQByteArray> m_delayedOutput; /* output colleced while we have receivedOutput */
/* but before signal wroteStdin arrived */
public:
@ -326,21 +326,21 @@ public:
*/
virtual CmdQueueItem* executeCmd(DbgCommand,
bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg,
bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg,
bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg, int intArg,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg, int intArg,
bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg1, QString strArg2,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg1, TQString strArg2,
bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg1, int intArg2,
bool clearLow = false) = 0;
enum QueueMode {
QMnormal, /* queues the command last */
QMoverride, /* removes an already queued command */
QMoverrideMoreEqual /* ditto, also puts the command first in the queue */
TQMnormal, /* queues the command last */
TQMoverride, /* removes an already queued command */
TQMoverrideMoreEqual /* ditto, also puts the command first in the queue */
};
/**
@ -349,13 +349,13 @@ public:
*/
virtual CmdQueueItem* queueCmd(DbgCommand,
QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg,
QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, int intArg,
QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg, int intArg,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg, int intArg,
QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg1, QString strArg2,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg1, TQString strArg2,
QueueMode mode) = 0;
/**
@ -381,14 +381,14 @@ public:
virtual void interruptInferior() = 0;
/**
* Specifies the command that prints the QString data.
* Specifies the command that prints the TQString data.
*/
virtual void setPrintQStringDataCmd(const char* cmd) = 0;
virtual void setPrintTQStringDataCmd(const char* cmd) = 0;
/**
* Parses the output as an array of QChars.
* Parses the output as an array of TQChars.
*/
virtual ExprValue* parseQCharArray(const char* output, bool wantErrorValue, bool qt3like) = 0;
virtual ExprValue* parseTQCharArray(const char* output, bool wantErrorValue, bool qt3like) = 0;
/**
* Parses a back-trace (the output of the DCbt command).
@ -405,7 +405,7 @@ public:
* output values are undefined in this case.
*/
virtual bool parseFrameChange(const char* output, int& frameNo,
QString& file, int& lineNo, DbgAddr& address) = 0;
TQString& file, int& lineNo, DbgAddr& address) = 0;
/**
* Parses a list of breakpoints.
@ -436,7 +436,7 @@ public:
* @return False if there was no breakpoint.
*/
virtual bool parseBreakpoint(const char* output, int& id,
QString& file, int& lineNo, QString& address) = 0;
TQString& file, int& lineNo, TQString& address) = 0;
/**
* Parses the output of the DCinfolocals command.
@ -462,13 +462,13 @@ public:
* Parses the output of the DCcd command.
* @return false if the message is an error message.
*/
virtual bool parseChangeWD(const char* output, QString& message) = 0;
virtual bool parseChangeWD(const char* output, TQString& message) = 0;
/**
* Parses the output of the DCexecutable command.
* @return false if an error occured.
*/
virtual bool parseChangeExecutable(const char* output, QString& message) = 0;
virtual bool parseChangeExecutable(const char* output, TQString& message) = 0;
/**
* Parses the output of the DCcorefile command.
@ -486,18 +486,18 @@ public:
* Parses the output of commands that execute (a piece of) the program.
* @return The inclusive OR of zero or more of the StopFlags.
*/
virtual uint parseProgramStopped(const char* output, QString& message) = 0;
virtual uint parseProgramStopped(const char* output, TQString& message) = 0;
/**
* Parses the output of the DCsharedlibs command.
*/
virtual QStringList parseSharedLibs(const char* output) = 0;
virtual TQStringList parseSharedLibs(const char* output) = 0;
/**
* Parses the output of the DCfindType command.
* @return true if a type was found.
*/
virtual bool parseFindType(const char* output, QString& type) = 0;
virtual bool parseFindType(const char* output, TQString& type) = 0;
/**
* Parses the output of the DCinforegisters command.
@ -509,7 +509,7 @@ public:
* two addresses could not be found.
*/
virtual bool parseInfoLine(const char* output,
QString& addrFrom, QString& addrTo) = 0;
TQString& addrFrom, TQString& addrTo) = 0;
/**
* Parses the ouput of the DCdisassemble command.
@ -520,19 +520,19 @@ public:
* Parses a memory dump. Returns an empty string if no error was found;
* otherwise it contains an error message.
*/
virtual QString parseMemoryDump(const char* output, std::list<MemoryDump>& memdump) = 0;
virtual TQString parseMemoryDump(const char* output, std::list<MemoryDump>& memdump) = 0;
/**
* Parses the output of the DCsetvariable command. Returns an empty
* string if no error was found; otherwise it contains an error
* message.
*/
virtual QString parseSetVariable(const char* output) = 0;
virtual TQString parseSetVariable(const char* output) = 0;
/**
* Returns a value that the user can edit.
*/
virtual QString editableValue(VarTree* value);
virtual TQString editableValue(VarTree* value);
protected:
/** Removes all commands from the low-priority queue. */
@ -550,13 +550,13 @@ protected:
* Helper function that queues the given command string in the
* low-priority queue.
*/
CmdQueueItem* queueCmdString(DbgCommand cmd, QString cmdString,
CmdQueueItem* queueCmdString(DbgCommand cmd, TQString cmdString,
QueueMode mode);
/**
* Helper function that queues the given command string in the
* high-priority queue.
*/
CmdQueueItem* executeCmdString(DbgCommand cmd, QString cmdString,
CmdQueueItem* executeCmdString(DbgCommand cmd, TQString cmdString,
bool clearLow);
void writeCommand();
virtual void commandFinished(CmdQueueItem* cmd) = 0;
@ -568,19 +568,19 @@ protected:
char m_prompt[10];
size_t m_promptMinLen;
char m_promptLastChar;
QRegExp m_promptRE;
TQRegExp m_promptRE;
// log file
QString m_logFileName;
QFile m_logFile;
TQString m_logFileName;
TQFile m_logFile;
public slots:
void dequeueCmdByVar(VarTree* var);
protected slots:
virtual void slotReceiveOutput(KProcess*, char* buffer, int buflen);
virtual void slotCommandRead(KProcess*);
virtual void slotExited(KProcess*);
virtual void slotReceiveOutput(TDEProcess*, char* buffer, int buflen);
virtual void slotCommandRead(TDEProcess*);
virtual void slotExited(TDEProcess*);
signals:
/**
@ -604,7 +604,7 @@ signals:
* should NOT be changed).
* @param address specifies the exact address of the PC or is empty.
*/
void activateFileLine(const QString& file, int lineNo, const DbgAddr& address);
void activateFileLine(const TQString& file, int lineNo, const DbgAddr& address);
/**
* This signal is emitted when a command that starts the inferior has

@ -4,23 +4,23 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <kapplication.h>
#include <klocale.h> /* i18n */
#include <kmessagebox.h>
#include <kconfig.h>
#include <tdeapplication.h>
#include <tdelocale.h> /* i18n */
#include <tdemessagebox.h>
#include <tdeconfig.h>
#include <kstatusbar.h>
#include <kiconloader.h>
#include <kstdaccel.h>
#include <tdestdaccel.h>
#include <kstdaction.h>
#include <kaction.h>
#include <kpopupmenu.h>
#include <kfiledialog.h>
#include <kprocess.h>
#include <tdeaction.h>
#include <tdepopupmenu.h>
#include <tdefiledialog.h>
#include <tdeprocess.h>
#include <kkeydialog.h>
#include <kanimwidget.h>
#include <kwin.h>
#include <qlistbox.h>
#include <qfileinfo.h>
#include <twin.h>
#include <tqlistbox.h>
#include <tqfileinfo.h>
#include "dbgmainwnd.h"
#include "debugger.h"
#include "commandids.h"
@ -41,7 +41,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
KDockMainWindow(0, name),
DebuggerMainWndBase()
{
QPixmap p;
TQPixmap p;
KDockWidget* dw0 = createDockWidget("Source", p, 0, i18n("Source"));
m_filesWindow = new WinStack(dw0, "files");
@ -52,7 +52,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
setMainDockWidget(dw0);
KDockWidget* dw1 = createDockWidget("Stack", p, 0, i18n("Stack"));
m_btWindow = new QListBox(dw1, "backtrace");
m_btWindow = new TQListBox(dw1, "backtrace");
dw1->setWidget(m_btWindow);
KDockWidget* dw2 = createDockWidget("Locals", p, 0, i18n("Locals"));
m_localVariables = new ExprWnd(dw2, i18n("Variable"), "locals");
@ -84,72 +84,72 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
initKAction();
initToolbar(); // kind of obsolete?
connect(m_watches, SIGNAL(addWatch()), SLOT(slotAddWatch()));
connect(m_watches, SIGNAL(deleteWatch()), m_debugger, SLOT(slotDeleteWatch()));
connect(m_watches, SIGNAL(textDropped(const QString&)), SLOT(slotAddWatch(const QString&)));
connect(&m_filesWindow->m_findDlg, SIGNAL(closed()), SLOT(updateUI()));
connect(m_filesWindow, SIGNAL(newFileLoaded()),
SLOT(slotNewFileLoaded()));
connect(m_filesWindow, SIGNAL(toggleBreak(const QString&,int,const DbgAddr&,bool)),
this, SLOT(slotToggleBreak(const QString&,int,const DbgAddr&,bool)));
connect(m_filesWindow, SIGNAL(enadisBreak(const QString&,int,const DbgAddr&)),
this, SLOT(slotEnaDisBreak(const QString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(activateFileLine(const QString&,int,const DbgAddr&)),
m_filesWindow, SLOT(activate(const QString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(executableUpdated()),
m_filesWindow, SLOT(reloadAllFiles()));
connect(m_debugger, SIGNAL(updatePC(const QString&,int,const DbgAddr&,int)),
m_filesWindow, SLOT(updatePC(const QString&,int,const DbgAddr&,int)));
connect(m_watches, TQ_SIGNAL(addWatch()), TQ_SLOT(slotAddWatch()));
connect(m_watches, TQ_SIGNAL(deleteWatch()), m_debugger, TQ_SLOT(slotDeleteWatch()));
connect(m_watches, TQ_SIGNAL(textDropped(const TQString&)), TQ_SLOT(slotAddWatch(const TQString&)));
connect(&m_filesWindow->m_findDlg, TQ_SIGNAL(closed()), TQ_SLOT(updateUI()));
connect(m_filesWindow, TQ_SIGNAL(newFileLoaded()),
TQ_SLOT(slotNewFileLoaded()));
connect(m_filesWindow, TQ_SIGNAL(toggleBreak(const TQString&,int,const DbgAddr&,bool)),
this, TQ_SLOT(slotToggleBreak(const TQString&,int,const DbgAddr&,bool)));
connect(m_filesWindow, TQ_SIGNAL(enadisBreak(const TQString&,int,const DbgAddr&)),
this, TQ_SLOT(slotEnaDisBreak(const TQString&,int,const DbgAddr&)));
connect(m_debugger, TQ_SIGNAL(activateFileLine(const TQString&,int,const DbgAddr&)),
m_filesWindow, TQ_SLOT(activate(const TQString&,int,const DbgAddr&)));
connect(m_debugger, TQ_SIGNAL(executableUpdated()),
m_filesWindow, TQ_SLOT(reloadAllFiles()));
connect(m_debugger, TQ_SIGNAL(updatePC(const TQString&,int,const DbgAddr&,int)),
m_filesWindow, TQ_SLOT(updatePC(const TQString&,int,const DbgAddr&,int)));
// value popup communication
connect(m_filesWindow, SIGNAL(initiateValuePopup(const QString&)),
m_debugger, SLOT(slotValuePopup(const QString&)));
connect(m_debugger, SIGNAL(valuePopup(const QString&)),
m_filesWindow, SLOT(slotShowValueTip(const QString&)));
connect(m_filesWindow, TQ_SIGNAL(initiateValuePopup(const TQString&)),
m_debugger, TQ_SLOT(slotValuePopup(const TQString&)));
connect(m_debugger, TQ_SIGNAL(valuePopup(const TQString&)),
m_filesWindow, TQ_SLOT(slotShowValueTip(const TQString&)));
// disassembling
connect(m_filesWindow, SIGNAL(disassemble(const QString&, int)),
m_debugger, SLOT(slotDisassemble(const QString&, int)));
connect(m_debugger, SIGNAL(disassembled(const QString&,int,const std::list<DisassembledCode>&)),
m_filesWindow, SLOT(slotDisassembled(const QString&,int,const std::list<DisassembledCode>&)));
connect(m_filesWindow, SIGNAL(moveProgramCounter(const QString&,int,const DbgAddr&)),
m_debugger, SLOT(setProgramCounter(const QString&,int,const DbgAddr&)));
connect(m_filesWindow, TQ_SIGNAL(disassemble(const TQString&, int)),
m_debugger, TQ_SLOT(slotDisassemble(const TQString&, int)));
connect(m_debugger, TQ_SIGNAL(disassembled(const TQString&,int,const std::list<DisassembledCode>&)),
m_filesWindow, TQ_SLOT(slotDisassembled(const TQString&,int,const std::list<DisassembledCode>&)));
connect(m_filesWindow, TQ_SIGNAL(moveProgramCounter(const TQString&,int,const DbgAddr&)),
m_debugger, TQ_SLOT(setProgramCounter(const TQString&,int,const DbgAddr&)));
// program stopped
connect(m_debugger, SIGNAL(programStopped()), SLOT(slotProgramStopped()));
connect(&m_backTimer, SIGNAL(timeout()), SLOT(slotBackTimer()));
connect(m_debugger, TQ_SIGNAL(programStopped()), TQ_SLOT(slotProgramStopped()));
connect(&m_backTimer, TQ_SIGNAL(timeout()), TQ_SLOT(slotBackTimer()));
// tab width
connect(this, SIGNAL(setTabWidth(int)), m_filesWindow, SIGNAL(setTabWidth(int)));
connect(this, TQ_SIGNAL(setTabWidth(int)), m_filesWindow, TQ_SIGNAL(setTabWidth(int)));
// connect breakpoint table
connect(m_bpTable, SIGNAL(activateFileLine(const QString&,int,const DbgAddr&)),
m_filesWindow, SLOT(activate(const QString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(updateUI()), m_bpTable, SLOT(updateUI()));
connect(m_debugger, SIGNAL(breakpointsChanged()), m_bpTable, SLOT(updateBreakList()));
connect(m_debugger, SIGNAL(breakpointsChanged()), m_bpTable, SLOT(updateUI()));
connect(m_debugger, SIGNAL(registersChanged(const std::list<RegisterInfo>&)),
m_registers, SLOT(updateRegisters(const std::list<RegisterInfo>&)));
connect(m_debugger, SIGNAL(memoryDumpChanged(const QString&, const std::list<MemoryDump>&)),
m_memoryWindow, SLOT(slotNewMemoryDump(const QString&, const std::list<MemoryDump>&)));
connect(m_debugger, SIGNAL(saveProgramSpecific(KConfigBase*)),
m_memoryWindow, SLOT(saveProgramSpecific(KConfigBase*)));
connect(m_debugger, SIGNAL(restoreProgramSpecific(KConfigBase*)),
m_memoryWindow, SLOT(restoreProgramSpecific(KConfigBase*)));
connect(m_bpTable, TQ_SIGNAL(activateFileLine(const TQString&,int,const DbgAddr&)),
m_filesWindow, TQ_SLOT(activate(const TQString&,int,const DbgAddr&)));
connect(m_debugger, TQ_SIGNAL(updateUI()), m_bpTable, TQ_SLOT(updateUI()));
connect(m_debugger, TQ_SIGNAL(breakpointsChanged()), m_bpTable, TQ_SLOT(updateBreakList()));
connect(m_debugger, TQ_SIGNAL(breakpointsChanged()), m_bpTable, TQ_SLOT(updateUI()));
connect(m_debugger, TQ_SIGNAL(registersChanged(const std::list<RegisterInfo>&)),
m_registers, TQ_SLOT(updateRegisters(const std::list<RegisterInfo>&)));
connect(m_debugger, TQ_SIGNAL(memoryDumpChanged(const TQString&, const std::list<MemoryDump>&)),
m_memoryWindow, TQ_SLOT(slotNewMemoryDump(const TQString&, const std::list<MemoryDump>&)));
connect(m_debugger, TQ_SIGNAL(saveProgramSpecific(TDEConfigBase*)),
m_memoryWindow, TQ_SLOT(saveProgramSpecific(TDEConfigBase*)));
connect(m_debugger, TQ_SIGNAL(restoreProgramSpecific(TDEConfigBase*)),
m_memoryWindow, TQ_SLOT(restoreProgramSpecific(TDEConfigBase*)));
// thread window
connect(m_debugger, SIGNAL(threadsChanged(const std::list<ThreadInfo>&)),
m_threads, SLOT(updateThreads(const std::list<ThreadInfo>&)));
connect(m_threads, SIGNAL(setThread(int)),
m_debugger, SLOT(setThread(int)));
connect(m_debugger, TQ_SIGNAL(threadsChanged(const std::list<ThreadInfo>&)),
m_threads, TQ_SLOT(updateThreads(const std::list<ThreadInfo>&)));
connect(m_threads, TQ_SIGNAL(setThread(int)),
m_debugger, TQ_SLOT(setThread(int)));
// view menu changes when docking state changes
connect(dockManager, SIGNAL(change()), SLOT(updateUI()));
connect(dockManager, TQ_SIGNAL(change()), TQ_SLOT(updateUI()));
// popup menu of the local variables window
connect(m_localVariables, SIGNAL(contextMenuRequested(QListViewItem*, const QPoint&, int)),
this, SLOT(slotLocalsPopup(QListViewItem*, const QPoint&)));
connect(m_localVariables, TQ_SIGNAL(contextMenuRequested(TQListViewItem*, const TQPoint&, int)),
this, TQ_SLOT(slotLocalsPopup(TQListViewItem*, const TQPoint&)));
restoreSettings(kapp->config());
restoreSettings(tdeApp->config());
updateUI();
m_bpTable->updateUI();
@ -157,7 +157,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
DebuggerMainWnd::~DebuggerMainWnd()
{
saveSettings(kapp->config());
saveSettings(tdeApp->config());
// must delete m_debugger early since it references our windows
delete m_debugger;
m_debugger = 0;
@ -176,42 +176,42 @@ DebuggerMainWnd::~DebuggerMainWnd()
void DebuggerMainWnd::initKAction()
{
// file menu
KAction* open = KStdAction::open(this, SLOT(slotFileOpen()),
TDEAction* open = KStdAction::open(this, TQ_SLOT(slotFileOpen()),
actionCollection());
open->setText(i18n("&Open Source..."));
KStdAction::close(m_filesWindow, SLOT(slotClose()), actionCollection());
(void)new KAction(i18n("&Reload Source"), "reload", 0, m_filesWindow,
SLOT(slotFileReload()), actionCollection(),
KStdAction::close(m_filesWindow, TQ_SLOT(slotClose()), actionCollection());
(void)new TDEAction(i18n("&Reload Source"), "reload", 0, m_filesWindow,
TQ_SLOT(slotFileReload()), actionCollection(),
"file_reload");
(void)new KAction(i18n("&Executable..."), "execopen", 0, this,
SLOT(slotFileExe()), actionCollection(),
(void)new TDEAction(i18n("&Executable..."), "execopen", 0, this,
TQ_SLOT(slotFileExe()), actionCollection(),
"file_executable");
m_recentExecAction = new KRecentFilesAction(i18n("Recent E&xecutables"), 0,
this, SLOT(slotRecentExec(const KURL&)),
m_recentExecAction = new TDERecentFilesAction(i18n("Recent E&xecutables"), 0,
this, TQ_SLOT(slotRecentExec(const KURL&)),
actionCollection(), "file_executable_recent");
(void)new KAction(i18n("&Core dump..."), 0, this, SLOT(slotFileCore()),
(void)new TDEAction(i18n("&Core dump..."), 0, this, TQ_SLOT(slotFileCore()),
actionCollection(), "file_core_dump");
KStdAction::quit(kapp, SLOT(closeAllWindows()), actionCollection());
KStdAction::quit(tdeApp, TQ_SLOT(closeAllWindows()), actionCollection());
// settings menu
(void)new KAction(i18n("This &Program..."), 0, this,
SLOT(slotFileProgSettings()), actionCollection(),
(void)new TDEAction(i18n("This &Program..."), 0, this,
TQ_SLOT(slotFileProgSettings()), actionCollection(),
"settings_program");
(void)new KAction(i18n("&Global Options..."), 0, this,
SLOT(slotFileGlobalSettings()), actionCollection(),
(void)new TDEAction(i18n("&Global Options..."), 0, this,
TQ_SLOT(slotFileGlobalSettings()), actionCollection(),
"settings_global");
KStdAction::keyBindings(this, SLOT(slotConfigureKeys()), actionCollection());
KStdAction::showStatusbar(this, SLOT(slotViewStatusbar()), actionCollection());
KStdAction::keyBindings(this, TQ_SLOT(slotConfigureKeys()), actionCollection());
KStdAction::showStatusbar(this, TQ_SLOT(slotViewStatusbar()), actionCollection());
// view menu
(void)new KToggleAction(i18n("&Find"), "find", CTRL+Key_F, m_filesWindow,
SLOT(slotViewFind()), actionCollection(),
(void)new TDEToggleAction(i18n("&Find"), "edit-find", CTRL+Key_F, m_filesWindow,
TQ_SLOT(slotViewFind()), actionCollection(),
"view_find");
(void)KStdAction::findNext(m_filesWindow, SLOT(slotFindForward()), actionCollection(), "view_findnext");
(void)KStdAction::findPrev(m_filesWindow, SLOT(slotFindBackward()), actionCollection(), "view_findprev");
(void)KStdAction::findNext(m_filesWindow, TQ_SLOT(slotFindForward()), actionCollection(), "view_findnext");
(void)KStdAction::findPrev(m_filesWindow, TQ_SLOT(slotFindBackward()), actionCollection(), "view_findprev");
i18n("Source &code");
struct { QString text; QWidget* w; QString id; } dw[] = {
struct { TQString text; TQWidget* w; TQString id; } dw[] = {
{ i18n("Stac&k"), m_btWindow, "view_stack"},
{ i18n("&Locals"), m_localVariables, "view_locals"},
{ i18n("&Watched expressions"), m_watches, "view_watched_expressions"},
@ -223,82 +223,82 @@ void DebuggerMainWnd::initKAction()
};
for (unsigned i = 0; i < sizeof(dw)/sizeof(dw[0]); i++) {
KDockWidget* d = dockParent(dw[i].w);
(void)new KToggleAction(dw[i].text, 0, d, SLOT(changeHideShowState()),
actionCollection(), dw[i].id);
(void)new TDEToggleAction(dw[i].text, 0, d, TQ_SLOT(changeHideShowState()),
actionCollection(), dw[i].id.latin1());
}
// execution menu
KAction* a = new KAction(i18n("&Run"), "pgmrun", Key_F5, m_debugger,
SLOT(programRun()), actionCollection(), "exec_run");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Step &into"), "pgmstep", Key_F8, m_debugger,
SLOT(programStep()), actionCollection(),
TDEAction* a = new TDEAction(i18n("&Run"), "pgmrun", Key_F5, m_debugger,
TQ_SLOT(programRun()), actionCollection(), "exec_run");
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Step &into"), "pgmstep", Key_F8, m_debugger,
TQ_SLOT(programStep()), actionCollection(),
"exec_step_into");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Step &over"), "pgmnext", Key_F10, m_debugger,
SLOT(programNext()), actionCollection(),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Step &over"), "pgmnext", Key_F10, m_debugger,
TQ_SLOT(programNext()), actionCollection(),
"exec_step_over");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Step o&ut"), "pgmfinish", Key_F6, m_debugger,
SLOT(programFinish()), actionCollection(),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Step o&ut"), "pgmfinish", Key_F6, m_debugger,
TQ_SLOT(programFinish()), actionCollection(),
"exec_step_out");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Run to &cursor"), Key_F7, this,
SLOT(slotExecUntil()), actionCollection(),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Run to &cursor"), Key_F7, this,
TQ_SLOT(slotExecUntil()), actionCollection(),
"exec_run_to_cursor");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Step i&nto by instruction"), "pgmstepi",
SHIFT+Key_F8, m_debugger, SLOT(programStepi()),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Step i&nto by instruction"), "pgmstepi",
SHIFT+Key_F8, m_debugger, TQ_SLOT(programStepi()),
actionCollection(), "exec_step_into_by_insn");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
a = new KAction(i18n("Step o&ver by instruction"), "pgmnexti",
SHIFT+Key_F10, m_debugger, SLOT(programNexti()),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new TDEAction(i18n("Step o&ver by instruction"), "pgmnexti",
SHIFT+Key_F10, m_debugger, TQ_SLOT(programNexti()),
actionCollection(), "exec_step_over_by_insn");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground()));
(void)new KAction(i18n("&Program counter to current line"), 0,
m_filesWindow, SLOT(slotMoveProgramCounter()),
connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
(void)new TDEAction(i18n("&Program counter to current line"), 0,
m_filesWindow, TQ_SLOT(slotMoveProgramCounter()),
actionCollection(), "exec_movepc");
(void)new KAction(i18n("&Break"), 0, m_debugger,
SLOT(programBreak()), actionCollection(),
(void)new TDEAction(i18n("&Break"), 0, m_debugger,
TQ_SLOT(programBreak()), actionCollection(),
"exec_break");
(void)new KAction(i18n("&Kill"), 0, m_debugger,
SLOT(programKill()), actionCollection(),
(void)new TDEAction(i18n("&Kill"), 0, m_debugger,
TQ_SLOT(programKill()), actionCollection(),
"exec_kill");
(void)new KAction(i18n("Re&start"), 0, m_debugger,
SLOT(programRunAgain()), actionCollection(),
(void)new TDEAction(i18n("Re&start"), 0, m_debugger,
TQ_SLOT(programRunAgain()), actionCollection(),
"exec_restart");
(void)new KAction(i18n("A&ttach..."), 0, this,
SLOT(slotExecAttach()), actionCollection(),
(void)new TDEAction(i18n("A&ttach..."), 0, this,
TQ_SLOT(slotExecAttach()), actionCollection(),
"exec_attach");
(void)new KAction(i18n("&Arguments..."), 0, this,
SLOT(slotExecArgs()), actionCollection(),
(void)new TDEAction(i18n("&Arguments..."), 0, this,
TQ_SLOT(slotExecArgs()), actionCollection(),
"exec_arguments");
// breakpoint menu
(void)new KAction(i18n("Set/Clear &breakpoint"), "brkpt", Key_F9,
m_filesWindow, SLOT(slotBrkptSet()), actionCollection(),
(void)new TDEAction(i18n("Set/Clear &breakpoint"), "brkpt", Key_F9,
m_filesWindow, TQ_SLOT(slotBrkptSet()), actionCollection(),
"breakpoint_set");
(void)new KAction(i18n("Set &temporary breakpoint"), SHIFT+Key_F9,
m_filesWindow, SLOT(slotBrkptSetTemp()), actionCollection(),
(void)new TDEAction(i18n("Set &temporary breakpoint"), SHIFT+Key_F9,
m_filesWindow, TQ_SLOT(slotBrkptSetTemp()), actionCollection(),
"breakpoint_set_temporary");
(void)new KAction(i18n("&Enable/Disable breakpoint"), CTRL+Key_F9,
m_filesWindow, SLOT(slotBrkptEnable()), actionCollection(),
(void)new TDEAction(i18n("&Enable/Disable breakpoint"), CTRL+Key_F9,
m_filesWindow, TQ_SLOT(slotBrkptEnable()), actionCollection(),
"breakpoint_enable");
// only in popup menus
(void)new KAction(i18n("Watch Expression"), 0, this,
SLOT(slotLocalsToWatch()), actionCollection(),
(void)new TDEAction(i18n("Watch Expression"), 0, this,
TQ_SLOT(slotLocalsToWatch()), actionCollection(),
"watch_expression");
(void)new KAction(i18n("Edit Value"), Key_F2, this,
SLOT(slotEditValue()), actionCollection(),
(void)new TDEAction(i18n("Edit Value"), Key_F2, this,
TQ_SLOT(slotEditValue()), actionCollection(),
"edit_value");
// all actions force an UI update
QValueList<KAction*> actions = actionCollection()->actions();
QValueList<KAction*>::Iterator it = actions.begin();
TQValueList<TDEAction*> actions = actionCollection()->actions();
TQValueList<TDEAction*>::Iterator it = actions.begin();
for (; it != actions.end(); ++it) {
connect(*it, SIGNAL(activated()), this, SLOT(updateUI()));
connect(*it, TQ_SIGNAL(activated()), this, TQ_SLOT(updateUI()));
}
createGUI("kdbgui.rc");
@ -306,9 +306,9 @@ void DebuggerMainWnd::initKAction()
void DebuggerMainWnd::initToolbar()
{
KToolBar* toolbar = toolBar("mainToolBar");
TDEToolBar* toolbar = toolBar("mainToolBar");
toolbar->insertAnimatedWidget(ID_STATUS_BUSY,
actionCollection()->action("exec_break"), SLOT(activate()),
actionCollection()->action("exec_break"), TQ_SLOT(activate()),
"pulse", -1);
toolbar->alignItemRight(ID_STATUS_BUSY, true);
m_animRunning = false;
@ -333,20 +333,20 @@ bool DebuggerMainWnd::queryClose()
// instance properties
void DebuggerMainWnd::saveProperties(KConfig* config)
void DebuggerMainWnd::saveProperties(TDEConfig* config)
{
// session management
QString executable = "";
TQString executable = "";
if (m_debugger != 0) {
executable = m_debugger->executable();
}
config->writeEntry("executable", executable);
}
void DebuggerMainWnd::readProperties(KConfig* config)
void DebuggerMainWnd::readProperties(TDEConfig* config)
{
// session management
QString execName = config->readEntry("executable");
TQString execName = config->readEntry("executable");
TRACE("readProperties: executable=" + execName);
if (!execName.isEmpty()) {
@ -358,25 +358,25 @@ const char WindowGroup[] = "Windows";
const char RecentExecutables[] = "RecentExecutables";
const char LastSession[] = "LastSession";
void DebuggerMainWnd::saveSettings(KConfig* config)
void DebuggerMainWnd::saveSettings(TDEConfig* config)
{
KConfigGroupSaver g(config, WindowGroup);
TDEConfigGroupSaver g(config, WindowGroup);
writeDockConfig(config);
fixDockConfig(config, false); // downgrade
m_recentExecAction->saveEntries(config, RecentExecutables);
KConfigGroupSaver g2(config, LastSession);
TDEConfigGroupSaver g2(config, LastSession);
config->writeEntry("Width0Locals", m_localVariables->columnWidth(0));
config->writeEntry("Width0Watches", m_watches->columnWidth(0));
DebuggerMainWndBase::saveSettings(config);
}
void DebuggerMainWnd::restoreSettings(KConfig* config)
void DebuggerMainWnd::restoreSettings(TDEConfig* config)
{
KConfigGroupSaver g(config, WindowGroup);
TDEConfigGroupSaver g(config, WindowGroup);
fixDockConfig(config, true); // upgrade
readDockConfig(config);
@ -384,7 +384,7 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
// Workaround bug #87787: KDockManager stores the titles of the KDockWidgets
// in the config files, although they are localized:
// If the user changes the language, the titles remain in the previous language.
struct { QString text; QWidget* w; } dw[] = {
struct { TQString text; TQWidget* w; } dw[] = {
{ i18n("Stack"), m_btWindow },
{ i18n("Locals"), m_localVariables },
{ i18n("Watches"), m_watches },
@ -399,13 +399,13 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
KDockWidget* w = dockParent(dw[i].w);
w->setTabPageLabel(dw[i].text);
// this actually changes the captions in the tabs:
QEvent ev(QEvent::CaptionChange);
TQEvent ev(TQEvent::CaptionChange);
w->event(&ev);
}
m_recentExecAction->loadEntries(config, RecentExecutables);
KConfigGroupSaver g2(config, LastSession);
TDEConfigGroupSaver g2(config, LastSession);
int w;
w = config->readNumEntry("Width0Locals", -1);
if (w >= 0 && w < 30000)
@ -421,8 +421,8 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
void DebuggerMainWnd::updateUI()
{
KToggleAction* viewFind =
static_cast<KToggleAction*>(actionCollection()->action("view_find"));
TDEToggleAction* viewFind =
static_cast<TDEToggleAction*>(actionCollection()->action("view_find"));
viewFind->setChecked(m_filesWindow->m_findDlg.isVisible());
viewFind->setEnabled(m_filesWindow->hasWindows());
actionCollection()->action("breakpoint_set")->setEnabled(m_debugger->canChangeBreakpoints());
@ -473,7 +473,7 @@ void DebuggerMainWnd::updateUI()
}
// update statusbar
QString newStatus;
TQString newStatus;
if (m_debugger->isProgramActive())
newStatus = m_statusActive;
if (newStatus != m_lastActiveStatusText) {
@ -482,10 +482,10 @@ void DebuggerMainWnd::updateUI()
}
}
void DebuggerMainWnd::dockUpdateHelper(QString action, QWidget* w)
void DebuggerMainWnd::dockUpdateHelper(TQString action, TQWidget* w)
{
KToggleAction* item =
static_cast<KToggleAction*>(actionCollection()->action(action));
TDEToggleAction* item =
static_cast<TDEToggleAction*>(actionCollection()->action(action.latin1()));
bool canChange = canChangeDockVisibility(w);
item->setEnabled(canChange);
item->setChecked(canChange && isDockVisible(w));
@ -499,12 +499,12 @@ void DebuggerMainWnd::updateLineItems()
void DebuggerMainWnd::slotAddWatch()
{
if (m_debugger != 0) {
QString t = m_watches->watchText();
TQString t = m_watches->watchText();
m_debugger->addWatch(t);
}
}
void DebuggerMainWnd::slotAddWatch(const QString& text)
void DebuggerMainWnd::slotAddWatch(const TQString& text)
{
if (m_debugger != 0) {
m_debugger->addWatch(text);
@ -518,7 +518,7 @@ void DebuggerMainWnd::slotNewFileLoaded()
m_filesWindow->updateLineItems(m_debugger);
}
KDockWidget* DebuggerMainWnd::dockParent(QWidget* w)
KDockWidget* DebuggerMainWnd::dockParent(TQWidget* w)
{
while ((w = w->parentWidget()) != 0) {
if (w->isA("KDockWidget"))
@ -527,20 +527,20 @@ KDockWidget* DebuggerMainWnd::dockParent(QWidget* w)
return 0;
}
bool DebuggerMainWnd::isDockVisible(QWidget* w)
bool DebuggerMainWnd::isDockVisible(TQWidget* w)
{
KDockWidget* d = dockParent(w);
return d != 0 && d->mayBeHide();
}
bool DebuggerMainWnd::canChangeDockVisibility(QWidget* w)
bool DebuggerMainWnd::canChangeDockVisibility(TQWidget* w)
{
KDockWidget* d = dockParent(w);
return d != 0 && (d->mayBeHide() || d->mayBeShow());
}
// upgrades the entries from version 0.0.4 to 0.0.5 and back
void DebuggerMainWnd::fixDockConfig(KConfig* c, bool upgrade)
void DebuggerMainWnd::fixDockConfig(TDEConfig* c, bool upgrade)
{
static const char dockGroup[] = "dock_setting_default";
if (!c->hasGroup(dockGroup))
@ -550,16 +550,16 @@ void DebuggerMainWnd::fixDockConfig(KConfig* c, bool upgrade)
static const char newVersion[] = "0.0.5";
const char* from = upgrade ? oldVersion : newVersion;
const char* to = upgrade ? newVersion : oldVersion;
QMap<QString,QString> e = c->entryMap(dockGroup);
TQMap<TQString,TQString> e = c->entryMap(dockGroup);
if (e["Version"] != from)
return;
KConfigGroupSaver g(c, dockGroup);
TDEConfigGroupSaver g(c, dockGroup);
c->writeEntry("Version", to);
TRACE(upgrade ? "upgrading dockconfig" : "downgrading dockconfig");
// turn all orientation entries from 0 to 1 and from 1 to 0
QMap<QString,QString>::Iterator i;
TQMap<TQString,TQString>::Iterator i;
for (i = e.begin(); i != e.end(); ++i)
{
if (i.key().right(12) == ":orientation") {
@ -577,15 +577,15 @@ TTYWindow* DebuggerMainWnd::ttyWindow()
return m_ttyWindow;
}
bool DebuggerMainWnd::debugProgram(const QString& exe, const QString& lang)
bool DebuggerMainWnd::debugProgram(const TQString& exe, const TQString& lang)
{
// check the file name
QFileInfo fi(exe);
TQFileInfo fi(exe);
bool success = fi.isFile();
if (!success)
{
QString msg = i18n("`%1' is not a file or does not exist");
TQString msg = i18n("`%1' is not a file or does not exist");
KMessageBox::sorry(this, msg.arg(exe));
}
else
@ -602,7 +602,7 @@ bool DebuggerMainWnd::debugProgram(const QString& exe, const QString& lang)
m_filesWindow->setExtraDirectory(m_lastDirectory);
// set caption to basename part of executable
QString caption = fi.fileName();
TQString caption = fi.fileName();
setCaption(caption);
}
else
@ -634,7 +634,7 @@ void DebuggerMainWnd::slotDebuggerStarting()
DebuggerMainWndBase::slotDebuggerStarting();
}
void DebuggerMainWnd::slotToggleBreak(const QString& fileName, int lineNo,
void DebuggerMainWnd::slotToggleBreak(const TQString& fileName, int lineNo,
const DbgAddr& address, bool temp)
{
// lineNo is zero-based
@ -643,7 +643,7 @@ void DebuggerMainWnd::slotToggleBreak(const QString& fileName, int lineNo,
}
}
void DebuggerMainWnd::slotEnaDisBreak(const QString& fileName, int lineNo,
void DebuggerMainWnd::slotEnaDisBreak(const TQString& fileName, int lineNo,
const DbgAddr& address)
{
// lineNo is zero-based
@ -652,12 +652,12 @@ void DebuggerMainWnd::slotEnaDisBreak(const QString& fileName, int lineNo,
}
}
QString DebuggerMainWnd::createOutputWindow()
TQString DebuggerMainWnd::createOutputWindow()
{
QString tty = DebuggerMainWndBase::createOutputWindow();
TQString tty = DebuggerMainWndBase::createOutputWindow();
if (!tty.isEmpty()) {
connect(m_outputTermProc, SIGNAL(processExited(KProcess*)),
SLOT(slotTermEmuExited()));
connect(m_outputTermProc, TQ_SIGNAL(processExited(TDEProcess*)),
TQ_SLOT(slotTermEmuExited()));
}
return tty;
}
@ -692,13 +692,13 @@ void DebuggerMainWnd::slotBackTimer()
void DebuggerMainWnd::slotRecentExec(const KURL& url)
{
QString exe = url.path();
TQString exe = url.path();
debugProgram(exe, "");
}
QString DebuggerMainWnd::makeSourceFilter()
TQString DebuggerMainWnd::makeSourceFilter()
{
QString f;
TQString f;
f = m_sourceFilter + " " + m_headerFilter + i18n("|All source files\n");
f += m_sourceFilter + i18n("|Source files\n");
f += m_headerFilter + i18n("|Header files\n");
@ -709,10 +709,10 @@ QString DebuggerMainWnd::makeSourceFilter()
/*
* Pop up the context menu in the locals window
*/
void DebuggerMainWnd::slotLocalsPopup(QListViewItem*, const QPoint& pt)
void DebuggerMainWnd::slotLocalsPopup(TQListViewItem*, const TQPoint& pt)
{
QPopupMenu* popup =
static_cast<QPopupMenu*>(factory()->container("popup_locals", this));
TQPopupMenu* popup =
static_cast<TQPopupMenu*>(factory()->container("popup_locals", this));
if (popup == 0) {
return;
}
@ -731,7 +731,7 @@ void DebuggerMainWnd::slotLocalsToWatch()
VarTree* item = m_localVariables->selectedItem();
if (item != 0 && m_debugger != 0) {
QString text = item->computeExpr();
TQString text = item->computeExpr();
m_debugger->addWatch(text);
}
}
@ -742,7 +742,7 @@ void DebuggerMainWnd::slotLocalsToWatch()
void DebuggerMainWnd::slotEditValue()
{
// does one of the value trees have the focus
QWidget* f = kapp->focusWidget();
TQWidget* f = tdeApp->focusWidget();
ExprWnd* wnd;
if (f == m_localVariables) {
wnd = m_localVariables;
@ -763,7 +763,7 @@ void DebuggerMainWnd::slotEditValue()
{
TRACE("edit value");
// determine the text to edit
QString text = m_debugger->driver()->editableValue(expr);
TQString text = m_debugger->driver()->editableValue(expr);
wnd->editValue(expr, text);
}
}
@ -772,10 +772,10 @@ void DebuggerMainWnd::slotFileOpen()
{
// start browsing in the active file's directory
// fall back to last used directory (executable)
QString dir = m_lastDirectory;
QString fileName = m_filesWindow->activeFileName();
TQString dir = m_lastDirectory;
TQString fileName = m_filesWindow->activeFileName();
if (!fileName.isEmpty()) {
QFileInfo fi(fileName);
TQFileInfo fi(fileName);
dir = fi.dirPath();
}
@ -785,7 +785,7 @@ void DebuggerMainWnd::slotFileOpen()
if (!fileName.isEmpty())
{
QFileInfo fi(fileName);
TQFileInfo fi(fileName);
m_lastDirectory = fi.dirPath();
m_filesWindow->setExtraDirectory(m_lastDirectory);
m_filesWindow->activateFile(fileName);
@ -797,7 +797,7 @@ void DebuggerMainWnd::slotFileExe()
if (m_debugger->isIdle())
{
// open a new executable
QString executable = myGetFileName(i18n("Select the executable to debug"),
TQString executable = myGetFileName(i18n("Select the executable to debug"),
m_lastDirectory, 0, this);
if (executable.isEmpty())
return;
@ -810,7 +810,7 @@ void DebuggerMainWnd::slotFileCore()
{
if (m_debugger->canStart())
{
QString corefile = myGetFileName(i18n("Select core dump"),
TQString corefile = myGetFileName(i18n("Select core dump"),
m_lastDirectory, 0, this);
if (!corefile.isEmpty()) {
m_debugger->useCoreFile(corefile, false);
@ -838,7 +838,7 @@ void DebuggerMainWnd::slotExecUntil()
{
if (m_debugger != 0)
{
QString file;
TQString file;
int lineNo;
if (m_filesWindow->activeLine(file, lineNo))
m_debugger->runUntil(file, lineNo);
@ -850,7 +850,7 @@ void DebuggerMainWnd::slotExecAttach()
#ifdef PS_COMMAND
ProcAttachPS dlg(this);
// seed filter with executable name
QFileInfo fi = m_debugger->executable();
TQFileInfo fi = m_debugger->executable();
dlg.filterEdit->setText(fi.fileName());
#else
ProcAttach dlg(this);

@ -7,15 +7,15 @@
#ifndef DBGMAINWND_H
#define DBGMAINWND_H
#include <qtimer.h>
#include <tqtimer.h>
#include <kdockwidget.h>
#include "mainwndbase.h"
#include "regwnd.h"
class KRecentFilesAction;
class TDERecentFilesAction;
class WinStack;
class QListBox;
class QCString;
class TQListBox;
class TQCString;
class ExprWnd;
class BreakpointTable;
class ThreadList;
@ -24,27 +24,27 @@ struct DbgAddr;
class DebuggerMainWnd : public KDockMainWindow, public DebuggerMainWndBase
{
Q_OBJECT
TQ_OBJECT
public:
DebuggerMainWnd(const char* name);
~DebuggerMainWnd();
bool debugProgram(const QString& exe, const QString& lang);
bool debugProgram(const TQString& exe, const TQString& lang);
protected:
// session properties
virtual void saveProperties(KConfig*);
virtual void readProperties(KConfig*);
virtual void saveProperties(TDEConfig*);
virtual void readProperties(TDEConfig*);
// settings
void saveSettings(KConfig*);
void restoreSettings(KConfig*);
void saveSettings(TDEConfig*);
void restoreSettings(TDEConfig*);
void initToolbar();
void initKAction();
// view windows
WinStack* m_filesWindow;
QListBox* m_btWindow;
TQListBox* m_btWindow;
ExprWnd* m_localVariables;
WatchWindow* m_watches;
RegisterView* m_registers;
@ -53,27 +53,27 @@ protected:
ThreadList* m_threads;
MemoryWindow* m_memoryWindow;
QTimer m_backTimer;
TQTimer m_backTimer;
// recent execs in File menu
KRecentFilesAction* m_recentExecAction;
TDERecentFilesAction* m_recentExecAction;
protected:
virtual bool queryClose();
virtual TTYWindow* ttyWindow();
virtual QString createOutputWindow();
virtual TQString createOutputWindow();
KDockWidget* dockParent(QWidget* w);
bool isDockVisible(QWidget* w);
bool canChangeDockVisibility(QWidget* w);
void dockUpdateHelper(QString action, QWidget* w);
void fixDockConfig(KConfig* c, bool upgrade);
KDockWidget* dockParent(TQWidget* w);
bool isDockVisible(TQWidget* w);
bool canChangeDockVisibility(TQWidget* w);
void dockUpdateHelper(TQString action, TQWidget* w);
void fixDockConfig(TDEConfig* c, bool upgrade);
QString makeSourceFilter();
TQString makeSourceFilter();
// to avoid flicker when the status bar is updated,
// we store the last string that we put there
QString m_lastActiveStatusText;
TQString m_lastActiveStatusText;
bool m_animRunning;
signals:
@ -83,17 +83,17 @@ public slots:
virtual void updateUI();
virtual void updateLineItems();
void slotAddWatch();
void slotAddWatch(const QString& text);
void slotAddWatch(const TQString& text);
void slotNewFileLoaded();
void slotNewStatusMsg();
void slotDebuggerStarting();
void slotToggleBreak(const QString&, int, const DbgAddr&, bool);
void slotEnaDisBreak(const QString&, int, const DbgAddr&);
void slotToggleBreak(const TQString&, int, const DbgAddr&, bool);
void slotEnaDisBreak(const TQString&, int, const DbgAddr&);
void slotTermEmuExited();
void slotProgramStopped();
void slotBackTimer();
void slotRecentExec(const KURL& url);
void slotLocalsPopup(QListViewItem*, const QPoint& pt);
void slotLocalsPopup(TQListViewItem*, const TQPoint& pt);
void slotLocalsToWatch();
void slotEditValue();

File diff suppressed because it is too large Load Diff

@ -7,9 +7,9 @@
#ifndef DEBUGGER_H
#define DEBUGGER_H
#include <qtimer.h>
#include <qdict.h>
#include <qstringlist.h>
#include <tqtimer.h>
#include <tqdict.h>
#include <tqstringlist.h>
#include "envvar.h"
#include "exprwnd.h" /* some compilers require this */
@ -22,10 +22,10 @@ class VarTree;
struct ExprValue;
class ProgramTypeTable;
class KTreeViewItem;
class KConfig;
class KConfigBase;
class TDEConfig;
class TDEConfigBase;
class ProgramConfig;
class QListBox;
class TQListBox;
class RegisterInfo;
class ThreadInfo;
class DebuggerDriver;
@ -34,17 +34,17 @@ class Breakpoint;
struct DisassembledCode;
struct MemoryDump;
struct DbgAddr;
class KProcess;
class TDEProcess;
class KDebugger : public QObject
class KDebugger : public TQObject
{
Q_OBJECT
TQ_OBJECT
public:
KDebugger(QWidget* parent, /* will be used as the parent for dialogs */
KDebugger(TQWidget* parent, /* will be used as the parent for dialogs */
ExprWnd* localVars,
ExprWnd* watchVars,
QListBox* backtrace);
TQListBox* backtrace);
~KDebugger();
/**
@ -55,7 +55,7 @@ public:
*
* @return false if an error occurs.
*/
bool debugProgram(const QString& executable,
bool debugProgram(const TQString& executable,
DebuggerDriver* driver);
/**
@ -63,30 +63,30 @@ public:
* @param batch tells whether the core file was given on the
* command line.
*/
void useCoreFile(QString corefile, bool batch);
void useCoreFile(TQString corefile, bool batch);
/**
* Overrides the program argument in the per-program config
* with a new value.
*/
void overrideProgramArguments(const QString& args);
void overrideProgramArguments(const TQString& args);
/**
* Uses the specified pid to attach to the active program.
*/
void setAttachPid(const QString& pid);
void setAttachPid(const TQString& pid);
/**
* Attaches to the specified process and debugs it.
*/
void attachProgram(const QString& pid);
void attachProgram(const TQString& pid);
/**
* Returns the file name of the per-program config file for the
* specified program.
*/
static QString getConfigForExe(const QString& exe);
static TQString getConfigForExe(const TQString& exe);
/**
* The driver name entry in the per-program config file.
@ -147,24 +147,24 @@ public slots:
* Moves the program counter to the specified line.
* If an address is given, it is moved to the address.
*/
void setProgramCounter(const QString&, int, const DbgAddr&);
void setProgramCounter(const TQString&, int, const DbgAddr&);
public:
/**
* Queries the user for program arguments.
*/
void programArgs(QWidget* parent);
void programArgs(TQWidget* parent);
/**
* Queries the user for program settings: Debugger command, terminal
* emulator.
*/
void programSettings(QWidget* parent);
void programSettings(TQWidget* parent);
/**
* Setup remote debugging device
*/
void setRemoteDevice(const QString& remoteDevice) { m_remoteDevice = remoteDevice; }
void setRemoteDevice(const TQString& remoteDevice) { m_remoteDevice = remoteDevice; }
/**
* Run the debuggee until the specified line in the specified file is
@ -173,7 +173,7 @@ public:
* @return false if the command was not executed, e.g. because the
* debuggee is running at the moment.
*/
bool runUntil(const QString& fileName, int lineNo);
bool runUntil(const TQString& fileName, int lineNo);
/**
* Set a breakpoint.
@ -185,7 +185,7 @@ public:
* @return false if the command was not executed, e.g. because the
* debuggee is running at the moment.
*/
bool setBreakpoint(QString fileName, int lineNo,
bool setBreakpoint(TQString fileName, int lineNo,
const DbgAddr& address, bool temporary);
/**
@ -205,7 +205,7 @@ public:
* @return false if the command was not executed, e.g. because the
* debuggee is running at the moment.
*/
bool enableDisableBreakpoint(QString fileName, int lineNo,
bool enableDisableBreakpoint(TQString fileName, int lineNo,
const DbgAddr& address);
/**
@ -235,7 +235,7 @@ public:
* debuggee is running at the moment.
*/
bool conditionalBreakpoint(int id,
const QString& condition,
const TQString& condition,
int ignoreCount)
{ return conditionalBreakpoint(breakpointById(id), condition, ignoreCount); }
@ -258,12 +258,12 @@ public:
/**
* Add a watch expression.
*/
void addWatch(const QString& expr);
void addWatch(const TQString& expr);
/**
* Retrieves the current status message.
*/
const QString& statusMessage() const { return m_statusMessage; }
const TQString& statusMessage() const { return m_statusMessage; }
/**
* Is the debugger ready to receive another high-priority command?
@ -295,7 +295,7 @@ public:
BrkptROIterator breakpointsBegin() const { return m_brkpts.begin(); }
BrkptROIterator breakpointsEnd() const { return m_brkpts.end(); }
const QString& executable() const { return m_executable; }
const TQString& executable() const { return m_executable; }
/**
* Terminal emulation level.
@ -312,19 +312,19 @@ public:
TTYLevel ttyLevel() const { return m_ttyLevel; }
/** Sets the terminal that is to be used by the debugger. */
void setTerminal(const QString& term) { m_inferiorTerminal = term; }
void setTerminal(const TQString& term) { m_inferiorTerminal = term; }
/** Returns the debugger driver. */
DebuggerDriver* driver() { return m_d; }
/** Returns the pid that the debugger is currently attached to. */
const QString& attachedPid() const { return m_attachedPid; }
const TQString& attachedPid() const { return m_attachedPid; }
/**
* The memory at that the expression evaluates to is watched. Can be
* empty. Triggers a redisplay even if the expression did not change.
*/
void setMemoryExpression(const QString& memexpr);
void setMemoryExpression(const TQString& memexpr);
/**
* Sets how the watched memory location is displayed.
@ -333,20 +333,20 @@ public:
void setMemoryFormat(unsigned format) { m_memoryFormat = format; }
// settings
void saveSettings(KConfig*);
void restoreSettings(KConfig*);
void saveSettings(TDEConfig*);
void restoreSettings(TDEConfig*);
protected:
QString m_inferiorTerminal;
QString m_debuggerCmd; /* per-program setting */
TQString m_inferiorTerminal;
TQString m_debuggerCmd; /* per-program setting */
TTYLevel m_ttyLevel; /* level of terminal emulation */
bool startDriver();
void stopDriver();
void writeCommand();
QStringList m_watchEvalExpr; /* exprs to evaluate for watch window */
TQStringList m_watchEvalExpr; /* exprs to evaluate for watch window */
std::list<Breakpoint> m_brkpts;
QString m_memoryExpression; /* memory location to watch */
TQString m_memoryExpression; /* memory location to watch */
unsigned m_memoryFormat; /* how that output should look */
protected slots:
@ -354,9 +354,9 @@ protected slots:
protected:
void handleRunCommands(const char* output);
void updateAllExprs();
void updateProgEnvironment(const QString& args, const QString& wd,
const QDict<EnvVar>& newVars,
const QStringList& newOptions);
void updateProgEnvironment(const TQString& args, const TQString& wd,
const TQDict<EnvVar>& newVars,
const TQStringList& newOptions);
void parseLocals(const char* output, std::list<ExprValue*>& newVars);
void handleLocals(const char* output);
bool handlePrint(CmdQueueItem* cmd, const char* output);
@ -380,10 +380,10 @@ protected:
void determineType(ExprWnd* wnd, VarTree* var);
void queueMemoryDump(bool immediate);
CmdQueueItem* loadCoreFile();
void openProgramConfig(const QString& name);
void openProgramConfig(const TQString& name);
typedef std::list<Breakpoint>::iterator BrkptIterator;
BrkptIterator breakpointByFilePos(QString file, int lineNo,
BrkptIterator breakpointByFilePos(TQString file, int lineNo,
const DbgAddr& address);
BrkptIterator breakpointById(int id);
CmdQueueItem* executeBreakpoint(const Breakpoint* bp, bool queueOnly);
@ -395,44 +395,44 @@ protected:
bool enableDisableBreakpoint(BrkptIterator bp);
bool deleteBreakpoint(BrkptIterator bp);
bool conditionalBreakpoint(BrkptIterator bp,
const QString& condition,
const TQString& condition,
int ignoreCount);
bool m_haveExecutable; /* has an executable been specified */
bool m_programActive; /* is the program active (possibly halting in a brkpt)? */
bool m_programRunning; /* is the program executing (not stopped)? */
bool m_sharedLibsListed; /* do we know the shared libraries loaded by the prog? */
QString m_executable;
QString m_corefile;
QString m_attachedPid; /* user input of attaching to pid */
QString m_programArgs;
QString m_remoteDevice;
QString m_programWD; /* working directory of gdb */
QDict<EnvVar> m_envVars; /* environment variables set by user */
QStringList m_boolOptions; /* boolean options */
QStringList m_sharedLibs; /* shared libraries used by program */
TQString m_executable;
TQString m_corefile;
TQString m_attachedPid; /* user input of attaching to pid */
TQString m_programArgs;
TQString m_remoteDevice;
TQString m_programWD; /* working directory of gdb */
TQDict<EnvVar> m_envVars; /* environment variables set by user */
TQStringList m_boolOptions; /* boolean options */
TQStringList m_sharedLibs; /* shared libraries used by program */
ProgramTypeTable* m_typeTable; /* known types used by the program */
ProgramConfig* m_programConfig; /* program-specific settings (brkpts etc) */
void saveProgramSettings();
void restoreProgramSettings();
QString readDebuggerCmd();
TQString readDebuggerCmd();
// debugger process
DebuggerDriver* m_d;
bool m_explicitKill; /* whether we are killing gdb ourselves */
QString m_statusMessage;
TQString m_statusMessage;
protected slots:
void gdbExited(KProcess*);
void gdbExited(TDEProcess*);
void slotInferiorRunning();
void backgroundUpdate();
void gotoFrame(int);
void slotExpanding(QListViewItem*);
void slotExpanding(TQListViewItem*);
void slotDeleteWatch();
void slotValuePopup(const QString&);
void slotDisassemble(const QString&, int);
void slotValueEdited(VarTree*, const QString&);
void slotValuePopup(const TQString&);
void slotDisassemble(const TQString&, int);
void slotValueEdited(VarTree*, const TQString&);
public slots:
void setThread(int);
void shutdown();
@ -457,7 +457,7 @@ signals:
* should NOT be changed).
* @param address specifies the exact address of the PC or is empty.
*/
void activateFileLine(const QString& file, int lineNo, const DbgAddr& address);
void activateFileLine(const TQString& file, int lineNo, const DbgAddr& address);
/**
* This signal indicates that the program counter has changed.
@ -472,7 +472,7 @@ signals:
* where a function was called); the latter cases should be indicated
* differently in the source window.
*/
void updatePC(const QString& filename, int lineNo,
void updatePC(const TQString& filename, int lineNo,
const DbgAddr& address, int frameNo);
/**
@ -511,13 +511,13 @@ signals:
/**
* Indicates that the value for a value popup is ready.
*/
void valuePopup(const QString&);
void valuePopup(const TQString&);
/**
* Provides the disassembled code of the location given by file and
* line number (zero-based).
*/
void disassembled(const QString& file, int line, const std::list<DisassembledCode>& code);
void disassembled(const TQString& file, int line, const std::list<DisassembledCode>& code);
/**
* Indicates that the program has stopped for any reason: by a
@ -531,26 +531,26 @@ signals:
* @param msg is an error message or empty
* @param memdump is the memory dump
*/
void memoryDumpChanged(const QString&, const std::list<MemoryDump>&);
void memoryDumpChanged(const TQString&, const std::list<MemoryDump>&);
/**
* Gives other objects a chance to save program specific settings.
*/
void saveProgramSpecific(KConfigBase* config);
void saveProgramSpecific(TDEConfigBase* config);
/**
* Gives other objects a chance to restore program specific settings.
*/
void restoreProgramSpecific(KConfigBase* config);
void restoreProgramSpecific(TDEConfigBase* config);
protected:
ExprWnd& m_localVariables;
ExprWnd& m_watchVariables;
QListBox& m_btWindow;
TQListBox& m_btWindow;
// implementation helpers
protected:
QWidget* parentWidget() { return static_cast<QWidget*>(parent()); }
TQWidget* parentWidget() { return static_cast<TQWidget*>(parent()); }
};
#endif // DEBUGGER_H

@ -1,3 +0,0 @@
# add here all the languages, you have docu for
SUBDIRS = de en ru

@ -1,27 +0,0 @@
html_DATA = \
argspwdenv.html \
breakptlist.html \
globaloptions.html \
howdoi.html \
localvars.html \
memory.html \
pgmoutput.html \
pgmsettings.html \
registers.html \
sourcecode.html \
stack.html \
threads.html \
tips.html \
watches.html \
index.html
htmldir = $(kde_htmldir)/de/kdbg
EXTRA_DIST = $(html_DATA)
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(htmldir)
cd $(DESTDIR)$(htmldir) && ln -s -f ../../en/kdbg/types.html .
uninstall-local:
-rm -f $(DESTDIR)$(htmldir)/types.html

@ -1,23 +0,0 @@
html_DATA = \
argspwdenv.html \
breakptlist.html \
globaloptions.html \
howdoi.html \
invocation.html \
localvars.html \
memory.html \
pgmoutput.html \
pgmsettings.html \
registers.html \
sourcecode.html \
stack.html \
threads.html \
tips.html \
types.html \
watches.html \
xslt.html \
index.html
htmldir = $(kde_htmldir)/en/kdbg
EXTRA_DIST = $(html_DATA)

@ -1,27 +0,0 @@
html_DATA = \
argspwdenv.html \
breakptlist.html \
globaloptions.html \
howdoi.html \
localvars.html \
memory.html \
pgmoutput.html \
pgmsettings.html \
registers.html \
sourcecode.html \
stack.html \
threads.html \
tips.html \
watches.html \
index.html
htmldir = $(kde_htmldir)/ru/kdbg
EXTRA_DIST = $(html_DATA)
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(htmldir)
cd $(DESTDIR)$(htmldir) && ln -s -f ../../en/kdbg/types.html .
uninstall-local:
-rm -f $(DESTDIR)$(htmldir)/types.html

@ -9,16 +9,16 @@
/*
* Description of environment variables. Note that the name of the variable
* is given as the key in the QDict, so we don't repeat it here.
* is given as the key in the TQDict, so we don't repeat it here.
*/
class QListViewItem;
class TQListViewItem;
struct EnvVar {
QString value;
TQString value;
enum EnvVarStatus { EVclean, EVdirty, EVnew, EVdeleted };
EnvVarStatus status;
QListViewItem* item;
TQListViewItem* item;
};
#endif // ENVVAR_H

@ -7,19 +7,19 @@
#include "exprwnd.h"
#include "exprwnd.moc"
#include "typetable.h"
#include <qstringlist.h>
#include <qpainter.h>
#include <qscrollbar.h>
#include <kapplication.h>
#include <tqstringlist.h>
#include <tqpainter.h>
#include <tqscrollbar.h>
#include <tdeapplication.h>
#include <kiconloader.h> /* icons */
#include <klocale.h> /* i18n */
#include <tdelocale.h> /* i18n */
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include "mydebug.h"
VarTree::VarTree(VarTree* parent, QListViewItem* after, ExprValue* v) :
QListViewItem(parent, after),
VarTree::VarTree(VarTree* parent, TQListViewItem* after, ExprValue* v) :
TQListViewItem(parent, after),
m_varKind(v->m_varKind),
m_nameKind(v->m_nameKind),
m_type(0),
@ -29,14 +29,14 @@ VarTree::VarTree(VarTree* parent, QListViewItem* after, ExprValue* v) :
m_baseChanged(false),
m_structChanged(false)
{
QListViewItem::setText(0, v->m_name);
TQListViewItem::setText(0, v->m_name);
updateValueText();
setExpandable(m_varKind == VarTree::VKpointer);
setOpen(v->m_initiallyExpanded);
}
VarTree::VarTree(ExprWnd* parent, QListViewItem* after, const QString& name) :
QListViewItem(parent, after),
VarTree::VarTree(ExprWnd* parent, TQListViewItem* after, const TQString& name) :
TQListViewItem(parent, after),
m_varKind(VKsimple),
m_nameKind(VarTree::NKplain),
m_type(0),
@ -45,25 +45,25 @@ VarTree::VarTree(ExprWnd* parent, QListViewItem* after, const QString& name) :
m_baseChanged(false),
m_structChanged(false)
{
QListViewItem::setText(0, name);
TQListViewItem::setText(0, name);
}
VarTree::~VarTree()
{
}
void VarTree::paintCell(QPainter* p, const QColorGroup& cg, int column, int width, int align)
void VarTree::paintCell(TQPainter* p, const TQColorGroup& cg, int column, int width, int align)
{
if (column == 1 && (m_baseChanged || m_structChanged)) {
QColorGroup cgChg = cg;
cgChg.setColor(QColorGroup::Text, Qt::red);
QListViewItem::paintCell(p, cgChg, column, width, align);
TQColorGroup cgChg = cg;
cgChg.setColor(TQColorGroup::Text, TQt::red);
TQListViewItem::paintCell(p, cgChg, column, width, align);
} else {
QListViewItem::paintCell(p, cg, column, width, align);
TQListViewItem::paintCell(p, cg, column, width, align);
}
}
QString VarTree::computeExpr() const
TQString VarTree::computeExpr() const
{
// top-level items are special
if (isToplevelExpr())
@ -71,14 +71,14 @@ QString VarTree::computeExpr() const
// get parent expr
VarTree* par = static_cast<VarTree*>(parent());
QString parentExpr = par->computeExpr();
TQString parentExpr = par->computeExpr();
// skip this item's name if it is a base class or anonymous struct or union
if (m_nameKind == NKtype || m_nameKind == NKanonymous) {
return parentExpr;
}
/* augment by this item's text */
QString result;
TQString result;
/* if this is an address, dereference it */
if (m_nameKind == NKaddress) {
ASSERT(par->m_varKind == VKpointer);
@ -88,7 +88,7 @@ QString VarTree::computeExpr() const
switch (par->m_varKind) {
case VKarray:
{
QString index = getText();
TQString index = getText();
int i = 1;
// skip past the index
while (index[i].isDigit())
@ -124,14 +124,14 @@ bool VarTree::isToplevelExpr() const
bool VarTree::isAncestorEq(const VarTree* child) const
{
const QListViewItem* c = child;
const TQListViewItem* c = child;
while (c != 0 && c != this) {
c = c->parent();
}
return c != 0;
}
bool VarTree::updateValue(const QString& newValue)
bool VarTree::updateValue(const TQString& newValue)
{
// check whether the value changed
bool prevValueChanged = m_baseChanged;
@ -148,7 +148,7 @@ bool VarTree::updateValue(const QString& newValue)
return m_baseChanged || prevValueChanged;
}
bool VarTree::updateStructValue(const QString& newValue)
bool VarTree::updateStructValue(const TQString& newValue)
{
// check whether the value changed
bool prevValueChanged = m_structChanged;
@ -168,11 +168,11 @@ bool VarTree::updateStructValue(const QString& newValue)
void VarTree::updateValueText()
{
if (m_baseValue.isEmpty()) {
QListViewItem::setText(1, m_structValue);
TQListViewItem::setText(1, m_structValue);
} else if (m_structValue.isEmpty()) {
QListViewItem::setText(1, m_baseValue);
TQListViewItem::setText(1, m_baseValue);
} else {
QListViewItem::setText(1, m_baseValue + " " + m_structValue);
TQListViewItem::setText(1, m_baseValue + " " + m_structValue);
}
}
@ -197,7 +197,7 @@ void VarTree::inferTypesOfChildren(ProgramTypeTable& typeTable)
{
/*
* wchart_t pointers must be treated as struct, because the array
* of characters is printed similar to how QStrings are decoded.
* of characters is printed similar to how TQStrings are decoded.
*/
m_varKind = VKstruct;
setExpandable(false);
@ -206,7 +206,7 @@ void VarTree::inferTypesOfChildren(ProgramTypeTable& typeTable)
} else if (m_varKind == VKstruct) {
// check if this is a base class part
if (m_nameKind == NKtype) {
const QString& typeName =
const TQString& typeName =
getText().mid(1, getText().length()-2); // strip < and >
m_type = typeTable.lookup(typeName);
@ -263,7 +263,7 @@ TypeInfo* VarTree::inferTypeFromBaseClass()
return 0;
}
ExprValue::ExprValue(const QString& name, VarTree::NameKind aKind) :
ExprValue::ExprValue(const TQString& name, VarTree::NameKind aKind) :
m_name(name),
m_varKind(VarTree::VKsimple),
m_nameKind(aKind),
@ -306,8 +306,8 @@ int ExprValue::childCount() const
ExprWnd::ExprWnd(QWidget* parent, const QString& colHeader, const char* name) :
QListView(parent, name),
ExprWnd::ExprWnd(TQWidget* parent, const TQString& colHeader, const char* name) :
TQListView(parent, name),
m_edit(0)
{
addColumn(colHeader);
@ -327,9 +327,9 @@ ExprWnd::~ExprWnd()
{
}
QStringList ExprWnd::exprList() const
TQStringList ExprWnd::exprList() const
{
QStringList exprs;
TQStringList exprs;
VarTree* item;
for (item = firstChild(); item != 0; item = item->nextSibling()) {
exprs.append(item->getText());
@ -542,7 +542,7 @@ void ExprWnd::replaceChildren(VarTree* display, ExprValue* newValues)
void ExprWnd::collectUnknownTypes(VarTree* var)
{
QListViewItemIterator i(var);
TQListViewItemIterator i(var);
for (; i.current(); ++i)
{
checkUnknownType(static_cast<VarTree*>(i.current()));
@ -575,7 +575,7 @@ void ExprWnd::checkUnknownType(VarTree* var)
}
}
QString ExprWnd::formatWCharPointer(QString value)
TQString ExprWnd::formatWCharPointer(TQString value)
{
int pos = value.find(") ");
if (pos > 0)
@ -584,7 +584,7 @@ QString ExprWnd::formatWCharPointer(QString value)
}
VarTree* ExprWnd::topLevelExprByName(const QString& name) const
VarTree* ExprWnd::topLevelExprByName(const TQString& name) const
{
VarTree* item = firstChild();
while (item != 0 && item->getText() != name)
@ -593,7 +593,7 @@ VarTree* ExprWnd::topLevelExprByName(const QString& name) const
return item;
}
VarTree* ExprWnd::ptrMemberByName(VarTree* v, const QString& name)
VarTree* ExprWnd::ptrMemberByName(VarTree* v, const TQString& name)
{
// v must be a pointer variable, must have children
if (v->m_varKind != VarTree::VKpointer || v->childCount() == 0)
@ -604,7 +604,7 @@ VarTree* ExprWnd::ptrMemberByName(VarTree* v, const QString& name)
return memberByName(item, name);
}
VarTree* ExprWnd::memberByName(VarTree* v, const QString& name)
VarTree* ExprWnd::memberByName(VarTree* v, const TQString& name)
{
// search immediate children for name
VarTree* item = v->firstChild();
@ -700,17 +700,17 @@ VarTree* ExprWnd::nextUpdateStruct()
}
void ExprWnd::editValue(VarTree* item, const QString& text)
void ExprWnd::editValue(VarTree* item, const TQString& text)
{
if (m_edit == 0)
m_edit = new ValueEdit(this);
QRect r = itemRect(item);
TQRect r = itemRect(item);
int x = r.x()+columnWidth(0);
int y = r.y();
int w = columnWidth(1);
int h = r.height();
QListView* lv = item->listView();
TQListView* lv = item->listView();
/*
* Make the edit widget at least 5 characters wide (but not wider than
@ -718,7 +718,7 @@ void ExprWnd::editValue(VarTree* item, const QString& text)
* the text, scroll this widget so that half of it shows the text (or
* less than half of it if the text is shorter).
*/
QFontMetrics metr = m_edit->font();
TQFontMetrics metr = m_edit->font();
int wMin = metr.width("88888");
if (w < wMin)
w = wMin;
@ -727,7 +727,7 @@ void ExprWnd::editValue(VarTree* item, const QString& text)
x+w > wThis) // not all text is visible
{
// scroll so that more text is visible
int wScroll = QMIN(x-wThis/2, x+w-wThis);
int wScroll = TQMIN(x-wThis/2, x+w-wThis);
lv->scrollBy(wScroll, 0);
x -= wScroll;
}
@ -738,7 +738,7 @@ void ExprWnd::editValue(VarTree* item, const QString& text)
}
// make the edit box as wide as the visible column
QRect rect(x,y, wThis-x,h);
TQRect rect(x,y, wThis-x,h);
m_edit->setText(text);
m_edit->selectAll();
@ -756,17 +756,17 @@ bool ExprWnd::isEditing() const
ValueEdit::ValueEdit(ExprWnd* parent) :
QLineEdit(parent->viewport(), "valueedit")
TQLineEdit(parent->viewport(), "valueedit")
{
setFrame(false);
hide();
lower(); // lower the window below scrollbars
connect(parent, SIGNAL(selectionChanged()), SLOT(slotSelectionChanged()));
connect(parent, SIGNAL(currentChanged(QListViewItem*)), SLOT(slotSelectionChanged()));
connect(parent, SIGNAL(expanded(QListViewItem*)), SLOT(slotSelectionChanged()));
connect(parent, SIGNAL(collapsed(QListViewItem*)), SLOT(slotSelectionChanged()));
connect(this, SIGNAL(done(VarTree*, const QString&)),
parent, SIGNAL(editValueCommitted(VarTree*, const QString&)));
connect(parent, TQ_SIGNAL(selectionChanged()), TQ_SLOT(slotSelectionChanged()));
connect(parent, TQ_SIGNAL(currentChanged(TQListViewItem*)), TQ_SLOT(slotSelectionChanged()));
connect(parent, TQ_SIGNAL(expanded(TQListViewItem*)), TQ_SLOT(slotSelectionChanged()));
connect(parent, TQ_SIGNAL(collapsed(TQListViewItem*)), TQ_SLOT(slotSelectionChanged()));
connect(this, TQ_SIGNAL(done(VarTree*, const TQString&)),
parent, TQ_SIGNAL(editValueCommitted(VarTree*, const TQString&)));
}
ValueEdit::~ValueEdit()
@ -786,29 +786,29 @@ void ValueEdit::terminate(bool commit)
}
}
void ValueEdit::keyPressEvent(QKeyEvent *e)
void ValueEdit::keyPressEvent(TQKeyEvent *e)
{
if(e->key() == Qt::Key_Return || e->key() == Qt::Key_Enter)
if(e->key() == TQt::Key_Return || e->key() == TQt::Key_Enter)
terminate(true);
else if(e->key() == Qt::Key_Escape)
else if(e->key() == TQt::Key_Escape)
terminate(false);
else
QLineEdit::keyPressEvent(e);
TQLineEdit::keyPressEvent(e);
}
void ValueEdit::paintEvent(QPaintEvent* e)
void ValueEdit::paintEvent(TQPaintEvent* e)
{
QLineEdit::paintEvent(e);
TQLineEdit::paintEvent(e);
QPainter p(this);
TQPainter p(this);
p.drawRect(rect());
}
void ValueEdit::focusOutEvent(QFocusEvent* ev)
void ValueEdit::focusOutEvent(TQFocusEvent* ev)
{
TRACE("ValueEdit::focusOutEvent");
QFocusEvent* focusEv = static_cast<QFocusEvent*>(ev);
if (focusEv->reason() == QFocusEvent::ActiveWindow)
TQFocusEvent* focusEv = static_cast<TQFocusEvent*>(ev);
if (focusEv->reason() == TQFocusEvent::ActiveWindow)
{
// Switching to a different window should terminate the edit,
// because if the window with this variable display is floating
@ -818,7 +818,7 @@ void ValueEdit::focusOutEvent(QFocusEvent* ev)
terminate(false);
}
// Don't let a RMB close the editor
else if (focusEv->reason() != QFocusEvent::Popup)
else if (focusEv->reason() != TQFocusEvent::Popup)
{
terminate(true);
}

@ -7,19 +7,19 @@
#ifndef EXPRWND_H
#define EXPRWND_H
#include "qlistview.h"
#include <qlineedit.h>
#include <qpixmap.h>
#include "tqlistview.h"
#include <tqlineedit.h>
#include <tqpixmap.h>
#include <list>
class ProgramTypeTable;
class TypeInfo;
struct ExprValue;
class ExprWnd;
class QStringList;
class TQStringList;
/*! \brief a variable's value is the tree of sub-variables */
class VarTree : public QListViewItem
class VarTree : public TQListViewItem
{
public:
enum VarKind { VKsimple, VKpointer, VKstruct, VKarray,
@ -34,21 +34,21 @@ public:
TypeInfo* m_type; //!< the type of struct if it could be derived
int m_exprIndex; //!< used in struct value update
bool m_exprIndexUseGuard; //!< ditto; if guard expr should be used
QString m_partialValue; //!< while struct value update is in progress
TQString m_partialValue; //!< while struct value update is in progress
VarTree(VarTree* parent, QListViewItem* after, ExprValue* v);
VarTree(ExprWnd* parent, QListViewItem* after, const QString& name);
VarTree(VarTree* parent, TQListViewItem* after, ExprValue* v);
VarTree(ExprWnd* parent, TQListViewItem* after, const TQString& name);
virtual ~VarTree();
public:
virtual void paintCell(QPainter* p, const QColorGroup& cg, int column, int width, int align);
QString computeExpr() const;
virtual void paintCell(TQPainter* p, const TQColorGroup& cg, int column, int width, int align);
TQString computeExpr() const;
bool isToplevelExpr() const;
/** is this element an ancestor of (or equal to) child? */
bool isAncestorEq(const VarTree* child) const;
/** update the regular value; returns whether a repaint is necessary */
bool updateValue(const QString& newValue);
bool updateValue(const TQString& newValue);
/** update the "quick member" value; returns whether repaint is necessary */
bool updateStructValue(const QString& newValue);
bool updateStructValue(const TQString& newValue);
/** find out the type of this value using the child values */
void inferTypesOfChildren(ProgramTypeTable& typeTable);
/** get the type from base class part */
@ -56,17 +56,17 @@ public:
/** returns whether the pointer is a wchar_t */
bool isWcharT() const;
QString getText() const { return text(0); }
void setText(const QString& t) { QListViewItem::setText(0, t); }
void setPixmap(const QPixmap& p) { QListViewItem::setPixmap(0, p); }
QString value() const { return m_baseValue; }
VarTree* firstChild() const { return static_cast<VarTree*>(QListViewItem::firstChild()); }
VarTree* nextSibling() const { return static_cast<VarTree*>(QListViewItem::nextSibling()); }
TQString getText() const { return text(0); }
void setText(const TQString& t) { TQListViewItem::setText(0, t); }
void setPixmap(const TQPixmap& p) { TQListViewItem::setPixmap(0, p); }
TQString value() const { return m_baseValue; }
VarTree* firstChild() const { return static_cast<VarTree*>(TQListViewItem::firstChild()); }
VarTree* nextSibling() const { return static_cast<VarTree*>(TQListViewItem::nextSibling()); }
private:
void updateValueText();
QString m_baseValue; //!< The "normal value" that the driver reported
QString m_structValue; //!< The "quick member" value
TQString m_baseValue; //!< The "normal value" that the driver reported
TQString m_structValue; //!< The "quick member" value
bool m_baseChanged : 1;
bool m_structChanged : 1;
};
@ -76,15 +76,15 @@ private:
*/
struct ExprValue
{
QString m_name;
QString m_value;
TQString m_name;
TQString m_value;
VarTree::VarKind m_varKind;
VarTree::NameKind m_nameKind;
ExprValue* m_child; /* the first child expression */
ExprValue* m_next; /* the next sibling expression */
bool m_initiallyExpanded;
ExprValue(const QString& name, VarTree::NameKind kind);
ExprValue(const TQString& name, VarTree::NameKind kind);
~ExprValue();
void appendChild(ExprValue* newChild);
@ -92,9 +92,9 @@ struct ExprValue
};
class ValueEdit : public QLineEdit
class ValueEdit : public TQLineEdit
{
Q_OBJECT
TQ_OBJECT
public:
ValueEdit(ExprWnd* parent);
~ValueEdit();
@ -103,25 +103,25 @@ public:
VarTree* m_item;
bool m_finished;
protected:
void keyPressEvent(QKeyEvent *e);
void focusOutEvent(QFocusEvent* ev);
void paintEvent(QPaintEvent* e);
void keyPressEvent(TQKeyEvent *e);
void focusOutEvent(TQFocusEvent* ev);
void paintEvent(TQPaintEvent* e);
public slots:
void slotSelectionChanged();
signals:
void done(VarTree*, const QString&);
void done(VarTree*, const TQString&);
};
class ExprWnd : public QListView
class ExprWnd : public TQListView
{
Q_OBJECT
TQ_OBJECT
public:
ExprWnd(QWidget* parent, const QString& colHeader, const char* name);
ExprWnd(TQWidget* parent, const TQString& colHeader, const char* name);
~ExprWnd();
/** returns the list with the expressions at the topmost level */
QStringList exprList() const;
TQStringList exprList() const;
/** appends a copy of expr to the end of the tree at the topmost level;
* returns a pointer to the inserted top-level item */
VarTree* insertExpr(ExprValue* expr, ProgramTypeTable& typeTable);
@ -133,11 +133,11 @@ public:
/** updates only the value of the node */
void updateStructValue(VarTree* display);
/** get a top-level expression by name */
VarTree* topLevelExprByName(const QString& name) const;
VarTree* topLevelExprByName(const TQString& name) const;
/** return a member of the struct that pointer \a v refers to */
static VarTree* ptrMemberByName(VarTree* v, const QString& name);
static VarTree* ptrMemberByName(VarTree* v, const TQString& name);
/** return a member of the struct \a v */
static VarTree* memberByName(VarTree* v, const QString& name);
static VarTree* memberByName(VarTree* v, const TQString& name);
/** removes an expression; must be on the topmost level*/
void removeExpr(VarTree* item);
/** clears the list of pointers needing updates */
@ -146,21 +146,21 @@ public:
VarTree* nextUpdatePtr();
VarTree* nextUpdateType();
VarTree* nextUpdateStruct();
void editValue(VarTree* item, const QString& text);
void editValue(VarTree* item, const TQString& text);
/** tells whether the a value is currently edited */
bool isEditing() const;
VarTree* firstChild() const { return static_cast<VarTree*>(QListView::firstChild()); }
VarTree* currentItem() const { return static_cast<VarTree*>(QListView::currentItem()); }
VarTree* selectedItem() const { return static_cast<VarTree*>(QListView::selectedItem()); }
VarTree* firstChild() const { return static_cast<VarTree*>(TQListView::firstChild()); }
VarTree* currentItem() const { return static_cast<VarTree*>(TQListView::currentItem()); }
VarTree* selectedItem() const { return static_cast<VarTree*>(TQListView::selectedItem()); }
protected:
void updateExprRec(VarTree* display, ExprValue* newValues, ProgramTypeTable& typeTable);
void replaceChildren(VarTree* display, ExprValue* newValues);
void collectUnknownTypes(VarTree* item);
void checkUnknownType(VarTree* item);
static QString formatWCharPointer(QString value);
QPixmap m_pixPointer;
static TQString formatWCharPointer(TQString value);
TQPixmap m_pixPointer;
std::list<VarTree*> m_updatePtrs; //!< dereferenced pointers that need update
std::list<VarTree*> m_updateType; //!< structs whose type must be determined
@ -174,7 +174,7 @@ protected:
signals:
void removingItem(VarTree*);
void editValueCommitted(VarTree*, const QString&);
void editValueCommitted(VarTree*, const TQString&);
};
#endif // EXPRWND_H

File diff suppressed because it is too large Load Diff

@ -12,80 +12,79 @@
class GdbDriver : public DebuggerDriver
{
Q_OBJECT
TQ_OBJECT
public:
GdbDriver();
~GdbDriver();
virtual QString driverName() const;
virtual QString defaultInvocation() const;
virtual QStringList boolOptionList() const;
void setDefaultInvocation(QString cmd) { m_defaultCmd = cmd; }
static QString defaultGdb();
virtual bool startup(QString cmdStr);
virtual TQString driverName() const;
virtual TQString defaultInvocation() const;
virtual TQStringList boolOptionList() const;
void setDefaultInvocation(TQString cmd) { m_defaultCmd = cmd; }
static TQString defaultGdb();
virtual bool startup(TQString cmdStr);
virtual void commandFinished(CmdQueueItem* cmd);
virtual CmdQueueItem* executeCmd(DbgCommand,
bool clearLow = false);
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg,
bool clearLow = false);
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg,
bool clearLow = false);
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg, int intArg,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg, int intArg,
bool clearLow = false);
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg1, QString strArg2,
virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg1, TQString strArg2,
bool clearLow = false);
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg1, int intArg2,
bool clearLow = false);
virtual CmdQueueItem* queueCmd(DbgCommand,
QueueMode mode);
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg,
QueueMode mode);
virtual CmdQueueItem* queueCmd(DbgCommand, int intArg,
QueueMode mode);
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg, int intArg,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg, int intArg,
QueueMode mode);
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg1, QString strArg2,
virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg1, TQString strArg2,
QueueMode mode);
virtual void terminate();
virtual void detachAndTerminate();
virtual void interruptInferior();
virtual void setPrintQStringDataCmd(const char* cmd);
virtual ExprValue* parseQCharArray(const char* output, bool wantErrorValue, bool qt3like);
virtual void setPrintTQStringDataCmd(const char* cmd);
virtual ExprValue* parseTQCharArray(const char* output, bool wantErrorValue, bool qt3like);
virtual void parseBackTrace(const char* output, std::list<StackFrame>& stack);
virtual bool parseFrameChange(const char* output, int& frameNo,
QString& file, int& lineNo, DbgAddr& address);
TQString& file, int& lineNo, DbgAddr& address);
virtual bool parseBreakList(const char* output, std::list<Breakpoint>& brks);
virtual std::list<ThreadInfo> parseThreadList(const char* output);
virtual bool parseBreakpoint(const char* output, int& id,
QString& file, int& lineNo, QString& address);
TQString& file, int& lineNo, TQString& address);
virtual void parseLocals(const char* output, std::list<ExprValue*>& newVars);
virtual ExprValue* parsePrintExpr(const char* output, bool wantErrorValue);
virtual bool parseChangeWD(const char* output, QString& message);
virtual bool parseChangeExecutable(const char* output, QString& message);
virtual bool parseChangeWD(const char* output, TQString& message);
virtual bool parseChangeExecutable(const char* output, TQString& message);
virtual bool parseCoreFile(const char* output);
virtual uint parseProgramStopped(const char* output, QString& message);
virtual QStringList parseSharedLibs(const char* output);
virtual bool parseFindType(const char* output, QString& type);
virtual uint parseProgramStopped(const char* output, TQString& message);
virtual TQStringList parseSharedLibs(const char* output);
virtual bool parseFindType(const char* output, TQString& type);
virtual std::list<RegisterInfo> parseRegisters(const char* output);
virtual bool parseInfoLine(const char* output,
QString& addrFrom, QString& addrTo);
TQString& addrFrom, TQString& addrTo);
virtual std::list<DisassembledCode> parseDisassemble(const char* output);
virtual QString parseMemoryDump(const char* output, std::list<MemoryDump>& memdump);
virtual QString parseSetVariable(const char* output);
virtual QString editableValue(VarTree* value);
virtual TQString parseMemoryDump(const char* output, std::list<MemoryDump>& memdump);
virtual TQString parseSetVariable(const char* output);
virtual TQString editableValue(VarTree* value);
protected:
int m_gdbMajor, m_gdbMinor;
QString m_programWD; /* just an intermediate storage */
QString m_redirect; /* redirection to /dev/null */
TQString m_programWD; /* just an intermediate storage */
TQString m_redirect; /* redirection to /dev/null */
bool m_haveCoreFile;
QString m_defaultCmd; /* how to invoke gdb */
TQString m_defaultCmd; /* how to invoke gdb */
QString makeCmdString(DbgCommand cmd, QString strArg);
QString makeCmdString(DbgCommand cmd, int intArg);
QString makeCmdString(DbgCommand cmd, QString strArg, int intArg);
QString makeCmdString(DbgCommand cmd, QString strArg1, QString strArg2);
QString makeCmdString(DbgCommand cmd, int intArg1, int intArg2);
TQString makeCmdString(DbgCommand cmd, TQString strArg);
TQString makeCmdString(DbgCommand cmd, int intArg);
TQString makeCmdString(DbgCommand cmd, TQString strArg, int intArg);
TQString makeCmdString(DbgCommand cmd, TQString strArg1, TQString strArg2);
TQString makeCmdString(DbgCommand cmd, int intArg1, int intArg2);
void parseMarker();
};

@ -1,42 +1,13 @@
[Desktop Entry]
Exec=kdbg -caption "%c" %i
Icon=kdbg
Type=Application
X-DocPath=kdbg/index.html
Name=KDbg
GenericName=Debugger
GenericName[br]=Dizraener
GenericName[da]=Afluser
GenericName[es]=Depurador
GenericName[fi]=Debuggeri
GenericName[fr]=Débogueur
GenericName[is]=Aflúsun
GenericName[no]=Avluser
GenericName[pt]=Depurador
GenericName[pt_BR]=Depurador
GenericName[ro]=Depanator
GenericName[ru]=Отладчик
GenericName[sk]=Ladiaci program
GenericName[sl]=Razhroščevalnik
GenericName[sv]=Avlusare
Comment=Debug programs
Comment[br]=Goulevioù dizraenañ
Comment[ca]=Programes per localització d'errors
Comment[cs]=Ladídí program
Comment[da]=Afluseprogrammer
Comment[de]=Programme debuggen
Comment[es]=Depurador de programas
Comment[fi]=Tutki ohjelmien toimintaa
Comment[fr]=Déboguer un programme
Comment[is]=kdbg: Forrit til ađ aflúsa önnur forrit
Comment[no]=Avluse programmer
Comment[pl]=Program do debugowania
Comment[pt]=Depurador de programas
Comment[pt_BR]=Depurador de programas
Comment[ro]=Depanator de programe
Comment[ru]=Отлаживает программы
Comment[sk]=Ladiaci program
Comment[sl]=Odpravljanje napak v programih
Comment[sv]=Avlusar program
Type=Application
Exec=kdbg -caption "%c" %i
Icon=kdbg
Categories=Qt;TDE;Development;Debugger;
Terminal=false
Categories=Qt;KDE;Development;Debugger;
X-DocPath=kdbg/index.html

@ -4,15 +4,15 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <kapplication.h>
#include <klocale.h> /* i18n */
#include <kmessagebox.h>
#include <kglobal.h>
#include <tdeapplication.h>
#include <tdelocale.h> /* i18n */
#include <tdemessagebox.h>
#include <tdeglobal.h>
#include <kstandarddirs.h>
#include <kcmdlineargs.h>
#include <kaboutdata.h>
#include <kpopupmenu.h>
#include <kmenubar.h>
#include <tdecmdlineargs.h>
#include <tdeaboutdata.h>
#include <tdepopupmenu.h>
#include <tdemenubar.h>
#include "dbgmainwnd.h"
#include "typetable.h"
#ifdef HAVE_CONFIG_H
@ -33,10 +33,10 @@
int main(int argc, char** argv)
{
KAboutData aboutData("kdbg", "KDbg",
TDEAboutData aboutData("kdbg", "KDbg",
VERSION,
I18N_NOOP("A Debugger"),
KAboutData::License_GPL,
TDEAboutData::License_GPL,
"(c) 1998-2010 Johannes Sixt",
0, /* any text */
"http://www.kdbg.org/",
@ -48,9 +48,9 @@ int main(int argc, char** argv)
aboutData.addCredit("Daniel Kristjansson",
I18N_NOOP("Register groups and formating"),
"danielk@cat.nyu.edu");
KCmdLineArgs::init( argc, argv, &aboutData );
TDECmdLineArgs::init( argc, argv, &aboutData );
static KCmdLineOptions options[] = {
static TDECmdLineOptions options[] = {
{ "t <file>", I18N_NOOP("transcript of conversation with the debugger"), 0 },
{ "r <device>", I18N_NOOP("remote debugging via <device>"), 0 },
{ "l <language>", I18N_NOOP("specify language: C, XSLT"), ""},
@ -61,11 +61,11 @@ int main(int argc, char** argv)
{ "+[core]", I18N_NOOP("a core file to use"), 0},
{ 0, 0, 0 }
};
KCmdLineArgs::addCmdLineOptions(options);
TDECmdLineArgs::addCmdLineOptions(options);
KApplication app;
TDEApplication app;
KGlobal::dirs()->addResourceType("types", "share/apps/kdbg/types");
TDEGlobal::dirs()->addResourceType("types", "share/apps/kdbg/types");
DebuggerMainWnd* debugger = new DebuggerMainWnd("kdbg_main");
@ -75,7 +75,7 @@ int main(int argc, char** argv)
// session management
bool restored = false;
if (app.isRestored()) {
if (KMainWindow::canBeRestored(1)) {
if (TDEMainWindow::canBeRestored(1)) {
debugger->restore(1);
restored = true;
}
@ -87,13 +87,13 @@ int main(int argc, char** argv)
// handle options
KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
QString transcript = args->getOption("t");
QString remote = args->getOption("r");
TDECmdLineArgs *args = TDECmdLineArgs::parsedArgs();
TQString transcript = args->getOption("t");
TQString remote = args->getOption("r");
if (!remote.isEmpty())
debugger->setRemoteDevice(remote);
QString lang = args->getOption("l");
TQString lang = args->getOption("l");
// deprecated option; overrides -l
if (args->isSet("x")){
@ -107,8 +107,8 @@ int main(int argc, char** argv)
}
debugger->setTranscript(transcript);
QString pid = args->getOption("p");
QString programArgs = args->getOption("a");
TQString pid = args->getOption("p");
TQString programArgs = args->getOption("a");
if (!restored && args->count() > 0) {
// attach to process?
@ -125,8 +125,8 @@ int main(int argc, char** argv)
TRACE("cannot start debugger");
KMessageBox::error(debugger, i18n("Cannot start debugger."));
debugger->setCoreFile(QString());
debugger->setAttachPid(QString());
debugger->setCoreFile(TQString());
debugger->setAttachPid(TQString());
} else {
if (!programArgs.isEmpty()) {
debugger->overrideProgramArguments(programArgs);

@ -4,15 +4,15 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <kapplication.h>
#include <klocale.h> /* i18n */
#include <kconfig.h>
#include <kmessagebox.h>
#include <tdeapplication.h>
#include <tdelocale.h> /* i18n */
#include <tdeconfig.h>
#include <tdemessagebox.h>
#include <kstatusbar.h>
#include <kfiledialog.h>
#include <qtabdialog.h>
#include <qfile.h>
#include <qdragobject.h>
#include <tdefiledialog.h>
#include <tqtabdialog.h>
#include <tqfile.h>
#include <tqdragobject.h>
#include "mainwndbase.h"
#include "debugger.h"
#include "gdbdriver.h"
@ -37,8 +37,8 @@
#define MAX_RECENT_FILES 4
WatchWindow::WatchWindow(QWidget* parent, const char* name, WFlags f) :
QWidget(parent, name, f),
WatchWindow::WatchWindow(TQWidget* parent, const char* name, WFlags f) :
TQWidget(parent, name, f),
m_watchEdit(this, "watch_edit"),
m_watchAdd(i18n(" Add "), this, "watch_add"),
m_watchDelete(i18n(" Del "), this, "watch_delete"),
@ -55,11 +55,11 @@ WatchWindow::WatchWindow(QWidget* parent, const char* name, WFlags f) :
m_watchH.addWidget(&m_watchAdd, 0);
m_watchH.addWidget(&m_watchDelete, 0);
connect(&m_watchEdit, SIGNAL(returnPressed()), SIGNAL(addWatch()));
connect(&m_watchAdd, SIGNAL(clicked()), SIGNAL(addWatch()));
connect(&m_watchDelete, SIGNAL(clicked()), SIGNAL(deleteWatch()));
connect(&m_watchVariables, SIGNAL(currentChanged(QListViewItem*)),
SLOT(slotWatchHighlighted()));
connect(&m_watchEdit, TQ_SIGNAL(returnPressed()), TQ_SIGNAL(addWatch()));
connect(&m_watchAdd, TQ_SIGNAL(clicked()), TQ_SIGNAL(addWatch()));
connect(&m_watchDelete, TQ_SIGNAL(clicked()), TQ_SIGNAL(deleteWatch()));
connect(&m_watchVariables, TQ_SIGNAL(currentChanged(TQListViewItem*)),
TQ_SLOT(slotWatchHighlighted()));
m_watchVariables.installEventFilter(this);
setAcceptDrops(true);
@ -69,11 +69,11 @@ WatchWindow::~WatchWindow()
{
}
bool WatchWindow::eventFilter(QObject*, QEvent* ev)
bool WatchWindow::eventFilter(TQObject*, TQEvent* ev)
{
if (ev->type() == QEvent::KeyPress)
if (ev->type() == TQEvent::KeyPress)
{
QKeyEvent* kev = static_cast<QKeyEvent*>(ev);
TQKeyEvent* kev = static_cast<TQKeyEvent*>(ev);
if (kev->key() == Key_Delete) {
emit deleteWatch();
return true;
@ -82,15 +82,15 @@ bool WatchWindow::eventFilter(QObject*, QEvent* ev)
return false;
}
void WatchWindow::dragEnterEvent(QDragEnterEvent* event)
void WatchWindow::dragEnterEvent(TQDragEnterEvent* event)
{
event->accept(QTextDrag::canDecode(event));
event->accept(TQTextDrag::canDecode(event));
}
void WatchWindow::dropEvent(QDropEvent* event)
void WatchWindow::dropEvent(TQDropEvent* event)
{
QString text;
if (QTextDrag::decode(event, text))
TQString text;
if (TQTextDrag::decode(event, text))
{
// pick only the first line
text = text.stripWhiteSpace();
@ -108,7 +108,7 @@ void WatchWindow::dropEvent(QDropEvent* event)
void WatchWindow::slotWatchHighlighted()
{
VarTree* expr = m_watchVariables.selectedItem();
QString text = expr ? expr->computeExpr() : QString();
TQString text = expr ? expr->computeExpr() : TQString();
m_watchEdit.setText(text);
}
@ -147,46 +147,46 @@ DebuggerMainWndBase::~DebuggerMainWndBase()
}
}
void DebuggerMainWndBase::setupDebugger(QWidget* parent,
void DebuggerMainWndBase::setupDebugger(TQWidget* parent,
ExprWnd* localVars,
ExprWnd* watchVars,
QListBox* backtrace)
TQListBox* backtrace)
{
m_debugger = new KDebugger(parent, localVars, watchVars, backtrace);
QObject::connect(m_debugger, SIGNAL(updateStatusMessage()),
parent, SLOT(slotNewStatusMsg()));
QObject::connect(m_debugger, SIGNAL(updateUI()),
parent, SLOT(updateUI()));
TQObject::connect(m_debugger, TQ_SIGNAL(updateStatusMessage()),
parent, TQ_SLOT(slotNewStatusMsg()));
TQObject::connect(m_debugger, TQ_SIGNAL(updateUI()),
parent, TQ_SLOT(updateUI()));
QObject::connect(m_debugger, SIGNAL(breakpointsChanged()),
parent, SLOT(updateLineItems()));
TQObject::connect(m_debugger, TQ_SIGNAL(breakpointsChanged()),
parent, TQ_SLOT(updateLineItems()));
QObject::connect(m_debugger, SIGNAL(debuggerStarting()),
parent, SLOT(slotDebuggerStarting()));
TQObject::connect(m_debugger, TQ_SIGNAL(debuggerStarting()),
parent, TQ_SLOT(slotDebuggerStarting()));
}
void DebuggerMainWndBase::setCoreFile(const QString& corefile)
void DebuggerMainWndBase::setCoreFile(const TQString& corefile)
{
assert(m_debugger != 0);
m_debugger->useCoreFile(corefile, true);
}
void DebuggerMainWndBase::setRemoteDevice(const QString& remoteDevice)
void DebuggerMainWndBase::setRemoteDevice(const TQString& remoteDevice)
{
if (m_debugger != 0) {
m_debugger->setRemoteDevice(remoteDevice);
}
}
void DebuggerMainWndBase::overrideProgramArguments(const QString& args)
void DebuggerMainWndBase::overrideProgramArguments(const TQString& args)
{
assert(m_debugger != 0);
m_debugger->overrideProgramArguments(args);
}
void DebuggerMainWndBase::setTranscript(const QString& name)
void DebuggerMainWndBase::setTranscript(const TQString& name)
{
m_transcriptFile = name;
if (m_debugger != 0 && m_debugger->driver() != 0)
@ -207,13 +207,13 @@ const char SourceFileFilter[] = "SourceFileFilter";
const char HeaderFileFilter[] = "HeaderFileFilter";
const char GeneralGroup[] = "General";
void DebuggerMainWndBase::saveSettings(KConfig* config)
void DebuggerMainWndBase::saveSettings(TDEConfig* config)
{
if (m_debugger != 0) {
m_debugger->saveSettings(config);
}
KConfigGroupSaver g(config, OutputWindowGroup);
TDEConfigGroupSaver g(config, OutputWindowGroup);
config->writeEntry(TermCmdStr, m_outputTermCmdStr);
config->setGroup(DebuggerGroup);
@ -227,13 +227,13 @@ void DebuggerMainWndBase::saveSettings(KConfig* config)
config->writeEntry(HeaderFileFilter, m_headerFilter);
}
void DebuggerMainWndBase::restoreSettings(KConfig* config)
void DebuggerMainWndBase::restoreSettings(TDEConfig* config)
{
if (m_debugger != 0) {
m_debugger->restoreSettings(config);
}
KConfigGroupSaver g(config, OutputWindowGroup);
TDEConfigGroupSaver g(config, OutputWindowGroup);
/*
* For debugging and emergency purposes, let the config file override
* the shell script that is used to keep the output window open. This
@ -253,25 +253,25 @@ void DebuggerMainWndBase::restoreSettings(KConfig* config)
m_headerFilter = config->readEntry(HeaderFileFilter, m_headerFilter);
}
void DebuggerMainWndBase::setAttachPid(const QString& pid)
void DebuggerMainWndBase::setAttachPid(const TQString& pid)
{
assert(m_debugger != 0);
m_debugger->setAttachPid(pid);
}
bool DebuggerMainWndBase::debugProgram(const QString& executable,
QString lang, QWidget* parent)
bool DebuggerMainWndBase::debugProgram(const TQString& executable,
TQString lang, TQWidget* parent)
{
assert(m_debugger != 0);
TRACE(QString("trying language '%1'...").arg(lang));
TRACE(TQString("trying language '%1'...").arg(lang));
DebuggerDriver* driver = driverFromLang(lang);
if (driver == 0)
{
// see if there is a language in the per-program config file
QString configName = m_debugger->getConfigForExe(executable);
if (QFile::exists(configName))
TQString configName = m_debugger->getConfigForExe(executable);
if (TQFile::exists(configName))
{
KSimpleConfig c(configName, true); // read-only
c.setGroup(GeneralGroup);
@ -282,23 +282,23 @@ bool DebuggerMainWndBase::debugProgram(const QString& executable,
// that had only the GDB driver.
lang = c.readEntry(KDebugger::DriverNameEntry, "GDB");
TRACE(QString("...bad, trying config driver %1...").arg(lang));
TRACE(TQString("...bad, trying config driver %1...").arg(lang));
driver = driverFromLang(lang);
}
}
if (driver == 0)
{
QString name = driverNameFromFile(executable);
TQString name = driverNameFromFile(executable);
TRACE(QString("...no luck, trying %1 derived"
TRACE(TQString("...no luck, trying %1 derived"
" from file contents").arg(name));
driver = driverFromLang(name);
}
if (driver == 0)
{
// oops
QString msg = i18n("Don't know how to debug language `%1'");
TQString msg = i18n("Don't know how to debug language `%1'");
KMessageBox::sorry(parent, msg.arg(lang));
return false;
}
@ -311,7 +311,7 @@ bool DebuggerMainWndBase::debugProgram(const QString& executable,
{
delete driver;
QString msg = i18n("Could not start the debugger process.\n"
TQString msg = i18n("Could not start the debugger process.\n"
"Please shut down KDbg and resolve the problem.");
KMessageBox::sorry(parent, msg);
}
@ -320,7 +320,7 @@ bool DebuggerMainWndBase::debugProgram(const QString& executable,
}
// derive driver from language
DebuggerDriver* DebuggerMainWndBase::driverFromLang(QString lang)
DebuggerDriver* DebuggerMainWndBase::driverFromLang(TQString lang)
{
// lang is needed in all lowercase
lang = lang.lower();
@ -352,7 +352,7 @@ DebuggerDriver* DebuggerMainWndBase::driverFromLang(QString lang)
continue;
// lang must not be longer than the full name, and it must match
if (QString(l.full).startsWith(lang))
if (TQString(l.full).startsWith(lang))
{
driverID = l.driver;
break;
@ -380,7 +380,7 @@ DebuggerDriver* DebuggerMainWndBase::driverFromLang(QString lang)
/**
* Try to guess the language to use from the contents of the file.
*/
QString DebuggerMainWndBase::driverNameFromFile(const QString& exe)
TQString DebuggerMainWndBase::driverNameFromFile(const TQString& exe)
{
/* Inprecise but simple test to see if file is in XSLT language */
if (exe.right(4).lower() == ".xsl")
@ -390,16 +390,16 @@ QString DebuggerMainWndBase::driverNameFromFile(const QString& exe)
}
// helper that gets a file name (it only differs in the caption of the dialog)
QString DebuggerMainWndBase::myGetFileName(QString caption,
QString dir, QString filter,
QWidget* parent)
TQString DebuggerMainWndBase::myGetFileName(TQString caption,
TQString dir, TQString filter,
TQWidget* parent)
{
QString filename;
TQString filename;
KFileDialog dlg(dir, filter, parent, "filedialog", true);
dlg.setCaption(caption);
if (dlg.exec() == QDialog::Accepted)
if (dlg.exec() == TQDialog::Accepted)
filename = dlg.selectedFile();
return filename;
@ -407,14 +407,14 @@ QString DebuggerMainWndBase::myGetFileName(QString caption,
void DebuggerMainWndBase::newStatusMsg(KStatusBar* statusbar)
{
QString msg = m_debugger->statusMessage();
TQString msg = m_debugger->statusMessage();
statusbar->changeItem(msg, ID_STATUS_MSG);
}
void DebuggerMainWndBase::doGlobalOptions(QWidget* parent)
void DebuggerMainWndBase::doGlobalOptions(TQWidget* parent)
{
QTabDialog dlg(parent, "global_options", true);
QString title = kapp->caption();
TQTabDialog dlg(parent, "global_options", true);
TQString title = tdeApp->caption();
title += i18n(": Global options");
dlg.setCaption(title);
dlg.setCancelButton(i18n("Cancel"));
@ -434,7 +434,7 @@ void DebuggerMainWndBase::doGlobalOptions(QWidget* parent)
dlg.addTab(&prefDebugger, i18n("&Debugger"));
dlg.addTab(&prefMisc, i18n("&Miscellaneous"));
if (dlg.exec() == QDialog::Accepted)
if (dlg.exec() == TQDialog::Accepted)
{
setDebuggerCmdStr(prefDebugger.debuggerCmd());
setTerminalCmd(prefDebugger.terminal());
@ -457,29 +457,29 @@ const char fifoNameBase[] = "/tmp/kdbgttywin%05d";
* accidentally use the wrong close() function (I've been bitten ;-),
* outch!) (We use it for all the libc functions, to be consistent...)
*/
QString DebuggerMainWndBase::createOutputWindow()
TQString DebuggerMainWndBase::createOutputWindow()
{
// create a name for a fifo
QString fifoName;
TQString fifoName;
fifoName.sprintf(fifoNameBase, ::getpid());
// create a fifo that will pass in the tty name
QFile::remove(fifoName); // remove remnants
TQFile::remove(fifoName); // remove remnants
#ifdef HAVE_MKFIFO
if (::mkfifo(fifoName.local8Bit(), S_IRUSR|S_IWUSR) < 0) {
// failed
TRACE("mkfifo " + fifoName + " failed");
return QString();
return TQString();
}
#else
if (::mknod(fifoName.local8Bit(), S_IFIFO | S_IRUSR|S_IWUSR, 0) < 0) {
// failed
TRACE("mknod " + fifoName + " failed");
return QString();
return TQString();
}
#endif
m_outputTermProc = new KProcess;
m_outputTermProc = new TDEProcess;
{
/*
@ -492,7 +492,7 @@ QString DebuggerMainWndBase::createOutputWindow()
"exec<&-;exec>&-;" /* close stdin and stdout */
"while :;do sleep 3600;done";
// let config file override this script
QString shellScript;
TQString shellScript;
if (!m_outputTermKeepScript.isEmpty()) {
shellScript = m_outputTermKeepScript;
} else {
@ -502,26 +502,26 @@ QString DebuggerMainWndBase::createOutputWindow()
shellScript.replace("%s", fifoName);
TRACE("output window script is " + shellScript);
QString title = kapp->caption();
TQString title = tdeApp->caption();
title += i18n(": Program output");
// parse the command line specified in the preferences
QStringList cmdParts = QStringList::split(' ', m_outputTermCmdStr);
TQStringList cmdParts = TQStringList::split(' ', m_outputTermCmdStr);
/*
* Build the argv array. Thereby substitute special sequences:
*/
struct {
char seq[4];
QString replace;
TQString replace;
} substitute[] = {
{ "%T", title },
{ "%C", shellScript }
};
for (QStringList::iterator i = cmdParts.begin(); i != cmdParts.end(); ++i)
for (TQStringList::iterator i = cmdParts.begin(); i != cmdParts.end(); ++i)
{
QString& str = *i;
TQString& str = *i;
for (int j = sizeof(substitute)/sizeof(substitute[0])-1; j >= 0; j--) {
int pos = str.find(substitute[j].seq);
if (pos >= 0) {
@ -536,14 +536,14 @@ QString DebuggerMainWndBase::createOutputWindow()
if (m_outputTermProc->start())
{
QString tty;
TQString tty;
// read the ttyname from the fifo
QFile f(fifoName);
TQFile f(fifoName);
if (f.open(IO_ReadOnly))
{
QByteArray t = f.readAll();
tty = QString::fromLocal8Bit(t, t.size());
TQByteArray t = f.readAll();
tty = TQString::fromLocal8Bit(t, t.size());
f.close();
}
f.remove();
@ -557,9 +557,9 @@ QString DebuggerMainWndBase::createOutputWindow()
{
// error, could not start xterm
TRACE("fork failed for fifo " + fifoName);
QFile::remove(fifoName);
TQFile::remove(fifoName);
shutdownTermWindow();
return QString();
return TQString();
}
}
@ -569,7 +569,7 @@ void DebuggerMainWndBase::shutdownTermWindow()
m_outputTermProc = 0;
}
void DebuggerMainWndBase::setTerminalCmd(const QString& cmd)
void DebuggerMainWndBase::setTerminalCmd(const TQString& cmd)
{
m_outputTermCmdStr = cmd;
// revert to default if empty
@ -604,7 +604,7 @@ void DebuggerMainWndBase::slotDebuggerStarting()
m_ttyLevel = m_debugger->ttyLevel();
QString ttyName;
TQString ttyName;
switch (m_ttyLevel) {
case KDebugger::ttySimpleOutputOnly:
ttyName = ttyWindow()->activate();
@ -624,12 +624,12 @@ void DebuggerMainWndBase::slotDebuggerStarting()
}
}
void DebuggerMainWndBase::setDebuggerCmdStr(const QString& cmd)
void DebuggerMainWndBase::setDebuggerCmdStr(const TQString& cmd)
{
m_debuggerCmdStr = cmd;
// make empty if it is the default
if (m_debuggerCmdStr == GdbDriver::defaultGdb()) {
m_debuggerCmdStr = QString();
m_debuggerCmdStr = TQString();
}
}

@ -7,10 +7,10 @@
#ifndef MAINWNDBASE_H
#define MAINWNDBASE_H
#include <qlineedit.h>
#include <qlayout.h>
#include <qpushbutton.h>
#include <qcstring.h>
#include <tqlineedit.h>
#include <tqlayout.h>
#include <tqpushbutton.h>
#include <tqcstring.h>
#include "exprwnd.h"
#include "sys/types.h" /* pid_t */
@ -18,38 +18,38 @@
class KDebugger;
class TTYWindow;
class UpdateUI;
class KToolBar;
class TDEToolBar;
class KStatusBar;
class KProcess;
class TDEProcess;
class DebuggerDriver;
class WatchWindow : public QWidget
class WatchWindow : public TQWidget
{
Q_OBJECT
TQ_OBJECT
public:
WatchWindow(QWidget* parent, const char* name, WFlags f = 0);
WatchWindow(TQWidget* parent, const char* name, WFlags f = 0);
~WatchWindow();
ExprWnd* watchVariables() { return &m_watchVariables; }
QString watchText() const { return m_watchEdit.text(); }
TQString watchText() const { return m_watchEdit.text(); }
int columnWidth(int i) const { return m_watchVariables.columnWidth(i); }
void setColumnWidth(int i, int w) { m_watchVariables.setColumnWidth(i, w); }
protected:
QLineEdit m_watchEdit;
QPushButton m_watchAdd;
QPushButton m_watchDelete;
TQLineEdit m_watchEdit;
TQPushButton m_watchAdd;
TQPushButton m_watchDelete;
ExprWnd m_watchVariables;
QVBoxLayout m_watchV;
QHBoxLayout m_watchH;
TQVBoxLayout m_watchV;
TQHBoxLayout m_watchH;
virtual bool eventFilter(QObject* ob, QEvent* ev);
virtual void dragEnterEvent(QDragEnterEvent* event);
virtual void dropEvent(QDropEvent* event);
virtual bool eventFilter(TQObject* ob, TQEvent* ev);
virtual void dragEnterEvent(TQDragEnterEvent* event);
virtual void dropEvent(TQDropEvent* event);
signals:
void addWatch();
void deleteWatch();
void textDropped(const QString& text);
void textDropped(const TQString& text);
protected slots:
void slotWatchHighlighted();
@ -66,84 +66,84 @@ public:
* Sets the command to invoke the terminal that displays the program
* output. If cmd is the empty string, the default is substituted.
*/
void setTerminalCmd(const QString& cmd);
void setTerminalCmd(const TQString& cmd);
/**
* Sets the command to invoke the debugger.
*/
void setDebuggerCmdStr(const QString& cmd);
void setDebuggerCmdStr(const TQString& cmd);
/**
* Specifies the file where to write the transcript.
*/
void setTranscript(const QString& name);
void setTranscript(const TQString& name);
/**
* Starts to debug the specified program using the specified language
* driver.
*/
bool debugProgram(const QString& executable, QString lang, QWidget* parent);
bool debugProgram(const TQString& executable, TQString lang, TQWidget* parent);
/**
* Specifies the process to attach to after the program is loaded.
*/
void setAttachPid(const QString& pid);
void setAttachPid(const TQString& pid);
// the following are needed to handle program arguments
void setCoreFile(const QString& corefile);
void setRemoteDevice(const QString &remoteDevice);
void overrideProgramArguments(const QString& args);
void setCoreFile(const TQString& corefile);
void setRemoteDevice(const TQString &remoteDevice);
void overrideProgramArguments(const TQString& args);
/** helper around KFileDialog */
static QString myGetFileName(QString caption,
QString dir, QString filter,
QWidget* parent);
static TQString myGetFileName(TQString caption,
TQString dir, TQString filter,
TQWidget* parent);
/** invokes the global options dialog */
virtual void doGlobalOptions(QWidget* parent);
virtual void doGlobalOptions(TQWidget* parent);
protected:
// settings
virtual void saveSettings(KConfig*);
virtual void restoreSettings(KConfig*);
virtual void saveSettings(TDEConfig*);
virtual void restoreSettings(TDEConfig*);
// override must return the integrated output window
virtual TTYWindow* ttyWindow() = 0;
// statusbar texts
QString m_statusActive;
TQString m_statusActive;
// output window
QString m_outputTermCmdStr;
QString m_outputTermKeepScript;
KProcess* m_outputTermProc;
TQString m_outputTermCmdStr;
TQString m_outputTermKeepScript;
TDEProcess* m_outputTermProc;
int m_ttyLevel;
virtual QString createOutputWindow(); /* returns terminal name */
virtual TQString createOutputWindow(); /* returns terminal name */
void shutdownTermWindow();
QString m_lastDirectory; /* the dir of the most recently opened file */
TQString m_lastDirectory; /* the dir of the most recently opened file */
QString m_transcriptFile; /* where gdb dialog is logged */
TQString m_transcriptFile; /* where gdb dialog is logged */
bool m_popForeground; /* whether main wnd raises when prog stops */
int m_backTimeout; /* when wnd goes back */
int m_tabWidth; /* tab width in characters (can be 0) */
QString m_sourceFilter;
QString m_headerFilter;
TQString m_sourceFilter;
TQString m_headerFilter;
// the debugger proper
QString m_debuggerCmdStr;
TQString m_debuggerCmdStr;
KDebugger* m_debugger;
void setupDebugger(QWidget* parent,
void setupDebugger(TQWidget* parent,
ExprWnd* localVars,
ExprWnd* watchVars,
QListBox* backtrace);
DebuggerDriver* driverFromLang(QString lang);
TQListBox* backtrace);
DebuggerDriver* driverFromLang(TQString lang);
/**
* This function derives a driver name from the contents of the named
* file.
*/
QString driverNameFromFile(const QString& exe);
TQString driverNameFromFile(const TQString& exe);
public:
/*
* Important! The following functions must be overridden in derived
* classes and be declared as slots! Note: These must not be declared
* virtual here since Qt signal mechanism fails miserably (because this
* virtual here since TQt signal mechanism fails miserably (because this
* class will not be the left-most base class!).
*/
void newStatusMsg(KStatusBar* statusbar);

@ -5,51 +5,51 @@
*/
#include "memwindow.h"
#include <qheader.h>
#include <klocale.h>
#include <kconfigbase.h>
#include <tqheader.h>
#include <tdelocale.h>
#include <tdeconfigbase.h>
#include "debugger.h"
class MemoryViewItem : public QListViewItem
class MemoryViewItem : public TQListViewItem
{
public:
MemoryViewItem(QListView* parent, QListViewItem* insertAfter, QString raw, QString cooked)
: QListViewItem(parent, insertAfter, raw, cooked) {}
MemoryViewItem(TQListView* parent, TQListViewItem* insertAfter, TQString raw, TQString cooked)
: TQListViewItem(parent, insertAfter, raw, cooked) {}
void setChanged(uint pos, bool b) { m_changed[pos] = b; }
protected:
virtual void paintCell(QPainter* p, const QColorGroup& cg,
virtual void paintCell(TQPainter* p, const TQColorGroup& cg,
int column, int width, int alignment);
bool m_changed[8];
};
void MemoryViewItem::paintCell(QPainter* p, const QColorGroup& cg,
void MemoryViewItem::paintCell(TQPainter* p, const TQColorGroup& cg,
int column, int width, int alignment)
{
if( column > 0 && m_changed[column - 1] ) {
QColorGroup newcg = cg;
newcg.setColor(QColorGroup::Text, red);
QListViewItem::paintCell(p, newcg, column, width, alignment);
TQColorGroup newcg = cg;
newcg.setColor(TQColorGroup::Text, red);
TQListViewItem::paintCell(p, newcg, column, width, alignment);
} else {
QListViewItem::paintCell(p, cg, column, width, alignment);
TQListViewItem::paintCell(p, cg, column, width, alignment);
}
}
MemoryWindow::MemoryWindow(QWidget* parent, const char* name) :
QWidget(parent, name),
MemoryWindow::MemoryWindow(TQWidget* parent, const char* name) :
TQWidget(parent, name),
m_debugger(0),
m_expression(true, this, "expression"),
m_memory(this, "memory"),
m_layout(this, 0, 2),
m_format(MDTword | MDThex)
{
QSize minSize = m_expression.sizeHint();
TQSize minSize = m_expression.sizeHint();
m_expression.setMinimumSize(minSize);
m_expression.setInsertionPolicy(QComboBox::NoInsertion);
m_expression.setInsertionPolicy(TQComboBox::NoInsertion);
m_expression.setMaxCount(15);
m_memory.addColumn(i18n("Address"), 80);
@ -63,8 +63,8 @@ MemoryWindow::MemoryWindow(QWidget* parent, const char* name) :
m_layout.addWidget(&m_memory, 10);
m_layout.activate();
connect(&m_expression, SIGNAL(activated(const QString&)),
this, SLOT(slotNewExpression(const QString&)));
connect(&m_expression, TQ_SIGNAL(activated(const TQString&)),
this, TQ_SLOT(slotNewExpression(const TQString&)));
// the popup menu
m_popup.insertItem(i18n("B&ytes"), MDTbyte);
@ -82,7 +82,7 @@ MemoryWindow::MemoryWindow(QWidget* parent, const char* name) :
m_popup.insertItem(i18n("&Floatingpoint"), MDTfloat);
m_popup.insertItem(i18n("&Strings"), MDTstring);
m_popup.insertItem(i18n("&Instructions"), MDTinsn);
connect(&m_popup, SIGNAL(activated(int)), this, SLOT(slotTypeChange(int)));
connect(&m_popup, TQ_SIGNAL(activated(int)), this, TQ_SLOT(slotTypeChange(int)));
/*
* Handle right mouse button. Signal righteButtonClicked cannot be
@ -95,16 +95,16 @@ MemoryWindow::~MemoryWindow()
{
}
bool MemoryWindow::eventFilter(QObject*, QEvent* ev)
bool MemoryWindow::eventFilter(TQObject*, TQEvent* ev)
{
if (ev->type() == QEvent::MouseButtonRelease) {
handlePopup(static_cast<QMouseEvent*>(ev));
if (ev->type() == TQEvent::MouseButtonRelease) {
handlePopup(static_cast<TQMouseEvent*>(ev));
return true;
}
return false;
}
void MemoryWindow::handlePopup(QMouseEvent* ev)
void MemoryWindow::handlePopup(TQMouseEvent* ev)
{
if (ev->button() == RightButton)
{
@ -121,9 +121,9 @@ void MemoryWindow::handlePopup(QMouseEvent* ev)
}
}
void MemoryWindow::slotNewExpression(const QString& newText)
void MemoryWindow::slotNewExpression(const TQString& newText)
{
QString text = newText.simplifyWhiteSpace();
TQString text = newText.simplifyWhiteSpace();
// see if the string is in the list
// (note: must count downwards because of removeItem!)
@ -132,7 +132,7 @@ void MemoryWindow::slotNewExpression(const QString& newText)
if (m_expression.text(i) == text) {
// yes it is!
// look up the format that was used last time for this expr
QMap<QString,unsigned>::iterator pFormat = m_formatCache.find(text);
TQMap<TQString,unsigned>::iterator pFormat = m_formatCache.find(text);
if (pFormat != m_formatCache.end()) {
m_format = *pFormat;
m_debugger->setMemoryFormat(m_format);
@ -150,7 +150,7 @@ void MemoryWindow::slotNewExpression(const QString& newText)
displayNewExpression(text);
}
void MemoryWindow::displayNewExpression(const QString& expr)
void MemoryWindow::displayNewExpression(const TQString& expr)
{
m_debugger->setMemoryExpression(expr);
m_expression.setEditText(expr);
@ -174,18 +174,18 @@ void MemoryWindow::slotTypeChange(int id)
m_debugger->setMemoryFormat(m_format);
// change the format in the cache
QString expr = m_expression.currentText();
TQString expr = m_expression.currentText();
m_formatCache[expr.simplifyWhiteSpace()] = m_format;
// force redisplay
displayNewExpression(expr);
}
void MemoryWindow::slotNewMemoryDump(const QString& msg, const std::list<MemoryDump>& memdump)
void MemoryWindow::slotNewMemoryDump(const TQString& msg, const std::list<MemoryDump>& memdump)
{
m_memory.clear();
if (!msg.isEmpty()) {
new QListViewItem(&m_memory, QString(), msg);
new TQListViewItem(&m_memory, TQString(), msg);
return;
}
@ -197,27 +197,27 @@ void MemoryWindow::slotNewMemoryDump(const QString& msg, const std::list<MemoryD
m_memory.removeColumn(k);
//add the needed columns
QStringList sl = QStringList::split( "\t", md->dump );
TQStringList sl = TQStringList::split( "\t", md->dump );
for (uint i = 0; i < sl.count(); i++)
m_memory.addColumn("", -1);
QMap<QString,QString> tmpMap;
TQMap<TQString,TQString> tmpMap;
for (; md != memdump.end(); ++md)
{
QString addr = md->address.asString() + " " + md->address.fnoffs;
QStringList sl = QStringList::split( "\t", md->dump );
TQString addr = md->address.asString() + " " + md->address.fnoffs;
TQStringList sl = TQStringList::split( "\t", md->dump );
// save memory
tmpMap[addr] = md->dump;
after = new MemoryViewItem(&m_memory, after, addr, "");
QStringList tmplist;
QMap<QString,QString>::Iterator pos = m_old_memory.find( addr );
TQStringList tmplist;
TQMap<TQString,TQString>::Iterator pos = m_old_memory.find( addr );
if( pos != m_old_memory.end() )
tmplist = QStringList::split( "\t", pos.data() );
tmplist = TQStringList::split( "\t", pos.data() );
for (uint i = 0; i < sl.count(); i++)
{
@ -240,50 +240,50 @@ static const char ExpressionFmt[] = "Expression%d";
static const char FormatFmt[] = "Format%d";
static const char ColumnWidths[] = "ColumnWidths";
void MemoryWindow::saveProgramSpecific(KConfigBase* config)
void MemoryWindow::saveProgramSpecific(TDEConfigBase* config)
{
KConfigGroupSaver s(config, MemoryGroup);
TDEConfigGroupSaver s(config, MemoryGroup);
int numEntries = m_expression.count();
config->writeEntry(NumExprs, numEntries);
QString exprEntry;
QString fmtEntry;
TQString exprEntry;
TQString fmtEntry;
for (int i = 0; i < numEntries;) {
QString text = m_expression.text(i);
TQString text = m_expression.text(i);
i++; /* entries are counted 1-based */
exprEntry.sprintf(ExpressionFmt, i);
fmtEntry.sprintf(FormatFmt, i);
config->writeEntry(exprEntry, text);
QMap<QString,unsigned>::iterator pFormat = m_formatCache.find(text);
TQMap<TQString,unsigned>::iterator pFormat = m_formatCache.find(text);
unsigned fmt = pFormat != m_formatCache.end() ? *pFormat : MDTword | MDThex;
config->writeEntry(fmtEntry, fmt);
}
// column widths
QStrList widths;
QString wStr;
TQStrList widths;
TQString wStr;
for (int i = 0; i < 2; i++) {
int w = m_memory.columnWidth(i);
wStr.setNum(w);
widths.append(wStr);
widths.append(wStr.latin1());
}
config->writeEntry(ColumnWidths, widths);
}
void MemoryWindow::restoreProgramSpecific(KConfigBase* config)
void MemoryWindow::restoreProgramSpecific(TDEConfigBase* config)
{
KConfigGroupSaver s(config, MemoryGroup);
TDEConfigGroupSaver s(config, MemoryGroup);
int numEntries = config->readNumEntry(NumExprs, 0);
m_expression.clear();
QString exprEntry;
QString fmtEntry;
TQString exprEntry;
TQString fmtEntry;
// entries are counted 1-based
for (int i = 1; i <= numEntries; i++) {
exprEntry.sprintf(ExpressionFmt, i);
fmtEntry.sprintf(FormatFmt, i);
QString expr = config->readEntry(exprEntry);
TQString expr = config->readEntry(exprEntry);
unsigned fmt = config->readNumEntry(fmtEntry, MDTword | MDThex);
m_expression.insertItem(expr);
m_formatCache[expr] = fmt & (MDTsizemask | MDTformatmask);
@ -292,19 +292,19 @@ void MemoryWindow::restoreProgramSpecific(KConfigBase* config)
// initialize with top expression
if (numEntries > 0) {
m_expression.setCurrentItem(0);
QString expr = m_expression.text(0);
TQString expr = m_expression.text(0);
m_format = m_formatCache[expr];
m_debugger->setMemoryFormat(m_format);
displayNewExpression(expr);
}
// column widths
QStrList widths;
TQStrList widths;
int n = config->readListEntry(ColumnWidths, widths);
if (n > 2)
n = 2;
for (int i = 0; i < n; i++) {
QString wStr = widths.at(i);
TQString wStr = widths.at(i);
bool ok;
int w = wStr.toInt(&ok);
if (ok)

@ -7,49 +7,49 @@
#ifndef MEMWINDOW_H
#define MEMWINDOW_H
#include <qpopupmenu.h>
#include <qlistview.h>
#include <qcombobox.h>
#include <qlayout.h>
#include <qmap.h>
#include <tqpopupmenu.h>
#include <tqlistview.h>
#include <tqcombobox.h>
#include <tqlayout.h>
#include <tqmap.h>
#include "dbgdriver.h"
class KDebugger;
class KConfigBase;
class TDEConfigBase;
class MemoryWindow : public QWidget
class MemoryWindow : public TQWidget
{
Q_OBJECT
TQ_OBJECT
public:
MemoryWindow(QWidget* parent, const char* name);
MemoryWindow(TQWidget* parent, const char* name);
~MemoryWindow();
void setDebugger(KDebugger* deb) { m_debugger = deb; }
protected:
KDebugger* m_debugger;
QComboBox m_expression;
TQComboBox m_expression;
QListView m_memory;
QMap<QString,QString> m_old_memory;
TQListView m_memory;
TQMap<TQString,TQString> m_old_memory;
QVBoxLayout m_layout;
TQVBoxLayout m_layout;
unsigned m_format;
QMap<QString,unsigned> m_formatCache;
TQMap<TQString,unsigned> m_formatCache;
QPopupMenu m_popup;
TQPopupMenu m_popup;
virtual bool eventFilter(QObject* o, QEvent* ev);
void handlePopup(QMouseEvent* ev);
void displayNewExpression(const QString& expr);
virtual bool eventFilter(TQObject* o, TQEvent* ev);
void handlePopup(TQMouseEvent* ev);
void displayNewExpression(const TQString& expr);
public slots:
void slotNewExpression(const QString&);
void slotNewExpression(const TQString&);
void slotTypeChange(int id);
void slotNewMemoryDump(const QString&, const std::list<MemoryDump>&);
void saveProgramSpecific(KConfigBase* config);
void restoreProgramSpecific(KConfigBase* config);
void slotNewMemoryDump(const TQString&, const std::list<MemoryDump>&);
void saveProgramSpecific(TDEConfigBase* config);
void restoreProgramSpecific(TDEConfigBase* config);
};
#endif // MEMWINDOW_H

@ -4,6 +4,9 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#ifndef MYTRACE_H
#define MYTRACE_H
#include <kdebug.h>
#include <assert.h>
@ -15,11 +18,13 @@
# define ASSERT(x) ((void)0)
#else
# define ASSERT(x) ((x) ? void(0) : void(kdDebug() << \
(QString("assertion failed: ") + #x).ascii() << "\n"))
(TQString("assertion failed: ") + #x).ascii() << "\n"))
#endif
#ifdef WANT_TRACE_OUTPUT
# define TRACE(x) (kdDebug() << (const char*)(x) << "\n")
# define TRACE(x) (kdDebug() << (x) << endl)
#else
# define TRACE(x) ((void)0)
#endif
#endif

@ -5,27 +5,27 @@
*/
#include "pgmargs.h"
#include <qlabel.h>
#include <qpushbutton.h>
#include <qlistview.h>
#include <qlistbox.h>
#include <qtabwidget.h>
#include <kapplication.h>
#include <kfiledialog.h>
#include <klocale.h> /* i18n */
#include <tqlabel.h>
#include <tqpushbutton.h>
#include <tqlistview.h>
#include <tqlistbox.h>
#include <tqtabwidget.h>
#include <tdeapplication.h>
#include <tdefiledialog.h>
#include <tdelocale.h> /* i18n */
#include "config.h"
#include "mydebug.h"
PgmArgs::PgmArgs(QWidget* parent, const QString& pgm, QDict<EnvVar>& envVars,
const QStringList& allOptions) :
PgmArgs::PgmArgs(TQWidget* parent, const TQString& pgm, TQDict<EnvVar>& envVars,
const TQStringList& allOptions) :
PgmArgsBase(parent, "pgmargs", true),
m_envVars(envVars)
{
m_envVars.setAutoDelete(false);
{
QFileInfo fi = pgm;
QString newText = labelArgs->text().arg(fi.fileName());
TQFileInfo fi = pgm;
TQString newText = labelArgs->text().arg(fi.fileName());
labelArgs->setText(newText);
}
@ -48,9 +48,9 @@ PgmArgs::~PgmArgs()
}
// initializes the selected options
void PgmArgs::setOptions(const QStringList& selectedOptions)
void PgmArgs::setOptions(const TQStringList& selectedOptions)
{
QStringList::ConstIterator it;
TQStringList::ConstIterator it;
for (it = selectedOptions.begin(); it != selectedOptions.end(); ++it) {
for (uint i = 0; i < xsldbgOptions->count(); i++) {
if (xsldbgOptions->text(i) == *it) {
@ -62,9 +62,9 @@ void PgmArgs::setOptions(const QStringList& selectedOptions)
}
// returns the selected options
QStringList PgmArgs::options() const
TQStringList PgmArgs::options() const
{
QStringList sel;
TQStringList sel;
if (xsldbgOptionsPage != 0)
{
for (uint i = 0; i < xsldbgOptions->count(); i++) {
@ -83,7 +83,7 @@ void PgmArgs::modifyVar()
void PgmArgs::modifyVar(bool resurrect)
{
QString name, value;
TQString name, value;
parseEnvInput(name, value);
if (name.isEmpty() || name.find(' ') >= 0) /* disallow spaces in names */
return;
@ -98,7 +98,7 @@ void PgmArgs::modifyVar(bool resurrect)
{
val->value = value;
val->status = EnvVar::EVdirty;
val->item = new QListViewItem(envList, name, value); // inserts itself
val->item = new TQListViewItem(envList, name, value); // inserts itself
m_envVars.insert(name, val);
}
} else if (value != val->value) {
@ -112,7 +112,7 @@ void PgmArgs::modifyVar(bool resurrect)
val = new EnvVar;
val->value = value;
val->status = EnvVar::EVnew;
val->item = new QListViewItem(envList, name, value); // inserts itself
val->item = new TQListViewItem(envList, name, value); // inserts itself
m_envVars.insert(name, val);
}
envList->setSelected(val->item, true);
@ -122,10 +122,10 @@ void PgmArgs::modifyVar(bool resurrect)
// delete the selected item
void PgmArgs::deleteVar()
{
QListViewItem* item = envList->selectedItem();
TQListViewItem* item = envList->selectedItem();
if (item == 0)
return;
QString name = item->text(0);
TQString name = item->text(0);
// lookup the value in the dictionary
EnvVar* val = m_envVars[name];
@ -147,29 +147,29 @@ void PgmArgs::deleteVar()
buttonDelete->setEnabled(false);
}
void PgmArgs::parseEnvInput(QString& name, QString& value)
void PgmArgs::parseEnvInput(TQString& name, TQString& value)
{
// parse input from edit field
QString input = envVar->text();
TQString input = envVar->text();
int equalSign = input.find('=');
if (equalSign >= 0) {
name = input.left(equalSign).stripWhiteSpace();
value = input.mid(equalSign+1);
} else {
name = input.stripWhiteSpace();
value = QString(); /* value is empty */
value = TQString(); /* value is empty */
}
}
void PgmArgs::initEnvList()
{
QDictIterator<EnvVar> it = m_envVars;
TQDictIterator<EnvVar> it = m_envVars;
EnvVar* val;
QString name;
TQString name;
for (; (val = it) != 0; ++it) {
val->status = EnvVar::EVclean;
name = it.currentKey();
val->item = new QListViewItem(envList, name, val->value); // inserts itself
val->item = new TQListViewItem(envList, name, val->value); // inserts itself
}
envList->setAllColumnsShowFocus(true);
@ -178,13 +178,13 @@ void PgmArgs::initEnvList()
void PgmArgs::envListCurrentChanged()
{
QListViewItem* item = envList->selectedItem();
TQListViewItem* item = envList->selectedItem();
buttonDelete->setEnabled(item != 0);
if (item == 0)
return;
// must get name from list box
QString name = item->text(0);
TQString name = item->text(0);
EnvVar* val = m_envVars[name];
ASSERT(val != 0);
if (val != 0) {
@ -199,13 +199,13 @@ void PgmArgs::accept()
// simulate that the Modify button was pressed, but don't revive
// dead entries even if the user changed the edit box
modifyVar(false);
QDialog::accept();
TQDialog::accept();
}
void PgmArgs::browseWd()
{
// browse for the working directory
QString newDir = KFileDialog::getExistingDirectory(wd(), this);
TQString newDir = KFileDialog::getExistingDirectory(wd(), this);
if (!newDir.isEmpty()) {
setWd(newDir);
}
@ -213,11 +213,11 @@ void PgmArgs::browseWd()
void PgmArgs::browseArgFile()
{
QString caption = i18n("Select a file name to insert as program argument");
TQString caption = i18n("Select a file name to insert as program argument");
// use the selection as default
QString f = programArgs->markedText();
f = KFileDialog::getSaveFileName(f, QString::null,
TQString f = programArgs->selectedText();
f = KFileDialog::getSaveFileName(f, TQString::null,
this, caption);
// don't clear the selection if no file was selected
if (!f.isEmpty()) {
@ -227,10 +227,10 @@ void PgmArgs::browseArgFile()
void PgmArgs::browseArgDir()
{
QString caption = i18n("Select a directory to insert as program argument");
TQString caption = i18n("Select a directory to insert as program argument");
// use the selection as default
QString f = programArgs->markedText();
TQString f = programArgs->selectedText();
f = KFileDialog::getExistingDirectory(f, this, caption);
// don't clear the selection if no file was selected
if (!f.isEmpty()) {
@ -240,7 +240,7 @@ void PgmArgs::browseArgDir()
void PgmArgs::invokeHelp()
{
kapp->invokeHTMLHelp("kdbg/argspwdenv.html");
tdeApp->invokeHTMLHelp("kdbg/argspwdenv.html");
}
#include "pgmargs.moc"

@ -8,33 +8,33 @@
#define PgmArgs_included
#include "pgmargsbase.h"
#include <qlineedit.h>
#include <qdict.h>
#include <tqlineedit.h>
#include <tqdict.h>
#include "envvar.h"
class QStringList;
class TQStringList;
class PgmArgs : public PgmArgsBase
{
Q_OBJECT
TQ_OBJECT
public:
PgmArgs(QWidget* parent, const QString& pgm, QDict<EnvVar>& envVars,
const QStringList& allOptions);
PgmArgs(TQWidget* parent, const TQString& pgm, TQDict<EnvVar>& envVars,
const TQStringList& allOptions);
virtual ~PgmArgs();
void setArgs(const QString& text) { programArgs->setText(text); }
QString args() const { return programArgs->text(); }
void setOptions(const QStringList& selectedOptions);
QStringList options() const;
void setWd(const QString& wd) { wdEdit->setText(wd); }
QString wd() const { return wdEdit->text(); }
QDict<EnvVar>& envVars() { return m_envVars; }
void setArgs(const TQString& text) { programArgs->setText(text); }
TQString args() const { return programArgs->text(); }
void setOptions(const TQStringList& selectedOptions);
TQStringList options() const;
void setWd(const TQString& wd) { wdEdit->setText(wd); }
TQString wd() const { return wdEdit->text(); }
TQDict<EnvVar>& envVars() { return m_envVars; }
protected:
QDict<EnvVar> m_envVars;
TQDict<EnvVar> m_envVars;
void initEnvList();
void parseEnvInput(QString& name, QString& value);
void parseEnvInput(TQString& name, TQString& value);
void modifyVar(bool resurrect);
protected slots:

@ -1,237 +0,0 @@
#include <kdialog.h>
#include <klocale.h>
/****************************************************************************
** Form implementation generated from reading ui file '../../exper/kdbg/pgmargsbase.ui'
**
** Created: Sun Jun 6 14:57:15 2010
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/
#include "pgmargsbase.h"
#include <qvariant.h>
#include <qpushbutton.h>
#include <qtabwidget.h>
#include <qwidget.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <qheader.h>
#include <qlistview.h>
#include <qlistbox.h>
#include <qlayout.h>
#include <qtooltip.h>
#include <qwhatsthis.h>
/*
* Constructs a PgmArgsBase as a child of 'parent', with the
* name 'name' and widget flags set to 'f'.
*
* The dialog will by default be modeless, unless you set 'modal' to
* TRUE to construct a modal dialog.
*/
PgmArgsBase::PgmArgsBase( QWidget* parent, const char* name, bool modal, WFlags fl )
: QDialog( parent, name, modal, fl )
{
if ( !name )
setName( "PgmArgsBase" );
setSizeGripEnabled( TRUE );
PgmArgsBaseLayout = new QHBoxLayout( this, 11, 6, "PgmArgsBaseLayout");
layout1 = new QVBoxLayout( 0, 0, 6, "layout1");
tabWidget = new QTabWidget( this, "tabWidget" );
argsPage = new QWidget( tabWidget, "argsPage" );
argsPageLayout = new QHBoxLayout( argsPage, 11, 6, "argsPageLayout");
layout2 = new QVBoxLayout( 0, 0, 6, "layout2");
labelArgs = new QLabel( argsPage, "labelArgs" );
layout2->addWidget( labelArgs );
programArgs = new QLineEdit( argsPage, "programArgs" );
layout2->addWidget( programArgs );
layout3 = new QHBoxLayout( 0, 0, 6, "layout3");
insertFile = new QPushButton( argsPage, "insertFile" );
layout3->addWidget( insertFile );
insertDir = new QPushButton( argsPage, "insertDir" );
layout3->addWidget( insertDir );
spacer1 = new QSpacerItem( 61, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
layout3->addItem( spacer1 );
layout2->addLayout( layout3 );
spacer2 = new QSpacerItem( 81, 180, QSizePolicy::Minimum, QSizePolicy::Expanding );
layout2->addItem( spacer2 );
argsPageLayout->addLayout( layout2 );
tabWidget->insertTab( argsPage, QString::fromLatin1("") );
wdPage = new QWidget( tabWidget, "wdPage" );
wdPageLayout = new QHBoxLayout( wdPage, 11, 6, "wdPageLayout");
layout6 = new QVBoxLayout( 0, 0, 6, "layout6");
wdEdit = new QLineEdit( wdPage, "wdEdit" );
layout6->addWidget( wdEdit );
layout5 = new QHBoxLayout( 0, 0, 6, "layout5");
wdBrowse = new QPushButton( wdPage, "wdBrowse" );
layout5->addWidget( wdBrowse );
spacer4 = new QSpacerItem( 321, 31, QSizePolicy::Expanding, QSizePolicy::Minimum );
layout5->addItem( spacer4 );
layout6->addLayout( layout5 );
spacer5 = new QSpacerItem( 111, 161, QSizePolicy::Minimum, QSizePolicy::Expanding );
layout6->addItem( spacer5 );
wdPageLayout->addLayout( layout6 );
tabWidget->insertTab( wdPage, QString::fromLatin1("") );
envPage = new QWidget( tabWidget, "envPage" );
envPageLayout = new QHBoxLayout( envPage, 11, 6, "envPageLayout");
layout9 = new QHBoxLayout( 0, 0, 6, "layout9");
layout7 = new QVBoxLayout( 0, 0, 6, "layout7");
envLabel = new QLabel( envPage, "envLabel" );
layout7->addWidget( envLabel );
envVar = new QLineEdit( envPage, "envVar" );
layout7->addWidget( envVar );
envList = new QListView( envPage, "envList" );
envList->addColumn( tr2i18n( "Name" ) );
envList->header()->setClickEnabled( FALSE, envList->header()->count() - 1 );
envList->addColumn( tr2i18n( "Value" ) );
envList->header()->setClickEnabled( FALSE, envList->header()->count() - 1 );
envList->setSelectionMode( QListView::Single );
layout7->addWidget( envList );
layout9->addLayout( layout7 );
layout8 = new QVBoxLayout( 0, 0, 6, "layout8");
buttonModify = new QPushButton( envPage, "buttonModify" );
layout8->addWidget( buttonModify );
buttonDelete = new QPushButton( envPage, "buttonDelete" );
layout8->addWidget( buttonDelete );
spacer6 = new QSpacerItem( 51, 141, QSizePolicy::Minimum, QSizePolicy::Expanding );
layout8->addItem( spacer6 );
layout9->addLayout( layout8 );
envPageLayout->addLayout( layout9 );
tabWidget->insertTab( envPage, QString::fromLatin1("") );
xsldbgOptionsPage = new QWidget( tabWidget, "xsldbgOptionsPage" );
xsldbgOptionsPageLayout = new QHBoxLayout( xsldbgOptionsPage, 11, 6, "xsldbgOptionsPageLayout");
xsldbgOptions = new QListBox( xsldbgOptionsPage, "xsldbgOptions" );
xsldbgOptions->setSelectionMode( QListBox::Multi );
xsldbgOptionsPageLayout->addWidget( xsldbgOptions );
tabWidget->insertTab( xsldbgOptionsPage, QString::fromLatin1("") );
layout1->addWidget( tabWidget );
layout4 = new QHBoxLayout( 0, 0, 6, "layout4");
buttonHelp = new QPushButton( this, "buttonHelp" );
buttonHelp->setAutoDefault( TRUE );
layout4->addWidget( buttonHelp );
spacer3 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
layout4->addItem( spacer3 );
buttonOk = new QPushButton( this, "buttonOk" );
buttonOk->setAutoDefault( TRUE );
buttonOk->setDefault( TRUE );
layout4->addWidget( buttonOk );
buttonCancel = new QPushButton( this, "buttonCancel" );
buttonCancel->setAutoDefault( TRUE );
layout4->addWidget( buttonCancel );
layout1->addLayout( layout4 );
PgmArgsBaseLayout->addLayout( layout1 );
languageChange();
resize( QSize(528, 410).expandedTo(minimumSizeHint()) );
clearWState( WState_Polished );
// signals and slots connections
connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
connect( insertFile, SIGNAL( clicked() ), this, SLOT( browseArgFile() ) );
connect( wdBrowse, SIGNAL( clicked() ), this, SLOT( browseWd() ) );
connect( buttonModify, SIGNAL( clicked() ), this, SLOT( modifyVar() ) );
connect( buttonDelete, SIGNAL( clicked() ), this, SLOT( deleteVar() ) );
connect( envList, SIGNAL( selectionChanged() ), this, SLOT( envListCurrentChanged() ) );
connect( buttonHelp, SIGNAL( clicked() ), this, SLOT( invokeHelp() ) );
connect( insertDir, SIGNAL( clicked() ), this, SLOT( browseArgDir() ) );
// tab order
setTabOrder( envVar, envList );
setTabOrder( envList, buttonModify );
setTabOrder( buttonModify, buttonDelete );
setTabOrder( buttonDelete, programArgs );
setTabOrder( programArgs, insertFile );
setTabOrder( insertFile, insertDir );
setTabOrder( insertDir, buttonHelp );
setTabOrder( buttonHelp, buttonOk );
setTabOrder( buttonOk, buttonCancel );
setTabOrder( buttonCancel, tabWidget );
setTabOrder( tabWidget, wdEdit );
setTabOrder( wdEdit, wdBrowse );
// buddies
labelArgs->setBuddy( programArgs );
envLabel->setBuddy( envVar );
}
/*
* Destroys the object and frees any allocated resources
*/
PgmArgsBase::~PgmArgsBase()
{
// no need to delete child widgets, Qt does it all for us
}
/*
* Sets the strings of the subwidgets using the current
* language.
*/
void PgmArgsBase::languageChange()
{
setCaption( tr2i18n( "Program Arguments" ) );
labelArgs->setText( tr2i18n( "Run <i>%1</i> with these arguments:" ) );
QWhatsThis::add( programArgs, tr2i18n( "Specify the arguments with which the program shall be invoked for this debugging session. You specify the arguments just as you would on the command line, that is, you can even use quotes and environment variables, for example:<p><tt>--message 'start in: ' $HOME</tt>" ) );
insertFile->setText( tr2i18n( "Insert &file name..." ) );
insertFile->setAccel( QKeySequence( tr2i18n( "Alt+F" ) ) );
QWhatsThis::add( insertFile, tr2i18n( "Browse for a file; the full path name will be inserted at the current cursor location in the edit box above." ) );
insertDir->setText( tr2i18n( "Insert &directory name..." ) );
insertDir->setAccel( QKeySequence( tr2i18n( "Alt+D" ) ) );
QWhatsThis::add( insertDir, tr2i18n( "Browse for a directory; the full path name will be inserted at the current cursor location in the edit box above." ) );
tabWidget->changeTab( argsPage, tr2i18n( "&Arguments" ) );
QWhatsThis::add( wdEdit, tr2i18n( "Specify here the initial working directory where the program is run." ) );
wdBrowse->setText( tr2i18n( "&Browse..." ) );
wdBrowse->setAccel( QKeySequence( tr2i18n( "Alt+B" ) ) );
QWhatsThis::add( wdBrowse, tr2i18n( "Browse for the initial working directory where the program is run." ) );
tabWidget->changeTab( wdPage, tr2i18n( "&Working Directory" ) );
envLabel->setText( tr2i18n( "Environment variables (<tt>NAME=value</tt>):" ) );
QWhatsThis::add( envVar, tr2i18n( "To add a new environment variable or to modify one, specify it here in the form <tt>NAME=value</tt> and click <b>Modify</b>." ) );
envList->header()->setLabel( 0, tr2i18n( "Name" ) );
envList->header()->setLabel( 1, tr2i18n( "Value" ) );
QWhatsThis::add( envList, tr2i18n( "Environment variables that are set <i>in addition</i> to those that are inherited are listed in this table. To add new environment variables, specify them as <tt>NAME=value</tt> in the edit box above and click <b>Modify</b>. To modify a value, select it in this list and click <b>Modify</b>. To delete an environment variable, select it in this list and click <b>Delete</b>." ) );
buttonModify->setText( tr2i18n( "&Modify" ) );
buttonModify->setAccel( QKeySequence( tr2i18n( "Alt+M" ) ) );
QWhatsThis::add( buttonModify, tr2i18n( "Enters the environment variable that is currently specified in the edit box into the list. If the named variable is already in the list, it receives a new value; otherwise, a new entry is created." ) );
buttonDelete->setText( tr2i18n( "&Delete" ) );
buttonDelete->setAccel( QKeySequence( tr2i18n( "Alt+D" ) ) );
QWhatsThis::add( buttonDelete, tr2i18n( "Deletes the selected environment variable from the list. This cannot be used to delete environment variables that are inherited." ) );
tabWidget->changeTab( envPage, tr2i18n( "&Environment" ) );
tabWidget->changeTab( xsldbgOptionsPage, tr2i18n( "&xsldbg Options" ) );
buttonHelp->setText( tr2i18n( "&Help" ) );
buttonHelp->setAccel( QKeySequence( tr2i18n( "F1" ) ) );
buttonOk->setText( tr2i18n( "&OK" ) );
buttonOk->setAccel( QKeySequence( QString::null ) );
buttonCancel->setText( tr2i18n( "&Cancel" ) );
buttonCancel->setAccel( QKeySequence( QString::null ) );
}
#include "pgmargsbase.moc"

@ -1,6 +1,6 @@
<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>PgmArgsBase</class>
<widget class="QDialog">
<widget class="TQDialog">
<property name="name">
<cstring>PgmArgsBase</cstring>
</property>
@ -28,7 +28,7 @@
<property name="spacing">
<number>6</number>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout1</cstring>
</property>
@ -36,11 +36,11 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QTabWidget">
<widget class="TQTabWidget">
<property name="name">
<cstring>tabWidget</cstring>
</property>
<widget class="QWidget">
<widget class="TQWidget">
<property name="name">
<cstring>argsPage</cstring>
</property>
@ -51,7 +51,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout2</cstring>
</property>
@ -59,7 +59,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLabel">
<widget class="TQLabel">
<property name="name">
<cstring>labelArgs</cstring>
</property>
@ -70,7 +70,7 @@
<cstring>programArgs</cstring>
</property>
</widget>
<widget class="QLineEdit">
<widget class="TQLineEdit">
<property name="name">
<cstring>programArgs</cstring>
</property>
@ -78,7 +78,7 @@
<string>Specify the arguments with which the program shall be invoked for this debugging session. You specify the arguments just as you would on the command line, that is, you can even use quotes and environment variables, for example:&lt;p&gt;&lt;tt&gt;--message 'start in: ' $HOME&lt;/tt&gt;</string>
</property>
</widget>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout3</cstring>
</property>
@ -86,30 +86,24 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>insertFile</cstring>
</property>
<property name="text">
<string>Insert &amp;file name...</string>
</property>
<property name="accel">
<string>Alt+F</string>
</property>
<property name="whatsThis" stdset="0">
<string>Browse for a file; the full path name will be inserted at the current cursor location in the edit box above.</string>
</property>
</widget>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>insertDir</cstring>
</property>
<property name="text">
<string>Insert &amp;directory name...</string>
</property>
<property name="accel">
<string>Alt+D</string>
</property>
<property name="whatsThis" stdset="0">
<string>Browse for a directory; the full path name will be inserted at the current cursor location in the edit box above.</string>
</property>
@ -154,7 +148,7 @@
</widget>
</hbox>
</widget>
<widget class="QWidget">
<widget class="TQWidget">
<property name="name">
<cstring>wdPage</cstring>
</property>
@ -165,7 +159,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout6</cstring>
</property>
@ -173,7 +167,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLineEdit">
<widget class="TQLineEdit">
<property name="name">
<cstring>wdEdit</cstring>
</property>
@ -181,7 +175,7 @@
<string>Specify here the initial working directory where the program is run.</string>
</property>
</widget>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout5</cstring>
</property>
@ -189,16 +183,13 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>wdBrowse</cstring>
</property>
<property name="text">
<string>&amp;Browse...</string>
</property>
<property name="accel">
<string>Alt+B</string>
</property>
<property name="whatsThis" stdset="0">
<string>Browse for the initial working directory where the program is run.</string>
</property>
@ -243,7 +234,7 @@
</widget>
</hbox>
</widget>
<widget class="QWidget">
<widget class="TQWidget">
<property name="name">
<cstring>envPage</cstring>
</property>
@ -254,7 +245,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout9</cstring>
</property>
@ -262,7 +253,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout7</cstring>
</property>
@ -270,7 +261,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLabel">
<widget class="TQLabel">
<property name="name">
<cstring>envLabel</cstring>
</property>
@ -281,7 +272,7 @@
<cstring>envVar</cstring>
</property>
</widget>
<widget class="QLineEdit">
<widget class="TQLineEdit">
<property name="name">
<cstring>envVar</cstring>
</property>
@ -289,7 +280,7 @@
<string>To add a new environment variable or to modify one, specify it here in the form &lt;tt&gt;NAME=value&lt;/tt&gt; and click &lt;b&gt;Modify&lt;/b&gt;.</string>
</property>
</widget>
<widget class="QListView">
<widget class="TQListView">
<column>
<property name="text">
<string>Name</string>
@ -324,7 +315,7 @@
</widget>
</vbox>
</widget>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout8</cstring>
</property>
@ -332,30 +323,24 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonModify</cstring>
</property>
<property name="text">
<string>&amp;Modify</string>
</property>
<property name="accel">
<string>Alt+M</string>
</property>
<property name="whatsThis" stdset="0">
<string>Enters the environment variable that is currently specified in the edit box into the list. If the named variable is already in the list, it receives a new value; otherwise, a new entry is created.</string>
</property>
</widget>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonDelete</cstring>
</property>
<property name="text">
<string>&amp;Delete</string>
</property>
<property name="accel">
<string>Alt+D</string>
</property>
<property name="whatsThis" stdset="0">
<string>Deletes the selected environment variable from the list. This cannot be used to delete environment variables that are inherited.</string>
</property>
@ -383,7 +368,7 @@
</widget>
</hbox>
</widget>
<widget class="QWidget">
<widget class="TQWidget">
<property name="name">
<cstring>xsldbgOptionsPage</cstring>
</property>
@ -394,7 +379,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QListBox">
<widget class="TQListBox">
<property name="name">
<cstring>xsldbgOptions</cstring>
</property>
@ -405,7 +390,7 @@
</hbox>
</widget>
</widget>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout4</cstring>
</property>
@ -419,7 +404,7 @@
<property name="spacing">
<number>6</number>
</property>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonHelp</cstring>
</property>
@ -450,16 +435,13 @@
</size>
</property>
</spacer>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonOk</cstring>
</property>
<property name="text">
<string>&amp;OK</string>
</property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>
@ -467,16 +449,13 @@
<bool>true</bool>
</property>
</widget>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonCancel</cstring>
</property>
<property name="text">
<string>&amp;Cancel</string>
</property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>

@ -5,30 +5,30 @@
*/
#include "pgmsettings.h"
#include <klocale.h> /* i18n */
#include <kapplication.h>
#include <qfileinfo.h>
#include <qlayout.h>
#include <qlineedit.h>
#include <qlabel.h>
#include <qradiobutton.h>
#include <qbuttongroup.h>
#include <tdelocale.h> /* i18n */
#include <tdeapplication.h>
#include <tqfileinfo.h>
#include <tqlayout.h>
#include <tqlineedit.h>
#include <tqlabel.h>
#include <tqradiobutton.h>
#include <tqbuttongroup.h>
#include "config.h"
#include "mydebug.h"
ChooseDriver::ChooseDriver(QWidget* parent) :
QWidget(parent, "driver")
ChooseDriver::ChooseDriver(TQWidget* parent) :
TQWidget(parent, "driver")
{
QVBoxLayout* layout = new QVBoxLayout(this, 10);
TQVBoxLayout* layout = new TQVBoxLayout(this, 10);
QLabel* label = new QLabel(this);
TQLabel* label = new TQLabel(this);
label->setText(i18n("How to invoke &GDB - leave empty to use\n"
"the default from the global options:"));
label->setMinimumSize(label->sizeHint());
layout->addWidget(label);
m_debuggerCmd = new QLineEdit(this);
m_debuggerCmd = new TQLineEdit(this);
m_debuggerCmd->setMinimumSize(m_debuggerCmd->sizeHint());
layout->addWidget(m_debuggerCmd);
label->setBuddy(m_debuggerCmd);
@ -36,39 +36,39 @@ ChooseDriver::ChooseDriver(QWidget* parent) :
layout->addStretch(10);
}
void ChooseDriver::setDebuggerCmd(const QString& cmd)
void ChooseDriver::setDebuggerCmd(const TQString& cmd)
{
m_debuggerCmd->setText(cmd);
}
QString ChooseDriver::debuggerCmd() const
TQString ChooseDriver::debuggerCmd() const
{
return m_debuggerCmd->text();
}
OutputSettings::OutputSettings(QWidget* parent) :
QWidget(parent, "output")
OutputSettings::OutputSettings(TQWidget* parent) :
TQWidget(parent, "output")
{
// the group is invisible
m_group = new QButtonGroup(this);
m_group = new TQButtonGroup(this);
m_group->hide();
QVBoxLayout* layout = new QVBoxLayout(this, 10);
TQVBoxLayout* layout = new TQVBoxLayout(this, 10);
QRadioButton* btn;
TQRadioButton* btn;
btn = new QRadioButton(i18n("&No input and output"), this);
btn = new TQRadioButton(i18n("&No input and output"), this);
m_group->insert(btn, 0);
btn->setMinimumSize(btn->sizeHint());
layout->addWidget(btn);
btn = new QRadioButton(i18n("&Only output, simple terminal emulation"), this);
btn = new TQRadioButton(i18n("&Only output, simple terminal emulation"), this);
m_group->insert(btn, 1);
btn->setMinimumSize(btn->sizeHint());
layout->addWidget(btn);
btn = new QRadioButton(i18n("&Full terminal emulation"), this);
btn = new TQRadioButton(i18n("&Full terminal emulation"), this);
m_group->insert(btn, 7);
btn->setMinimumSize(btn->sizeHint());
layout->addWidget(btn);
@ -77,7 +77,7 @@ OutputSettings::OutputSettings(QWidget* parent) :
// there is no simpler way to get to the active button than
// to connect to a signal
connect(m_group, SIGNAL(clicked(int)), SLOT(slotLevelChanged(int)));
connect(m_group, TQ_SIGNAL(clicked(int)), TQ_SLOT(slotLevelChanged(int)));
}
void OutputSettings::setTTYLevel(int l)
@ -89,20 +89,20 @@ void OutputSettings::setTTYLevel(int l)
void OutputSettings::slotLevelChanged(int id)
{
m_ttyLevel = id;
TRACE("new ttyLevel: " + QString().setNum(id));
TRACE("new ttyLevel: " + TQString().setNum(id));
}
ProgramSettings::ProgramSettings(QWidget* parent, QString exeName, bool modal) :
QTabDialog(parent, "program_settings", modal),
ProgramSettings::ProgramSettings(TQWidget* parent, TQString exeName, bool modal) :
TQTabDialog(parent, "program_settings", modal),
m_chooseDriver(this),
m_output(this)
{
// construct title
QFileInfo fi(exeName);
QString cap = kapp->caption();
QString title = i18n("%1: Settings for %2");
TQFileInfo fi(exeName);
TQString cap = tdeApp->caption();
TQString title = i18n("%1: Settings for %2");
setCaption(title.arg(cap, fi.fileName()));
setCancelButton(i18n("Cancel"));

@ -7,43 +7,43 @@
#ifndef PGMSETTINGS_H
#define PGMSETTINGS_H
#include <qtabdialog.h>
#include <tqtabdialog.h>
class QButtonGroup;
class QLineEdit;
class TQButtonGroup;
class TQLineEdit;
class ChooseDriver : public QWidget
class ChooseDriver : public TQWidget
{
public:
ChooseDriver(QWidget* parent);
void setDebuggerCmd(const QString& cmd);
QString debuggerCmd() const;
ChooseDriver(TQWidget* parent);
void setDebuggerCmd(const TQString& cmd);
TQString debuggerCmd() const;
protected:
QLineEdit* m_debuggerCmd;
TQLineEdit* m_debuggerCmd;
};
class OutputSettings : public QWidget
class OutputSettings : public TQWidget
{
Q_OBJECT
TQ_OBJECT
public:
OutputSettings(QWidget* parent);
OutputSettings(TQWidget* parent);
void setTTYLevel(int l);
int ttyLevel() const { return m_ttyLevel; }
protected:
int m_ttyLevel;
QButtonGroup* m_group;
TQButtonGroup* m_group;
protected slots:
void slotLevelChanged(int);
};
class ProgramSettings : public QTabDialog
class ProgramSettings : public TQTabDialog
{
Q_OBJECT
TQ_OBJECT
public:
ProgramSettings(QWidget* parent, QString exeName, bool modal = true);
ProgramSettings(TQWidget* parent, TQString exeName, bool modal = true);
public:
ChooseDriver m_chooseDriver;

@ -0,0 +1,20 @@
##### app icons
tde_install_icons( ${PROJECT_NAME} )
##### pixmap icons
file( GLOB xpm_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.xpm )
install(
FILES ${xpm_files}
DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}/pics
)
##### action icons
tde_install_icons( "action-*"
DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}/icons
)

@ -1,56 +0,0 @@
# toolbar icons
kdbgiconsdir = $(kde_datadir)/kdbg/icons
kdbgicons_ICON = \
pulse \
brkpt \
pgmfinish \
pgmnext \
pgmnexti \
pgmrun \
pgmstep \
pgmstepi \
execopen
# line items and other pictograms
PICTOGRAMS = \
brkena.xpm \
brkdis.xpm \
brktmp.xpm \
brkcond.xpm \
brkorph.xpm \
pcinner.xpm \
pcup.xpm \
regs.xpm \
watch.xpm \
watchcoded.xpm \
watchena.xpm \
watchdis.xpm \
pointer.xpm
pics_DATA = $(PICTOGRAMS)
picsdir = $(kde_datadir)/kdbg/pics
# application icon
KDE_ICON = kdbg
animation = $(shell cd "$(srcdir)" && echo hi22-action-pulse0000*.png)
# this requires ImageMagick
hi22-action-pulse.png: hi22-action-pulse.pngseq
list="$(animation)" ; \
montage +frame +shadow +label -background black \
-geometry 22x22 \
-tile 1x`echo $$list | wc -w` \
$$list hi22-action-pulse.png
hi22-action-pulse.pngseq: hi22-action-pulse.xml
@echo "Using cinelerra render $< into a PNG sequence $@"
@echo "If you do not have cinelerra, just touch $@"
exit 1
# This file can be rendered by cinelerra into a "PNG sequence".
# This produces the PNG sequence $(animation), which is pasted together
# by `make hi22-action-pulse.png'.
EXTRA_DIST = hi22-action-pulse.xml $(animation)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 389 B

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 678 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 B

After

Width:  |  Height:  |  Size: 338 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 482 B

After

Width:  |  Height:  |  Size: 389 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 491 B

After

Width:  |  Height:  |  Size: 393 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 477 B

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 433 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 443 B

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 454 B

After

Width:  |  Height:  |  Size: 368 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 B

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 B

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 B

After

Width:  |  Height:  |  Size: 285 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 383 B

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 636 B

After

Width:  |  Height:  |  Size: 588 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 B

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 390 B

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 507 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 512 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 520 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 519 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 527 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 549 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 543 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 533 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 529 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 523 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 529 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 512 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 899 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1,122 @@
/* XPM */
static char *kdbg[] = {
/* columns rows colors chars-per-pixel */
"32 32 84 1",
" c black",
". c #0C0D16",
"X c #10111D",
"o c #11111E",
"O c #151526",
"+ c #17182A",
"@ c #191A26",
"# c #18182C",
"$ c #1D1E33",
"% c #1E1C36",
"& c #22233D",
"* c #21243B",
"= c #23253C",
"- c #23253D",
"; c #272A3C",
": c #313928",
"> c #333A29",
", c #262843",
"< c #2A2B42",
"1 c #2A2C43",
"2 c #2A2D47",
"3 c #292B48",
"4 c #292B4C",
"5 c #2B2F4A",
"6 c #2B2F4B",
"7 c #2A2C4E",
"8 c #2C2F4D",
"9 c #2B2F50",
"0 c #2D2F57",
"q c #2E3153",
"w c #2E3154",
"e c #2E3254",
"r c #2E3256",
"t c #2F3256",
"y c #2E3059",
"u c #303359",
"i c #30345A",
"p c #31355C",
"a c #31355D",
"s c #313761",
"d c #353464",
"f c #323864",
"g c #343A6A",
"h c #353A6C",
"j c #363B6F",
"k c #363C70",
"l c #383E75",
"z c #3A3D75",
"x c #383F7A",
"c c #393F7C",
"v c #225025",
"b c #225425",
"n c #235926",
"m c #236828",
"M c #236F29",
"N c #247E2A",
"B c #3A4180",
"V c #3B4282",
"C c #3C4181",
"Z c #3E4181",
"A c #3C4385",
"S c #3D4488",
"D c #3E4589",
"F c #3E468D",
"G c #3F4793",
"H c #404790",
"J c #404894",
"K c #434C9E",
"L c #444DA1",
"P c #454DA4",
"I c #454EA6",
"U c #4751AE",
"Y c #4954B6",
"T c #4A55B8",
"R c #4B56BC",
"E c #4E5AC6",
"W c #4F5BCB",
"Q c #525FD5",
"! c #5462DD",
"~ c #5A69EF",
"^ c #24882B",
"/ c #25A32E",
"( c #CE0000",
") c None",
/* pixels */
"))))))))))))))))))))))))))))))))",
"))))))))))))))))))))))))))))))))",
"))))))))))))))))))))))))))))))))",
"))))))))))))))))))))))))))))))))",
"))))))))))) )))) )))))))))))",
")))()))))) vbv )) vbv ))))))()))",
"))))()))) nmMmn nmMmn ))))())))",
")))))())) mN^NmvvmN^Nm )))()))))",
"))))))()) M^/((((((/^M ))())))))",
")))))))() m((O4it,X((m )()))))))",
"))))))))( (>7kkkgfa*>( ())))))))",
")))) )))( ycBBBclhs- ())) ))))",
"))) ()(AFG((((xhs()( )))",
") )))( C(K(PPKG(c(t ())) )",
") )))))()%JL(YTYULJ(lfo)())))) )",
"))))))())dK(R(WERU(F(g&))())))))",
"))))))())C(YEQ(QE(PGB(q))())))))",
")))) ( )H(TW!~!WTPJB(y) ( ))))",
"))) )( H(YEQ!QEYPGB(a () )))",
")) ))())F(URE(ER(LFc(t))()) ))",
") )))())lH(U(TTUL(A(f3))())) )",
") )))))()0DJ(PPPKGD(ga$)())))) )",
")))))))( #c(F(JJFA(k(q. ()))))))",
"))))) ()(lcB((((hst()( )))))",
")))) )))(+sgkkhgfaq2.())) ))))",
")))) )))()(-iaaaiq81@()())) ))))",
")))) ))()))((55521;(()))()) ))))",
"))) )())))) (((((( )))))() )))",
"))) )()))))))) ))))))))() )))",
")) ())))))))))))))))))))))( ))",
")) ())))))))))))))))))))))))( ))",
"))))))))))))))))))))))))))))))))"
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 434 B

After

Width:  |  Height:  |  Size: 390 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 798 B

After

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 443 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 443 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 471 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 486 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 483 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 445 B

@ -4,12 +4,12 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <klocale.h> /* i18n */
#include <qlayout.h>
#include <tdelocale.h> /* i18n */
#include <tqlayout.h>
#include "prefdebugger.h"
PrefDebugger::PrefDebugger(QWidget* parent) :
QWidget(parent, "debugger"),
PrefDebugger::PrefDebugger(TQWidget* parent) :
TQWidget(parent, "debugger"),
m_grid(this, 5, 2, 10),
m_defaultHint(this, "default_hint"),
m_debuggerCCppLabel(this, "debugger_label"),

@ -7,37 +7,37 @@
#ifndef PREFDEBUGGER_H
#define PREFDEBUGGER_H
#include <qlayout.h>
#include <qlineedit.h>
#include <qlabel.h>
#include <tqlayout.h>
#include <tqlineedit.h>
#include <tqlabel.h>
class PrefDebugger : public QWidget
class PrefDebugger : public TQWidget
{
public:
PrefDebugger(QWidget* parent);
PrefDebugger(TQWidget* parent);
QGridLayout m_grid;
TQGridLayout m_grid;
// --- the hint about defaults
protected:
QLabel m_defaultHint;
TQLabel m_defaultHint;
// --- the debugger command
protected:
QLabel m_debuggerCCppLabel;
QLineEdit m_debuggerCCpp;
TQLabel m_debuggerCCppLabel;
TQLineEdit m_debuggerCCpp;
public:
QString debuggerCmd() const { return m_debuggerCCpp.text(); }
void setDebuggerCmd(const QString& cmd) { m_debuggerCCpp.setText(cmd); }
TQString debuggerCmd() const { return m_debuggerCCpp.text(); }
void setDebuggerCmd(const TQString& cmd) { m_debuggerCCpp.setText(cmd); }
// --- the output terminal
protected:
QLabel m_terminalHint;
QLabel m_terminalLabel;
QLineEdit m_terminal;
TQLabel m_terminalHint;
TQLabel m_terminalLabel;
TQLineEdit m_terminal;
public:
QString terminal() const { return m_terminal.text(); }
void setTerminal(const QString& t) { m_terminal.setText(t); }
TQString terminal() const { return m_terminal.text(); }
void setTerminal(const TQString& t) { m_terminal.setText(t); }
};
#endif // PREFDEBUGGER_H

@ -5,10 +5,10 @@
*/
#include "prefmisc.h"
#include <klocale.h> /* i18n */
#include <tdelocale.h> /* i18n */
PrefMisc::PrefMisc(QWidget* parent) :
QWidget(parent, "debugger"),
PrefMisc::PrefMisc(TQWidget* parent) :
TQWidget(parent, "debugger"),
m_grid(this, 6, 2, 10),
m_popForeground(this, "pop_fore"),
m_backTimeoutLabel(this, "back_to_lab"),
@ -44,7 +44,7 @@ PrefMisc::PrefMisc(QWidget* parent) :
m_grid.setRowStretch(5, 10);
}
void PrefMisc::setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit& edit, int row)
void PrefMisc::setupEditGroup(const TQString& label, TQLabel& labWidget, TQLineEdit& edit, int row)
{
labWidget.setText(label);
labWidget.setMinimumSize(labWidget.sizeHint());
@ -54,9 +54,9 @@ void PrefMisc::setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit
m_grid.addWidget(&edit, row, 1);
}
static int readNumeric(const QLineEdit& edit)
static int readNumeric(const TQLineEdit& edit)
{
QString str = edit.text();
TQString str = edit.text();
return str.toInt();
}
@ -67,7 +67,7 @@ int PrefMisc::backTimeout() const
void PrefMisc::setBackTimeout(int to)
{
QString str;
TQString str;
str.setNum(to);
m_backTimeout.setText(str);
}
@ -79,7 +79,7 @@ int PrefMisc::tabWidth() const
void PrefMisc::setTabWidth(int tw)
{
QString str;
TQString str;
str.setNum(tw);
m_tabWidth.setText(str);
}

@ -7,33 +7,33 @@
#ifndef PREFMISC_H
#define PREFMISC_H
#include <qlayout.h>
#include <qcheckbox.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <tqlayout.h>
#include <tqcheckbox.h>
#include <tqlabel.h>
#include <tqlineedit.h>
class PrefMisc : public QWidget
class PrefMisc : public TQWidget
{
public:
PrefMisc(QWidget* parent);
PrefMisc(TQWidget* parent);
QGridLayout m_grid;
TQGridLayout m_grid;
protected:
QCheckBox m_popForeground;
TQCheckBox m_popForeground;
QLabel m_backTimeoutLabel;
QLineEdit m_backTimeout;
TQLabel m_backTimeoutLabel;
TQLineEdit m_backTimeout;
QLabel m_tabWidthLabel;
QLineEdit m_tabWidth;
TQLabel m_tabWidthLabel;
TQLineEdit m_tabWidth;
QLabel m_sourceFilterLabel;
QLineEdit m_sourceFilter;
QLabel m_headerFilterLabel;
QLineEdit m_headerFilter;
TQLabel m_sourceFilterLabel;
TQLineEdit m_sourceFilter;
TQLabel m_headerFilterLabel;
TQLineEdit m_headerFilter;
void setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit& edit, int row);
void setupEditGroup(const TQString& label, TQLabel& labWidget, TQLineEdit& edit, int row);
public:
bool popIntoForeground() const { return m_popForeground.isChecked(); }
@ -42,10 +42,10 @@ public:
void setBackTimeout(int to);
int tabWidth() const;
void setTabWidth(int tw);
QString sourceFilter() const { return m_sourceFilter.text(); }
void setSourceFilter(const QString& f) { m_sourceFilter.setText(f); }
QString headerFilter() const { return m_headerFilter.text(); }
void setHeaderFilter(const QString& f) { m_headerFilter.setText(f); }
TQString sourceFilter() const { return m_sourceFilter.text(); }
void setSourceFilter(const TQString& f) { m_sourceFilter.setText(f); }
TQString headerFilter() const { return m_headerFilter.text(); }
void setHeaderFilter(const TQString& f) { m_headerFilter.setText(f); }
};
#endif // PREFMISC_H

@ -5,37 +5,37 @@
*/
#include "procattach.h"
#include <qlistview.h>
#include <qtoolbutton.h>
#include <qlineedit.h>
#include <kprocess.h>
#include <tqlistview.h>
#include <tqtoolbutton.h>
#include <tqlineedit.h>
#include <tdeprocess.h>
#include <ctype.h>
#include <kapplication.h>
#include <tdeapplication.h>
#include <kiconloader.h>
#include <klocale.h> /* i18n */
#include <tdelocale.h> /* i18n */
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
ProcAttachPS::ProcAttachPS(QWidget* parent) :
ProcAttachPS::ProcAttachPS(TQWidget* parent) :
ProcAttachBase(parent),
m_pidCol(-1),
m_ppidCol(-1)
{
m_ps = new KProcess;
connect(m_ps, SIGNAL(receivedStdout(KProcess*, char*, int)),
this, SLOT(slotTextReceived(KProcess*, char*, int)));
connect(m_ps, SIGNAL(processExited(KProcess*)),
this, SLOT(slotPSDone()));
m_ps = new TDEProcess;
connect(m_ps, TQ_SIGNAL(receivedStdout(TDEProcess*, char*, int)),
this, TQ_SLOT(slotTextReceived(TDEProcess*, char*, int)));
connect(m_ps, TQ_SIGNAL(processExited(TDEProcess*)),
this, TQ_SLOT(slotPSDone()));
QIconSet icon = SmallIconSet("clear_left");
TQIconSet icon = SmallIconSet("clear_left");
filterClear->setIconSet(icon);
processList->setColumnWidth(0, 300);
processList->setColumnWidthMode(0, QListView::Manual);
processList->setColumnAlignment(1, Qt::AlignRight);
processList->setColumnAlignment(2, Qt::AlignRight);
processList->setColumnWidthMode(0, TQListView::Manual);
processList->setColumnAlignment(1, TQt::AlignRight);
processList->setColumnAlignment(2, TQt::AlignRight);
// set the command line
static const char* const psCommand[] = {
@ -66,10 +66,10 @@ void ProcAttachPS::runPS()
m_pidCol = -1;
m_ppidCol = -1;
m_ps->start(KProcess::NotifyOnExit, KProcess::Stdout);
m_ps->start(TDEProcess::NotifyOnExit, TDEProcess::Stdout);
}
void ProcAttachPS::slotTextReceived(KProcess*, char* buffer, int buflen)
void ProcAttachPS::slotTextReceived(TDEProcess*, char* buffer, int buflen)
{
const char* end = buffer+buflen;
while (buffer < end)
@ -79,7 +79,7 @@ void ProcAttachPS::slotTextReceived(KProcess*, char* buffer, int buflen)
{
// push a tokens onto the line
if (!m_token.isEmpty()) {
m_line.push_back(QString::fromLatin1(m_token));
m_line.push_back(TQString::fromLatin1(m_token));
m_token = "";
}
// and insert the line in the list
@ -93,7 +93,7 @@ void ProcAttachPS::slotTextReceived(KProcess*, char* buffer, int buflen)
{
// push a token onto the line
if (!m_token.isEmpty()) {
m_line.push_back(QString::fromLatin1(m_token));
m_line.push_back(TQString::fromLatin1(m_token));
m_token = "";
}
do {
@ -108,7 +108,7 @@ void ProcAttachPS::slotTextReceived(KProcess*, char* buffer, int buflen)
++buffer;
} while (buffer < end && !isspace(*buffer));
// append to the current token
m_token += QCString(start, buffer-start+1); // must count the '\0'
m_token += TQCString(start, buffer-start+1); // must count the '\0'
}
}
}
@ -137,7 +137,7 @@ void ProcAttachPS::pushLine()
processList->addColumn(m_line[i]);
// these columns are normally numbers
processList->setColumnAlignment(processList->columns()-1,
Qt::AlignRight);
TQt::AlignRight);
}
}
}
@ -145,17 +145,17 @@ void ProcAttachPS::pushLine()
{
// insert a line
// find the parent process
QListViewItem* parent = 0;
TQListViewItem* parent = 0;
if (m_ppidCol >= 0 && m_ppidCol < int(m_line.size())) {
parent = processList->findItem(m_line[m_ppidCol], 1);
}
// we assume that the last column is the command
QListViewItem* item;
TQListViewItem* item;
if (parent == 0) {
item = new QListViewItem(processList, m_line.back());
item = new TQListViewItem(processList, m_line.back());
} else {
item = new QListViewItem(parent, m_line.back());
item = new TQListViewItem(parent, m_line.back());
}
item->setOpen(true);
m_line.pop_back();
@ -178,11 +178,11 @@ void ProcAttachPS::pushLine()
* were placed at the root. Here we go through all root items
* and check whether we must reparent them.
*/
QListViewItem* i = processList->firstChild();
TQListViewItem* i = processList->firstChild();
while (i != 0)
{
// advance before we reparent the item
QListViewItem* it = i;
TQListViewItem* it = i;
i = i->nextSibling();
if (it->text(2) == m_line[m_pidCol]) {
processList->takeItem(it);
@ -198,12 +198,12 @@ void ProcAttachPS::slotPSDone()
filterEdited(filterEdit->text());
}
QString ProcAttachPS::text() const
TQString ProcAttachPS::text() const
{
QListViewItem* item = processList->selectedItem();
TQListViewItem* item = processList->selectedItem();
if (item == 0)
return QString();
return TQString();
return item->text(1);
}
@ -218,9 +218,9 @@ void ProcAttachPS::refresh()
}
}
void ProcAttachPS::filterEdited(const QString& text)
void ProcAttachPS::filterEdited(const TQString& text)
{
QListViewItem* i = processList->firstChild();
TQListViewItem* i = processList->firstChild();
if (i) {
setVisibility(i, text);
}
@ -230,10 +230,10 @@ void ProcAttachPS::filterEdited(const QString& text)
* Sets the visibility of \a i and
* returns whether it was made visible.
*/
bool ProcAttachPS::setVisibility(QListViewItem* i, const QString& text)
bool ProcAttachPS::setVisibility(TQListViewItem* i, const TQString& text)
{
bool visible = false;
for (QListViewItem* j = i->firstChild(); j; j = j->nextSibling())
for (TQListViewItem* j = i->firstChild(); j; j = j->nextSibling())
{
if (setVisibility(j, text))
visible = true;
@ -258,8 +258,8 @@ void ProcAttachPS::selectedChanged()
}
ProcAttach::ProcAttach(QWidget* parent) :
QDialog(parent, "procattach", true),
ProcAttach::ProcAttach(TQWidget* parent) :
TQDialog(parent, "procattach", true),
m_label(this, "label"),
m_processId(this, "procid"),
m_buttonOK(this, "ok"),
@ -267,7 +267,7 @@ ProcAttach::ProcAttach(QWidget* parent) :
m_layout(this, 8),
m_buttons(4)
{
QString title = kapp->caption();
TQString title = tdeApp->caption();
title += i18n(": Attach to process");
setCaption(title);
@ -279,12 +279,12 @@ ProcAttach::ProcAttach(QWidget* parent) :
m_processId.setFrame(true);
m_buttonOK.setMinimumSize(100, 30);
connect(&m_buttonOK, SIGNAL(clicked()), SLOT(accept()));
connect(&m_buttonOK, TQ_SIGNAL(clicked()), TQ_SLOT(accept()));
m_buttonOK.setText(i18n("OK"));
m_buttonOK.setDefault(true);
m_buttonCancel.setMinimumSize(100, 30);
connect(&m_buttonCancel, SIGNAL(clicked()), SLOT(reject()));
connect(&m_buttonCancel, TQ_SIGNAL(clicked()), TQ_SLOT(reject()));
m_buttonCancel.setText(i18n("Cancel"));
m_layout.addWidget(&m_label);
@ -306,3 +306,5 @@ ProcAttach::ProcAttach(QWidget* parent) :
ProcAttach::~ProcAttach()
{
}
#include "procattach.moc"

@ -8,15 +8,15 @@
#define ProcAttach_included
#include "procattachbase.h"
#include <qvaluevector.h>
#include <qdialog.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <qpushbutton.h>
#include <qlayout.h>
#include <tqvaluevector.h>
#include <tqdialog.h>
#include <tqlabel.h>
#include <tqlineedit.h>
#include <tqpushbutton.h>
#include <tqlayout.h>
class KProcess;
class TDEProcess;
/*
* This is the full-featured version of the dialog. It is used when the
@ -25,33 +25,33 @@ class KProcess;
class ProcAttachPS : public ProcAttachBase
{
Q_OBJECT
TQ_OBJECT
public:
ProcAttachPS(QWidget* parent);
ProcAttachPS(TQWidget* parent);
~ProcAttachPS();
QString text() const;
TQString text() const;
protected:
void runPS();
virtual void refresh();
virtual void filterEdited(const QString& text);
virtual void filterEdited(const TQString& text);
virtual void selectedChanged();
protected slots:
void slotTextReceived(KProcess* proc, char* buffer, int buflen);
void slotTextReceived(TDEProcess* proc, char* buffer, int buflen);
void slotPSDone();
protected:
void pushLine();
bool setVisibility(QListViewItem* i, const QString& text);
bool setVisibility(TQListViewItem* i, const TQString& text);
KProcess* m_ps;
TDEProcess* m_ps;
// parse state
int m_pidCol; //!< The PID column in the ps output
int m_ppidCol; //!< The parent-PID column in the ps output
QCString m_token;
QValueVector<QString> m_line;
TQCString m_token;
TQValueVector<TQString> m_line;
};
@ -60,22 +60,22 @@ protected:
* when there is no suitable ps command.
*/
class ProcAttach : public QDialog
class ProcAttach : public TQDialog
{
public:
ProcAttach(QWidget* parent);
ProcAttach(TQWidget* parent);
virtual ~ProcAttach();
void setText(const QString& text) { m_processId.setText(text); }
QString text() const { return m_processId.text(); }
void setText(const TQString& text) { m_processId.setText(text); }
TQString text() const { return m_processId.text(); }
protected:
QLabel m_label;
QLineEdit m_processId;
QPushButton m_buttonOK;
QPushButton m_buttonCancel;
QVBoxLayout m_layout;
QHBoxLayout m_buttons;
TQLabel m_label;
TQLineEdit m_processId;
TQPushButton m_buttonOK;
TQPushButton m_buttonCancel;
TQVBoxLayout m_layout;
TQHBoxLayout m_buttons;
};
#endif // ProcAttach_included

@ -1,137 +0,0 @@
#include <kdialog.h>
#include <klocale.h>
/****************************************************************************
** Form implementation generated from reading ui file '../../exper/kdbg/procattachbase.ui'
**
** Created: Sun Jun 6 14:57:15 2010
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/
#include "procattachbase.h"
#include <qvariant.h>
#include <qpushbutton.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <qtoolbutton.h>
#include <qheader.h>
#include <qlistview.h>
#include <qlayout.h>
#include <qtooltip.h>
#include <qwhatsthis.h>
/*
* Constructs a ProcAttachBase as a child of 'parent', with the
* name 'name' and widget flags set to 'f'.
*
* The dialog will by default be modeless, unless you set 'modal' to
* TRUE to construct a modal dialog.
*/
ProcAttachBase::ProcAttachBase( QWidget* parent, const char* name, bool modal, WFlags fl )
: QDialog( parent, name, modal, fl )
{
if ( !name )
setName( "ProcAttachBase" );
setSizeGripEnabled( TRUE );
ProcAttachBaseLayout = new QHBoxLayout( this, 10, 6, "ProcAttachBaseLayout");
layout7 = new QVBoxLayout( 0, 0, 6, "layout7");
layout6 = new QHBoxLayout( 0, 0, 6, "layout6");
filterLabel = new QLabel( this, "filterLabel" );
layout6->addWidget( filterLabel );
filterEdit = new QLineEdit( this, "filterEdit" );
filterEdit->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)5, 0, 0, filterEdit->sizePolicy().hasHeightForWidth() ) );
filterEdit->setMaxLength( 20 );
layout6->addWidget( filterEdit );
filterClear = new QToolButton( this, "filterClear" );
layout6->addWidget( filterClear );
layout7->addLayout( layout6 );
processList = new QListView( this, "processList" );
processList->addColumn( tr2i18n( "Command" ) );
processList->addColumn( tr2i18n( "PID" ) );
processList->addColumn( tr2i18n( "PPID" ) );
processList->setMinimumSize( QSize( 300, 200 ) );
processList->setAllColumnsShowFocus( TRUE );
layout7->addWidget( processList );
layout3 = new QHBoxLayout( 0, 0, 6, "layout3");
buttonRefresh = new QPushButton( this, "buttonRefresh" );
buttonRefresh->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)0, 0, 0, buttonRefresh->sizePolicy().hasHeightForWidth() ) );
layout3->addWidget( buttonRefresh );
spacingBtns = new QSpacerItem( 242, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
layout3->addItem( spacingBtns );
buttonOk = new QPushButton( this, "buttonOk" );
buttonOk->setEnabled( FALSE );
buttonOk->setAutoDefault( TRUE );
buttonOk->setDefault( TRUE );
layout3->addWidget( buttonOk );
buttonCancel = new QPushButton( this, "buttonCancel" );
buttonCancel->setAutoDefault( TRUE );
layout3->addWidget( buttonCancel );
layout7->addLayout( layout3 );
ProcAttachBaseLayout->addLayout( layout7 );
languageChange();
resize( QSize(560, 416).expandedTo(minimumSizeHint()) );
clearWState( WState_Polished );
// signals and slots connections
connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
connect( buttonRefresh, SIGNAL( clicked() ), this, SLOT( refresh() ) );
connect( filterEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( filterEdited(const QString&) ) );
connect( filterClear, SIGNAL( clicked() ), filterEdit, SLOT( clear() ) );
connect( processList, SIGNAL( selectionChanged() ), this, SLOT( selectedChanged() ) );
// tab order
setTabOrder( filterEdit, processList );
setTabOrder( processList, buttonRefresh );
setTabOrder( buttonRefresh, buttonOk );
setTabOrder( buttonOk, buttonCancel );
// buddies
filterLabel->setBuddy( filterEdit );
}
/*
* Destroys the object and frees any allocated resources
*/
ProcAttachBase::~ProcAttachBase()
{
// no need to delete child widgets, Qt does it all for us
}
/*
* Sets the strings of the subwidgets using the current
* language.
*/
void ProcAttachBase::languageChange()
{
setCaption( tr2i18n( "Attach to Process" ) );
filterLabel->setText( tr2i18n( "&Filter or PID:" ) );
QWhatsThis::add( filterEdit, tr2i18n( "Type the name of the process or its process ID (PID) here to reduce the number of entries in the list." ) );
filterClear->setText( tr2i18n( "..." ) );
QToolTip::add( filterClear, tr2i18n( "Clear filter" ) );
QWhatsThis::add( filterClear, tr2i18n( "Use this button to clear the filter text so that all processes are displayed." ) );
processList->header()->setLabel( 0, tr2i18n( "Command" ) );
processList->header()->setLabel( 1, tr2i18n( "PID" ) );
processList->header()->setLabel( 2, tr2i18n( "PPID" ) );
QWhatsThis::add( processList, tr2i18n( "<p>This list displays all processes that are currently running. You must select the process that you want KDbg to attach to. Use the <b>Filter or PID</b> edit box to reduce the number of entries in this list.<p>The text in the <i>Command</i> column is usually, but not always, the command that was used to start the process. The <i>PID</i> column shows the process ID. The <i>PPID</i> column shows the process ID of the parent process. Additional columns show more information about the processes that is also available via the system's <i>ps</i> command.</p><p>The list is not updated automatically. Use the <b>Refresh</b> button to update it.</p>" ) );
buttonRefresh->setText( tr2i18n( "&Refresh" ) );
QWhatsThis::add( buttonRefresh, tr2i18n( "This button updates the list of processes." ) );
buttonOk->setText( tr2i18n( "&OK" ) );
buttonOk->setAccel( QKeySequence( QString::null ) );
QWhatsThis::add( buttonOk, tr2i18n( "You must select a process from the list. Then click the <b>OK</b> button to attach to that process." ) );
buttonCancel->setText( tr2i18n( "&Cancel" ) );
buttonCancel->setAccel( QKeySequence( QString::null ) );
}
#include "procattachbase.moc"

@ -1,7 +1,7 @@
<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>ProcAttachBase</class>
<author>Johannes Sixt</author>
<widget class="QDialog">
<widget class="TQDialog">
<property name="name">
<cstring>ProcAttachBase</cstring>
</property>
@ -23,7 +23,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout7</cstring>
</property>
@ -31,7 +31,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout6</cstring>
</property>
@ -39,7 +39,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLabel">
<widget class="TQLabel">
<property name="name">
<cstring>filterLabel</cstring>
</property>
@ -50,7 +50,7 @@
<cstring>filterEdit</cstring>
</property>
</widget>
<widget class="QLineEdit">
<widget class="TQLineEdit">
<property name="name">
<cstring>filterEdit</cstring>
</property>
@ -69,7 +69,7 @@
<string>Type the name of the process or its process ID (PID) here to reduce the number of entries in the list.</string>
</property>
</widget>
<widget class="QToolButton">
<widget class="TQToolButton">
<property name="name">
<cstring>filterClear</cstring>
</property>
@ -85,7 +85,7 @@
</widget>
</hbox>
</widget>
<widget class="QListView">
<widget class="TQListView">
<column>
<property name="text">
<string>Command</string>
@ -135,7 +135,7 @@
<string>&lt;p&gt;This list displays all processes that are currently running. You must select the process that you want KDbg to attach to. Use the &lt;b&gt;Filter or PID&lt;/b&gt; edit box to reduce the number of entries in this list.&lt;p&gt;The text in the &lt;i&gt;Command&lt;/i&gt; column is usually, but not always, the command that was used to start the process. The &lt;i&gt;PID&lt;/i&gt; column shows the process ID. The &lt;i&gt;PPID&lt;/i&gt; column shows the process ID of the parent process. Additional columns show more information about the processes that is also available via the system's &lt;i&gt;ps&lt;/i&gt; command.&lt;/p&gt;&lt;p&gt;The list is not updated automatically. Use the &lt;b&gt;Refresh&lt;/b&gt; button to update it.&lt;/p&gt;</string>
</property>
</widget>
<widget class="QLayoutWidget">
<widget class="TQLayoutWidget">
<property name="name">
<cstring>layout3</cstring>
</property>
@ -143,7 +143,7 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonRefresh</cstring>
</property>
@ -179,7 +179,7 @@
</size>
</property>
</spacer>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonOk</cstring>
</property>
@ -189,9 +189,6 @@
<property name="text">
<string>&amp;OK</string>
</property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>
@ -202,16 +199,13 @@
<string>You must select a process from the list. Then click the &lt;b&gt;OK&lt;/b&gt; button to attach to that process.</string>
</property>
</widget>
<widget class="QPushButton">
<widget class="TQPushButton">
<property name="name">
<cstring>buttonCancel</cstring>
</property>
<property name="text">
<string>&amp;Cancel</string>
</property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>
@ -243,9 +237,9 @@
</connection>
<connection>
<sender>filterEdit</sender>
<signal>textChanged(const QString&amp;)</signal>
<signal>textChanged(const TQString&amp;)</signal>
<receiver>ProcAttachBase</receiver>
<slot>filterEdited(const QString&amp;)</slot>
<slot>filterEdited(const TQString&amp;)</slot>
</connection>
<connection>
<sender>filterClear</sender>
@ -269,7 +263,7 @@
</tabstops>
<slots>
<slot specifier="pure virtual">refresh()</slot>
<slot specifier="pure virtual">filterEdited(const QString&amp;)</slot>
<slot specifier="pure virtual">filterEdited(const TQString&amp;)</slot>
<slot specifier="pure virtual">selectedChanged()</slot>
</slots>
<layoutdefaults spacing="6" margin="10"/>

@ -5,22 +5,22 @@
*/
#include "programconfig.h"
#include <kconfigbackend.h>
#include <qfile.h>
#include <tdeconfigbackend.h>
#include <tqfile.h>
#include <sys/stat.h>
#include <unistd.h>
struct ProgramConfig::MyBackend : KConfigINIBackEnd
struct ProgramConfig::MyBackend : TDEConfigINIBackEnd
{
MyBackend(KConfigBase* cfg, const QString& fn) :
KConfigINIBackEnd(cfg, fn, "", false)
MyBackend(TDEConfigBase* cfg, const TQString& fn) :
TDEConfigINIBackEnd(cfg, fn, "", false)
{ }
// need the following public
using KConfigINIBackEnd::parseSingleConfigFile;
using TDEConfigINIBackEnd::parseSingleConfigFile;
};
ProgramConfig::ProgramConfig(const QString& fileName) :
ProgramConfig::ProgramConfig(const TQString& fileName) :
m_fileName(fileName)
{
m_iniBackend = new MyBackend(this, fileName);
@ -28,16 +28,16 @@ ProgramConfig::ProgramConfig(const QString& fileName) :
reparseConfiguration();
}
QStringList ProgramConfig::groupList() const
TQStringList ProgramConfig::groupList() const
{
// unused
return QStringList();
return TQStringList();
}
QMap<QString, QString> ProgramConfig::entryMap(const QString&) const
TQMap<TQString, TQString> ProgramConfig::entryMap(const TQString&) const
{
// unused
return QMap<QString, QString>();
return TQMap<TQString, TQString>();
}
void ProgramConfig::reparseConfiguration()
@ -48,7 +48,7 @@ void ProgramConfig::reparseConfiguration()
KEntryKey groupKey("<default>", 0);
m_entryMap.insert(groupKey, KEntry());
QFile file(m_fileName);
TQFile file(m_fileName);
bool readonly = true;
bool useit = true;
if (file.open(IO_ReadWrite)) { /* don't truncate! */
@ -91,9 +91,9 @@ void ProgramConfig::reparseConfiguration()
setReadOnly(readonly || !useit);
}
KEntryMap ProgramConfig::internalEntryMap(const QString& group) const
KEntryMap ProgramConfig::internalEntryMap(const TQString& group) const
{
QCString group_utf = group.utf8();
TQCString group_utf = group.utf8();
KEntryMap tmpEntryMap;
// copy the whole group starting at the special group marker
@ -140,7 +140,7 @@ KEntry ProgramConfig::lookupData(const KEntryKey& key) const
}
}
bool ProgramConfig::internalHasGroup(const QCString&) const
bool ProgramConfig::internalHasGroup(const TQCString&) const
{
// unused
return false;

@ -4,22 +4,22 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <kconfigbase.h>
#include <tdeconfigbase.h>
class KConfigINIBackEnd;
class TDEConfigINIBackEnd;
class ProgramConfig : public KConfigBase
class ProgramConfig : public TDEConfigBase
{
public:
ProgramConfig(const QString &fileName);
virtual QStringList groupList() const;
virtual QMap<QString, QString> entryMap(const QString &group) const;
ProgramConfig(const TQString &fileName);
virtual TQStringList groupList() const;
virtual TQMap<TQString, TQString> entryMap(const TQString &group) const;
virtual void reparseConfiguration();
virtual KEntryMap internalEntryMap( const QString& pGroup ) const;
virtual KEntryMap internalEntryMap( const TQString& pGroup ) const;
virtual KEntryMap internalEntryMap() const;
virtual void putData(const KEntryKey &_key, const KEntry &_data, bool _checkGroup = true);
virtual KEntry lookupData(const KEntryKey &_key) const;
virtual bool internalHasGroup(const QCString &group) const;
virtual bool internalHasGroup(const TQCString &group) const;
protected:
/**
@ -27,10 +27,10 @@ protected:
* keys which indicate the start of a group of entries.
*
* These special keys will have the .key portion of their @ref KEntryKey
* set to QString::null.
* set to TQString::null.
*/
KEntryMap m_entryMap;
QString m_fileName;
TQString m_fileName;
// this is defined out-of-line
struct MyBackend;
MyBackend* m_iniBackend;

@ -4,15 +4,15 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <qheader.h>
#include <kglobalsettings.h>
#include <klocale.h> /* i18n */
#include <tqheader.h>
#include <tdeglobalsettings.h>
#include <tdelocale.h> /* i18n */
#include <kiconloader.h>
#include <qfontdialog.h>
#include <qmessagebox.h>
#include <qpopupmenu.h>
#include <qregexp.h>
#include <qstringlist.h>
#include <tqfontdialog.h>
#include <tqmessagebox.h>
#include <tqpopupmenu.h>
#include <tqregexp.h>
#include <tqstringlist.h>
#include <stdlib.h> /* strtoul */
#include "regwnd.h"
#include "dbgdriver.h"
@ -94,11 +94,11 @@ uint RegisterDisplay::bitMap[] = {
64, 80, 128, /*default*/32,
};
class ModeItem : public QListViewItem
class ModeItem : public TQListViewItem
{
public:
ModeItem(QListView* parent, const QString& name) : QListViewItem(parent, name) {}
ModeItem(QListViewItem* parent) : QListViewItem(parent) {}
ModeItem(TQListView* parent, const TQString& name) : TQListViewItem(parent, name) {}
ModeItem(TQListViewItem* parent) : TQListViewItem(parent) {}
virtual void setMode(RegisterDisplay mode) = 0;
virtual RegisterDisplay mode() = 0;
@ -108,21 +108,21 @@ class GroupingViewItem : public ModeItem
{
public:
GroupingViewItem(RegisterView* parent,
const QString& name, const QString& pattern,
const TQString& name, const TQString& pattern,
RegisterDisplay mode) :
ModeItem(parent, name), matcher(pattern), gmode(mode)
{
setExpandable(true);
setOpen(true);
}
bool matchName(const QString& str) const
bool matchName(const TQString& str) const
{
return matcher.exactMatch(str);
}
virtual void setMode(RegisterDisplay mode)
{
gmode=mode;
QListViewItem *it=firstChild();
TQListViewItem *it=firstChild();
for (; 0!=it; it=it->nextSibling()) {
(static_cast<ModeItem*>(it))->setMode(gmode);
}
@ -130,7 +130,7 @@ public:
virtual RegisterDisplay mode() { return gmode; }
private:
QRegExp matcher;
TQRegExp matcher;
RegisterDisplay gmode;
};
@ -150,7 +150,7 @@ public:
bool m_found;
protected:
virtual void paintCell(QPainter*, const QColorGroup& cg,
virtual void paintCell(TQPainter*, const TQColorGroup& cg,
int column, int width, int alignment);
};
@ -193,13 +193,13 @@ inline int hexCharToDigit(char h)
return -1;
}
static QString toBinary(QString hex)
static TQString toBinary(TQString hex)
{
static const char digits[16][8] = {
"0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111",
"1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111"
};
QString result;
TQString result;
for (unsigned i = 2; i < hex.length(); i++) {
int idx = hexCharToDigit(hex[i].latin1());
@ -220,9 +220,9 @@ static QString toBinary(QString hex)
return result;
}
static QString toOctal(QString hex)
static TQString toOctal(TQString hex)
{
QString result;
TQString result;
int shift = 0;
unsigned v = 0;
for (int i = hex.length()-1; i >= 2; i--) {
@ -245,7 +245,7 @@ static QString toOctal(QString hex)
return "0" + result;
}
static QString toDecimal(QString hex)
static TQString toDecimal(TQString hex)
{
/*
* We convert only numbers that are small enough for this computer's
@ -260,15 +260,15 @@ static QString toDecimal(QString hex)
if (start == end)
return hex;
else
return QString().setNum(val);
return TQString().setNum(val);
}
static QString toBCD(const QString& hex)
static TQString toBCD(const TQString& hex)
{
return hex.right(2);
}
static char* toRaw(const QString& hex, uint& length)
static char* toRaw(const TQString& hex, uint& length)
{
static uint testNum=1;
static void* testVoid=(void*)&testNum;
@ -298,7 +298,7 @@ static char* toRaw(const QString& hex, uint& length)
return data;
}
static long double extractNumber(const QString& hex)
static long double extractNumber(const TQString& hex)
{
uint length;
char* data=toRaw(hex, length);
@ -317,7 +317,7 @@ static long double extractNumber(const QString& hex)
return val;
}
static QString toFloat(const QString& hex, char p)
static TQString toFloat(const TQString& hex, char p)
{
uint bits;
uint prec=6;
@ -325,7 +325,7 @@ static QString toFloat(const QString& hex, char p)
else if (hex.length()<=18) { bits=64; prec=17; }
else { bits=80; prec=20; }
QString cooked=QString::number(extractNumber(hex), p, prec);
TQString cooked=TQString::number(extractNumber(hex), p, prec);
if (p=='e') {
prec+=7;
while (cooked.length()<prec) cooked=cooked.prepend(" ");
@ -333,7 +333,7 @@ static QString toFloat(const QString& hex, char p)
return cooked;
}
static QString convertSingle(const QString& raw, const RegisterDisplay mode)
static TQString convertSingle(const TQString& raw, const RegisterDisplay mode)
{
switch (mode.presentationFlag()) {
case RegisterDisplay::binary: return toBinary(raw);
@ -348,9 +348,9 @@ static QString convertSingle(const QString& raw, const RegisterDisplay mode)
}
}
QString convertRaw(const RegisterInfo reg, RegisterDisplay mode)
TQString convertRaw(const RegisterInfo reg, RegisterDisplay mode)
{
QString cooked;
TQString cooked;
uint totalNibles=0, nibles=mode.bits()>>2;
if (RegisterDisplay::nada!=mode.presentationFlag() &&
reg.rawValue.length() > 2 && reg.rawValue[0] == '0' && reg.rawValue[1] == 'x')
@ -364,12 +364,12 @@ QString convertRaw(const RegisterInfo reg, RegisterDisplay mode)
if (0==nibles) nibles=8; // default to 4 byte, 32 bits values
if (nibles>totalNibles) totalNibles=nibles; // minimum one value
QString raw=reg.rawValue.right(reg.rawValue.length()-2); // clip off "0x"
TQString raw=reg.rawValue.right(reg.rawValue.length()-2); // clip off "0x"
while (raw.length()<totalNibles) raw.prepend("0"); // pad out to totalNibles
QString separator=","; // locale-specific?
TQString separator=","; // locale-specific?
for (int nib=totalNibles-nibles; nib>=0; nib-=nibles) {
QString qstr=convertSingle(raw.mid(nib, nibles).prepend("0x"), mode);
TQString qstr=convertSingle(raw.mid(nib, nibles).prepend("0x"), mode);
if (nib==int(totalNibles-nibles)) cooked=qstr+cooked;
else cooked=qstr+separator+cooked;
@ -389,7 +389,7 @@ void RegisterViewItem::setValue(const RegisterInfo& reg)
m_reg = reg;
setText(1, reg.rawValue);
QString cookedValue = convertRaw(reg, m_mode);
TQString cookedValue = convertRaw(reg, m_mode);
setText(2, cookedValue);
}
@ -397,36 +397,36 @@ void RegisterViewItem::setMode(RegisterDisplay mode)
{
m_mode = mode;
QString cookedValue = convertRaw(m_reg, mode);
TQString cookedValue = convertRaw(m_reg, mode);
setText(2, cookedValue);
}
void RegisterViewItem::paintCell(QPainter* p, const QColorGroup& cg,
void RegisterViewItem::paintCell(TQPainter* p, const TQColorGroup& cg,
int column, int width, int alignment)
{
if (m_changes) {
QColorGroup newcg = cg;
newcg.setColor(QColorGroup::Text, red);
QListViewItem::paintCell(p, newcg, column, width, alignment);
TQColorGroup newcg = cg;
newcg.setColor(TQColorGroup::Text, red);
TQListViewItem::paintCell(p, newcg, column, width, alignment);
} else {
QListViewItem::paintCell(p, cg, column, width, alignment);
TQListViewItem::paintCell(p, cg, column, width, alignment);
}
}
RegisterView::RegisterView(QWidget* parent, const char* name) :
QListView(parent, name)
RegisterView::RegisterView(TQWidget* parent, const char* name) :
TQListView(parent, name)
{
setSorting(-1);
setFont(KGlobalSettings::fixedFont());
setFont(TDEGlobalSettings::fixedFont());
QPixmap iconRegs = UserIcon("regs.xpm");
QPixmap iconWatchcoded = UserIcon("watchcoded.xpm");
QPixmap iconWatch = UserIcon("watch.xpm");
TQPixmap iconRegs = UserIcon("regs.xpm");
TQPixmap iconWatchcoded = UserIcon("watchcoded.xpm");
TQPixmap iconWatch = UserIcon("watch.xpm");
addColumn(QIconSet(iconRegs), i18n("Register"));
addColumn(QIconSet(iconWatchcoded), i18n("Value"));
addColumn(QIconSet(iconWatch), i18n("Decoded value"));
addColumn(TQIconSet(iconRegs), i18n("Register"));
addColumn(TQIconSet(iconWatchcoded), i18n("Value"));
addColumn(TQIconSet(iconWatch), i18n("Decoded value"));
setColumnAlignment(0,AlignLeft);
setColumnAlignment(1,AlignLeft);
@ -435,17 +435,17 @@ RegisterView::RegisterView(QWidget* parent, const char* name) :
setAllColumnsShowFocus( true );
header()->setClickEnabled(false);
connect(this, SIGNAL(contextMenuRequested(QListViewItem*, const QPoint&, int)),
SLOT(rightButtonClicked(QListViewItem*,const QPoint&,int)));
connect(this, TQ_SIGNAL(contextMenuRequested(TQListViewItem*, const TQPoint&, int)),
TQ_SLOT(rightButtonClicked(TQListViewItem*,const TQPoint&,int)));
m_modemenu = new QPopupMenu(this, "ERROR");
m_modemenu = new TQPopupMenu(this, "ERROR");
for (uint i=0; i<sizeof(menuitems)/sizeof(MenuPair); i++) {
if (menuitems[i].isSeparator())
m_modemenu->insertSeparator();
else
m_modemenu->insertItem(i18n(menuitems[i].name), menuitems[i].mode);
}
connect(m_modemenu,SIGNAL(activated(int)),SLOT(slotModeChange(int)));
connect(m_modemenu,TQ_SIGNAL(activated(int)),TQ_SLOT(slotModeChange(int)));
new GroupingViewItem(this, "MIPS VU", "^vu.*",
RegisterDisplay::bits32|RegisterDisplay::realE);
@ -478,9 +478,9 @@ RegisterView::~RegisterView()
{
}
GroupingViewItem* RegisterView::findMatchingGroup(const QString& regName)
GroupingViewItem* RegisterView::findMatchingGroup(const TQString& regName)
{
for (QListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
for (TQListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
{
GroupingViewItem* i = static_cast<GroupingViewItem*>(it);
if (i->matchName(regName))
@ -490,9 +490,9 @@ GroupingViewItem* RegisterView::findMatchingGroup(const QString& regName)
return static_cast<GroupingViewItem*>(firstChild());
}
GroupingViewItem* RegisterView::findGroup(const QString& groupName)
GroupingViewItem* RegisterView::findGroup(const TQString& groupName)
{
for (QListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
for (TQListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
{
if (it->text(0) == groupName)
return static_cast<GroupingViewItem*>(it);
@ -502,7 +502,7 @@ GroupingViewItem* RegisterView::findGroup(const QString& groupName)
void RegisterView::updateGroupVisibility()
{
for (QListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
for (TQListViewItem* it = firstChild(); it != 0; it = it->nextSibling())
{
it->setVisible(it->childCount() > 0);
}
@ -519,7 +519,7 @@ void RegisterView::updateRegisters(const std::list<RegisterInfo>& regs)
}
// parse register values
// must iterate last to first, since QListView inserts at the top
// must iterate last to first, since TQListView inserts at the top
for (std::list<RegisterInfo>::const_reverse_iterator reg = regs.rbegin(); reg != regs.rend(); ++reg)
{
// check if this is a new register
@ -555,14 +555,14 @@ void RegisterView::updateRegisters(const std::list<RegisterInfo>& regs)
}
// remove all 'not found' items;
QStringList del;
TQStringList del;
for (RegMap::iterator i = m_registers.begin(); i != m_registers.end(); ++i)
{
if (!i->second->m_found) {
del.push_back(i->first);
}
}
for (QStringList::Iterator i = del.begin(); i != del.end(); ++i)
for (TQStringList::Iterator i = del.begin(); i != del.end(); ++i)
{
RegMap::iterator it = m_registers.find(*i);
delete it->second;
@ -575,7 +575,7 @@ void RegisterView::updateRegisters(const std::list<RegisterInfo>& regs)
}
void RegisterView::rightButtonClicked(QListViewItem* item, const QPoint& p, int)
void RegisterView::rightButtonClicked(TQListViewItem* item, const TQPoint& p, int)
{
if (item) {
RegisterDisplay mode=static_cast<ModeItem*>(item)->mode();
@ -604,10 +604,10 @@ void RegisterView::slotModeChange(int pcode)
}
}
void RegisterView::paletteChange(const QPalette& oldPal)
void RegisterView::paletteChange(const TQPalette& oldPal)
{
setFont(KGlobalSettings::fixedFont());
QListView::paletteChange(oldPal);
setFont(TDEGlobalSettings::fixedFont());
TQListView::paletteChange(oldPal);
}
#include "regwnd.moc"

@ -7,35 +7,35 @@
#ifndef REGWND_H
#define REGWND_H
#include <qlistview.h>
#include <tqlistview.h>
#include <list>
#include <map>
class QPopupMenu;
class TQPopupMenu;
class RegisterViewItem;
class GroupingViewItem;
struct RegisterInfo;
class RegisterView : public QListView
class RegisterView : public TQListView
{
Q_OBJECT
TQ_OBJECT
public:
RegisterView(QWidget* parent, const char *name = 0L);
RegisterView(TQWidget* parent, const char *name = 0L);
~RegisterView();
protected slots:
void rightButtonClicked(QListViewItem*, const QPoint&, int);
void rightButtonClicked(TQListViewItem*, const TQPoint&, int);
void slotModeChange(int);
void updateRegisters(const std::list<RegisterInfo>&);
private:
void paletteChange(const QPalette& oldPal);
void paletteChange(const TQPalette& oldPal);
void updateGroupVisibility();
GroupingViewItem* findMatchingGroup(const QString& regName);
GroupingViewItem* findGroup(const QString& groupName);
QPopupMenu* m_modemenu;
typedef std::map<QString,RegisterViewItem*> RegMap;
GroupingViewItem* findMatchingGroup(const TQString& regName);
GroupingViewItem* findGroup(const TQString& groupName);
TQPopupMenu* m_modemenu;
typedef std::map<TQString,RegisterViewItem*> RegMap;
RegMap m_registers;
friend class RegisterViewItem;

@ -6,17 +6,17 @@
#include "debugger.h"
#include "sourcewnd.h"
#include <qtextstream.h>
#include <qpainter.h>
#include <qbrush.h>
#include <qfile.h>
#include <qfileinfo.h>
#include <qkeycode.h>
#include <qpopupmenu.h>
#include <kapplication.h>
#include <tqtextstream.h>
#include <tqpainter.h>
#include <tqbrush.h>
#include <tqfile.h>
#include <tqfileinfo.h>
#include <tqkeycode.h>
#include <tqpopupmenu.h>
#include <tdeapplication.h>
#include <kiconloader.h>
#include <kglobalsettings.h>
#include <kmainwindow.h>
#include <tdeglobalsettings.h>
#include <tdemainwindow.h>
#include <algorithm>
#ifdef HAVE_CONFIG_H
#include "config.h"
@ -24,8 +24,8 @@
#include "mydebug.h"
SourceWindow::SourceWindow(const QString& fileName, QWidget* parent, const char* name) :
QTextEdit(parent, name),
SourceWindow::SourceWindow(const TQString& fileName, TQWidget* parent, const char* name) :
TQTextEdit(parent, name),
m_fileName(fileName),
m_curRow(-1),
m_widthItems(16),
@ -40,19 +40,19 @@ SourceWindow::SourceWindow(const QString& fileName, QWidget* parent, const char*
m_brktmp = UserIcon("brktmp");
m_brkcond = UserIcon("brkcond");
m_brkorph = UserIcon("brkorph");
setFont(KGlobalSettings::fixedFont());
setFont(TDEGlobalSettings::fixedFont());
setReadOnly(true);
setMargins(m_widthItems+m_widthPlus+m_widthLineNo, 0, 0 ,0);
setAutoFormatting(AutoNone);
setTextFormat(PlainText);
setWordWrap(NoWrap);
connect(verticalScrollBar(), SIGNAL(valueChanged(int)),
this, SLOT(update()));
connect(this, SIGNAL(cursorPositionChanged(int,int)), this, SLOT(cursorChanged(int)));
connect(verticalScrollBar(), TQ_SIGNAL(valueChanged(int)),
this, TQ_SLOT(update()));
connect(this, TQ_SIGNAL(cursorPositionChanged(int,int)), this, TQ_SLOT(cursorChanged(int)));
viewport()->installEventFilter(this);
// add a syntax highlighter
if (QRegExp("\\.(c(pp|c|\\+\\+)?|CC?|h(\\+\\+|h)?|HH?)$").search(m_fileName) >= 0)
if (TQRegExp("\\.(c(pp|c|\\+\\+)?|CC?|h(\\+\\+|h)?|HH?)$").search(m_fileName) >= 0)
{
new HighlightCpp(this);
}
@ -65,13 +65,13 @@ SourceWindow::~SourceWindow()
bool SourceWindow::loadFile()
{
// first we load the code into QTextEdit
QFile f(m_fileName);
// first we load the code into TQTextEdit
TQFile f(m_fileName);
if (!f.open(IO_ReadOnly)) {
return false;
}
QTextStream t(&f);
TQTextStream t(&f);
setText(t.read());
f.close();
@ -94,7 +94,7 @@ bool SourceWindow::loadFile()
void SourceWindow::reloadFile()
{
QFile f(m_fileName);
TQFile f(m_fileName);
if (!f.open(IO_ReadOnly)) {
// open failed; leave alone
return;
@ -103,7 +103,7 @@ void SourceWindow::reloadFile()
// read text into m_sourceCode
m_sourceCode.clear(); /* clear old text */
QTextStream t(&f);
TQTextStream t(&f);
setText(t.read());
f.close();
@ -148,13 +148,13 @@ void SourceWindow::scrollToRow(int row)
ensureCursorVisible();
}
void SourceWindow::drawFrame(QPainter* p)
void SourceWindow::drawFrame(TQPainter* p)
{
QTextEdit::drawFrame(p);
TQTextEdit::drawFrame(p);
// and paragraph at the top is...
int top = paragraphAt(QPoint(0,contentsY()));
int bot = paragraphAt(QPoint(0,contentsY()+visibleHeight()-1));
int top = paragraphAt(TQPoint(0,contentsY()));
int bot = paragraphAt(TQPoint(0,contentsY()+visibleHeight()-1));
if (bot < 0)
bot = paragraphs()-1;
@ -162,10 +162,10 @@ void SourceWindow::drawFrame(QPainter* p)
// set a clip rectangle
int fw = frameWidth();
QRect inside = rect();
TQRect inside = rect();
inside.addCoords(fw,fw,-fw,-fw);
QRegion clip = p->clipRegion();
clip &= QRegion(inside);
TQRegion clip = p->clipRegion();
clip &= TQRegion(inside);
p->setClipRegion(clip);
p->setFont(m_lineNoFont);
@ -177,8 +177,8 @@ void SourceWindow::drawFrame(QPainter* p)
uchar item = m_lineItems[row];
p->save();
QRect r = paragraphRect(row);
QPoint pt = contentsToViewport(r.topLeft());
TQRect r = paragraphRect(row);
TQPoint pt = contentsToViewport(r.topLeft());
int h = r.height();
p->translate(fw, pt.y()+viewport()->y());
@ -237,7 +237,7 @@ void SourceWindow::drawFrame(QPainter* p)
p->translate(m_widthPlus, 0);
if (!isRowDisassCode(row)) {
p->drawText(0, 0, m_widthLineNo, h, AlignRight|AlignVCenter,
QString().setNum(rowToLine(row)+1));
TQString().setNum(rowToLine(row)+1));
}
p->restore();
}
@ -251,7 +251,7 @@ void SourceWindow::updateLineItems(const KDebugger* dbg)
if (m_lineItems[i] & liBPany) {
// check if this breakpoint still exists
int line = rowToLine(i);
TRACE(QString().sprintf("checking for bp at %d", line));
TRACE(TQString("checking for bp at %1").arg(line));
KDebugger::BrkptROIterator bp = dbg->breakpointsBegin();
for (; bp != dbg->breakpointsEnd(); ++bp)
{
@ -275,7 +275,7 @@ void SourceWindow::updateLineItems(const KDebugger* dbg)
for (KDebugger::BrkptROIterator bp = dbg->breakpointsBegin(); bp != dbg->breakpointsEnd(); ++bp)
{
if (fileNameMatches(bp->fileName)) {
TRACE(QString().sprintf("updating %s:%d", bp->fileName.data(), bp->lineNo));
TRACE(TQString("updating %1:%2").arg(bp->fileName).arg(bp->lineNo));
int i = bp->lineNo;
if (i < 0 || i >= int(m_sourceCode.size()))
continue;
@ -322,27 +322,27 @@ void SourceWindow::setPC(bool set, int lineNo, const DbgAddr& address, int frame
}
}
void SourceWindow::find(const QString& text, bool caseSensitive, FindDirection dir)
void SourceWindow::find(const TQString& text, bool caseSensitive, FindDirection dir)
{
ASSERT(dir == 1 || dir == -1);
if (QTextEdit::find(text, caseSensitive, false, dir > 0))
if (TQTextEdit::find(text, caseSensitive, false, dir > 0))
return;
// not found; wrap around
int para = dir > 0 ? 0 : paragraphs(), index = 0;
QTextEdit::find(text, caseSensitive, false, dir > 0, &para, &index);
TQTextEdit::find(text, caseSensitive, false, dir > 0, &para, &index);
}
void SourceWindow::mousePressEvent(QMouseEvent* ev)
void SourceWindow::mousePressEvent(TQMouseEvent* ev)
{
// we handle left and middle button
if (ev->button() != LeftButton && ev->button() != MidButton)
{
QTextEdit::mousePressEvent(ev);
TQTextEdit::mousePressEvent(ev);
return;
}
// get row
QPoint p = viewportToContents(QPoint(0, ev->y() - viewport()->y()));
TQPoint p = viewportToContents(TQPoint(0, ev->y() - viewport()->y()));
int row = paragraphAt(p);
if (row < 0)
return;
@ -370,22 +370,22 @@ void SourceWindow::mousePressEvent(QMouseEvent* ev)
switch (ev->button()) {
case LeftButton:
TRACE(QString().sprintf("left-clicked line %d", line));
TRACE(TQString("left-clicked line %1").arg(line));
emit clickedLeft(m_fileName, line, address,
(ev->state() & ShiftButton) != 0);
break;
case MidButton:
TRACE(QString().sprintf("mid-clicked row %d", line));
TRACE(TQString("mid-clicked row %1").arg(line));
emit clickedMid(m_fileName, line, address);
break;
default:;
}
}
void SourceWindow::keyPressEvent(QKeyEvent* ev)
void SourceWindow::keyPressEvent(TQKeyEvent* ev)
{
int top1, top2;
QPoint top;
TQPoint top;
switch (ev->key()) {
case Key_Plus:
actionExpandRow(m_curRow);
@ -411,35 +411,35 @@ void SourceWindow::keyPressEvent(QKeyEvent* ev)
return;
case Key_Next:
case Key_Prior:
top = viewportToContents(QPoint(0,0));
top = viewportToContents(TQPoint(0,0));
top1 = paragraphAt(top);
}
QTextEdit::keyPressEvent(ev);
TQTextEdit::keyPressEvent(ev);
switch (ev->key()) {
case Key_Next:
case Key_Prior:
top = viewportToContents(QPoint(0,0));
top = viewportToContents(TQPoint(0,0));
top2 = paragraphAt(top);
setCursorPosition(m_curRow+(top2-top1), 0);
}
}
static inline bool isident(QChar c)
static inline bool isident(TQChar c)
{
return c.isLetterOrNumber() || c.latin1() == '_';
}
bool SourceWindow::wordAtPoint(const QPoint& p, QString& word, QRect& r)
bool SourceWindow::wordAtPoint(const TQPoint& p, TQString& word, TQRect& r)
{
QPoint pv = viewportToContents(p - viewport()->pos());
TQPoint pv = viewportToContents(p - viewport()->pos());
int row, col = charAt(pv, &row);
if (row < 0 || col < 0)
return false;
// isolate the word at row, col
QString line = text(row);
TQString line = text(row);
if (!isident(line[col]))
return false;
@ -450,30 +450,30 @@ bool SourceWindow::wordAtPoint(const QPoint& p, QString& word, QRect& r)
++col;
while (col < int(line.length()) && isident(line[col]));
r = QRect(p, p);
r = TQRect(p, p);
r.addCoords(-5,-5,5,5);
word = line.mid(begin, col-begin);
return true;
}
void SourceWindow::paletteChange(const QPalette& oldPal)
void SourceWindow::paletteChange(const TQPalette& oldPal)
{
setFont(KGlobalSettings::fixedFont());
QTextEdit::paletteChange(oldPal);
setFont(TDEGlobalSettings::fixedFont());
TQTextEdit::paletteChange(oldPal);
}
/*
* Two file names (possibly full paths) match if the last parts - the file
* names - match.
*/
bool SourceWindow::fileNameMatches(const QString& other)
bool SourceWindow::fileNameMatches(const TQString& other)
{
return QFileInfo(other).fileName() == QFileInfo(m_fileName).fileName();
return TQFileInfo(other).fileName() == TQFileInfo(m_fileName).fileName();
}
void SourceWindow::disassembled(int lineNo, const std::list<DisassembledCode>& disass)
{
TRACE("disassembled line " + QString().setNum(lineNo));
TRACE("disassembled line " + TQString().setNum(lineNo));
if (lineNo < 0 || lineNo >= int(m_sourceCode.size()))
return;
@ -486,7 +486,7 @@ void SourceWindow::disassembled(int lineNo, const std::list<DisassembledCode>& d
int i = 0;
for (std::list<DisassembledCode>::const_iterator c = disass.begin(); c != disass.end(); ++c, ++i)
{
QString code = c->code;
TQString code = c->code;
while (code.endsWith("\n"))
code.truncate(code.length()-1);
sl.disass[i] = c->address.asString() + ' ' + code;
@ -594,10 +594,10 @@ bool SourceWindow::isRowDisassCode(int row)
void SourceWindow::expandRow(int row)
{
TRACE("expanding row " + QString().setNum(row));
TRACE("expanding row " + TQString().setNum(row));
// get disassembled code
int line = rowToLine(row);
const std::vector<QString>& disass = m_sourceCode[line].disass;
const std::vector<TQString>& disass = m_sourceCode[line].disass;
// remove PC (must be set again in slot of signal expanded())
m_lineItems[row] &= ~(liPC|liPCup);
@ -625,7 +625,7 @@ void SourceWindow::expandRow(int row)
void SourceWindow::collapseRow(int row)
{
TRACE("collapsing row " + QString().setNum(row));
TRACE("collapsing row " + TQString().setNum(row));
int line = rowToLine(row);
// find end of this block
@ -723,8 +723,8 @@ void SourceWindow::setTabWidth(int numChars)
{
if (numChars <= 0)
numChars = 8;
QFontMetrics fm(currentFont());
QString s;
TQFontMetrics fm(currentFont());
TQString s;
int w = fm.width(s.fill('x', numChars));
setTabStopWidth(w);
}
@ -741,36 +741,36 @@ void SourceWindow::cursorChanged(int row)
}
/*
* We must override the context menu handling because QTextEdit's handling
* We must override the context menu handling because TQTextEdit's handling
* requires that it receives ownership of the popup menu; but the popup menu
* returned from the GUI factory is owned by the factory.
*/
void SourceWindow::contextMenuEvent(QContextMenuEvent* e)
void SourceWindow::contextMenuEvent(TQContextMenuEvent* e)
{
// get the context menu from the GUI factory
QWidget* top = this;
TQWidget* top = this;
do
top = top->parentWidget();
while (!top->isTopLevel());
KMainWindow* mw = static_cast<KMainWindow*>(top);
QPopupMenu* m =
static_cast<QPopupMenu*>(mw->factory()->container("popup_files", mw));
TDEMainWindow* mw = static_cast<TDEMainWindow*>(top);
TQPopupMenu* m =
static_cast<TQPopupMenu*>(mw->factory()->container("popup_files", mw));
m->exec(e->globalPos());
}
bool SourceWindow::eventFilter(QObject* watched, QEvent* e)
bool SourceWindow::eventFilter(TQObject* watched, TQEvent* e)
{
if (e->type() == QEvent::ContextMenu && watched == viewport())
if (e->type() == TQEvent::ContextMenu && watched == viewport())
{
contextMenuEvent(static_cast<QContextMenuEvent*>(e));
contextMenuEvent(static_cast<TQContextMenuEvent*>(e));
return true;
}
return QTextEdit::eventFilter(watched, e);
return TQTextEdit::eventFilter(watched, e);
}
HighlightCpp::HighlightCpp(SourceWindow* srcWnd) :
QSyntaxHighlighter(srcWnd),
TQSyntaxHighlighter(srcWnd),
m_srcWnd(srcWnd)
{
}
@ -782,7 +782,7 @@ enum HLState {
hlString
};
static const QString ckw[] =
static const TQString ckw[] =
{
"and",
"and_eq",
@ -860,7 +860,7 @@ static const QString ckw[] =
"xor_eq"
};
int HighlightCpp::highlightParagraph(const QString& text, int state)
int HighlightCpp::highlightParagraph(const TQString& text, int state)
{
int row = currentParagraph();
// highlight assembly lines
@ -876,12 +876,12 @@ int HighlightCpp::highlightParagraph(const QString& text, int state)
// check for preprocessor line
if (state == 0 && text.stripWhiteSpace().startsWith("#"))
{
setFormat(0, text.length(), QColor("dark green"));
setFormat(0, text.length(), TQColor("dark green"));
return 0;
}
// a font for keywords
QFont identFont = textEdit()->currentFont();
TQFont identFont = textEdit()->currentFont();
identFont.setBold(!identFont.bold());
unsigned start = 0;
@ -892,7 +892,7 @@ int HighlightCpp::highlightParagraph(const QString& text, int state)
case hlCommentLine:
end = text.length();
state = 0;
setFormat(start, end-start, QColor("gray50"));
setFormat(start, end-start, TQColor("gray50"));
break;
case hlCommentBlock:
end = text.find("*/", start);
@ -900,7 +900,7 @@ int HighlightCpp::highlightParagraph(const QString& text, int state)
end += 2, state = 0;
else
end = text.length();
setFormat(start, end-start, QColor("gray50"));
setFormat(start, end-start, TQColor("gray50"));
break;
case hlString:
for (end = start+1; end < int(text.length()); end++) {
@ -913,7 +913,7 @@ int HighlightCpp::highlightParagraph(const QString& text, int state)
}
}
state = 0;
setFormat(start, end-start, QColor("dark red"));
setFormat(start, end-start, TQColor("dark red"));
break;
case hlIdent:
for (end = start+1; end < int(text.length()); end++) {

@ -7,9 +7,9 @@
#ifndef SOURCEWND_H
#define SOURCEWND_H
#include <qpixmap.h>
#include <qtextedit.h>
#include <qsyntaxhighlighter.h>
#include <tqpixmap.h>
#include <tqtextedit.h>
#include <tqsyntaxhighlighter.h>
#include <vector>
#include "dbgdriver.h"
@ -17,23 +17,23 @@
class KDebugger;
struct DbgAddr;
class SourceWindow : public QTextEdit
class SourceWindow : public TQTextEdit
{
Q_OBJECT
TQ_OBJECT
public:
SourceWindow(const QString& fileName, QWidget* parent, const char* name);
SourceWindow(const TQString& fileName, TQWidget* parent, const char* name);
~SourceWindow();
bool loadFile();
void reloadFile();
bool fileNameMatches(const QString& other);
bool fileNameMatches(const TQString& other);
void scrollTo(int lineNo, const DbgAddr& address);
const QString& fileName() const { return m_fileName; }
const TQString& fileName() const { return m_fileName; }
void updateLineItems(const KDebugger* dbg);
void setPC(bool set, int lineNo, const DbgAddr& address, int frameNo);
enum FindDirection { findForward = 1, findBackward = -1 };
void find(const QString& text, bool caseSensitive, FindDirection dir);
bool wordAtPoint(const QPoint& p, QString& word, QRect& r);
void find(const TQString& text, bool caseSensitive, FindDirection dir);
bool wordAtPoint(const TQPoint& p, TQString& word, TQRect& r);
/**
* Translates row number (zero-based) to zero-based source line number.
* If sourceRow is non-zero, it is filled with the source code row
@ -53,12 +53,12 @@ public:
void activeLine(int& lineNo, DbgAddr& address);
protected:
virtual void drawFrame(QPainter* p);
virtual bool eventFilter(QObject* watched, QEvent* e);
virtual void contextMenuEvent(QContextMenuEvent* e);
virtual void mousePressEvent(QMouseEvent* ev);
virtual void keyPressEvent(QKeyEvent* ev);
virtual void paletteChange(const QPalette&);
virtual void drawFrame(TQPainter* p);
virtual bool eventFilter(TQObject* watched, TQEvent* e);
virtual void contextMenuEvent(TQContextMenuEvent* e);
virtual void mousePressEvent(TQMouseEvent* ev);
virtual void keyPressEvent(TQKeyEvent* ev);
virtual void paletteChange(const TQPalette&);
void expandRow(int row);
void collapseRow(int row);
void scrollToRow(int row);
@ -69,9 +69,9 @@ protected:
void actionCollapseRow(int row);
signals:
void clickedLeft(const QString&, int, const DbgAddr& address, bool);
void clickedMid(const QString&, int, const DbgAddr& address);
void disassemble(const QString&, int);
void clickedLeft(const TQString&, int, const DbgAddr& address, bool);
void clickedMid(const TQString&, int, const DbgAddr& address);
void disassemble(const TQString&, int);
void expanded(int lineNo); /* source lineNo has been expanded */
void collapsed(int lineNo); /* source lineNo has been collapsed */
public slots:
@ -79,7 +79,7 @@ public slots:
void cursorChanged(int row);
protected:
QString m_fileName;
TQString m_fileName;
enum LineItem { liPC = 1, liPCup = 2,
liBP = 4, liBPdisabled = 8, liBPtemporary = 16,
liBPconditional = 32, liBPorphan = 64,
@ -87,8 +87,8 @@ protected:
};
struct SourceLine {
QString code; /* a line of text */
std::vector<QString> disass; /* its disassembled code */
TQString code; /* a line of text */
std::vector<TQString> disass; /* its disassembled code */
std::vector<DbgAddr> disassAddr; /* the addresses thereof */
bool canDisass; /* if line can be disassembled */
SourceLine() : canDisass(true) { }
@ -98,27 +98,27 @@ protected:
std::vector<int> m_rowToLine; //!< The source line number for each row
std::vector<uchar> m_lineItems; //!< Icons displayed on the line
QPixmap m_pcinner; /* PC at innermost frame */
QPixmap m_pcup; /* PC at frame up the stack */
QPixmap m_brkena; /* enabled breakpoint */
QPixmap m_brkdis; /* disabled breakpoint */
QPixmap m_brktmp; /* temporary breakpoint marker */
QPixmap m_brkcond; /* conditional breakpoint marker */
QPixmap m_brkorph; /* orphaned breakpoint marker */
QFont m_lineNoFont; //!< The font used to draw line numbers
TQPixmap m_pcinner; /* PC at innermost frame */
TQPixmap m_pcup; /* PC at frame up the stack */
TQPixmap m_brkena; /* enabled breakpoint */
TQPixmap m_brkdis; /* disabled breakpoint */
TQPixmap m_brktmp; /* temporary breakpoint marker */
TQPixmap m_brkcond; /* conditional breakpoint marker */
TQPixmap m_brkorph; /* orphaned breakpoint marker */
TQFont m_lineNoFont; //!< The font used to draw line numbers
int m_curRow; //!< The highlighted row
int m_widthItems; //!< The width of the item column
int m_widthPlus; //!< The width of the expander column
int m_widthLineNo; //!< The width of the line number columns
};
class HighlightCpp : public QSyntaxHighlighter
class HighlightCpp : public TQSyntaxHighlighter
{
SourceWindow* m_srcWnd;
public:
HighlightCpp(SourceWindow* srcWnd);
virtual int highlightParagraph(const QString& text, int state);
virtual int highlightParagraph(const TQString& text, int state);
};
#endif // SOURCEWND_H

@ -0,0 +1,81 @@
include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
${TDE_LIB_DIR}
)
##### (executables)
tde_add_executable( anonstruct
SOURCES
anonstruct.cpp
)
tde_add_executable( locals
SOURCES
locals.cpp
)
tde_add_executable( maths
SOURCES
maths.cpp
)
tde_add_executable( nestedclass
SOURCES
nestedclass.cpp
)
tde_add_executable( qt
SOURCES
qt.cpp
LINK
tdecore-shared
)
tde_add_executable( repeats
SOURCES
repeats.cpp
LINK
tdecore-shared
)
tde_add_executable( std
SOURCES
std.cpp
)
tde_add_executable( templates
SOURCES
templates.cpp
)
tde_add_executable( testfile
SOURCES
testfile.cpp
LINK
tdecore-shared
)
tde_add_executable( widechar
SOURCES
widechar.cpp
)

@ -1,62 +0,0 @@
## This is the example XSL and XML files for debugging with xsldbg
EXTRA_DIST = xsldoc.xsl xsldoc.xml
# set the include path for X, qt and KDE
INCLUDES= $(all_includes)
# always compile with debugging info switched on
AM_CXXFLAGS = -g
# Disable optimization to ensure that variables are not hidden by the
# compiler
CXXFLAGS:=$(patsubst -O%,,$(CXXFLAGS))
if BUILDTESTPROGS
PROGS = \
anonstruct \
locals \
maths \
nestedclass \
qt \
repeats \
std \
templates \
testfile \
widechar
else
PROGS =
endif
noinst_PROGRAMS = $(PROGS)
testfile_SOURCES = testfile.cpp
testfile_LDFLAGS = -g $(all_libraries) $(KDE_RPATH)
testfile_LDADD = $(LIB_QT)
locals_SOURCES = locals.cpp
locals_LDFLAGS = -g
maths_SOURCES = maths.cpp
maths_LDFLAGS = -g
qt_SOURCES = qt.cpp
qt_LDFLAGS = -g $(all_libraries) $(KDE_RPATH)
qt_LDADD = $(LIB_QT)
repeats_SOURCES = repeats.cpp
repeats_LDFLAGS = -g $(all_libraries) $(KDE_RPATH)
repeats_LDADD = $(LIB_QT)
std_SOURCES = std.cpp
std_LDFLAGS = -g
templates_SOURCES = templates.cpp
templates_LDFLAGS = -g
anonstruct_SOURCES = anonstruct.cpp
anonstruct_LDFLAGS = -g
nestedclass_SOURCES = nestedclass.cpp
nestedclass_LDFLAGS = -g
widechar_SOURCES = widechar.cpp
widechar_LDFLAGS = -g

@ -1,8 +1,8 @@
#include <qmap.h>
#include <qvaluelist.h>
#include <qvaluevector.h>
#include <qstring.h>
#include <qrect.h>
#include <tqmap.h>
#include <tqvaluelist.h>
#include <tqvaluevector.h>
#include <tqstring.h>
#include <tqrect.h>
#include <iostream>
template<typename T>
@ -22,20 +22,20 @@ void test_sharing(const T& input)
int main()
{
QMap<QString,int> str2int;
TQMap<TQString,int> str2int;
str2int["foo"] = 42;
test_sharing(str2int);
QValueList<int> ints;
TQValueList<int> ints;
ints.push_back(42);
test_sharing(ints);
QValueVector<double> vals(6, 47.11);
TQValueVector<double> vals(6, 47.11);
vals.push_back(42);
test_sharing(vals);
QRect r(10,20, 130, 240);
QPoint p = r.topLeft();
QPoint q = r.bottomRight();
TQRect r(10,20, 130, 240);
TQPoint p = r.topLeft();
TQPoint q = r.bottomRight();
std::cout << r.width() << r.height() << p.x() << q.y() << std::endl;
}

@ -1,6 +1,6 @@
// test <repeats 30 times> in arrays
#include <qstring.h>
#include <tqstring.h>
struct Big {
struct bog {
@ -26,7 +26,7 @@ int main()
for (int i = 1; i < 29; i++)
apf[i] = f;
QString s[300];
TQString s[300];
for (int i = 0; i < 300; i++)
s[i].sprintf("String %d", i);

@ -13,7 +13,7 @@ struct V : std::vector<T>
V(const T& v) : std::vector<T>(10, v) {}
void anotherone(const T& v)
{
push_back(v);
this->push_back(v);
}
};

@ -1,8 +1,8 @@
#include <iostream>
#include <qstring.h>
#include <qfile.h>
#include <qfileinfo.h>
#include <qdir.h>
#include <tqstring.h>
#include <tqfile.h>
#include <tqfileinfo.h>
#include <tqdir.h>
#include <math.h>
enum E { red, green, blue, yellow };
@ -34,7 +34,7 @@ class Dl : public Cl
public:
Dl(int r);
virtual int f(int x);
int operator()(const QString& x, int& y) const;
int operator()(const TQString& x, int& y) const;
operator const char*() { return 0; }
operator PtrFunc*();
};
@ -76,9 +76,9 @@ void f(E e[3], char c)
char buffer[300];
memset(buffer, 1, 300);
for (int i = 0; i < sizeof(buffer); i +=15) buffer[i] = '\02';
QDir dir;
QFile file;
QFileInfo fi;
TQDir dir;
TQFile file;
TQFileInfo fi;
x = red;
emptyBase eb;
emptyDerived ed;
@ -101,6 +101,25 @@ void strtest(const char* t)
template<typename F>
void templated_strtest(F f, const char* t)
{
// test <incomplete sequence> in various contexts
struct incomplete_seq_intern {
int val;
char is[4];
int val2;
};
struct incomplete_seq_end {
int val;
char is[4];
};
unsigned char a[4] = {',', 020, 021, 0325};
incomplete_seq_intern b = { 1, {',', 020, 021, 0325}, 2 };
incomplete_seq_end c = { 1, {',', 020, 021, 0325} };
unsigned char d[30][4] = { {',', 020, 021, 0325}, };
for (int i = 1; i < 30; i++)
memcpy(d[i], d[0], 4);
incomplete_seq_intern ba[30] = { { 1, {',', 020, 021, 0325}, 2 } };
incomplete_seq_end ca[30] = { { 1, {',', 020, 021, 0325} } };
f(t);
}
@ -135,11 +154,11 @@ int main(int argc, char* argv[])
}
(*pf[0])(e, '\n');
QString s;
TQString s;
s = "Hi, there!\r\n\t\"\'\\";
const QString& strref = s;
const TQString& strref = s;
templated_strtest(strtest, s);
s = "asbcxxxxxxxxxxxxxxxxxxxxxxxxxxx";
@ -190,7 +209,7 @@ int Dl::f(int x)
return y+3;
}
int Dl::operator()(const QString& x, int& y) const
int Dl::operator()(const TQString& x, int& y) const
{
std::cerr << "ha! I know!" << std::endl;
return 1;

@ -651,17 +651,3 @@ Ie if you have loaded a stylsheet file of ../en/xsldoc.xsl you can do this
</cmd>
</xsldoc>
<!-- initialization code for xemacs -->
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:
-->

@ -100,15 +100,3 @@ Command : <xsl:value-of select="@title"/><xsl:text >
</xsl:stylesheet>
<!-- initialization code for xemacs -->
<!--
Local Variables:
mode: xsl
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:2
sgml-indent-data:nil
End:
-->

@ -6,37 +6,37 @@
#include "threadlist.h"
#include "dbgdriver.h"
#include <klocale.h>
#include <tdelocale.h>
#include <kiconloader.h>
#include <qbitmap.h>
#include <qpainter.h>
#include <tqbitmap.h>
#include <tqpainter.h>
class ThreadEntry : public QListViewItem, public ThreadInfo
class ThreadEntry : public TQListViewItem, public ThreadInfo
{
public:
ThreadEntry(QListView* parent, const ThreadInfo& thread);
void setFunction(const QString& func);
ThreadEntry(TQListView* parent, const ThreadInfo& thread);
void setFunction(const TQString& func);
bool m_delete; /* used for updating the list */
};
ThreadEntry::ThreadEntry(QListView* parent, const ThreadInfo& thread) :
QListViewItem(parent, thread.threadName, thread.function),
ThreadEntry::ThreadEntry(TQListView* parent, const ThreadInfo& thread) :
TQListViewItem(parent, thread.threadName, thread.function),
ThreadInfo(thread),
m_delete(false)
{
}
void ThreadEntry::setFunction(const QString& func)
void ThreadEntry::setFunction(const TQString& func)
{
function = func;
setText(1, function);
}
ThreadList::ThreadList(QWidget* parent, const char* name) :
QListView(parent, name)
ThreadList::ThreadList(TQWidget* parent, const char* name) :
TQListView(parent, name)
{
addColumn(i18n("Thread ID"), 150);
addColumn(i18n("Location"));
@ -45,8 +45,8 @@ ThreadList::ThreadList(QWidget* parent, const char* name) :
m_focusIcon = UserIcon("pcinner");
makeNoFocusIcon();
connect(this, SIGNAL(currentChanged(QListViewItem*)),
this, SLOT(slotCurrentChanged(QListViewItem*)));
connect(this, TQ_SIGNAL(currentChanged(TQListViewItem*)),
this, TQ_SLOT(slotCurrentChanged(TQListViewItem*)));
}
ThreadList::~ThreadList()
@ -56,7 +56,7 @@ ThreadList::~ThreadList()
void ThreadList::updateThreads(const std::list<ThreadInfo>& threads)
{
// reset flag in all items
for (QListViewItem* e = firstChild(); e != 0; e = e->nextSibling()) {
for (TQListViewItem* e = firstChild(); e != 0; e = e->nextSibling()) {
static_cast<ThreadEntry*>(e)->m_delete = true;
}
@ -76,7 +76,7 @@ void ThreadList::updateThreads(const std::list<ThreadInfo>& threads)
}
// delete all entries that have not been seen
for (QListViewItem* e = firstChild(); e != 0;) {
for (TQListViewItem* e = firstChild(); e != 0;) {
ThreadEntry* te = static_cast<ThreadEntry*>(e);
e = e->nextSibling(); /* step ahead before deleting it ;-) */
if (te->m_delete) {
@ -87,7 +87,7 @@ void ThreadList::updateThreads(const std::list<ThreadInfo>& threads)
ThreadEntry* ThreadList::threadById(int id)
{
for (QListViewItem* e = firstChild(); e != 0; e = e->nextSibling()) {
for (TQListViewItem* e = firstChild(); e != 0; e = e->nextSibling()) {
ThreadEntry* te = static_cast<ThreadEntry*>(e);
if (te->id == id) {
return te;
@ -104,13 +104,13 @@ void ThreadList::makeNoFocusIcon()
{
m_noFocusIcon = m_focusIcon;
{
QPainter p(&m_noFocusIcon);
p.fillRect(0,0, m_noFocusIcon.width(),m_noFocusIcon.height(), QColor(white));
TQPainter p(&m_noFocusIcon);
p.fillRect(0,0, m_noFocusIcon.width(),m_noFocusIcon.height(), TQColor(white));
}
m_noFocusIcon.setMask(m_noFocusIcon.createHeuristicMask());
}
void ThreadList::slotCurrentChanged(QListViewItem* newItem)
void ThreadList::slotCurrentChanged(TQListViewItem* newItem)
{
if (newItem == 0)
return;

@ -7,23 +7,23 @@
#ifndef THREADLIST_H
#define THREADLIST_H
#include <qlistview.h>
#include <qpixmap.h>
#include <tqlistview.h>
#include <tqpixmap.h>
#include <list>
class ThreadInfo;
class ThreadEntry;
class ThreadList : public QListView
class ThreadList : public TQListView
{
Q_OBJECT
TQ_OBJECT
public:
ThreadList(QWidget* parent, const char* name);
ThreadList(TQWidget* parent, const char* name);
~ThreadList();
public slots:
void updateThreads(const std::list<ThreadInfo>&);
void slotCurrentChanged(QListViewItem*);
void slotCurrentChanged(TQListViewItem*);
signals:
void setThread(int);
@ -32,8 +32,8 @@ protected:
ThreadEntry* threadById(int id);
void makeNoFocusIcon();
QPixmap m_focusIcon;
QPixmap m_noFocusIcon;
TQPixmap m_focusIcon;
TQPixmap m_noFocusIcon;
};
#endif // THREADLIST_H

@ -4,11 +4,11 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <qsocketnotifier.h>
#include <qpopupmenu.h>
#include <tqsocketnotifier.h>
#include <tqpopupmenu.h>
#include "ttywnd.h"
#include <kglobalsettings.h>
#include <klocale.h>
#include <tdeglobalsettings.h>
#include <tdelocale.h>
#include "config.h"
#ifdef HAVE_FCNTL_H
@ -38,7 +38,7 @@
STTY::STTY() :
QObject(),
TQObject(),
m_masterfd(-1),
m_slavefd(-1),
m_outNotifier(0)
@ -46,10 +46,10 @@ STTY::STTY() :
if (findTTY())
{
::fcntl(m_masterfd, F_SETFL, O_NDELAY);
m_outNotifier = new QSocketNotifier(m_masterfd, QSocketNotifier::Read);
connect(m_outNotifier, SIGNAL(activated(int)), SLOT(outReceived(int)));
m_outNotifier = new TQSocketNotifier(m_masterfd, TQSocketNotifier::Read);
connect(m_outNotifier, TQ_SIGNAL(activated(int)), TQ_SLOT(outReceived(int)));
} else {
m_slavetty = QString();
m_slavetty = TQString();
}
}
@ -138,12 +138,12 @@ void STTY::outReceived(int f)
TTYWindow::TTYWindow(QWidget* parent, const char* name) :
QTextEdit(parent, name),
TTYWindow::TTYWindow(TQWidget* parent, const char* name) :
TQTextEdit(parent, name),
m_tty(0),
m_hPos(0)
{
setFont(KGlobalSettings::fixedFont());
setFont(TDEGlobalSettings::fixedFont());
setReadOnly(true);
setAutoFormatting(AutoNone);
setTextFormat(PlainText);
@ -157,19 +157,19 @@ TTYWindow::~TTYWindow()
}
QString TTYWindow::activate()
TQString TTYWindow::activate()
{
// allocate a pseudo terminal
m_tty = new STTY;
QString ttyName = m_tty->slaveTTY();
TQString ttyName = m_tty->slaveTTY();
if (ttyName.isEmpty()) {
// failed to allocate terminal
delete m_tty;
m_tty = 0;
return QString();
return TQString();
} else {
connect(m_tty, SIGNAL(output(char*,int)), SLOT(slotAppend(char*,int)));
connect(m_tty, TQ_SIGNAL(output(char*,int)), TQ_SLOT(slotAppend(char*,int)));
return ttyName;
}
}
@ -196,7 +196,7 @@ void TTYWindow::slotAppend(char* buffer, int count)
++len;
}
if (len > 0) {
QString str = QString::fromLatin1(start, len);
TQString str = TQString::fromLatin1(start, len);
// replace text in the last line
int para = paragraphs()-1;
// this selection is non-empty only after a '\r' that was not
@ -216,17 +216,17 @@ void TTYWindow::slotAppend(char* buffer, int count)
if (count > 0 && *start == '\n') {
++start;
--count;
append(QString());
append(TQString());
m_hPos = 0;
}
}
}
QPopupMenu* TTYWindow::createPopupMenu(const QPoint& pos)
TQPopupMenu* TTYWindow::createPopupMenu(const TQPoint& pos)
{
QPopupMenu* menu = QTextEdit::createPopupMenu(pos);
TQPopupMenu* menu = TQTextEdit::createPopupMenu(pos);
menu->insertSeparator();
menu->insertItem(i18n("&Clear"), this, SLOT(slotClear()));
menu->insertItem(i18n("&Clear"), this, TQ_SLOT(slotClear()));
return menu;
}

@ -7,10 +7,10 @@
#ifndef TTYWND_H
#define TTYWND_H
#include <qtextedit.h>
#include <tqtextedit.h>
class QSocketNotifier;
class QPopupMenu;
class TQSocketNotifier;
class TQPopupMenu;
/**
* This class is cortesy Judin Max <novaprint@mtu-net.ru>.
@ -23,14 +23,14 @@ class QPopupMenu;
* establish the stdin, stdout, and stderr channels the file descriptor
* obtained by this must be dup'd to file descriptors 0, 1, and 2, resp.
*/
class STTY : public QObject
class STTY : public TQObject
{
Q_OBJECT
TQ_OBJECT
public:
STTY();
~STTY();
QString slaveTTY(){ return m_slavetty; };
TQString slaveTTY(){ return m_slavetty; };
protected slots:
void outReceived(int);
@ -41,24 +41,24 @@ signals:
protected:
int m_masterfd;
int m_slavefd;
QSocketNotifier* m_outNotifier;
QString m_slavetty;
TQSocketNotifier* m_outNotifier;
TQString m_slavetty;
bool findTTY();
};
class TTYWindow : public QTextEdit
class TTYWindow : public TQTextEdit
{
Q_OBJECT
TQ_OBJECT
public:
TTYWindow(QWidget* parent, const char* name);
TTYWindow(TQWidget* parent, const char* name);
~TTYWindow();
QString activate();
TQString activate();
void deactivate();
protected:
STTY* m_tty;
virtual QPopupMenu* createPopupMenu(const QPoint& pos);
virtual TQPopupMenu* createPopupMenu(const TQPoint& pos);
int m_hPos; //!< tracks horizontal cursor position
protected slots:

@ -4,13 +4,14 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <qdir.h>
#include <qptrlist.h>
#include <kglobal.h>
#include <tqdir.h>
#include <tqptrlist.h>
#include <tdeglobal.h>
#include <kstandarddirs.h>
#include <ksimpleconfig.h>
#include <list>
#include <algorithm>
#include <functional>
#include <iterator>
#ifdef HAVE_CONFIG_H
#include "config.h"
@ -40,7 +41,7 @@ void TypeTable::loadTypeTables()
{
typeTablesInited = true;
const QStringList files = KGlobal::dirs()->findAllResources("types", "*.kdbgtt",
const TQStringList files = TDEGlobal::dirs()->findAllResources("types", "*.kdbgtt",
false, true);
if (files.isEmpty()) {
@ -48,7 +49,7 @@ void TypeTable::loadTypeTables()
return;
}
for (QValueListConstIterator<QString> p = files.begin(); p != files.end(); ++p) {
for (TQValueListConstIterator<TQString> p = files.begin(); p != files.end(); ++p) {
typeTables.push_back(TypeTable());
typeTables.back().loadFromFile(*p);
}
@ -56,7 +57,7 @@ void TypeTable::loadTypeTables()
TypeTable::TypeTable() :
m_printQStringDataCmd(0)
m_printTQStringDataCmd(0)
{
m_typeDict.setAutoDelete(true);
// aliasDict keeps only pointers to items into typeDict
@ -65,7 +66,7 @@ TypeTable::TypeTable() :
TypeTable::~TypeTable()
{
delete[] m_printQStringDataCmd;
delete[] m_printTQStringDataCmd;
while (!m_templates.empty()) {
delete m_templates.begin()->second;
m_templates.erase(m_templates.begin());
@ -77,7 +78,7 @@ static const char TypeTableGroup[] = "Type Table";
static const char LibDisplayName[] = "LibDisplayName";
static const char ShlibRE[] = "ShlibRE";
static const char EnableBuiltin[] = "EnableBuiltin";
static const char PrintQStringCmd[] = "PrintQStringCmd";
static const char PrintTQStringCmd[] = "PrintTQStringCmd";
static const char TypesEntryFmt[] = "Types%d";
static const char DisplayEntry[] = "Display";
static const char AliasEntry[] = "Alias";
@ -86,7 +87,7 @@ static const char ExprEntryFmt[] = "Expr%d";
static const char FunctionGuardEntryFmt[] = "FunctionGuard%d";
void TypeTable::loadFromFile(const QString& fileName)
void TypeTable::loadFromFile(const TQString& fileName)
{
TRACE("reading file " + fileName);
KSimpleConfig cf(fileName, true); /* read-only */
@ -98,26 +99,26 @@ void TypeTable::loadFromFile(const QString& fileName)
m_displayName = cf.readEntry(LibDisplayName);
if (m_displayName.isEmpty()) {
// use file name instead
QFileInfo fi(fileName);
TQFileInfo fi(fileName);
m_displayName = fi.baseName(true);
}
m_shlibNameRE = QRegExp(cf.readEntry(ShlibRE));
m_shlibNameRE = TQRegExp(cf.readEntry(ShlibRE));
m_enabledBuiltins = cf.readListEntry(EnableBuiltin);
QString printQString = cf.readEntry(PrintQStringCmd);
const char* ascii = printQString.ascii();
TQString printTQString = cf.readEntry(PrintTQStringCmd);
const char* ascii = printTQString.ascii();
if (ascii == 0)
ascii = "";
m_printQStringDataCmd = new char[strlen(ascii)+1];
strcpy(m_printQStringDataCmd, ascii);
m_printTQStringDataCmd = new char[strlen(ascii)+1];
strcpy(m_printTQStringDataCmd, ascii);
/*
* Get the types. We search for entries of kind Types1, Types2, etc.
* because a single entry Types could get rather long for large
* libraries.
*/
QString typesEntry;
TQString typesEntry;
for (int i = 1; ; i++) {
// next bunch of types
cf.setGroup(TypeTableGroup);
@ -125,11 +126,11 @@ void TypeTable::loadFromFile(const QString& fileName)
if (!cf.hasKey(typesEntry))
break;
QStringList typeNames = cf.readListEntry(typesEntry, ',');
TQStringList typeNames = cf.readListEntry(typesEntry, ',');
// now read them
QString alias;
for (QStringList::iterator it = typeNames.begin(); it != typeNames.end(); ++it)
TQString alias;
for (TQStringList::iterator it = typeNames.begin(); it != typeNames.end(); ++it)
{
cf.setGroup(*it);
// check if this is an alias
@ -150,10 +151,10 @@ void TypeTable::loadFromFile(const QString& fileName)
} // for all Types%d
}
void TypeTable::readType(KConfigBase& cf, const QString& type)
void TypeTable::readType(TDEConfigBase& cf, const TQString& type)
{
// the display string
QString expr = cf.readEntry(DisplayEntry);
TQString expr = cf.readEntry(DisplayEntry);
TypeInfo* info = new TypeInfo(expr);
if (info->m_numExprs == 0) {
@ -165,8 +166,8 @@ void TypeTable::readType(KConfigBase& cf, const QString& type)
info->m_templatePattern = cf.readEntry(TemplateEntry);
// Expr1, Expr2, etc...
QString exprEntry;
QString funcGuardEntry;
TQString exprEntry;
TQString funcGuardEntry;
for (int j = 0; j < info->m_numExprs; j++) {
exprEntry.sprintf(ExprEntryFmt, j+1);
expr = cf.readEntry(exprEntry);
@ -182,25 +183,25 @@ void TypeTable::readType(KConfigBase& cf, const QString& type)
m_typeDict.insert(type, info);
else
m_templates[type] = info;
TRACE(type + QString().sprintf(": %d exprs", info->m_numExprs));
TRACE(type + TQString(": %1 exprs").arg(info->m_numExprs));
}
void TypeTable::copyTypes(QDict<TypeInfo>& dict)
void TypeTable::copyTypes(TQDict<TypeInfo>& dict)
{
for (QDictIterator<TypeInfo> it = m_typeDict; it != 0; ++it) {
for (TQDictIterator<TypeInfo> it = m_typeDict; it != 0; ++it) {
dict.insert(it.currentKey(), it);
}
for (QDictIterator<TypeInfo> it = m_aliasDict; it != 0; ++it) {
for (TQDictIterator<TypeInfo> it = m_aliasDict; it != 0; ++it) {
dict.insert(it.currentKey(), it);
}
}
bool TypeTable::isEnabledBuiltin(const QString& feature) const
bool TypeTable::isEnabledBuiltin(const TQString& feature) const
{
return m_enabledBuiltins.find(feature) != m_enabledBuiltins.end();
}
TypeInfo::TypeInfo(const QString& displayString)
TypeInfo::TypeInfo(const TQString& displayString)
{
// decompose the input into the parts
int i = 0;
@ -227,9 +228,9 @@ TypeInfo::~TypeInfo()
ProgramTypeTable::ProgramTypeTable() :
m_parseQt2QStrings(false),
m_parseTQt2TQStrings(false),
m_QCharIsShort(false),
m_printQStringDataCmd(0)
m_printTQStringDataCmd(0)
{
m_types.setAutoDelete(false); /* paranoia */
m_aliasDict.setAutoDelete(false); /* paranoia */
@ -247,24 +248,24 @@ void ProgramTypeTable::loadTypeTable(TypeTable* table)
const TypeTable::TypeMap& t = table->templates();
std::transform(t.begin(), t.end(),
std::inserter(m_templates, m_templates.begin()),
std::ptr_fun(template2Info));
std::ref(template2Info));
// check whether to enable builtin QString support
if (!m_parseQt2QStrings) {
m_parseQt2QStrings = table->isEnabledBuiltin("QString::Data");
// check whether to enable builtin TQString support
if (!m_parseTQt2TQStrings) {
m_parseTQt2TQStrings = table->isEnabledBuiltin("TQString::Data");
}
if (!m_QCharIsShort) {
m_QCharIsShort = table->isEnabledBuiltin("QCharIsShort");
m_QCharIsShort = table->isEnabledBuiltin("TQCharIsShort");
}
if (!m_printQStringDataCmd && *table->printQStringDataCmd()) {
m_printQStringDataCmd = table->printQStringDataCmd();
if (!m_printTQStringDataCmd && *table->printTQStringDataCmd()) {
m_printTQStringDataCmd = table->printTQStringDataCmd();
}
}
ProgramTypeTable::TemplateMap::value_type
ProgramTypeTable::template2Info(const TypeTable::TypeMap::value_type& tt)
{
QStringList args = splitTemplateArgs(tt.second->m_templatePattern);
TQStringList args = splitTemplateArgs(tt.second->m_templatePattern);
TemplateMap::value_type result(args.front(), TemplateInfo());
result.second.type = tt.second;
@ -278,9 +279,9 @@ ProgramTypeTable::TemplateMap::value_type
* The first entry of the returned list is the template name, the remaining
* entries are the arguments.
*/
QStringList ProgramTypeTable::splitTemplateArgs(const QString& t)
TQStringList ProgramTypeTable::splitTemplateArgs(const TQString& t)
{
QStringList result;
TQStringList result;
result.push_back(t);
int i = t.find('<');
@ -302,14 +303,14 @@ QStringList ProgramTypeTable::splitTemplateArgs(const QString& t)
nest--;
else if (nest == 0 && t[i] == ',') {
// found end of argument
QString arg = t.mid(start, i-start);
TQString arg = t.mid(start, i-start);
result.push_back(arg);
start = i+1; // skip ','
}
}
// accept the template only if the closing '>' is the last character
if (nest < 0 && unsigned(i) == t.length()) {
QString arg = t.mid(start, i-start-1);
TQString arg = t.mid(start, i-start-1);
result.push_back(arg);
} else {
result.clear();
@ -318,7 +319,7 @@ QStringList ProgramTypeTable::splitTemplateArgs(const QString& t)
return result;
}
TypeInfo* ProgramTypeTable::lookup(QString type)
TypeInfo* ProgramTypeTable::lookup(TQString type)
{
/*
* Registered aliases contain the complete template parameter list.
@ -337,7 +338,7 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
/*
* The hard part: Look up a template.
*/
QStringList parts = splitTemplateArgs(type);
TQStringList parts = splitTemplateArgs(type);
if (parts.size() == 1)
return 0; // not a template
@ -351,7 +352,7 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
for (TemplateMap::const_iterator i = range.first; i != range.second; ++i)
{
const QStringList& pat = i->second.templateArgs;
const TQStringList& pat = i->second.templateArgs;
if (parts.size() < pat.size())
continue; // too few arguments
@ -360,8 +361,8 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
if (parts.size() > pat.size() && pat.back() != "*")
continue; // too many arguments and no wildcard
QStringList::const_iterator t = parts.begin();
QStringList::const_iterator p = pat.begin();
TQStringList::const_iterator t = parts.begin();
TQStringList::const_iterator p = pat.begin();
unsigned accumPenalty = 0;
bool equal = true;
unsigned penalty = ~(~0U>>1); // 1 in the leading bit
@ -386,15 +387,15 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
return result;
}
void ProgramTypeTable::registerAlias(const QString& name, TypeInfo* type)
void ProgramTypeTable::registerAlias(const TQString& name, TypeInfo* type)
{
ASSERT(lookup(name) == 0 || lookup(name) == type);
m_aliasDict.insert(name, type);
}
void ProgramTypeTable::loadLibTypes(const QStringList& libs)
void ProgramTypeTable::loadLibTypes(const TQStringList& libs)
{
for (QStringList::const_iterator it = libs.begin(); it != libs.end(); ++it)
for (TQStringList::const_iterator it = libs.begin(); it != libs.end(); ++it)
{
// look up the library
for (std::list<TypeTable>::iterator t = typeTables.begin(); t != typeTables.end(); ++t)

@ -4,13 +4,13 @@
* See the file COPYING in the toplevel directory of the source directory.
*/
#include <qdict.h>
#include <qstring.h>
#include <qregexp.h>
#include <qstringlist.h>
#include <tqdict.h>
#include <tqstring.h>
#include <tqregexp.h>
#include <tqstringlist.h>
#include <map>
class KConfigBase;
class TDEConfigBase;
/**
* The maximum number of sub-expressions that may appear in a single struct
@ -21,7 +21,7 @@ const int typeInfoMaxExpr = 5;
struct TypeInfo
{
TypeInfo(const QString& displayString);
TypeInfo(const TQString& displayString);
~TypeInfo();
/**
@ -35,13 +35,13 @@ struct TypeInfo
* between the percent signs '%' of the display expression; hence,
* there is one part more than there are sub-expressions.
*/
QString m_displayString[typeInfoMaxExpr+1];
TQString m_displayString[typeInfoMaxExpr+1];
/**
* This is a list of partial expressions. Each contains one or more \%s,
* which will be replaced by the parent expression. The results are
* substituted for the percent signs in m_displayString.
*/
QString m_exprStrings[typeInfoMaxExpr];
TQString m_exprStrings[typeInfoMaxExpr];
/**
* This is a list of guard expressions. Each contains one or more \%s,
* which will be replaced by the parent expression, or is empty. If the
@ -49,14 +49,14 @@ struct TypeInfo
* corresponding expression from m_exprStrings is not evaluated. (This
* is used to guard function calls.)
*/
QString m_guardStrings[typeInfoMaxExpr];
TQString m_guardStrings[typeInfoMaxExpr];
/**
* This is the type name including template arguments that contain a
* pattern: A single '*' as template parameter matches one template
* argument, except that a '*' as the last template parameter matches
* all remaining template argument.
*/
QString m_templatePattern;
TQString m_templatePattern;
/**
* Returns a pointer to a TypeInfo that identifies wchar_t
*/
@ -77,7 +77,7 @@ public:
TypeTable();
~TypeTable();
typedef std::map<QString,TypeInfo*> TypeMap;
typedef std::map<TQString,TypeInfo*> TypeMap;
/**
* Load all known type libraries.
@ -87,7 +87,7 @@ public:
/**
* Copy type infos to the specified dictionary.
*/
void copyTypes(QDict<TypeInfo>& dict);
void copyTypes(TQDict<TypeInfo>& dict);
/**
* Returns the template types
@ -97,34 +97,34 @@ public:
/**
* Does the file name match this library?
*/
bool matchFileName(const QString& fileName) const {
return m_shlibNameRE.match(fileName) >= 0;
bool matchFileName(const TQString& fileName) const {
return m_shlibNameRE.exactMatch(fileName) >= 0;
}
/**
* Is the specified builtin feature enabled in this type library?
*/
bool isEnabledBuiltin(const QString& feature) const;
bool isEnabledBuiltin(const TQString& feature) const;
/**
* Returns the command to print the QString data.
* Returns the command to print the TQString data.
*/
const char* printQStringDataCmd() const { return m_printQStringDataCmd; }
const char* printTQStringDataCmd() const { return m_printTQStringDataCmd; }
protected:
/**
* Loads the structure type information from the configuration files.
*/
static void loadTypeTables();
void loadFromFile(const QString& fileName);
void readType(KConfigBase& cf, const QString& type);
QDict<TypeInfo> m_typeDict;
QDict<TypeInfo> m_aliasDict;
void loadFromFile(const TQString& fileName);
void readType(TDEConfigBase& cf, const TQString& type);
TQDict<TypeInfo> m_typeDict;
TQDict<TypeInfo> m_aliasDict;
TypeMap m_templates;
QString m_displayName;
QRegExp m_shlibNameRE;
QStringList m_enabledBuiltins;
char* m_printQStringDataCmd;
TQString m_displayName;
TQRegExp m_shlibNameRE;
TQStringList m_enabledBuiltins;
char* m_printTQStringDataCmd;
};
@ -141,7 +141,7 @@ public:
/**
* Load types belonging to the specified libraries.
*/
void loadLibTypes(const QStringList& libs);
void loadLibTypes(const TQStringList& libs);
/**
* Load types belonging to the specified type table
@ -153,41 +153,41 @@ public:
*
* If the type is unknown, 0 is returned.
*/
TypeInfo* lookup(QString type);
TypeInfo* lookup(TQString type);
/**
* Adds a new alias for a type name.
*/
void registerAlias(const QString& name, TypeInfo* type);
void registerAlias(const TQString& name, TypeInfo* type);
/**
* Tells whether we use built-in support to understand QStrings.
* Tells whether we use built-in support to understand TQStrings.
*/
bool parseQt2QStrings() const { return m_parseQt2QStrings; }
bool parseTQt2TQStrings() const { return m_parseTQt2TQStrings; }
/**
* Tells whether QChar are defined like in Qt3.
* Tells whether TQChar are defined like in TQt3.
*/
bool qCharIsShort() const { return m_QCharIsShort; }
/**
* Returns the command to print the QString data.
* Returns the command to print the TQString data.
*/
const char* printQStringDataCmd() const { return m_printQStringDataCmd; }
const char* printTQStringDataCmd() const { return m_printTQStringDataCmd; }
protected:
QDict<TypeInfo> m_types;
QDict<TypeInfo> m_aliasDict;
TQDict<TypeInfo> m_types;
TQDict<TypeInfo> m_aliasDict;
struct TemplateInfo {
QStringList templateArgs;
TQStringList templateArgs;
TypeInfo* type;
};
typedef std::multimap<QString, TemplateInfo> TemplateMap;
typedef std::multimap<TQString, TemplateInfo> TemplateMap;
TemplateMap m_templates; //!< one or more template patterns per template name
static TemplateMap::value_type
template2Info(const TypeTable::TypeMap::value_type& tt);
static QStringList splitTemplateArgs(const QString& t);
bool m_parseQt2QStrings;
static TQStringList splitTemplateArgs(const TQString& t);
bool m_parseTQt2TQStrings;
bool m_QCharIsShort;
const char* m_printQStringDataCmd;
const char* m_printTQStringDataCmd;
};

@ -0,0 +1,6 @@
file( GLOB _types RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.kdbgtt )
install(
FILES ${_types}
DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}/types
)

@ -1,16 +0,0 @@
# types in libraries that we understand
typesdir = $(kde_datadir)/kdbg/types
types_DATA = \
qt.kdbgtt \
qt2.kdbgtt \
qt3.kdbgtt \
qt4core.kdbgtt \
kdecore.kdbgtt \
kdecore3.kdbgtt \
glib.kdbgtt \
gtk+.kdbgtt \
stdc++.kdbgtt \
stdc++6.kdbgtt \
X11.kdbgtt
EXTRA_DIST = $(types_DATA)

@ -1,7 +0,0 @@
[Type Table]
Types1=KSimpleConfig
LibDisplayName=kdecore (KDE 1.0 and 1.1)
ShlibRE=libkdecore\.so\.[12]$
[KSimpleConfig]
Display={ global=% }
Expr1=(%s).pData->aGlobalAppFile.shd->data

@ -1,23 +0,0 @@
[Type Table]
Types1=QString,QDir,QFileInfo,QFile
Types2=QObject,QTableView
LibDisplayName=libqt 1.x
ShlibRE=libqt\.so\.1$
[QString]
Display={ % }
Expr1=(%s).shd->data
[QObject]
Display={ name=% }
Expr1=(%s).objname
[QTableView]
Alias=QObject
[QDir]
Display={ path=% filter=% }
Expr1=((%s).dPath.shd->data)
Expr2=((%s).nameFilt.shd->data)
[QFileInfo]
Display={ name=% }
Expr1=((%s).fn.shd->data)
[QFile]
Display={ name=% }
Expr1=((%s).fn.shd->data)

@ -1,28 +0,0 @@
[Type Table]
Types1=QString,QCString,QDir,QFileInfo,QFile
Types2=QObject,QTableView
LibDisplayName=libqt 2.x
ShlibRE=libqt\.so\.2$
EnableBuiltin=QString::Data
PrintQStringCmd=print ($qstrunicode=($qstrdata=(%s))->unicode)?(*(unsigned short*)$qstrunicode)@(($qstrlen=(unsigned int)($qstrdata->len))>100?100:$qstrlen):1==0\n
[QString]
Display={ % }
Expr1=/QString::Data (%s).d
[QCString]
Display={ % }
Expr1=(%s).shd->data
[QObject]
Display={ name=% }
Expr1=(%s).objname
[QTableView]
Alias=QObject
[QDir]
Display={ path=% filter=% }
Expr1=/QString::Data (%s).dPath.d
Expr2=/QString::Data (%s).nameFilt.d
[QFileInfo]
Display={ name=% }
Expr1=/QString::Data (%s).fn.d
[QFile]
Display={ name=% }
Expr1=/QString::Data (%s).fn.d

@ -1,37 +1,37 @@
[Type Table]
Types1=QString,QCString,QDir,QFileInfo,QFile
Types2=QObject
Types1=TQString,QCString,QDir,QFileInfo,QFile
Types2=TQObject
Types3=QMap,QValueList,QValueVector
Types4=QPoint,QRect
LibDisplayName=libqt 3.x
ShlibRE=libqt-mt\.so\.3$
EnableBuiltin=QString::Data,QCharIsShort
LibDisplayName=libtqt 3.x
ShlibRE=libtqt-mt\.so\.3$
EnableBuiltin=TQString::Data,QCharIsShort
PrintQStringCmd=print ($qstrunicode=($qstrdata=(%s))->unicode)?(*(unsigned short*)$qstrunicode)@(($qstrlen=(unsigned int)($qstrdata->len))>100?100:$qstrlen):1==0\n
[QString]
[TQString]
Display={ % }
Expr1=/QString::Data (%s).d
Expr1=/TQString::Data (%s).d
[QCString]
Display={ % }
Expr1=(%s).shd->data
[QObject]
[TQObject]
Display={ name=% }
Expr1=(%s).objname
[QDir]
Display={ path=% filter=% }
Expr1=/QString::Data (%s).dPath.d
Expr2=/QString::Data (%s).nameFilt.d
Expr1=/TQString::Data (%s).dPath.d
Expr2=/TQString::Data (%s).nameFilt.d
[QFileInfo]
Display={ name=% }
Expr1=/QString::Data (%s).fn.d
Expr1=/TQString::Data (%s).fn.d
[QFile]
Display={ name=% }
Expr1=/QString::Data (%s).fn.d
Expr1=/TQString::Data (%s).fn.d
[QMap]
Template=QMap<*>

@ -1,7 +1,7 @@
[Type Table]
Types1=KSimpleConfig
LibDisplayName=kdecore (KDE post-1.1)
ShlibRE=libkdecore\.so\.3$
LibDisplayName=tdecore (KDE post-1.1)
ShlibRE=libtdecore\.so\.3$
[KSimpleConfig]
Display={ global=% }
Expr1=(*(%s).pData->aGlobalAppFile.shd->data)

@ -6,12 +6,12 @@
#include "winstack.h"
#include "sourcewnd.h"
#include <qbrush.h>
#include <qfileinfo.h>
#include <qpopupmenu.h>
#include <kapplication.h>
#include <kmainwindow.h>
#include <klocale.h> /* i18n */
#include <tqbrush.h>
#include <tqfileinfo.h>
#include <tqpopupmenu.h>
#include <tdeapplication.h>
#include <tdemainwindow.h>
#include <tdelocale.h> /* i18n */
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
@ -19,7 +19,7 @@
WinStack::WinStack(QWidget* parent, const char* name) :
WinStack::WinStack(TQWidget* parent, const char* name) :
KTabWidget(parent, name),
m_pcLine(-1),
m_valueTip(this),
@ -27,27 +27,27 @@ WinStack::WinStack(QWidget* parent, const char* name) :
m_tabWidth(0)
{
connect(&m_findDlg.m_buttonForward,
SIGNAL(clicked()), SLOT(slotFindForward()));
TQ_SIGNAL(clicked()), TQ_SLOT(slotFindForward()));
connect(&m_findDlg.m_buttonBackward,
SIGNAL(clicked()), SLOT(slotFindBackward()));
TQ_SIGNAL(clicked()), TQ_SLOT(slotFindBackward()));
connect(this, SIGNAL(setTabWidth(int)), this, SLOT(slotSetTabWidth(int)));
connect(this, TQ_SIGNAL(setTabWidth(int)), this, TQ_SLOT(slotSetTabWidth(int)));
}
WinStack::~WinStack()
{
}
void WinStack::contextMenuEvent(QContextMenuEvent* e)
void WinStack::contextMenuEvent(TQContextMenuEvent* e)
{
// get the context menu from the GUI factory
QWidget* top = this;
TQWidget* top = this;
do
top = top->parentWidget();
while (!top->isTopLevel());
KMainWindow* mw = static_cast<KMainWindow*>(top);
QPopupMenu* m =
static_cast<QPopupMenu*>(mw->factory()->container("popup_files_empty", mw));
TDEMainWindow* mw = static_cast<TDEMainWindow*>(top);
TQPopupMenu* m =
static_cast<TQPopupMenu*>(mw->factory()->container("popup_files_empty", mw));
m->exec(e->globalPos());
}
@ -59,14 +59,14 @@ void WinStack::reloadAllFiles()
}
}
QSize WinStack::sizeHint() const
TQSize WinStack::sizeHint() const
{
return QSize(640, 480);
return TQSize(640, 480);
}
void WinStack::activate(const QString& fileName, int lineNo, const DbgAddr& address)
void WinStack::activate(const TQString& fileName, int lineNo, const DbgAddr& address)
{
QFileInfo fi(fileName);
TQFileInfo fi(fileName);
if (!fi.isFile()) {
/*
@ -86,12 +86,12 @@ void WinStack::activate(const QString& fileName, int lineNo, const DbgAddr& addr
activatePath(fi.absFilePath(), lineNo, address);
}
void WinStack::activateFile(const QString& fileName)
void WinStack::activateFile(const TQString& fileName)
{
activatePath(fileName, 0, DbgAddr());
}
bool WinStack::activatePath(QString pathName, int lineNo, const DbgAddr& address)
bool WinStack::activatePath(TQString pathName, int lineNo, const DbgAddr& address)
{
// check whether the file is already open
SourceWindow* fw = 0;
@ -112,24 +112,24 @@ bool WinStack::activatePath(QString pathName, int lineNo, const DbgAddr& address
return false;
}
addTab(fw, QFileInfo(pathName).fileName());
addTab(fw, TQFileInfo(pathName).fileName());
setTabToolTip(fw, pathName);
connect(fw, SIGNAL(clickedLeft(const QString&,int,const DbgAddr&,bool)),
SIGNAL(toggleBreak(const QString&,int,const DbgAddr&,bool)));
connect(fw, SIGNAL(clickedMid(const QString&,int,const DbgAddr&)),
SIGNAL(enadisBreak(const QString&,int,const DbgAddr&)));
connect(fw, TQ_SIGNAL(clickedLeft(const TQString&,int,const DbgAddr&,bool)),
TQ_SIGNAL(toggleBreak(const TQString&,int,const DbgAddr&,bool)));
connect(fw, TQ_SIGNAL(clickedMid(const TQString&,int,const DbgAddr&)),
TQ_SIGNAL(enadisBreak(const TQString&,int,const DbgAddr&)));
// disassemble code
connect(fw, SIGNAL(disassemble(const QString&, int)),
SIGNAL(disassemble(const QString&, int)));
connect(fw, SIGNAL(expanded(int)), SLOT(slotExpandCollapse(int)));
connect(fw, SIGNAL(collapsed(int)), SLOT(slotExpandCollapse(int)));
connect(fw, TQ_SIGNAL(disassemble(const TQString&, int)),
TQ_SIGNAL(disassemble(const TQString&, int)));
connect(fw, TQ_SIGNAL(expanded(int)), TQ_SLOT(slotExpandCollapse(int)));
connect(fw, TQ_SIGNAL(collapsed(int)), TQ_SLOT(slotExpandCollapse(int)));
// tab width
connect(this, SIGNAL(setTabWidth(int)), fw, SLOT(setTabWidth(int)));
connect(this, TQ_SIGNAL(setTabWidth(int)), fw, TQ_SLOT(setTabWidth(int)));
fw->setTabWidth(m_tabWidth);
fw->setFocusPolicy(QWidget::WheelFocus);
fw->setFocusPolicy(TQWidget::WheelFocus);
// set PC if there is one
emit newFileLoaded();
@ -153,13 +153,13 @@ bool WinStack::activateWindow(SourceWindow* fw, int lineNo, const DbgAddr& addre
return true;
}
bool WinStack::activeLine(QString& fileName, int& lineNo)
bool WinStack::activeLine(TQString& fileName, int& lineNo)
{
DbgAddr dummy;
return activeLine(fileName, lineNo, dummy);
}
bool WinStack::activeLine(QString& fileName, int& lineNo, DbgAddr& address)
bool WinStack::activeLine(TQString& fileName, int& lineNo, DbgAddr& address)
{
if (activeWindow() == 0) {
return false;
@ -177,7 +177,7 @@ void WinStack::updateLineItems(const KDebugger* dbg)
}
}
void WinStack::updatePC(const QString& fileName, int lineNo, const DbgAddr& address, int frameNo)
void WinStack::updatePC(const TQString& fileName, int lineNo, const DbgAddr& address, int frameNo)
{
if (m_pcLine >= 0) {
setPC(false, m_pcFile, m_pcLine, DbgAddr(m_pcAddress), m_pcFrame);
@ -191,7 +191,7 @@ void WinStack::updatePC(const QString& fileName, int lineNo, const DbgAddr& addr
}
}
SourceWindow* WinStack::findByFileName(const QString& fileName) const
SourceWindow* WinStack::findByFileName(const TQString& fileName) const
{
for (int i = count()-1; i >= 0; i--) {
if (windowAt(i)->fileNameMatches(fileName)) {
@ -201,11 +201,11 @@ SourceWindow* WinStack::findByFileName(const QString& fileName) const
return 0;
}
void WinStack::setPC(bool set, const QString& fileName, int lineNo,
void WinStack::setPC(bool set, const TQString& fileName, int lineNo,
const DbgAddr& address, int frameNo)
{
TRACE((set ? "set PC: " : "clear PC: ") + fileName +
QString().sprintf(":%d#%d ", lineNo, frameNo) + address.asString());
TQString().sprintf(":%d#%d ", lineNo, frameNo) + address.asString());
SourceWindow* fw = findByFileName(fileName);
if (fw)
fw->setPC(set, lineNo, address, frameNo);
@ -221,9 +221,9 @@ SourceWindow* WinStack::activeWindow() const
return static_cast<SourceWindow*>(currentPage());
}
QString WinStack::activeFileName() const
TQString WinStack::activeFileName() const
{
QString f;
TQString f;
if (activeWindow() != 0)
f = activeWindow()->fileName();
return f;
@ -243,15 +243,15 @@ void WinStack::slotFindBackward()
SourceWindow::findBackward);
}
void WinStack::maybeTip(const QPoint& p)
void WinStack::maybeTip(const TQPoint& p)
{
SourceWindow* w = activeWindow();
if (w == 0)
return;
// get the word at the point
QString word;
QRect r;
TQString word;
TQRect r;
if (!w->wordAtPoint(w->mapFrom(this, p), word, r))
return;
@ -260,17 +260,17 @@ void WinStack::maybeTip(const QPoint& p)
assert(r.isValid());
// remember the location
m_tipLocation = QRect(w->mapTo(this, r.topLeft()), r.size());
m_tipLocation = TQRect(w->mapTo(this, r.topLeft()), r.size());
emit initiateValuePopup(word);
}
void WinStack::slotShowValueTip(const QString& tipText)
void WinStack::slotShowValueTip(const TQString& tipText)
{
m_valueTip.tip(m_tipLocation, tipText);
}
void WinStack::slotDisassembled(const QString& fileName, int lineNo,
void WinStack::slotDisassembled(const TQString& fileName, int lineNo,
const std::list<DisassembledCode>& disass)
{
SourceWindow* fw = findByFileName(fileName);
@ -320,7 +320,7 @@ void WinStack::slotViewFind()
void WinStack::slotBrkptSet()
{
QString file;
TQString file;
int lineNo;
DbgAddr address;
if (activeLine(file, lineNo, address))
@ -329,7 +329,7 @@ void WinStack::slotBrkptSet()
void WinStack::slotBrkptSetTemp()
{
QString file;
TQString file;
int lineNo;
DbgAddr address;
if (activeLine(file, lineNo, address))
@ -338,7 +338,7 @@ void WinStack::slotBrkptSetTemp()
void WinStack::slotBrkptEnable()
{
QString file;
TQString file;
int lineNo;
DbgAddr address;
if (activeLine(file, lineNo, address))
@ -347,7 +347,7 @@ void WinStack::slotBrkptEnable()
void WinStack::slotMoveProgramCounter()
{
QString file;
TQString file;
int lineNo;
DbgAddr address;
if (activeLine(file, lineNo, address))
@ -356,7 +356,7 @@ void WinStack::slotMoveProgramCounter()
void WinStack::slotClose()
{
QWidget* w = activeWindow();
TQWidget* w = activeWindow();
if (!w)
return;
@ -366,11 +366,11 @@ void WinStack::slotClose()
ValueTip::ValueTip(WinStack* parent) :
QToolTip(parent)
TQToolTip(parent)
{
}
void ValueTip::maybeTip(const QPoint& p)
void ValueTip::maybeTip(const TQPoint& p)
{
WinStack* w = static_cast<WinStack*>(parentWidget());
w->maybeTip(p);
@ -378,7 +378,7 @@ void ValueTip::maybeTip(const QPoint& p)
FindDialog::FindDialog() :
QDialog(0, "find", false),
TQDialog(0, "find", false),
m_searchText(this, "text"),
m_caseCheck(this, "case"),
m_buttonForward(this, "forward"),
@ -387,7 +387,7 @@ FindDialog::FindDialog() :
m_layout(this, 8),
m_buttons(4)
{
setCaption(QString(kapp->caption()) + i18n(": Search"));
setCaption(TQString(tdeApp->caption()) + i18n(": Search"));
m_searchText.setMinimumSize(330, 24);
m_searchText.setMaxLength(10000);
@ -403,7 +403,7 @@ FindDialog::FindDialog() :
m_caseCheck.setMinimumSize(330, 24);
// get maximum size of buttons
QSize maxSize(80,30);
TQSize maxSize(80,30);
maxSize.expandedTo(m_buttonForward.sizeHint());
maxSize.expandedTo(m_buttonBackward.sizeHint());
maxSize.expandedTo(m_buttonClose.sizeHint());
@ -412,7 +412,7 @@ FindDialog::FindDialog() :
m_buttonBackward.setMinimumSize(maxSize);
m_buttonClose.setMinimumSize(maxSize);
connect(&m_buttonClose, SIGNAL(clicked()), SLOT(reject()));
connect(&m_buttonClose, TQ_SIGNAL(clicked()), TQ_SLOT(reject()));
m_layout.addWidget(&m_searchText);
m_layout.addWidget(&m_caseCheck);
@ -434,15 +434,15 @@ FindDialog::~FindDialog()
{
}
void FindDialog::closeEvent(QCloseEvent* ev)
void FindDialog::closeEvent(TQCloseEvent* ev)
{
QDialog::closeEvent(ev);
TQDialog::closeEvent(ev);
emit closed();
}
void FindDialog::done(int result)
{
QDialog::done(result);
TQDialog::done(result);
emit closed();
}

@ -7,12 +7,12 @@
#ifndef WINSTACK_H
#define WINSTACK_H
#include <qdialog.h>
#include <qlineedit.h>
#include <qlayout.h>
#include <qcheckbox.h>
#include <qpushbutton.h>
#include <qtooltip.h>
#include <tqdialog.h>
#include <tqlineedit.h>
#include <tqlayout.h>
#include <tqcheckbox.h>
#include <tqpushbutton.h>
#include <tqtooltip.h>
#include <ktabwidget.h>
#include <list>
@ -23,80 +23,80 @@ class SourceWindow;
class DisassembledCode;
struct DbgAddr;
class FindDialog : public QDialog
class FindDialog : public TQDialog
{
Q_OBJECT
TQ_OBJECT
public:
FindDialog();
~FindDialog();
bool caseSensitive() const { return m_caseCheck.isChecked(); }
QString searchText() const { return m_searchText.text(); }
TQString searchText() const { return m_searchText.text(); }
virtual void done(int result);
QLineEdit m_searchText;
QCheckBox m_caseCheck;
QPushButton m_buttonForward;
QPushButton m_buttonBackward;
QPushButton m_buttonClose;
TQLineEdit m_searchText;
TQCheckBox m_caseCheck;
TQPushButton m_buttonForward;
TQPushButton m_buttonBackward;
TQPushButton m_buttonClose;
signals:
void closed();
protected:
virtual void closeEvent(QCloseEvent* ev);
QVBoxLayout m_layout;
QHBoxLayout m_buttons;
virtual void closeEvent(TQCloseEvent* ev);
TQVBoxLayout m_layout;
TQHBoxLayout m_buttons;
};
class ValueTip : public QToolTip
class ValueTip : public TQToolTip
{
public:
ValueTip(WinStack* parent);
virtual ~ValueTip() {} // Qt3's QToolTip lacks virtual dtor!
virtual void maybeTip(const QPoint& p);
void tip(const QRect& r, const QString& s) { QToolTip::tip(r, s); }
virtual ~ValueTip() {} // TQt3's TQToolTip lacks virtual dtor!
virtual void maybeTip(const TQPoint& p);
void tip(const TQRect& r, const TQString& s) { TQToolTip::tip(r, s); }
};
class WinStack : public KTabWidget
{
Q_OBJECT
TQ_OBJECT
public:
WinStack(QWidget* parent, const char* name);
WinStack(TQWidget* parent, const char* name);
virtual ~WinStack();
/**
* Slot activate also looks in this directory when the specified file is
* a relative path.
*/
void setExtraDirectory(const QString& dir) { m_lastOpenDir = dir; }
void activateFile(const QString& fileName);
bool activeLine(QString& filename, int& lineNo);
bool activeLine(QString& filename, int& lineNo, DbgAddr& address);
void maybeTip(const QPoint& p);
void setExtraDirectory(const TQString& dir) { m_lastOpenDir = dir; }
void activateFile(const TQString& fileName);
bool activeLine(TQString& filename, int& lineNo);
bool activeLine(TQString& filename, int& lineNo, DbgAddr& address);
void maybeTip(const TQPoint& p);
bool hasWindows() const { return count() > 0; }
QString activeFileName() const;
TQString activeFileName() const;
SourceWindow* activeWindow() const;
SourceWindow* windowAt(int i) const;
virtual QSize sizeHint() const;
virtual TQSize sizeHint() const;
signals:
void toggleBreak(const QString&, int, const DbgAddr&, bool);
void enadisBreak(const QString&, int, const DbgAddr&);
void toggleBreak(const TQString&, int, const DbgAddr&, bool);
void enadisBreak(const TQString&, int, const DbgAddr&);
void newFileLoaded();
void initiateValuePopup(const QString&);
void disassemble(const QString&, int);
void initiateValuePopup(const TQString&);
void disassemble(const TQString&, int);
void setTabWidth(int numChars);
void moveProgramCounter(const QString&, int, const DbgAddr&);
void moveProgramCounter(const TQString&, int, const DbgAddr&);
public slots:
virtual void slotFindForward();
virtual void slotFindBackward();
virtual void activate(const QString& filename, int lineNo, const DbgAddr& address);
void updatePC(const QString& filename, int lineNo, const DbgAddr& address, int frameNo);
virtual void activate(const TQString& filename, int lineNo, const DbgAddr& address);
void updatePC(const TQString& filename, int lineNo, const DbgAddr& address, int frameNo);
void reloadAllFiles();
void updateLineItems(const KDebugger* deb);
void slotSetTabWidth(int numChars);
@ -110,32 +110,32 @@ public slots:
void slotClose();
// Displays the value tip at m_tipLocation
void slotShowValueTip(const QString& tipText);
void slotShowValueTip(const TQString& tipText);
// Shows the disassembled code at the location given by file and lineNo
void slotDisassembled(const QString& fileName, int lineNo,
void slotDisassembled(const TQString& fileName, int lineNo,
const std::list<DisassembledCode>& disass);
// Updates line items after expanding/collapsing disassembled code
void slotExpandCollapse(int lineNo);
protected:
bool activatePath(QString pathname, int lineNo, const DbgAddr& address);
bool activatePath(TQString pathname, int lineNo, const DbgAddr& address);
virtual bool activateWindow(SourceWindow* fw, int lineNo, const DbgAddr& address); /* -1 doesnt change line */
virtual void contextMenuEvent(QContextMenuEvent* e);
void setPC(bool set, const QString& fileName, int lineNo,
virtual void contextMenuEvent(TQContextMenuEvent* e);
void setPC(bool set, const TQString& fileName, int lineNo,
const DbgAddr& address, int frameNo);
SourceWindow* findByFileName(const QString& fileName) const;
QString m_lastOpenDir; /* where user opened last file */
SourceWindow* findByFileName(const TQString& fileName) const;
TQString m_lastOpenDir; /* where user opened last file */
// program counter
QString m_pcFile;
TQString m_pcFile;
int m_pcLine; /* -1 if no PC */
QString m_pcAddress; /* exact address of PC */
TQString m_pcAddress; /* exact address of PC */
int m_pcFrame;
ValueTip m_valueTip;
QRect m_tipLocation; /* where tip should appear */
TQRect m_tipLocation; /* where tip should appear */
int m_tabWidth; /* number of chars */

@ -6,12 +6,12 @@
#include "xsldbgdriver.h"
#include "exprwnd.h"
#include <qstringlist.h>
#include <klocale.h> /* i18n */
#include <tqstringlist.h>
#include <tdelocale.h> /* i18n */
#include <ctype.h>
#include <stdlib.h> /* strtol, atoi */
#include <string.h> /* strcpy */
#include <kmessagebox.h>
#include <tdemessagebox.h>
#include "assert.h"
#ifdef HAVE_CONFIG_H
@ -21,7 +21,7 @@
static ExprValue *parseVar(const char *&s);
static bool parseName(const char *&s, QString & name,
static bool parseName(const char *&s, TQString & name,
VarTree::NameKind & kind);
static bool parseValue(const char *&s, ExprValue * variable);
static bool isErrorExpr(const char *output);
@ -86,7 +86,7 @@ static XsldbgCmdInfo cmds[] = {
{DCprint, "print %s\n", XsldbgCmdInfo::argString},
{DCprintDeref, "print 'print (*%s)'\n", XsldbgCmdInfo::argString},
{DCprintStruct, "print 'print %s'\n", XsldbgCmdInfo::argString},
{DCprintQStringStruct, "print 'print %s'\n", XsldbgCmdInfo::argString},
{DCprintTQStringStruct, "print 'print %s'\n", XsldbgCmdInfo::argString},
{DCframe, "frame %d\n", XsldbgCmdInfo::argNum},
{DCfindType, "print 'whatis %s'\n", XsldbgCmdInfo::argString},
{DCinfosharedlib, "stylesheets\n", XsldbgCmdInfo::argNone},
@ -104,7 +104,7 @@ static XsldbgCmdInfo cmds[] = {
#define MAX_FMTLEN 200
XsldbgDriver::XsldbgDriver():
DebuggerDriver(), m_gdbMajor(2), m_gdbMinor(0)
DebuggerDriver()
{
m_promptRE.setPattern("\\(xsldbg\\) .*> ");
m_promptMinLen = 11;
@ -176,27 +176,27 @@ XsldbgDriver::~XsldbgDriver()
}
QString
TQString
XsldbgDriver::driverName() const
{
return "XSLDBG";
}
QString
TQString
XsldbgDriver::defaultXsldbg()
{
return "xsldbg --lang en --shell --gdb";
}
QString
TQString
XsldbgDriver::defaultInvocation() const
{
return defaultXsldbg();
}
QStringList XsldbgDriver::boolOptionList() const
TQStringList XsldbgDriver::boolOptionList() const
{
QStringList allOptions;
TQStringList allOptions;
allOptions.append("verbose");
allOptions.append("repeat");
allOptions.append("debug");
@ -213,7 +213,7 @@ QStringList XsldbgDriver::boolOptionList() const
void
XsldbgDriver::slotReceiveOutput(KProcess * process, char *buffer,
XsldbgDriver::slotReceiveOutput(TDEProcess * process, char *buffer,
int buflen)
{
//TRACE(buffer);
@ -232,7 +232,7 @@ XsldbgDriver::slotReceiveOutput(KProcess * process, char *buffer,
}
bool
XsldbgDriver::startup(QString cmdStr)
XsldbgDriver::startup(TQString cmdStr)
{
if (!DebuggerDriver::startup(cmdStr))
return false;
@ -258,39 +258,6 @@ XsldbgDriver::commandFinished(CmdQueueItem * cmd)
return;
}
switch (cmd->m_cmd) {
case DCinitialize:
// get version number from preamble
{
int len;
QRegExp xsldbgVersion("^XSLDBG [0-9]+\\.[0-9]+\\.[0-9]+");
int offset = xsldbgVersion.match(m_output, 0, &len);
if (offset >= 0) {
char *start = m_output + offset + 7; // skip "^XSLDBG "
char *end;
TRACE("Reading version");
TRACE(start);
m_gdbMajor = strtol(start, &end, 10);
m_gdbMinor = strtol(end + 1, 0, 10); // skip "."
if (start == end) {
// nothing was parsed
m_gdbMajor = 0;
m_gdbMinor = 7;
}
} else {
// assume some default version (what would make sense?)
m_gdbMajor = 0;
m_gdbMinor = 7;
}
TRACE(QString("Got version ") +
QString::number(m_gdbMajor) + "." +
QString::number(m_gdbMinor));
break;
}
default:;
}
/* ok, the command is ready */
emit commandReceived(cmd, m_output);
@ -327,7 +294,7 @@ XsldbgDriver::parseMarker()
// TRACE("parseMarker : xsldbg");
// TRACE(m_output);
int len, markerStart = -1;
int len = 0, markerStart = -1;
char *p = m_output;
while (markerStart == -1) {
@ -335,21 +302,24 @@ XsldbgDriver::parseMarker()
m_output[0] = '\0';
return;
}
//TRACE(QString("parseMarker is looking at :") + p);
markerStart = m_markerRE.match(p, 0, &len);
//TRACE(TQString("parseMarker is looking at :") + p);
markerStart = m_markerRE.search(p, 0);
if (markerStart == -1) {
// try to marker on next line !
p = strchr(p, '\n');
if ((p != 0) && (*p != '\0'))
p++;
}
else {
len = m_markerRE.matchedLength();
}
}
// extract the marker
char *startMarker = p + markerStart + len;
//TRACE(QString("found marker:") + startMarker);
//TRACE(TQString("found marker:") + startMarker);
char *endMarker = strchr(startMarker, '\n');
if (endMarker == 0)
@ -358,9 +328,9 @@ XsldbgDriver::parseMarker()
*endMarker = '\0';
// extract filename and line number
static QRegExp MarkerRE(" at line [0-9]+");
static TQRegExp MarkerRE(" at line [0-9]+");
int lineNoStart = MarkerRE.match(startMarker, 0, &len);
int lineNoStart = MarkerRE.search(startMarker, 0);
if (lineNoStart >= 0) {
int lineNo = atoi(startMarker + lineNoStart + 8);
@ -371,7 +341,7 @@ XsldbgDriver::parseMarker()
startMarker[lineNoStart-1] = '\0'; /* split off file name */
TRACE("Got file and line number");
startMarker++;
TRACE(QString(startMarker) + ": " + QString::number(lineNo));
TRACE(TQString(startMarker) + ": " + TQString::number(lineNo));
emit activateFileLine(startMarker, lineNo - 1, address);
}
}
@ -382,7 +352,7 @@ XsldbgDriver::parseMarker()
* command line.
*/
static void
normalizeStringArg(QString & arg)
normalizeStringArg(TQString & arg)
{
/*
* Remove trailing backslashes. This approach is a little simplistic,
@ -395,8 +365,8 @@ normalizeStringArg(QString & arg)
}
QString
XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg)
TQString
XsldbgDriver::makeCmdString(DbgCommand cmd, TQString strArg)
{
assert(cmd >= 0 && cmd < NUM_CMDS);
assert(cmds[cmd].argsNeeded == XsldbgCmdInfo::argString);
@ -411,24 +381,24 @@ XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg)
m_xslFile = strArg;
}
QString cmdString;
TQString cmdString;
cmdString.sprintf(cmds[cmd].fmt, strArg.latin1());
return cmdString;
}
QString
TQString
XsldbgDriver::makeCmdString(DbgCommand cmd, int intArg)
{
assert(cmd >= 0 && cmd < NUM_CMDS);
assert(cmds[cmd].argsNeeded == XsldbgCmdInfo::argNum);
QString cmdString;
TQString cmdString;
cmdString.sprintf(cmds[cmd].fmt, intArg);
return cmdString;
}
QString
XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg, int intArg)
TQString
XsldbgDriver::makeCmdString(DbgCommand cmd, TQString strArg, int intArg)
{
assert(cmd >= 0 && cmd < NUM_CMDS);
assert(cmds[cmd].argsNeeded == XsldbgCmdInfo::argStringNum ||
@ -437,7 +407,7 @@ XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg, int intArg)
normalizeStringArg(strArg);
QString cmdString;
TQString cmdString;
if (cmd == DCtty) {
/*
@ -499,7 +469,7 @@ XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg, int intArg)
}
break;
}
QString spec;
TQString spec;
spec.sprintf("/%d%c%c", count, sizeSpec, formatSpec);
@ -526,9 +496,9 @@ XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg, int intArg)
return cmdString;
}
QString
XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg1,
QString strArg2)
TQString
XsldbgDriver::makeCmdString(DbgCommand cmd, TQString strArg1,
TQString strArg2)
{
assert(cmd >= 0 && cmd < NUM_CMDS);
assert(cmds[cmd].argsNeeded == XsldbgCmdInfo::argString2);
@ -536,18 +506,18 @@ XsldbgDriver::makeCmdString(DbgCommand cmd, QString strArg1,
normalizeStringArg(strArg1);
normalizeStringArg(strArg2);
QString cmdString;
TQString cmdString;
cmdString.sprintf(cmds[cmd].fmt, strArg1.latin1(), strArg2.latin1());
return cmdString;
}
QString
TQString
XsldbgDriver::makeCmdString(DbgCommand cmd, int intArg1, int intArg2)
{
assert(cmd >= 0 && cmd < NUM_CMDS);
assert(cmds[cmd].argsNeeded == XsldbgCmdInfo::argNum2);
QString cmdString;
TQString cmdString;
cmdString.sprintf(cmds[cmd].fmt, intArg1, intArg2);
return cmdString;
}
@ -566,7 +536,7 @@ XsldbgDriver::executeCmd(DbgCommand cmd, bool clearLow)
}
CmdQueueItem *
XsldbgDriver::executeCmd(DbgCommand cmd, QString strArg, bool clearLow)
XsldbgDriver::executeCmd(DbgCommand cmd, TQString strArg, bool clearLow)
{
return executeCmdString(cmd, makeCmdString(cmd, strArg), clearLow);
}
@ -579,7 +549,7 @@ XsldbgDriver::executeCmd(DbgCommand cmd, int intArg, bool clearLow)
}
CmdQueueItem *
XsldbgDriver::executeCmd(DbgCommand cmd, QString strArg, int intArg,
XsldbgDriver::executeCmd(DbgCommand cmd, TQString strArg, int intArg,
bool clearLow)
{
return executeCmdString(cmd, makeCmdString(cmd, strArg, intArg),
@ -587,7 +557,7 @@ XsldbgDriver::executeCmd(DbgCommand cmd, QString strArg, int intArg,
}
CmdQueueItem *
XsldbgDriver::executeCmd(DbgCommand cmd, QString strArg1, QString strArg2,
XsldbgDriver::executeCmd(DbgCommand cmd, TQString strArg1, TQString strArg2,
bool clearLow)
{
return executeCmdString(cmd, makeCmdString(cmd, strArg1, strArg2),
@ -609,7 +579,7 @@ XsldbgDriver::queueCmd(DbgCommand cmd, QueueMode mode)
}
CmdQueueItem *
XsldbgDriver::queueCmd(DbgCommand cmd, QString strArg, QueueMode mode)
XsldbgDriver::queueCmd(DbgCommand cmd, TQString strArg, QueueMode mode)
{
return queueCmdString(cmd, makeCmdString(cmd, strArg), mode);
}
@ -621,14 +591,14 @@ XsldbgDriver::queueCmd(DbgCommand cmd, int intArg, QueueMode mode)
}
CmdQueueItem *
XsldbgDriver::queueCmd(DbgCommand cmd, QString strArg, int intArg,
XsldbgDriver::queueCmd(DbgCommand cmd, TQString strArg, int intArg,
QueueMode mode)
{
return queueCmdString(cmd, makeCmdString(cmd, strArg, intArg), mode);
}
CmdQueueItem *
XsldbgDriver::queueCmd(DbgCommand cmd, QString strArg1, QString strArg2,
XsldbgDriver::queueCmd(DbgCommand cmd, TQString strArg1, TQString strArg2,
QueueMode mode)
{
return queueCmdString(cmd, makeCmdString(cmd, strArg1, strArg2), mode);
@ -637,7 +607,7 @@ XsldbgDriver::queueCmd(DbgCommand cmd, QString strArg1, QString strArg2,
void
XsldbgDriver::terminate()
{
qDebug("XsldbgDriver::Terminate");
tqDebug("XsldbgDriver::Terminate");
flushCommands();
executeCmdString(DCinitialize, "quit\n", true);
kill(SIGTERM);
@ -647,7 +617,7 @@ XsldbgDriver::terminate()
void
XsldbgDriver::detachAndTerminate()
{
qDebug("XsldbgDriver::detachAndTerminate");
tqDebug("XsldbgDriver::detachAndTerminate");
flushCommands();
executeCmdString(DCinitialize, "quit\n", true);
kill(SIGINT);
@ -657,7 +627,7 @@ void
XsldbgDriver::interruptInferior()
{
// remove accidentally queued commands
qDebug("interruptInferior");
tqDebug("interruptInferior");
flushHiPriQueue();
kill(SIGINT);
}
@ -692,7 +662,7 @@ isErrorExpr(const char *output)
errorWordLength[wordIndex]) == 0 &&
(wordIndex == 0 && strstr(output, "try stepping past the xsl:param") == 0) ) {
result = true;
TRACE(QString("Error/Warning/Information from xsldbg ") + output);
TRACE(TQString("Error/Warning/Information from xsldbg ") + output);
break;
}
}
@ -711,12 +681,12 @@ parseErrorMessage(const char *output,
if (isErrorExpr(output)) {
if (wantErrorValue) {
// put the error message as value in the variable
variable = new ExprValue(QString(), VarTree::NKplain);
variable = new ExprValue(TQString(), VarTree::NKplain);
const char *endMsg = strchr(output, '\n');
if (endMsg == 0)
endMsg = output + strlen(output);
variable->m_value = QString::fromLatin1(output, endMsg - output);
variable->m_value = TQString::fromLatin1(output, endMsg - output);
} else {
variable = 0;
}
@ -727,17 +697,17 @@ parseErrorMessage(const char *output,
void
XsldbgDriver::setPrintQStringDataCmd(const char* /*cmd*/)
XsldbgDriver::setPrintTQStringDataCmd(const char* /*cmd*/)
{
}
ExprValue *
XsldbgDriver::parseQCharArray(const char */*output*/, bool /*wantErrorValue*/,
XsldbgDriver::parseTQCharArray(const char */*output*/, bool /*wantErrorValue*/,
bool /*qt3like*/)
{
ExprValue *variable = 0;
TRACE("XsldbgDriver::parseQCharArray not implmented");
TRACE("XsldbgDriver::parseTQCharArray not implmented");
return variable;
}
@ -747,7 +717,7 @@ parseVar(const char *&s)
const char *p = s;
bool foundLocalVar = false;
ExprValue *variable = 0L;
QString name;
TQString name;
VarTree::NameKind kind;
@ -776,7 +746,7 @@ parseVar(const char *&s)
TRACE("Found print expr");
if (nextLine) {
p = p + 2; /* skip the "= " */
name = QString::fromLatin1(p, nextLine - p);
name = TQString::fromLatin1(p, nextLine - p);
kind = VarTree::NKplain;
p = nextLine + 1;
variable = new ExprValue(name, kind);
@ -793,7 +763,7 @@ parseVar(const char *&s)
if (*p != '='){
// No value provided just a name
TRACE(QString("Parse var: name") + p);
TRACE(TQString("Parse var: name") + p);
if (!parseName(p, name, kind)) {
return 0;
}
@ -806,7 +776,7 @@ parseVar(const char *&s)
// skip whitespace
while (isspace(*p))
p++;
TRACE(QString("Parse var: name") + p);
TRACE(TQString("Parse var: name") + p);
if (!parseName(p, name, kind)) {
return 0;
}
@ -839,9 +809,9 @@ skipName(const char *&p)
}
static bool
parseName(const char *&s, QString & name, VarTree::NameKind & kind)
parseName(const char *&s, TQString & name, VarTree::NameKind & kind)
{
/* qDebug(__PRETTY_FUNCTION__); */
/* tqDebug(__PRETTY_FUNCTION__); */
kind = VarTree::NKplain;
const char *p = s;
@ -856,10 +826,10 @@ parseName(const char *&s, QString & name, VarTree::NameKind & kind)
}
name = QString::fromLatin1(s, len);
name = TQString::fromLatin1(s, len);
/* XSL variables will have a $ prefix to be evaluated
* properly */
//TRACE(QString("parseName got name" ) + name);
//TRACE(TQString("parseName got name" ) + name);
// return the new position
s = p;
@ -945,7 +915,7 @@ parseValue(const char *&s, ExprValue * variable)
}
if (foundEnd == 0)
TRACE(QString("Unable to find end on value near :") + start);
TRACE(TQString("Unable to find end on value near :") + start);
// If we've got something otherthan a end of value marker then
// advance to the end of this buffer
@ -966,11 +936,11 @@ parseValue(const char *&s, ExprValue * variable)
* Parses a stack frame.
*/
static void
parseFrameInfo(const char *&s, QString & func,
QString & file, int &lineNo, DbgAddr & /*address*/)
parseFrameInfo(const char *&s, TQString & func,
TQString & file, int &lineNo, DbgAddr & /*address*/)
{
const char *p = s, *endPos = s + strlen(s);
QString lineNoString;
TQString lineNoString;
TRACE("parseFrameInfo");
@ -1033,7 +1003,7 @@ parseFrameInfo(const char *&s, QString & func,
if (isdigit(*p)) {
/* KDbg uses an offset of +1 for its line numbers */
lineNo = atoi(p) - 1;
lineNoString = QString::number(lineNo);
lineNoString = TQString::number(lineNo);
}
/* convert func into format needed */
func.append(" at ");
@ -1055,8 +1025,8 @@ parseFrameInfo(const char *&s, QString & func,
* Parses a stack frame including its frame number
*/
static bool
parseFrame(const char *&s, int &frameNo, QString & func,
QString & file, int &lineNo, DbgAddr & address)
parseFrame(const char *&s, int &frameNo, TQString & func,
TQString & file, int &lineNo, DbgAddr & address)
{
// TRACE("XsldbgDriver ::parseFrame");
@ -1081,7 +1051,7 @@ parseFrame(const char *&s, int &frameNo, QString & func,
while (isdigit(*s))
s++;
//TRACE(QString("Got frame ").append(QString::number(frameNo)));
//TRACE(TQString("Got frame ").append(TQString::number(frameNo)));
// space
while (isspace(*s))
s++;
@ -1095,7 +1065,7 @@ void
XsldbgDriver::parseBackTrace(const char *output,
std::list < StackFrame > &stack)
{
QString func, file;
TQString func, file;
int lineNo, frameNo;
DbgAddr address;
@ -1113,10 +1083,10 @@ XsldbgDriver::parseBackTrace(const char *output,
bool
XsldbgDriver::parseFrameChange(const char *output, int &frameNo,
QString & file, int &lineNo,
TQString & file, int &lineNo,
DbgAddr & address)
{
QString func;
TQString func;
return::parseFrame(output, frameNo, func, file, lineNo, address);
}
@ -1138,8 +1108,8 @@ XsldbgDriver::parseBreakList(const char *output,
while ((p != 0) && (*p != '\0')) {
if (*p == '\n')
p++;
QString templateName;
//qDebug("Looking at :%s", p);
TQString templateName;
//tqDebug("Looking at :%s", p);
if (strncmp(p, " Breakpoint", 11) != 0)
break;
p = p + 11;
@ -1214,7 +1184,7 @@ XsldbgDriver::parseBreakList(const char *output,
if (*p == '\"')
p++;
/* grab file name */
QString file;
TQString file;
while ((*p != '\"') && !isspace(*p)) {
file.append(*p);
p++;
@ -1230,7 +1200,7 @@ XsldbgDriver::parseBreakList(const char *output,
p++;
}
//TRACE(p);
QString lineNo;
TQString lineNo;
while (isdigit(*p)) {
lineNo.append(*p);
p++;
@ -1238,7 +1208,7 @@ XsldbgDriver::parseBreakList(const char *output,
// bp.lineNo is zero-based
bp.lineNo = lineNo.toInt() - 1;
bp.location = QString("in %1 at %2:%3").arg(templateName, file, lineNo);
bp.location = TQString("in %1 at %2:%3").arg(templateName, file, lineNo);
bp.fileName = file;
brks.push_back(bp);
@ -1259,7 +1229,7 @@ XsldbgDriver::parseThreadList(const char */*output*/)
bool
XsldbgDriver::parseBreakpoint(const char *output, int &id,
QString &file, int &lineNo, QString &address)
TQString &file, int &lineNo, TQString &address)
{
// check for errors
if ( strncmp(output, "Error:", 6) == 0) {
@ -1280,7 +1250,7 @@ XsldbgDriver::parseBreakpoint(const char *output, int &id,
return false;
// the file name + lineNo will be filled in later from the breakpoint list
file = address = QString();
file = address = TQString();
lineNo = 0;
return true;
}
@ -1323,13 +1293,13 @@ XsldbgDriver::parsePrintExpr(const char *output, bool wantErrorValue)
}
bool
XsldbgDriver::parseChangeWD(const char *output, QString & message)
XsldbgDriver::parseChangeWD(const char *output, TQString & message)
{
bool isGood = false;
if (strncmp(output, "Change to directory", 20) == 0) {
output = output + 20; /* skip 'Change to directory' */
message = QString(output).simplifyWhiteSpace();
message = TQString(output).simplifyWhiteSpace();
if (message.isEmpty()) {
message = i18n("New working directory: ") + m_programWD;
isGood = true;
@ -1339,18 +1309,18 @@ XsldbgDriver::parseChangeWD(const char *output, QString & message)
}
bool
XsldbgDriver::parseChangeExecutable(const char *output, QString & message)
XsldbgDriver::parseChangeExecutable(const char *output, TQString & message)
{
message = output;
TRACE(QString("XsldbgDriver::parseChangeExecutable :") + output);
TRACE(TQString("XsldbgDriver::parseChangeExecutable :") + output);
m_haveCoreFile = false;
/*
* The command is successful if there is no output or the single
* message (no debugging symbols found)...
*/
QRegExp exp(".*Load of source deferred. Use the run command.*");
int len, index = exp.match(output, 0, &len);
TQRegExp exp(".*Load of source deferred. Use the run command.*");
int index = exp.search(output, 0);
if (index != -1) {
TRACE("Parsed stylesheet executable");
@ -1364,8 +1334,8 @@ XsldbgDriver::parseCoreFile(const char *output)
{
TRACE("XsldbgDriver::parseCoreFile");
TRACE(output);
QRegExp exp(".*Load of data file deferred. Use the run command.*");
int len, index = exp.match(output, 0, &len);
TQRegExp exp(".*Load of data file deferred. Use the run command.*");
int index = exp.search(output, 0);
if (index != -1) {
m_haveCoreFile = true;
@ -1376,7 +1346,7 @@ XsldbgDriver::parseCoreFile(const char *output)
}
uint
XsldbgDriver::parseProgramStopped(const char *output, QString & message)
XsldbgDriver::parseProgramStopped(const char *output, TQString & message)
{
/* Not sure about this function leave it here for the moment */
/*
@ -1387,7 +1357,7 @@ XsldbgDriver::parseProgramStopped(const char *output, QString & message)
const char *start = output - 1;
uint flags = SFprogramActive;
message = QString();
message = TQString();
do {
start++; /* skip '\n' */
@ -1403,14 +1373,14 @@ XsldbgDriver::parseProgramStopped(const char *output, QString & message)
return flags;
}
QStringList
TQStringList
XsldbgDriver::parseSharedLibs(const char */*output*/)
{
return QStringList();
return TQStringList();
}
bool
XsldbgDriver::parseFindType(const char */*output*/, QString & /*type*/)
XsldbgDriver::parseFindType(const char */*output*/, TQString & /*type*/)
{
return true;
}
@ -1422,8 +1392,8 @@ XsldbgDriver::parseRegisters(const char */*output*/)
}
bool
XsldbgDriver::parseInfoLine(const char */*output*/, QString & /*addrFrom*/,
QString & /*addrTo*/)
XsldbgDriver::parseInfoLine(const char */*output*/, TQString & /*addrFrom*/,
TQString & /*addrTo*/)
{
return false;
}
@ -1434,17 +1404,17 @@ XsldbgDriver::parseDisassemble(const char */*output*/)
return std::list<DisassembledCode>();
}
QString
TQString
XsldbgDriver::parseMemoryDump(const char */*output*/,
std::list < MemoryDump > &/*memdump*/)
{
return i18n("No memory dump available");
}
QString
TQString
XsldbgDriver::parseSetVariable(const char */*output*/)
{
QString msg;
TQString msg;
return msg;
}

@ -8,98 +8,97 @@
#define XSLDBGDRIVER_H
#include "dbgdriver.h"
#include "qregexp.h"
#include "tqregexp.h"
class XsldbgDriver:public DebuggerDriver {
Q_OBJECT public:
TQ_OBJECT public:
XsldbgDriver();
~XsldbgDriver();
virtual QString driverName() const;
virtual QString defaultInvocation() const;
virtual QStringList boolOptionList() const;
static QString defaultXsldbg();
virtual bool startup(QString cmdStr);
virtual TQString driverName() const;
virtual TQString defaultInvocation() const;
virtual TQStringList boolOptionList() const;
static TQString defaultXsldbg();
virtual bool startup(TQString cmdStr);
virtual void commandFinished(CmdQueueItem * cmd);
void slotReceiveOutput(KProcess * process, char *buffer, int buflen);
void slotReceiveOutput(TDEProcess * process, char *buffer, int buflen);
virtual CmdQueueItem *executeCmd(DbgCommand, bool clearLow = false);
virtual CmdQueueItem *executeCmd(DbgCommand, QString strArg,
virtual CmdQueueItem *executeCmd(DbgCommand, TQString strArg,
bool clearLow = false);
virtual CmdQueueItem *executeCmd(DbgCommand, int intArg,
bool clearLow = false);
virtual CmdQueueItem *executeCmd(DbgCommand, QString strArg,
virtual CmdQueueItem *executeCmd(DbgCommand, TQString strArg,
int intArg, bool clearLow = false);
virtual CmdQueueItem *executeCmd(DbgCommand, QString strArg1,
QString strArg2, bool clearLow =
virtual CmdQueueItem *executeCmd(DbgCommand, TQString strArg1,
TQString strArg2, bool clearLow =
false);
virtual CmdQueueItem *executeCmd(DbgCommand, int intArg1, int intArg2,
bool clearLow = false);
virtual CmdQueueItem *queueCmd(DbgCommand, QueueMode mode);
virtual CmdQueueItem *queueCmd(DbgCommand, QString strArg,
virtual CmdQueueItem *queueCmd(DbgCommand, TQString strArg,
QueueMode mode);
virtual CmdQueueItem *queueCmd(DbgCommand, int intArg, QueueMode mode);
virtual CmdQueueItem *queueCmd(DbgCommand, QString strArg, int intArg,
virtual CmdQueueItem *queueCmd(DbgCommand, TQString strArg, int intArg,
QueueMode mode);
virtual CmdQueueItem *queueCmd(DbgCommand, QString strArg1,
QString strArg2, QueueMode mode);
virtual CmdQueueItem *queueCmd(DbgCommand, TQString strArg1,
TQString strArg2, QueueMode mode);
virtual void terminate();
virtual void detachAndTerminate();
virtual void interruptInferior();
virtual void setPrintQStringDataCmd(const char* cmd);
virtual void setPrintTQStringDataCmd(const char* cmd);
/**
* Parses the output as an array of QChars.
* Parses the output as an array of TQChars.
*/
virtual ExprValue *parseQCharArray(const char *output,
virtual ExprValue *parseTQCharArray(const char *output,
bool wantErrorValue, bool qt3like);
virtual void parseBackTrace(const char *output,
std::list < StackFrame > &stack);
virtual bool parseFrameChange(const char *output, int &frameNo,
QString & file, int &lineNo,
TQString & file, int &lineNo,
DbgAddr & address);
virtual bool parseBreakList(const char *output,
std::list < Breakpoint > &brks);
virtual std::list<ThreadInfo> parseThreadList(const char *output);
virtual bool parseBreakpoint(const char *output, int &id,
QString & file, int &lineNo, QString& address);
TQString & file, int &lineNo, TQString& address);
virtual void parseLocals(const char *output,
std::list < ExprValue* > &newVars);
virtual ExprValue * parsePrintExpr(const char *output, bool wantErrorValue);
virtual bool parseChangeWD(const char *output, QString & message);
virtual bool parseChangeWD(const char *output, TQString & message);
virtual bool parseChangeExecutable(const char *output,
QString & message);
TQString & message);
virtual bool parseCoreFile(const char *output);
virtual uint parseProgramStopped(const char *output,
QString & message);
virtual QStringList parseSharedLibs(const char *output);
virtual bool parseFindType(const char *output, QString & type);
TQString & message);
virtual TQStringList parseSharedLibs(const char *output);
virtual bool parseFindType(const char *output, TQString & type);
virtual std::list<RegisterInfo> parseRegisters(const char *output);
virtual bool parseInfoLine(const char *output, QString & addrFrom,
QString & addrTo);
virtual bool parseInfoLine(const char *output, TQString & addrFrom,
TQString & addrTo);
virtual std::list<DisassembledCode> parseDisassemble(const char *output);
virtual QString parseMemoryDump(const char *output,
virtual TQString parseMemoryDump(const char *output,
std::list < MemoryDump > &memdump);
virtual QString parseSetVariable(const char* output);
virtual TQString parseSetVariable(const char* output);
protected:
int m_gdbMajor, m_gdbMinor;
QString m_programWD; /* just an intermediate storage */
QString m_xslFile; /* needed to display it initially */
TQString m_programWD; /* just an intermediate storage */
TQString m_xslFile; /* needed to display it initially */
bool m_haveDataFile; /* have we set the XML data file to use? */
QString m_redirect; /* redirection to /dev/null */
TQString m_redirect; /* redirection to /dev/null */
bool m_haveCoreFile;
QRegExp m_markerRE;
TQRegExp m_markerRE;
QString makeCmdString(DbgCommand cmd, QString strArg);
QString makeCmdString(DbgCommand cmd, int intArg);
QString makeCmdString(DbgCommand cmd, QString strArg, int intArg);
QString makeCmdString(DbgCommand cmd, QString strArg1,
QString strArg2);
QString makeCmdString(DbgCommand cmd, int intArg1, int intArg2);
TQString makeCmdString(DbgCommand cmd, TQString strArg);
TQString makeCmdString(DbgCommand cmd, int intArg);
TQString makeCmdString(DbgCommand cmd, TQString strArg, int intArg);
TQString makeCmdString(DbgCommand cmd, TQString strArg1,
TQString strArg2);
TQString makeCmdString(DbgCommand cmd, int intArg1, int intArg2);
void parseMarker();
};

@ -1,5 +0,0 @@
POFILES = AUTO
# To merge the messages from kdbg.pot into the *.po files do this
# in the _source_ directory:
# make -f ../admin/Makefile.common package-merge POFILES='*.po' PACKAGE=kdbg > /dev/null

@ -1,2 +0,0 @@
kdbg
po

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: br\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Dizraener"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Goulevioù dizraenañ"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
#, fuzzy
msgid "Debugger"
msgstr "Programes per localització d'errors"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Programes per localització d'errors"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
#, fuzzy
msgid "Debugger"
msgstr "Ladídí program"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Ladídí program"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Afluser"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Afluseprogrammer"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
#, fuzzy
msgid "Debugger"
msgstr "Programme debuggen"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Programme debuggen"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# Juan M Ayala <linux.zero@yahoo.com>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: 2025-01-21 10:12+0000\n"
"Last-Translator: Juan M Ayala <linux.zero@yahoo.com>\n"
"Language-Team: Spanish <https://mirror.git.trinitydesktop.org/weblate/"
"projects/applications/kdbg-kdbgdesktop/es/>\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr "KDbg"
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Depurador"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Depurador de programas"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Debuggeri"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Tutki ohjelmien toimintaa"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Débogueur"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Déboguer un programme"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: is\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Aflúsun"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "kdbg: Forrit til ađ aflúsa önnur forrit"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: 2024-11-03 19:11+0000\n"
"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n"
"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/"
"projects/applications/kdbg-kdbgdesktop/ka/>\n"
"Language: ka\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr "KDbg"
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "გამმართველი"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "პროგრამების გამართვა"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr ""
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr ""

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: no\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Avluser"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Avluse programmer"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
#, fuzzy
msgid "Debugger"
msgstr "Program do debugowania"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Program do debugowania"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Depurador"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Depurador de programas"

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: 2021-12-17 22:00+0000\n"
"Last-Translator: Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://mirror.git.trinitydesktop.org/"
"weblate/projects/applications/kdbg-kdbgdesktop/pt_BR/>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.9.1\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr "KDbg"
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Depurador"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Depurador de programas"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: ro\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Depanator"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Depanator de programe"

@ -0,0 +1,34 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# Andrei Stepanov <adem4ik@gmail.com>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: 2023-12-01 10:14+0000\n"
"Last-Translator: Andrei Stepanov <adem4ik@gmail.com>\n"
"Language-Team: Russian <https://mirror.git.trinitydesktop.org/weblate/"
"projects/applications/kdbg-kdbgdesktop/ru/>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr "KDbg"
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Отладчик"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Отлаживает программы"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Ladiaci program"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Ladiaci program"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Razhroščevalnik"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Odpravljanje napak v programih"

@ -0,0 +1,32 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-07-02 15:35+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Name
#: kdbg.desktop:2
msgid "KDbg"
msgstr ""
#. GenericName
#: kdbg.desktop:4
msgid "Debugger"
msgstr "Avlusare"
#. Comment
#: kdbg.desktop:6
msgid "Debug programs"
msgstr "Avlusar program"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -0,0 +1,836 @@
# SOME DESCRIPTIVE TITLE.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-09-07 18:27+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Instead of a literal translation, add your name to the end of the list (separated by a comma).
#, ignore-inconsistent
msgid ""
"_: NAME OF TRANSLATORS\n"
"Your names"
msgstr ""
#. Instead of a literal translation, add your email to the end of the list (separated by a comma).
#, ignore-inconsistent
msgid ""
"_: EMAIL OF TRANSLATORS\n"
"Your emails"
msgstr ""
#: brkpt.cpp:63
msgid "Add &Breakpoint"
msgstr ""
#: brkpt.cpp:67
msgid "Add &Watchpoint"
msgstr ""
#: brkpt.cpp:76 brkpt.cpp:235
msgid "&Disable"
msgstr ""
#: brkpt.cpp:81 brkpt.cpp:237
msgid "&Enable"
msgstr ""
#: brkpt.cpp:91
msgid "&View Code"
msgstr ""
#: brkpt.cpp:95
msgid "&Conditional..."
msgstr ""
#: brkpt.cpp:316 threadlist.cpp:42
msgid "Location"
msgstr ""
#: brkpt.cpp:317 memwindow.cpp:55
msgid "Address"
msgstr ""
#: brkpt.cpp:318
msgid "Hits"
msgstr ""
#: brkpt.cpp:319
msgid "Ignore"
msgstr ""
#: brkpt.cpp:320
msgid "Condition"
msgstr ""
#: brkpt.cpp:443
msgid ": Conditional breakpoint"
msgstr ""
#: brkpt.cpp:446
msgid "&Condition:"
msgstr ""
#: brkpt.cpp:448
msgid "Ignore &next hits:"
msgstr ""
#: dbgmainwnd.cpp:46
msgid "Source"
msgstr ""
#: dbgmainwnd.cpp:54 dbgmainwnd.cpp:388
msgid "Stack"
msgstr ""
#: dbgmainwnd.cpp:57 dbgmainwnd.cpp:389
msgid "Locals"
msgstr ""
#: dbgmainwnd.cpp:58
msgid "Variable"
msgstr ""
#: dbgmainwnd.cpp:60 dbgmainwnd.cpp:390
msgid "Watches"
msgstr ""
#: dbgmainwnd.cpp:63 dbgmainwnd.cpp:391
msgid "Registers"
msgstr ""
#: dbgmainwnd.cpp:66 dbgmainwnd.cpp:392
msgid "Breakpoints"
msgstr ""
#: dbgmainwnd.cpp:69 dbgmainwnd.cpp:394
msgid "Output"
msgstr ""
#: dbgmainwnd.cpp:72 dbgmainwnd.cpp:393
msgid "Threads"
msgstr ""
#: dbgmainwnd.cpp:75 dbgmainwnd.cpp:395
msgid "Memory"
msgstr ""
#: dbgmainwnd.cpp:181
msgid "&Open Source..."
msgstr ""
#: dbgmainwnd.cpp:183
msgid "&Reload Source"
msgstr ""
#: dbgmainwnd.cpp:186
msgid "&Executable..."
msgstr ""
#: dbgmainwnd.cpp:189
msgid "Recent E&xecutables"
msgstr ""
#: dbgmainwnd.cpp:192
msgid "&Core dump..."
msgstr ""
#: dbgmainwnd.cpp:197
msgid "This &Program..."
msgstr ""
#: dbgmainwnd.cpp:200
msgid "&Global Options..."
msgstr ""
#: dbgmainwnd.cpp:207
msgid "&Find"
msgstr ""
#: dbgmainwnd.cpp:213
msgid "Source &code"
msgstr ""
#: dbgmainwnd.cpp:215
msgid "Stac&k"
msgstr ""
#: dbgmainwnd.cpp:216
msgid "&Locals"
msgstr ""
#: dbgmainwnd.cpp:217
msgid "&Watched expressions"
msgstr ""
#: dbgmainwnd.cpp:218
msgid "&Registers"
msgstr ""
#: dbgmainwnd.cpp:219
msgid "&Breakpoints"
msgstr ""
#: dbgmainwnd.cpp:220
msgid "T&hreads"
msgstr ""
#: dbgmainwnd.cpp:221 pgmsettings.cpp:112
msgid "&Output"
msgstr ""
#: dbgmainwnd.cpp:222
msgid "&Memory"
msgstr ""
#: dbgmainwnd.cpp:232
msgid "&Run"
msgstr ""
#: dbgmainwnd.cpp:235
msgid "Step &into"
msgstr ""
#: dbgmainwnd.cpp:239
msgid "Step &over"
msgstr ""
#: dbgmainwnd.cpp:243
msgid "Step o&ut"
msgstr ""
#: dbgmainwnd.cpp:247
msgid "Run to &cursor"
msgstr ""
#: dbgmainwnd.cpp:251
msgid "Step i&nto by instruction"
msgstr ""
#: dbgmainwnd.cpp:255
msgid "Step o&ver by instruction"
msgstr ""
#: dbgmainwnd.cpp:259
msgid "&Program counter to current line"
msgstr ""
#: dbgmainwnd.cpp:262
msgid "&Break"
msgstr ""
#: dbgmainwnd.cpp:265
msgid "&Kill"
msgstr ""
#: dbgmainwnd.cpp:268
msgid "Re&start"
msgstr ""
#: dbgmainwnd.cpp:271
msgid "A&ttach..."
msgstr ""
#: dbgmainwnd.cpp:274
msgid "&Arguments..."
msgstr ""
#: dbgmainwnd.cpp:279
msgid "Set/Clear &breakpoint"
msgstr ""
#: dbgmainwnd.cpp:282
msgid "Set &temporary breakpoint"
msgstr ""
#: dbgmainwnd.cpp:285
msgid "&Enable/Disable breakpoint"
msgstr ""
#: dbgmainwnd.cpp:290
msgid "Watch Expression"
msgstr ""
#: dbgmainwnd.cpp:293
msgid "Edit Value"
msgstr ""
#: dbgmainwnd.cpp:322
msgid "Restart"
msgstr ""
#: dbgmainwnd.cpp:323
msgid "Core dump"
msgstr ""
#: dbgmainwnd.cpp:588
msgid "`%1' is not a file or does not exist"
msgstr ""
#: dbgmainwnd.cpp:702
msgid "|All source files\n"
msgstr ""
#: dbgmainwnd.cpp:703
msgid "|Source files\n"
msgstr ""
#: dbgmainwnd.cpp:704
msgid "|Header files\n"
msgstr ""
#: dbgmainwnd.cpp:705
msgid "*|All files"
msgstr ""
#: dbgmainwnd.cpp:800
msgid "Select the executable to debug"
msgstr ""
#: dbgmainwnd.cpp:813
msgid "Select core dump"
msgstr ""
#: debugger.cpp:650
msgid ""
"%1 exited unexpectedly.\n"
"Restart the session (e.g. with File|Executable)."
msgstr ""
#: debugger.cpp:833
msgid ""
"The settings for this program specify the following debugger command:\n"
"%1\n"
"Shall this command be used?"
msgstr ""
#: exprwnd.cpp:314 pgmargsbase.ui:297 regwnd.cpp:428
#, no-c-format
msgid "Value"
msgstr ""
#: gdbdriver.cpp:892
msgid "<anonymous struct or union>"
msgstr ""
#: gdbdriver.cpp:1498
msgid "<additional entries of the array suppressed>"
msgstr ""
#: gdbdriver.cpp:2053 xsldbgdriver.cpp:1304
msgid "New working directory: "
msgstr ""
#: main.cpp:38
msgid "A Debugger"
msgstr ""
#: main.cpp:46
msgid "XSLT debugging"
msgstr ""
#: main.cpp:49
msgid "Register groups and formating"
msgstr ""
#: main.cpp:54
msgid "transcript of conversation with the debugger"
msgstr ""
#: main.cpp:55
msgid "remote debugging via <device>"
msgstr ""
#: main.cpp:56
msgid "specify language: C, XSLT"
msgstr ""
#: main.cpp:57
msgid "use language XSLT (deprecated)"
msgstr ""
#: main.cpp:58
msgid "specify arguments of debugged executable"
msgstr ""
#: main.cpp:59
msgid "specify PID of process to debug"
msgstr ""
#: main.cpp:60
msgid "path of executable to debug"
msgstr ""
#: main.cpp:61
msgid "a core file to use"
msgstr ""
#: main.cpp:126
msgid "Cannot start debugger."
msgstr ""
#: mainwndbase.cpp:43
msgid " Add "
msgstr ""
#: mainwndbase.cpp:44
msgid " Del "
msgstr ""
#: mainwndbase.cpp:45
msgid "Expression"
msgstr ""
#: mainwndbase.cpp:135
msgid "active"
msgstr ""
#: mainwndbase.cpp:301
msgid "Don't know how to debug language `%1'"
msgstr ""
#: mainwndbase.cpp:314
msgid ""
"Could not start the debugger process.\n"
"Please shut down KDbg and resolve the problem."
msgstr ""
#: mainwndbase.cpp:418
msgid ": Global options"
msgstr ""
#: mainwndbase.cpp:435 pgmsettings.cpp:111
msgid "&Debugger"
msgstr ""
#: mainwndbase.cpp:436
msgid "&Miscellaneous"
msgstr ""
#: mainwndbase.cpp:506
msgid ": Program output"
msgstr ""
#: memwindow.cpp:70
msgid "B&ytes"
msgstr ""
#: memwindow.cpp:71
msgid "Halfwords (&2 Bytes)"
msgstr ""
#: memwindow.cpp:72
msgid "Words (&4 Bytes)"
msgstr ""
#: memwindow.cpp:73
msgid "Giantwords (&8 Bytes)"
msgstr ""
#: memwindow.cpp:75 regwnd.cpp:79
msgid "He&xadecimal"
msgstr ""
#: memwindow.cpp:76
msgid "Signed &decimal"
msgstr ""
#: memwindow.cpp:77
msgid "&Unsigned decimal"
msgstr ""
#: memwindow.cpp:78 regwnd.cpp:77
msgid "&Octal"
msgstr ""
#: memwindow.cpp:79 regwnd.cpp:76
msgid "&Binary"
msgstr ""
#: memwindow.cpp:80
msgid "&Addresses"
msgstr ""
#: memwindow.cpp:81
msgid "&Character"
msgstr ""
#: memwindow.cpp:82
msgid "&Floatingpoint"
msgstr ""
#: memwindow.cpp:83
msgid "&Strings"
msgstr ""
#: memwindow.cpp:84
msgid "&Instructions"
msgstr ""
#: pgmargs.cpp:216
msgid "Select a file name to insert as program argument"
msgstr ""
#: pgmargs.cpp:230
msgid "Select a directory to insert as program argument"
msgstr ""
#: pgmsettings.cpp:26
msgid ""
"How to invoke &GDB - leave empty to use\n"
"the default from the global options:"
msgstr ""
#: pgmsettings.cpp:61
msgid "&No input and output"
msgstr ""
#: pgmsettings.cpp:66
msgid "&Only output, simple terminal emulation"
msgstr ""
#: pgmsettings.cpp:71
msgid "&Full terminal emulation"
msgstr ""
#: pgmsettings.cpp:105
msgid "%1: Settings for %2"
msgstr ""
#: prefdebugger.cpp:21
msgid "To revert to the default settings, clear the entries."
msgstr ""
#: prefdebugger.cpp:25
msgid "How to invoke &GDB:"
msgstr ""
#: prefdebugger.cpp:32
msgid ""
"%T will be replaced with a title string,\n"
"%C will be replaced by a Bourne shell script that\n"
"keeps the terminal window open."
msgstr ""
#: prefdebugger.cpp:38
msgid "&Terminal for program output:"
msgstr ""
#: prefmisc.cpp:23
msgid "&Pop into foreground when program stops"
msgstr ""
#: prefmisc.cpp:28
msgid "Time until window goes &back (in milliseconds):"
msgstr ""
#: prefmisc.cpp:35
msgid "&Tabstop every (characters):"
msgstr ""
#: prefmisc.cpp:37
msgid "File filter for &source files:"
msgstr ""
#: prefmisc.cpp:39
msgid "File filter for &header files:"
msgstr ""
#: procattach.cpp:271
msgid ": Attach to process"
msgstr ""
#: procattach.cpp:275
msgid "Specify the process number to attach to:"
msgstr ""
#: regwnd.cpp:75
msgid "&GDB default"
msgstr ""
#: regwnd.cpp:78
msgid "&Decimal"
msgstr ""
#: regwnd.cpp:80
msgid "Real (&e)"
msgstr ""
#: regwnd.cpp:81
msgid "Real (&f)"
msgstr ""
#: regwnd.cpp:82
msgid "&Real (g)"
msgstr ""
#: regwnd.cpp:427
msgid "Register"
msgstr ""
#: regwnd.cpp:429
msgid "Decoded value"
msgstr ""
#: regwnd.cpp:462
msgid "x86/x87 segment"
msgstr ""
#: regwnd.cpp:465
msgid "Flags"
msgstr ""
#: regwnd.cpp:468
msgid "GP and others"
msgstr ""
#: threadlist.cpp:41
msgid "Thread ID"
msgstr ""
#: ttywnd.cpp:229
msgid "&Clear"
msgstr ""
#: winstack.cpp:390
msgid ": Search"
msgstr ""
#: winstack.cpp:396
msgid "&Case sensitive"
msgstr ""
#: winstack.cpp:398
msgid "&Forward"
msgstr ""
#: winstack.cpp:400
msgid "&Backward"
msgstr ""
#: xsldbgdriver.cpp:1411
msgid "No memory dump available"
msgstr ""
#: kdbgui.rc:25
#, no-c-format
msgid "E&xecution"
msgstr ""
#: kdbgui.rc:42
#, no-c-format
msgid "&Breakpoint"
msgstr ""
#: pgmargsbase.ui:16
#, no-c-format
msgid "Program Arguments"
msgstr ""
#: pgmargsbase.ui:48
#, no-c-format
msgid "&Arguments"
msgstr ""
#: pgmargsbase.ui:67
#, no-c-format
msgid "Run <i>%1</i> with these arguments:"
msgstr ""
#: pgmargsbase.ui:78
#, no-c-format
msgid ""
"Specify the arguments with which the program shall be invoked for this "
"debugging session. You specify the arguments just as you would on the "
"command line, that is, you can even use quotes and environment variables, "
"for example:<p><tt>--message 'start in: ' $HOME</tt>"
msgstr ""
#: pgmargsbase.ui:94
#, no-c-format
msgid "Insert &file name..."
msgstr ""
#: pgmargsbase.ui:97
#, no-c-format
msgid ""
"Browse for a file; the full path name will be inserted at the current cursor "
"location in the edit box above."
msgstr ""
#: pgmargsbase.ui:105
#, no-c-format
msgid "Insert &directory name..."
msgstr ""
#: pgmargsbase.ui:108
#, no-c-format
msgid ""
"Browse for a directory; the full path name will be inserted at the current "
"cursor location in the edit box above."
msgstr ""
#: pgmargsbase.ui:156
#, no-c-format
msgid "&Working Directory"
msgstr ""
#: pgmargsbase.ui:175
#, no-c-format
msgid "Specify here the initial working directory where the program is run."
msgstr ""
#: pgmargsbase.ui:191
#, no-c-format
msgid "&Browse..."
msgstr ""
#: pgmargsbase.ui:194
#, no-c-format
msgid "Browse for the initial working directory where the program is run."
msgstr ""
#: pgmargsbase.ui:242
#, no-c-format
msgid "&Environment"
msgstr ""
#: pgmargsbase.ui:269
#, no-c-format
msgid "Environment variables (<tt>NAME=value</tt>):"
msgstr ""
#: pgmargsbase.ui:280
#, no-c-format
msgid ""
"To add a new environment variable or to modify one, specify it here in the "
"form <tt>NAME=value</tt> and click <b>Modify</b>."
msgstr ""
#: pgmargsbase.ui:286
#, no-c-format
msgid "Name"
msgstr ""
#: pgmargsbase.ui:313
#, no-c-format
msgid ""
"Environment variables that are set <i>in addition</i> to those that are "
"inherited are listed in this table. To add new environment variables, "
"specify them as <tt>NAME=value</tt> in the edit box above and click "
"<b>Modify</b>. To modify a value, select it in this list and click "
"<b>Modify</b>. To delete an environment variable, select it in this list and "
"click <b>Delete</b>."
msgstr ""
#: pgmargsbase.ui:334
#, no-c-format
msgid ""
"Enters the environment variable that is currently specified in the edit box "
"into the list. If the named variable is already in the list, it receives a "
"new value; otherwise, a new entry is created."
msgstr ""
#: pgmargsbase.ui:345
#, no-c-format
msgid ""
"Deletes the selected environment variable from the list. This cannot be used "
"to delete environment variables that are inherited."
msgstr ""
#: pgmargsbase.ui:376
#, no-c-format
msgid "&xsldbg Options"
msgstr ""
#: pgmargsbase.ui:415
#, no-c-format
msgid "F1"
msgstr ""
#: procattachbase.ui:17
#, no-c-format
msgid "Attach to Process"
msgstr ""
#: procattachbase.ui:47
#, no-c-format
msgid "&Filter or PID:"
msgstr ""
#: procattachbase.ui:69
#, no-c-format
msgid ""
"Type the name of the process or its process ID (PID) here to reduce the "
"number of entries in the list."
msgstr ""
#: procattachbase.ui:77
#, no-c-format
msgid "..."
msgstr ""
#: procattachbase.ui:80
#, no-c-format
msgid "Clear filter"
msgstr ""
#: procattachbase.ui:83
#, no-c-format
msgid ""
"Use this button to clear the filter text so that all processes are displayed."
msgstr ""
#: procattachbase.ui:91
#, no-c-format
msgid "Command"
msgstr ""
#: procattachbase.ui:102
#, no-c-format
msgid "PID"
msgstr ""
#: procattachbase.ui:113
#, no-c-format
msgid "PPID"
msgstr ""
#: procattachbase.ui:135
#, no-c-format
msgid ""
"<p>This list displays all processes that are currently running. You must "
"select the process that you want KDbg to attach to. Use the <b>Filter or "
"PID</b> edit box to reduce the number of entries in this list.<p>The text in "
"the <i>Command</i> column is usually, but not always, the command that was "
"used to start the process. The <i>PID</i> column shows the process ID. The "
"<i>PPID</i> column shows the process ID of the parent process. Additional "
"columns show more information about the processes that is also available via "
"the system's <i>ps</i> command.</p><p>The list is not updated automatically. "
"Use the <b>Refresh</b> button to update it.</p>"
msgstr ""
#: procattachbase.ui:159
#, no-c-format
msgid "&Refresh"
msgstr ""
#: procattachbase.ui:162
#, no-c-format
msgid "This button updates the list of processes."
msgstr ""
#: procattachbase.ui:199
#, no-c-format
msgid ""
"You must select a process from the list. Then click the <b>OK</b> button to "
"attach to that process."
msgstr ""

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save