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> <p><a href="index.html">Contents</a></p>
<h1>Invoking KDbg from the command line</h1> <h1>Invoking KDbg from the command line</h1>
<p><pre> <p><pre>
Usage: kdbg [Qt-options] [KDE-options] [options] [program] [core] Usage: kdbg [TQt-options] [KDE-options] [options] [program] [core]
Generic options: Generic options:
--help Show help about 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-kde Show KDE specific options
--help-all Show all options --help-all Show all options
--author Show author information --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> 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>. <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 User defined type tables can be placed in <tt>${TDEHOME}/share/apps/kdbg/types</tt>, where
<tt>${KDEHOME}</tt> is <tt>~/.kde</tt> if it is not a defined environment variable. <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>libqt.so</tt> The file names end with <tt>.kdbgtt</tt>. Example: The type table for <tt>libtqt.so</tt>
is named <tt>qt.kdbgtt</tt>. is named <tt>qt.kdbgtt</tt>.
User defined type tables override the type tables provided by the system.</p> 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 <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 <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 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 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 expression (the metacharacters <tt>.*?[]^$\</tt> are recognized in the
usual way, but there is no possibility to group characters.)</li> 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: library is used. Currently, two builtins are supported:
<ul> <ul>
<li> <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> 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>. 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> See <tt>qt3.kdbgtt</tt> for examples.</li></ul></li>
</ul> </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 <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 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> 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 <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>/QString::Data</tt>, 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>QString::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>QString::Data</tt> The value displayed is the unicode string that this instance of <tt>TQString::Data</tt>
represents (which can be <tt>QString::null</tt> if it is Qt's well-defined 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 null string or <tt>(null)</tt> if the <tt>unicode</tt> member is the null
pointer). See <tt>qt2.kdbgtt</tt> for examples.</p> pointer). See <tt>qt2.kdbgtt</tt> for examples.</p>
<p>Tip: It is not necessary to define derived types if they ought to be <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> base class for a multiple-inheritance class.</p>
<h2> <h2>
An example</h2> An example</h2>
<p>The example shows how <tt>QString</tt> and <tt>QRect</tt> are defined <p>The example shows how <tt>TQString</tt> and <tt>TQRect</tt> are defined
in <tt>qt3.kdbgtt</tt>. Furthermore, the template type <tt>QValueVector</tt> in <tt>qt3.kdbgtt</tt>. Furthermore, the template type <tt>TQValueVector</tt>
is defined. This example applies to Qt 3.x, which is located in shared library is defined. This example applies to TQt 3.x, which is located in shared library
whose name ends in <tt>libqt-mt.so.3</tt>.</p> whose name ends in <tt>libtqt-mt.so.3</tt>.</p>
<pre>[Type Table] <pre>[Type Table]
Types1=QString,QRect Types1=TQString,TQRect
Types2=QValueVector Types2=TQValueVector
LibDisplayName=libqt 3.x LibDisplayName=libtqt 3.x
ShlibRE=libqt-mt\.so\.3$ ShlibRE=libtqt-mt\.so\.3$
EnableBuiltin=QString::Data,QCharIsShort EnableBuiltin=TQString::Data,TQCharIsShort
[QString] [TQString]
Display={ % } Display={ % }
Expr1=/QString::Data (%s).d Expr1=/TQString::Data (%s).d
[QValueVector] [TQValueVector]
Template=QValueVector<*> Template=TQValueVector<*>
Display={ size=% shared=% capacity=% } Display={ size=% shared=% capacity=% }
Expr1=($tmp=(%s).sh)->finish-$tmp->start Expr1=($tmp=(%s).sh)->finish-$tmp->start
Expr2=(%s).sh->count Expr2=(%s).sh->count
Expr3=($tmp=(%s).sh)->end-$tmp->start Expr3=($tmp=(%s).sh)->end-$tmp->start
[QRect] [TQRect]
Display={ tl=(%,%) br=(%,%) } Display={ tl=(%,%) br=(%,%) }
Expr1=(%s).x1 Expr1=(%s).x1
Expr2=(%s).y1 Expr2=(%s).y1
@ -170,7 +170,7 @@ Expr3=(%s).x2
Expr4=(%s).y2</pre> Expr4=(%s).y2</pre>
<p>This example shows these features:</p> <p>This example shows these features:</p>
<ul> <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. The exact type name is specified under the <tt>Template=</tt> entry.
It specifies a single wildcard so that it applies to all specializations. It specifies a single wildcard so that it applies to all specializations.
</li> </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>. Обычно переменная какого члена отображается, хранится в <i>таблицах типов</i>. Обычно
существует одна таблица на разделяемую библиотеку. существует одна таблица на разделяемую библиотеку.
<p>Таблицы типов KDbg расположены в каталоге <p>Таблицы типов KDbg расположены в каталоге
<tt>$KDEDIR/share/apps/kdbg/types</tt>. Имена файло таблиц оканчиваются на <tt>$TDEDIR/share/apps/kdbg/types</tt>. Имена файло таблиц оканчиваются на
<tt>.kdbgtt</tt>. Например, таблица типов для <tt>libqt.so</tt> называется <tt>.kdbgtt</tt>. Например, таблица типов для <tt>libtqt.so</tt> называется
<tt>qt.kdbgtt</tt>. <tt>qt.kdbgtt</tt>.
<p>Файлы таблиц типов соответствуют стандартному синтаксису файлов конфигурации <p>Файлы таблиц типов соответствуют стандартному синтаксису файлов конфигурации
KDE. Файл содержит следующие группы: KDE. Файл содержит следующие группы:
@ -53,7 +53,7 @@ KDE.
ли данную таблицу к текущей отлаживаемой программе. Для этого KDbg определяет ли данную таблицу к текущей отлаживаемой программе. Для этого KDbg определяет
разделяемые библиотеки, используемые программой. Если хотя бы одна из них разделяемые библиотеки, используемые программой. Если хотя бы одна из них
совпадает со значением этого элемента, таблица используется. Используемые совпадает со значением этого элемента, таблица используется. Используемые
регулярные выражения совпадают с регулярными выражениями Qt (метасимволы регулярные выражения совпадают с регулярными выражениями TQt (метасимволы
<tt>.*?[]^$\</tt> распознаются обычным образом, однако отсутсвует возможность <tt>.*?[]^$\</tt> распознаются обычным образом, однако отсутсвует возможность
группировать символы.)</li> группировать символы.)</li>
@ -89,11 +89,11 @@ KDE.
пятью. Это может быть с легкостью изменено, но я не рекомендую вообще пятью. Это может быть с легкостью изменено, но я не рекомендую вообще
приближаться к данному рубежу - это только затормозить процесс отладки.</font> приближаться к данному рубежу - это только затормозить процесс отладки.</font>
<p>KDbg распознает специальное расширение, которое используется для вывода <p>KDbg распознает специальное расширение, которое используется для вывода
строк Qt 2.0 в unicode: Если перед <tt>Expr</tt><i>x</i> стоит строк TQt 2.0 в unicode: Если перед <tt>Expr</tt><i>x</i> стоит
<tt>/QString::Data</tt>, подразумевается, что результат операции является <tt>/TQString::Data</tt>, подразумевается, что результат операции является
указателем на <tt>QString::Data</tt>. Выводимое значение является строкой в указателем на <tt>TQString::Data</tt>. Выводимое значение является строкой в
unicode, представленное <tt>QString::Data</tt> (которое может быть unicode, представленное <tt>TQString::Data</tt> (которое может быть
<tt>QString::null</tt>, если это пустая строка Qt, или <tt>(null)</tt>, если <tt>TQString::null</tt>, если это пустая строка TQt, или <tt>(null)</tt>, если
<tt>unicode</tt> член структуры является нулевым указателем). Для примера см. <tt>unicode</tt> член структуры является нулевым указателем). Для примера см.
<tt>qt2.kdbgtt</tt>. <tt>qt2.kdbgtt</tt>.
@ -103,24 +103,24 @@ unicode,
использовать элемент <tt>Alias</tt> для быстрого указания класса при использовать элемент <tt>Alias</tt> для быстрого указания класса при
множественном наследовании, отличного от первого слева. множественном наследовании, отличного от первого слева.
<h2>Пример</h2> <h2>Пример</h2>
Этот пример показывает, как <tt>QString</tt> и <tt>QObject</tt> описаны в Этот пример показывает, как <tt>TQString</tt> и <tt>TQObject</tt> описаны в
<tt>qt.kdbgtt</tt>. Дополнительно определен <tt>QTableView</tt>, ссылающийся <tt>qt.kdbgtt</tt>. Дополнительно определен <tt>TQTableView</tt>, ссылающийся
на <tt>QObject</tt>. Этот пример применим к Qt 1.x, который расположен в на <tt>TQObject</tt>. Этот пример применим к TQt 1.x, который расположен в
разделяемых библиотеках, имена которых оканчиваются как <tt>libqt.so.1</tt>. разделяемых библиотеках, имена которых оканчиваются как <tt>libtqt.so.1</tt>.
<pre>[Type Table] <pre>[Type Table]
Types1=QString Types1=TQString
Types2=QObject,QTableView Types2=TQObject,TQTableView
LibDisplayName=libqt 1.x LibDisplayName=libtqt 1.x
ShlibRE=libqt\.so\.1$ ShlibRE=libtqt\.so\.1$
[QString] [TQString]
Display={ % } Display={ % }
Expr1=(%s).shd->data Expr1=(%s).shd->data
[QObject] [TQObject]
Display={ name=% #chld=% } Display={ name=% #chld=% }
Expr1=(%s).objname Expr1=(%s).objname
Expr2=(%s).childObjects->numNodes Expr2=(%s).childObjects->numNodes
[QTableView] [TQTableView]
Alias=QObject</pre> Alias=TQObject</pre>
Замечание: гораздо безопаснее заключать <tt>%s</tt> в скобки. Замечание: гораздо безопаснее заключать <tt>%s</tt> в скобки.
</body> </body>
</html> </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. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <kapplication.h> #include <tdeapplication.h>
#include <klocale.h> /* i18n */ #include <tdelocale.h> /* i18n */
#include <kiconloader.h> #include <kiconloader.h>
#include <ksimpleconfig.h> #include <ksimpleconfig.h>
#include <qdialog.h> #include <tqdialog.h>
#include <qkeycode.h> #include <tqkeycode.h>
#include <qpainter.h> #include <tqpainter.h>
#include <qlabel.h> #include <tqlabel.h>
#include <qbitmap.h> #include <tqbitmap.h>
#include "debugger.h" #include "debugger.h"
#include "brkpt.h" #include "brkpt.h"
#include "dbgdriver.h" #include "dbgdriver.h"
@ -24,18 +24,18 @@
#include "mydebug.h" #include "mydebug.h"
class BreakpointItem : public QListViewItem, public Breakpoint class BreakpointItem : public TQListViewItem, public Breakpoint
{ {
public: public:
BreakpointItem(QListView* list, const Breakpoint& bp); BreakpointItem(TQListView* list, const Breakpoint& bp);
void updateFrom(const Breakpoint& bp); void updateFrom(const Breakpoint& bp);
void display(); /* sets icon and visible texts */ void display(); /* sets icon and visible texts */
bool enabled() const { return Breakpoint::enabled; } bool enabled() const { return Breakpoint::enabled; }
}; };
BreakpointTable::BreakpointTable(QWidget* parent, const char* name) : BreakpointTable::BreakpointTable(TQWidget* parent, const char* name) :
QWidget(parent, name), TQWidget(parent, name),
m_debugger(0), m_debugger(0),
m_bpEdit(this, "bpedit"), m_bpEdit(this, "bpedit"),
m_list(this, "bptable"), m_list(this, "bptable"),
@ -50,51 +50,51 @@ BreakpointTable::BreakpointTable(QWidget* parent, const char* name) :
m_buttons(8) m_buttons(8)
{ {
m_bpEdit.setMinimumSize(m_bpEdit.sizeHint()); 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(); 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 // 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 // need mouse button events
m_list.viewport()->installEventFilter(this); m_list.viewport()->installEventFilter(this);
m_btAddBP.setText(i18n("Add &Breakpoint")); m_btAddBP.setText(i18n("Add &Breakpoint"));
m_btAddBP.setMinimumSize(m_btAddBP.sizeHint()); 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.setText(i18n("Add &Watchpoint"));
m_btAddWP.setMinimumSize(m_btAddWP.sizeHint()); 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.setText(i18n("&Remove"));
m_btRemove.setMinimumSize(m_btRemove.sizeHint()); 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 // the Enable/Disable button changes its label
m_btEnaDis.setText(i18n("&Disable")); m_btEnaDis.setText(i18n("&Disable"));
// make a dummy button to get the size of the alternate label // make a dummy button to get the size of the alternate label
{ {
QSize size = m_btEnaDis.sizeHint(); TQSize size = m_btEnaDis.sizeHint();
QPushButton dummy(this); TQPushButton dummy(this);
dummy.setText(i18n("&Enable")); dummy.setText(i18n("&Enable"));
QSize sizeAlt = dummy.sizeHint(); TQSize sizeAlt = dummy.sizeHint();
if (sizeAlt.width() > size.width()) if (sizeAlt.width() > size.width())
size.setWidth(sizeAlt.width()); size.setWidth(sizeAlt.width());
if (sizeAlt.height() > size.height()) if (sizeAlt.height() > size.height())
size.setHeight(sizeAlt.height()); size.setHeight(sizeAlt.height());
m_btEnaDis.setMinimumSize(size); 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.setText(i18n("&View Code"));
m_btViewCode.setMinimumSize(m_btViewCode.sizeHint()); 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.setText(i18n("&Conditional..."));
m_btConditional.setMinimumSize(m_btConditional.sizeHint()); 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_listandedit, 10);
m_layout.addLayout(&m_buttons); m_layout.addLayout(&m_buttons);
@ -123,7 +123,7 @@ void BreakpointTable::updateBreakList()
{ {
std::list<BreakpointItem*> deletedItems; 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)); deletedItems.push_back(static_cast<BreakpointItem*>(it));
} }
@ -151,8 +151,8 @@ nextItem:;
} }
} }
BreakpointItem::BreakpointItem(QListView* list, const Breakpoint& bp) : BreakpointItem::BreakpointItem(TQListView* list, const Breakpoint& bp) :
QListViewItem(list), TQListViewItem(list),
Breakpoint(bp) Breakpoint(bp)
{ {
display(); display();
@ -167,7 +167,7 @@ void BreakpointItem::updateFrom(const Breakpoint& bp)
void BreakpointTable::addBP() void BreakpointTable::addBP()
{ {
// set a breakpoint at the specified text // set a breakpoint at the specified text
QString bpText = m_bpEdit.text(); TQString bpText = m_bpEdit.text();
bpText = bpText.stripWhiteSpace(); bpText = bpText.stripWhiteSpace();
if (m_debugger->isReady()) if (m_debugger->isReady())
{ {
@ -181,7 +181,7 @@ void BreakpointTable::addBP()
void BreakpointTable::addWP() void BreakpointTable::addWP()
{ {
// set a watchpoint for the specified expression // set a watchpoint for the specified expression
QString wpExpr = m_bpEdit.text(); TQString wpExpr = m_bpEdit.text();
wpExpr = wpExpr.stripWhiteSpace(); wpExpr = wpExpr.stripWhiteSpace();
if (m_debugger->isReady()) { if (m_debugger->isReady()) {
Breakpoint* bp = new Breakpoint; Breakpoint* bp = new Breakpoint;
@ -242,11 +242,11 @@ void BreakpointTable::updateUI()
m_btConditional.setEnabled(enableChkpt); 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) { if (mev->button() == MidButton) {
// enable or disable the clicked-on item // enable or disable the clicked-on item
BreakpointItem* bp = BreakpointItem* bp =
@ -258,30 +258,30 @@ bool BreakpointTable::eventFilter(QObject* ob, QEvent* ev)
return true; return true;
} }
} }
return QWidget::eventFilter(ob, ev); return TQWidget::eventFilter(ob, ev);
} }
class ConditionalDlg : public QDialog class ConditionalDlg : public TQDialog
{ {
public: public:
ConditionalDlg(QWidget* parent); ConditionalDlg(TQWidget* parent);
~ConditionalDlg(); ~ConditionalDlg();
void setCondition(const QString& text) { m_condition.setText(text); } void setCondition(const TQString& text) { m_condition.setText(text); }
QString condition() { return m_condition.text(); } TQString condition() { return m_condition.text(); }
void setIgnoreCount(uint count); void setIgnoreCount(uint count);
uint ignoreCount(); uint ignoreCount();
protected: protected:
QLabel m_conditionLabel; TQLabel m_conditionLabel;
QLineEdit m_condition; TQLineEdit m_condition;
QLabel m_ignoreLabel; TQLabel m_ignoreLabel;
QLineEdit m_ignoreCount; TQLineEdit m_ignoreCount;
QPushButton m_buttonOK; TQPushButton m_buttonOK;
QPushButton m_buttonCancel; TQPushButton m_buttonCancel;
QVBoxLayout m_layout; TQVBoxLayout m_layout;
QGridLayout m_inputs; TQGridLayout m_inputs;
QHBoxLayout m_buttons; TQHBoxLayout m_buttons;
}; };
void BreakpointTable::conditionalBP() void BreakpointTable::conditionalBP()
@ -302,10 +302,10 @@ void BreakpointTable::conditionalBP()
dlg.setCondition(bp->condition); dlg.setCondition(bp->condition);
dlg.setIgnoreCount(bp->ignoreCount); dlg.setIgnoreCount(bp->ignoreCount);
if (dlg.exec() != QDialog::Accepted) if (dlg.exec() != TQDialog::Accepted)
return; return;
QString conditionInput = dlg.condition(); TQString conditionInput = dlg.condition();
int ignoreCount = dlg.ignoreCount(); int ignoreCount = dlg.ignoreCount();
m_debugger->conditionalBreakpoint(id, conditionInput, ignoreCount); m_debugger->conditionalBreakpoint(id, conditionInput, ignoreCount);
} }
@ -324,13 +324,13 @@ void BreakpointTable::initListAndIcons()
m_list.setSorting(-1); m_list.setSorting(-1);
// add pixmaps // add pixmaps
QPixmap brkena = UserIcon("brkena.xpm"); TQPixmap brkena = UserIcon("brkena.xpm");
QPixmap brkdis = UserIcon("brkdis.xpm"); TQPixmap brkdis = UserIcon("brkdis.xpm");
QPixmap watchena = UserIcon("watchena.xpm"); TQPixmap watchena = UserIcon("watchena.xpm");
QPixmap watchdis = UserIcon("watchdis.xpm"); TQPixmap watchdis = UserIcon("watchdis.xpm");
QPixmap brktmp = UserIcon("brktmp.xpm"); TQPixmap brktmp = UserIcon("brktmp.xpm");
QPixmap brkcond = UserIcon("brkcond.xpm"); TQPixmap brkcond = UserIcon("brkcond.xpm");
QPixmap brkorph = UserIcon("brkorph.xpm"); TQPixmap brkorph = UserIcon("brkorph.xpm");
/* /*
* There are 32 different pixmaps: The basic enabled or disabled * There are 32 different pixmaps: The basic enabled or disabled
@ -339,11 +339,11 @@ void BreakpointTable::initListAndIcons()
* the same sequence for watchpoints. * the same sequence for watchpoints.
*/ */
m_icons.resize(32); m_icons.resize(32);
QPixmap canvas(16,16); TQPixmap canvas(16,16);
for (int i = 0; i < 32; i++) { for (int i = 0; i < 32; i++) {
{ {
QPainter p(&canvas); TQPainter p(&canvas);
// clear canvas // clear canvas
p.fillRect(0,0, canvas.width(),canvas.height(), cyan); p.fillRect(0,0, canvas.width(),canvas.height(), cyan);
// basic icon // basic icon
@ -393,42 +393,42 @@ void BreakpointItem::display()
setText(0, Breakpoint::text); setText(0, Breakpoint::text);
} else if (!fileName.isEmpty()) { } else if (!fileName.isEmpty()) {
// use only the file name portion // use only the file name portion
QString file = fileName; TQString file = fileName;
int slash = file.findRev('/'); int slash = file.findRev('/');
if (slash >= 0) { if (slash >= 0) {
file = file.mid(slash+1); file = file.mid(slash+1);
} }
// correct zero-based line-numbers // correct zero-based line-numbers
setText(0, file + ":" + QString::number(lineNo+1)); setText(0, file + ":" + TQString::number(lineNo+1));
} else { } else {
setText(0, "*" + address.asString()); setText(0, "*" + address.asString());
} }
int c = 0; int c = 0;
setText(++c, address.asString()); setText(++c, address.asString());
QString tmp; TQString tmp;
if (hitCount == 0) { if (hitCount == 0) {
setText(++c, QString()); setText(++c, TQString());
} else { } else {
tmp.setNum(hitCount); tmp.setNum(hitCount);
setText(++c, tmp); setText(++c, tmp);
} }
if (ignoreCount == 0) { if (ignoreCount == 0) {
setText(++c, QString()); setText(++c, TQString());
} else { } else {
tmp.setNum(ignoreCount); tmp.setNum(ignoreCount);
setText(++c, tmp); setText(++c, tmp);
} }
if (condition.isEmpty()) { if (condition.isEmpty()) {
setText(++c, QString()); setText(++c, TQString());
} else { } else {
setText(++c, condition); setText(++c, condition);
} }
} }
ConditionalDlg::ConditionalDlg(QWidget* parent) : ConditionalDlg::ConditionalDlg(TQWidget* parent) :
QDialog(parent, "conditional", true), TQDialog(parent, "conditional", true),
m_conditionLabel(this, "condLabel"), m_conditionLabel(this, "condLabel"),
m_condition(this, "condition"), m_condition(this, "condition"),
m_ignoreLabel(this, "ignoreLabel"), m_ignoreLabel(this, "ignoreLabel"),
@ -439,7 +439,7 @@ ConditionalDlg::ConditionalDlg(QWidget* parent) :
m_inputs(2, 2, 10), m_inputs(2, 2, 10),
m_buttons(4) m_buttons(4)
{ {
QString title = kapp->caption(); TQString title = tdeApp->caption();
title += i18n(": Conditional breakpoint"); title += i18n(": Conditional breakpoint");
setCaption(title); setCaption(title);
@ -459,12 +459,12 @@ ConditionalDlg::ConditionalDlg(QWidget* parent) :
m_ignoreLabel.setBuddy(&m_ignoreCount); m_ignoreLabel.setBuddy(&m_ignoreCount);
m_buttonOK.setMinimumSize(100, 30); 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.setText(i18n("OK"));
m_buttonOK.setDefault(true); m_buttonOK.setDefault(true);
m_buttonCancel.setMinimumSize(100, 30); 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_buttonCancel.setText(i18n("Cancel"));
m_layout.addLayout(&m_inputs); m_layout.addLayout(&m_inputs);
@ -494,14 +494,14 @@ ConditionalDlg::~ConditionalDlg()
uint ConditionalDlg::ignoreCount() uint ConditionalDlg::ignoreCount()
{ {
bool ok; bool ok;
QString input = m_ignoreCount.text(); TQString input = m_ignoreCount.text();
uint result = input.toUInt(&ok); uint result = input.toUInt(&ok);
return ok ? result : 0; return ok ? result : 0;
} }
void ConditionalDlg::setIgnoreCount(uint count) void ConditionalDlg::setIgnoreCount(uint count)
{ {
QString text; TQString text;
// set empty if ignore count is zero // set empty if ignore count is zero
if (count > 0) { if (count > 0) {
text.setNum(count); text.setNum(count);

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

@ -6,7 +6,7 @@
#include "dbgdriver.h" #include "dbgdriver.h"
#include "exprwnd.h" #include "exprwnd.h"
#include <qstringlist.h> #include <tqstringlist.h>
#include <ctype.h> #include <ctype.h>
#include <stdlib.h> /* strtol, atoi */ #include <stdlib.h> /* strtol, atoi */
#include <algorithm> #include <algorithm>
@ -18,7 +18,7 @@
DebuggerDriver::DebuggerDriver() : DebuggerDriver::DebuggerDriver() :
KProcess(), TDEProcess(),
m_state(DSidle), m_state(DSidle),
m_output(0), m_output(0),
m_outputLen(0), m_outputLen(0),
@ -36,10 +36,10 @@ DebuggerDriver::DebuggerDriver() :
// m_promptLastChar and m_promptMinLen must also be set. // m_promptLastChar and m_promptMinLen must also be set.
// debugger process // debugger process
connect(this, SIGNAL(receivedStdout(KProcess*,char*,int)), connect(this, TQ_SIGNAL(receivedStdout(TDEProcess*,char*,int)),
SLOT(slotReceiveOutput(KProcess*,char*,int))); TQ_SLOT(slotReceiveOutput(TDEProcess*,char*,int)));
connect(this, SIGNAL(wroteStdin(KProcess*)), SLOT(slotCommandRead(KProcess*))); connect(this, TQ_SIGNAL(wroteStdin(TDEProcess*)), TQ_SLOT(slotCommandRead(TDEProcess*)));
connect(this, SIGNAL(processExited(KProcess*)), SLOT(slotExited(KProcess*))); connect(this, TQ_SIGNAL(processExited(TDEProcess*)), TQ_SLOT(slotExited(TDEProcess*)));
} }
DebuggerDriver::~DebuggerDriver() DebuggerDriver::~DebuggerDriver()
@ -53,7 +53,7 @@ int DebuggerDriver::commSetupDoneC()
{ {
TRACE(__PRETTY_FUNCTION__); TRACE(__PRETTY_FUNCTION__);
if (!KProcess::commSetupDoneC()) if (!TDEProcess::commSetupDoneC())
return 0; return 0;
close(STDERR_FILENO); close(STDERR_FILENO);
@ -61,7 +61,7 @@ int DebuggerDriver::commSetupDoneC()
} }
bool DebuggerDriver::startup(QString cmdStr) bool DebuggerDriver::startup(TQString cmdStr)
{ {
// clear command queues // clear command queues
delete m_activeCmd; delete m_activeCmd;
@ -74,14 +74,14 @@ bool DebuggerDriver::startup(QString cmdStr)
if (cmdStr.isEmpty()) if (cmdStr.isEmpty())
cmdStr = defaultInvocation(); cmdStr = defaultInvocation();
QStringList cmd = QStringList::split(' ', cmdStr); TQStringList cmd = TQStringList::split(' ', cmdStr);
clearArguments(); clearArguments();
for (QStringList::iterator i = cmd.begin(); i != cmd.end(); ++i) { for (TQStringList::iterator i = cmd.begin(); i != cmd.end(); ++i) {
*this << *i; *this << *i;
} }
if (!start(KProcess::NotifyOnExit, if (!start(TDEProcess::NotifyOnExit,
KProcess::Communication(KProcess::Stdin|KProcess::Stdout))) { TDEProcess::Communication(TDEProcess::Stdin|TDEProcess::Stdout))) {
return false; return false;
} }
@ -102,7 +102,7 @@ bool DebuggerDriver::startup(QString cmdStr)
return true; return true;
} }
void DebuggerDriver::slotExited(KProcess*) void DebuggerDriver::slotExited(TDEProcess*)
{ {
static const char txt[] = "\n====== debugger exited ======\n"; static const char txt[] = "\n====== debugger exited ======\n";
if (m_logFile.isOpen()) { if (m_logFile.isOpen()) {
@ -118,7 +118,7 @@ void DebuggerDriver::slotExited(KProcess*)
CmdQueueItem* DebuggerDriver::executeCmdString(DbgCommand cmd, CmdQueueItem* DebuggerDriver::executeCmdString(DbgCommand cmd,
QString cmdString, bool clearLow) TQString cmdString, bool clearLow)
{ {
// place a new command into the high-priority queue // place a new command into the high-priority queue
CmdQueueItem* cmdItem = new CmdQueueItem(cmd, cmdString); CmdQueueItem* cmdItem = new CmdQueueItem(cmd, cmdString);
@ -130,8 +130,7 @@ CmdQueueItem* DebuggerDriver::executeCmdString(DbgCommand cmd,
m_state = DSinterrupted; m_state = DSinterrupted;
kill(SIGINT); kill(SIGINT);
ASSERT(m_activeCmd != 0); ASSERT(m_activeCmd != 0);
TRACE(QString().sprintf("interrupted the command %d", TRACE(TQString("interrupted the command %1").arg((m_activeCmd ? m_activeCmd->m_cmd : -1)));
(m_activeCmd ? m_activeCmd->m_cmd : -1)));
delete m_activeCmd; delete m_activeCmd;
m_activeCmd = 0; m_activeCmd = 0;
} }
@ -152,14 +151,14 @@ bool CmdQueueItem::IsEqualCmd::operator()(CmdQueueItem* cmd) const
} }
CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd, CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
QString cmdString, QueueMode mode) TQString cmdString, QueueMode mode)
{ {
// place a new command into the low-priority queue // place a new command into the low-priority queue
std::list<CmdQueueItem*>::iterator i; std::list<CmdQueueItem*>::iterator i;
CmdQueueItem* cmdItem = 0; CmdQueueItem* cmdItem = 0;
switch (mode) { switch (mode) {
case QMoverrideMoreEqual: case TQMoverrideMoreEqual:
case QMoverride: case TQMoverride:
// check whether gdb is currently processing this command // check whether gdb is currently processing this command
if (m_activeCmd != 0 && if (m_activeCmd != 0 &&
m_activeCmd->m_cmd == cmd && m_activeCmd->m_cmdString == cmdString) m_activeCmd->m_cmd == cmd && m_activeCmd->m_cmdString == cmdString)
@ -171,7 +170,7 @@ CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
if (i != m_lopriCmdQueue.end()) { if (i != m_lopriCmdQueue.end()) {
// found one // found one
cmdItem = *i; cmdItem = *i;
if (mode == QMoverrideMoreEqual) { if (mode == TQMoverrideMoreEqual) {
// All commands are equal, but some are more equal than others... // All commands are equal, but some are more equal than others...
// put this command in front of all others // put this command in front of all others
m_lopriCmdQueue.erase(i); m_lopriCmdQueue.erase(i);
@ -180,7 +179,7 @@ CmdQueueItem* DebuggerDriver::queueCmdString(DbgCommand cmd,
break; break;
} // else none found, so add it } // else none found, so add it
// drop through // drop through
case QMnormal: case TQMnormal:
cmdItem = new CmdQueueItem(cmd, cmdString); cmdItem = new CmdQueueItem(cmd, cmdString);
m_lopriCmdQueue.push_back(cmdItem); m_lopriCmdQueue.push_back(cmdItem);
} }
@ -220,12 +219,13 @@ void DebuggerDriver::writeCommand()
m_activeCmd = cmd; m_activeCmd = cmd;
TRACE("in writeCommand: " + cmd->m_cmdString); TRACE("in writeCommand: " + cmd->m_cmdString);
const char* str = cmd->m_cmdString; const char* str = cmd->m_cmdString.local8Bit().data();
writeStdin(const_cast<char*>(str), cmd->m_cmdString.length()); size_t cmdStrLen = strlen(str);
writeStdin(str, cmdStrLen);
// write also to log file // write also to log file
if (m_logFile.isOpen()) { if (m_logFile.isOpen()) {
m_logFile.writeBlock(str, cmd->m_cmdString.length()); m_logFile.writeBlock(str, cmdStrLen);
m_logFile.flush(); m_logFile.flush();
} }
@ -256,7 +256,7 @@ void DebuggerDriver::flushCommands(bool hipriOnly)
} }
} }
void DebuggerDriver::slotCommandRead(KProcess*) void DebuggerDriver::slotCommandRead(TDEProcess*)
{ {
TRACE(__PRETTY_FUNCTION__); TRACE(__PRETTY_FUNCTION__);
@ -282,13 +282,13 @@ void DebuggerDriver::slotCommandRead(KProcess*)
// re-receive delayed output // re-receive delayed output
while (!m_delayedOutput.empty()) { while (!m_delayedOutput.empty()) {
QByteArray delayed = m_delayedOutput.front(); TQByteArray delayed = m_delayedOutput.front();
m_delayedOutput.pop(); m_delayedOutput.pop();
slotReceiveOutput(0, const_cast<char*>(delayed.data()), delayed.size()); 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. * 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 * output, it will be re-sent by commandRead when it gets the
* acknowledgment for the uncommitted command. * acknowledgment for the uncommitted command.
*/ */
m_delayedOutput.push(QByteArray().duplicate(buffer, buflen)); m_delayedOutput.push(TQByteArray().duplicate(buffer, buflen));
return; return;
} }
// write to log file (do not log delayed output - it would appear twice) // 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) { if (m_activeCmd == 0 && m_state != DSinterrupted) {
// ignore the output // ignore the output
TRACE("ignoring stray output: " + QString::fromLatin1(buffer, buflen)); TRACE("ignoring stray output: " + TQString::fromLatin1(buffer, buflen));
return; return;
} }
ASSERT(m_state == DSrunning || m_state == DSrunningLow || m_state == DSinterrupted); 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. * for the full prompt string.
* *
* Note: Using the regular expression here is most expensive, because * 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 * Note: It could nevertheless happen that a character sequence that is
* equal to the prompt string appears at the end of the output, * 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; promptStart = m_outputLen-m_promptMinLen;
} }
} else { } else {
QString output = QString::fromLatin1(m_output, m_outputLen); TQString output = TQString::fromLatin1(m_output, m_outputLen);
#if QT_VERSION >= 300 #if TQT_VERSION >= 300
promptStart = m_promptRE.search(output); promptStart = m_promptRE.search(output);
#else #else
promptStart = m_promptRE.match(output); promptStart = m_promptRE.match(output);
@ -413,7 +413,7 @@ void DebuggerDriver::slotReceiveOutput(KProcess*, char* buffer, int buflen)
*m_output = '\0'; *m_output = '\0';
// also clear delayed output if interrupted // also clear delayed output if interrupted
if (m_state == DSinterrupted) { 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 // by default, let the user edit what is visible
return value->value(); return value->value();
@ -464,7 +464,7 @@ StackFrame::~StackFrame()
} }
DbgAddr::DbgAddr(const QString& aa) : DbgAddr::DbgAddr(const TQString& aa) :
a(aa) a(aa)
{ {
cleanAddr(); cleanAddr();
@ -483,25 +483,25 @@ void DbgAddr::cleanAddr()
} }
} }
void DbgAddr::operator=(const QString& aa) void DbgAddr::operator=(const TQString& aa)
{ {
a = aa; a = aa;
fnoffs = QString(); fnoffs = TQString();
cleanAddr(); cleanAddr();
} }
/* Re-attach 0x in front of the address */ /* Re-attach 0x in front of the address */
QString DbgAddr::asString() const TQString DbgAddr::asString() const
{ {
if (a.isEmpty()) if (a.isEmpty())
return QString(); return TQString();
else else
return "0x" + a; return "0x" + a;
} }
bool operator==(const DbgAddr& a1, const DbgAddr& a2) 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) bool operator>(const DbgAddr& a1, const DbgAddr& a2)
@ -510,7 +510,7 @@ bool operator>(const DbgAddr& a1, const DbgAddr& a2)
return true; return true;
if (a1.a.length() < a2.a.length()) if (a1.a.length() < a2.a.length())
return false; 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 #ifndef DBGDRIVER_H
#define DBGDRIVER_H #define DBGDRIVER_H
#include <qfile.h> #include <tqfile.h>
#include <qregexp.h> #include <tqregexp.h>
#include <qcstring.h> #include <tqcstring.h>
#include <kprocess.h> #include <tdeprocess.h>
#include <queue> #include <queue>
#include <list> #include <list>
@ -19,7 +19,7 @@ class VarTree;
class ExprValue; class ExprValue;
class ExprWnd; class ExprWnd;
class KDebugger; class KDebugger;
class QStringList; class TQStringList;
/** /**
@ -27,14 +27,14 @@ class QStringList;
*/ */
struct DbgAddr struct DbgAddr
{ {
QString a; TQString a;
QString fnoffs; TQString fnoffs;
DbgAddr() { } DbgAddr() { }
DbgAddr(const QString& aa); DbgAddr(const TQString& aa);
DbgAddr(const DbgAddr& src) : a(src.a), fnoffs(src.fnoffs) { } 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; } void operator=(const DbgAddr& src) { a = src.a; fnoffs = src.fnoffs; }
QString asString() const; TQString asString() const;
bool isEmpty() const { return a.isEmpty(); } bool isEmpty() const { return a.isEmpty(); }
protected: protected:
void cleanAddr(); void cleanAddr();
@ -83,7 +83,7 @@ enum DbgCommand {
DCprint, DCprint,
DCprintDeref, DCprintDeref,
DCprintStruct, DCprintStruct,
DCprintQStringStruct, DCprintTQStringStruct,
DCframe, DCframe,
DCfindType, DCfindType,
DCinfosharedlib, DCinfosharedlib,
@ -142,13 +142,13 @@ struct Breakpoint;
struct CmdQueueItem struct CmdQueueItem
{ {
DbgCommand m_cmd; DbgCommand m_cmd;
QString m_cmdString; TQString m_cmdString;
bool m_committed; /* just a debugging aid */ bool m_committed; /* just a debugging aid */
// remember which expression when printing an expression // remember which expression when printing an expression
VarTree* m_expr; VarTree* m_expr;
ExprWnd* m_exprWnd; ExprWnd* m_exprWnd;
// remember file position // remember file position
QString m_fileName; TQString m_fileName;
int m_lineNo; int m_lineNo;
// the breakpoint info // the breakpoint info
Breakpoint* m_brkpt; Breakpoint* m_brkpt;
@ -156,7 +156,7 @@ struct CmdQueueItem
// whether command was emitted due to direct user request (only set when relevant) // whether command was emitted due to direct user request (only set when relevant)
bool m_byUser; bool m_byUser;
CmdQueueItem(DbgCommand cmd, const QString& str) : CmdQueueItem(DbgCommand cmd, const TQString& str) :
m_cmd(cmd), m_cmd(cmd),
m_cmdString(str), m_cmdString(str),
m_committed(false), m_committed(false),
@ -170,10 +170,10 @@ struct CmdQueueItem
struct IsEqualCmd 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; bool operator()(CmdQueueItem*) const;
DbgCommand m_cmd; DbgCommand m_cmd;
const QString& m_str; const TQString& m_str;
}; };
}; };
@ -189,14 +189,14 @@ struct Breakpoint
} type; } type;
bool temporary; bool temporary;
bool enabled; bool enabled;
QString location; TQString location;
QString text; /* text if set using DCbreaktext */ TQString text; /* text if set using DCbreaktext */
DbgAddr address; /* exact address of breakpoint */ 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 ignoreCount; /* ignore next that may hits */
int hitCount; /* as reported by gdb */ int hitCount; /* as reported by gdb */
// the following items repeat the location, but in a better usable way // the following items repeat the location, but in a better usable way
QString fileName; TQString fileName;
int lineNo; /* zero-based line number */ int lineNo; /* zero-based line number */
Breakpoint(); Breakpoint();
bool isOrphaned() const { return id < 0; } bool isOrphaned() const { return id < 0; }
@ -207,7 +207,7 @@ struct Breakpoint
*/ */
struct FrameInfo struct FrameInfo
{ {
QString fileName; TQString fileName;
int lineNo; /* zero-based line number */ int lineNo; /* zero-based line number */
DbgAddr address; /* exact address of PC */ DbgAddr address; /* exact address of PC */
}; };
@ -229,8 +229,8 @@ struct StackFrame : FrameInfo
struct ThreadInfo : FrameInfo struct ThreadInfo : FrameInfo
{ {
int id; /* gdb's number */ int id; /* gdb's number */
QString threadName; /* the SYSTAG */ TQString threadName; /* the SYSTAG */
QString function; /* where thread is halted */ TQString function; /* where thread is halted */
bool hasFocus; /* the thread whose stack we are watching */ bool hasFocus; /* the thread whose stack we are watching */
}; };
@ -239,10 +239,10 @@ struct ThreadInfo : FrameInfo
*/ */
struct RegisterInfo struct RegisterInfo
{ {
QString regName; TQString regName;
QString rawValue; TQString rawValue;
QString cookedValue; /* may be empty */ TQString cookedValue; /* may be empty */
QString type; /* of vector register if not empty */ TQString type; /* of vector register if not empty */
}; };
/** /**
@ -251,7 +251,7 @@ struct RegisterInfo
struct DisassembledCode struct DisassembledCode
{ {
DbgAddr address; DbgAddr address;
QString code; TQString code;
}; };
/** /**
@ -260,7 +260,7 @@ struct DisassembledCode
struct MemoryDump struct MemoryDump
{ {
DbgAddr address; DbgAddr address;
QString dump; TQString dump;
}; };
/** /**
@ -270,29 +270,29 @@ struct MemoryDump
* interface to the commandline debugger. As such it implements the * interface to the commandline debugger. As such it implements the
* commands and parses the output. * commands and parses the output.
*/ */
class DebuggerDriver : public KProcess class DebuggerDriver : public TDEProcess
{ {
Q_OBJECT TQ_OBJECT
public: public:
DebuggerDriver(); DebuggerDriver();
virtual ~DebuggerDriver() = 0; virtual ~DebuggerDriver() = 0;
virtual QString driverName() const = 0; virtual TQString driverName() const = 0;
/** /**
* Returns the default command string to invoke the debugger driver. * 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. * 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); virtual bool startup(TQString cmdStr);
void setLogFileName(const QString& fname) { m_logFileName = fname; } void setLogFileName(const TQString& fname) { m_logFileName = fname; }
protected: protected:
QString m_runCmd; TQString m_runCmd;
enum DebuggerState { enum DebuggerState {
DSidle, /* gdb waits for input */ DSidle, /* gdb waits for input */
@ -315,7 +315,7 @@ protected:
char* m_output; /* normal gdb output */ char* m_output; /* normal gdb output */
size_t m_outputLen; /* amount of data so far accumulated in m_output */ size_t m_outputLen; /* amount of data so far accumulated in m_output */
size_t m_outputAlloc; /* space available 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 */ /* but before signal wroteStdin arrived */
public: public:
@ -326,21 +326,21 @@ public:
*/ */
virtual CmdQueueItem* executeCmd(DbgCommand, virtual CmdQueueItem* executeCmd(DbgCommand,
bool clearLow = false) = 0; bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg, virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg,
bool clearLow = false) = 0; bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg, virtual CmdQueueItem* executeCmd(DbgCommand, int intArg,
bool clearLow = false) = 0; bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg, int intArg, virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg, int intArg,
bool clearLow = false) = 0; bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, QString strArg1, QString strArg2, virtual CmdQueueItem* executeCmd(DbgCommand, TQString strArg1, TQString strArg2,
bool clearLow = false) = 0; bool clearLow = false) = 0;
virtual CmdQueueItem* executeCmd(DbgCommand, int intArg1, int intArg2, virtual CmdQueueItem* executeCmd(DbgCommand, int intArg1, int intArg2,
bool clearLow = false) = 0; bool clearLow = false) = 0;
enum QueueMode { enum QueueMode {
QMnormal, /* queues the command last */ TQMnormal, /* queues the command last */
QMoverride, /* removes an already queued command */ TQMoverride, /* removes an already queued command */
QMoverrideMoreEqual /* ditto, also puts the command first in the queue */ TQMoverrideMoreEqual /* ditto, also puts the command first in the queue */
}; };
/** /**
@ -349,13 +349,13 @@ public:
*/ */
virtual CmdQueueItem* queueCmd(DbgCommand, virtual CmdQueueItem* queueCmd(DbgCommand,
QueueMode mode) = 0; QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg, virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg,
QueueMode mode) = 0; QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, int intArg, virtual CmdQueueItem* queueCmd(DbgCommand, int intArg,
QueueMode mode) = 0; QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg, int intArg, virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg, int intArg,
QueueMode mode) = 0; QueueMode mode) = 0;
virtual CmdQueueItem* queueCmd(DbgCommand, QString strArg1, QString strArg2, virtual CmdQueueItem* queueCmd(DbgCommand, TQString strArg1, TQString strArg2,
QueueMode mode) = 0; QueueMode mode) = 0;
/** /**
@ -381,14 +381,14 @@ public:
virtual void interruptInferior() = 0; 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). * Parses a back-trace (the output of the DCbt command).
@ -405,7 +405,7 @@ public:
* output values are undefined in this case. * output values are undefined in this case.
*/ */
virtual bool parseFrameChange(const char* output, int& frameNo, 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. * Parses a list of breakpoints.
@ -436,7 +436,7 @@ public:
* @return False if there was no breakpoint. * @return False if there was no breakpoint.
*/ */
virtual bool parseBreakpoint(const char* output, int& id, 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. * Parses the output of the DCinfolocals command.
@ -462,13 +462,13 @@ public:
* Parses the output of the DCcd command. * Parses the output of the DCcd command.
* @return false if the message is an error message. * @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. * Parses the output of the DCexecutable command.
* @return false if an error occured. * @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. * Parses the output of the DCcorefile command.
@ -486,18 +486,18 @@ public:
* Parses the output of commands that execute (a piece of) the program. * Parses the output of commands that execute (a piece of) the program.
* @return The inclusive OR of zero or more of the StopFlags. * @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. * 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. * Parses the output of the DCfindType command.
* @return true if a type was found. * @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. * Parses the output of the DCinforegisters command.
@ -509,7 +509,7 @@ public:
* two addresses could not be found. * two addresses could not be found.
*/ */
virtual bool parseInfoLine(const char* output, virtual bool parseInfoLine(const char* output,
QString& addrFrom, QString& addrTo) = 0; TQString& addrFrom, TQString& addrTo) = 0;
/** /**
* Parses the ouput of the DCdisassemble command. * 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; * Parses a memory dump. Returns an empty string if no error was found;
* otherwise it contains an error message. * 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 * Parses the output of the DCsetvariable command. Returns an empty
* string if no error was found; otherwise it contains an error * string if no error was found; otherwise it contains an error
* message. * message.
*/ */
virtual QString parseSetVariable(const char* output) = 0; virtual TQString parseSetVariable(const char* output) = 0;
/** /**
* Returns a value that the user can edit. * Returns a value that the user can edit.
*/ */
virtual QString editableValue(VarTree* value); virtual TQString editableValue(VarTree* value);
protected: protected:
/** Removes all commands from the low-priority queue. */ /** Removes all commands from the low-priority queue. */
@ -550,13 +550,13 @@ protected:
* Helper function that queues the given command string in the * Helper function that queues the given command string in the
* low-priority queue. * low-priority queue.
*/ */
CmdQueueItem* queueCmdString(DbgCommand cmd, QString cmdString, CmdQueueItem* queueCmdString(DbgCommand cmd, TQString cmdString,
QueueMode mode); QueueMode mode);
/** /**
* Helper function that queues the given command string in the * Helper function that queues the given command string in the
* high-priority queue. * high-priority queue.
*/ */
CmdQueueItem* executeCmdString(DbgCommand cmd, QString cmdString, CmdQueueItem* executeCmdString(DbgCommand cmd, TQString cmdString,
bool clearLow); bool clearLow);
void writeCommand(); void writeCommand();
virtual void commandFinished(CmdQueueItem* cmd) = 0; virtual void commandFinished(CmdQueueItem* cmd) = 0;
@ -568,19 +568,19 @@ protected:
char m_prompt[10]; char m_prompt[10];
size_t m_promptMinLen; size_t m_promptMinLen;
char m_promptLastChar; char m_promptLastChar;
QRegExp m_promptRE; TQRegExp m_promptRE;
// log file // log file
QString m_logFileName; TQString m_logFileName;
QFile m_logFile; TQFile m_logFile;
public slots: public slots:
void dequeueCmdByVar(VarTree* var); void dequeueCmdByVar(VarTree* var);
protected slots: protected slots:
virtual void slotReceiveOutput(KProcess*, char* buffer, int buflen); virtual void slotReceiveOutput(TDEProcess*, char* buffer, int buflen);
virtual void slotCommandRead(KProcess*); virtual void slotCommandRead(TDEProcess*);
virtual void slotExited(KProcess*); virtual void slotExited(TDEProcess*);
signals: signals:
/** /**
@ -604,7 +604,7 @@ signals:
* should NOT be changed). * should NOT be changed).
* @param address specifies the exact address of the PC or is empty. * @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 * 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. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <kapplication.h> #include <tdeapplication.h>
#include <klocale.h> /* i18n */ #include <tdelocale.h> /* i18n */
#include <kmessagebox.h> #include <tdemessagebox.h>
#include <kconfig.h> #include <tdeconfig.h>
#include <kstatusbar.h> #include <kstatusbar.h>
#include <kiconloader.h> #include <kiconloader.h>
#include <kstdaccel.h> #include <tdestdaccel.h>
#include <kstdaction.h> #include <kstdaction.h>
#include <kaction.h> #include <tdeaction.h>
#include <kpopupmenu.h> #include <tdepopupmenu.h>
#include <kfiledialog.h> #include <tdefiledialog.h>
#include <kprocess.h> #include <tdeprocess.h>
#include <kkeydialog.h> #include <kkeydialog.h>
#include <kanimwidget.h> #include <kanimwidget.h>
#include <kwin.h> #include <twin.h>
#include <qlistbox.h> #include <tqlistbox.h>
#include <qfileinfo.h> #include <tqfileinfo.h>
#include "dbgmainwnd.h" #include "dbgmainwnd.h"
#include "debugger.h" #include "debugger.h"
#include "commandids.h" #include "commandids.h"
@ -41,7 +41,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
KDockMainWindow(0, name), KDockMainWindow(0, name),
DebuggerMainWndBase() DebuggerMainWndBase()
{ {
QPixmap p; TQPixmap p;
KDockWidget* dw0 = createDockWidget("Source", p, 0, i18n("Source")); KDockWidget* dw0 = createDockWidget("Source", p, 0, i18n("Source"));
m_filesWindow = new WinStack(dw0, "files"); m_filesWindow = new WinStack(dw0, "files");
@ -52,7 +52,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
setMainDockWidget(dw0); setMainDockWidget(dw0);
KDockWidget* dw1 = createDockWidget("Stack", p, 0, i18n("Stack")); KDockWidget* dw1 = createDockWidget("Stack", p, 0, i18n("Stack"));
m_btWindow = new QListBox(dw1, "backtrace"); m_btWindow = new TQListBox(dw1, "backtrace");
dw1->setWidget(m_btWindow); dw1->setWidget(m_btWindow);
KDockWidget* dw2 = createDockWidget("Locals", p, 0, i18n("Locals")); KDockWidget* dw2 = createDockWidget("Locals", p, 0, i18n("Locals"));
m_localVariables = new ExprWnd(dw2, i18n("Variable"), "locals"); m_localVariables = new ExprWnd(dw2, i18n("Variable"), "locals");
@ -84,72 +84,72 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
initKAction(); initKAction();
initToolbar(); // kind of obsolete? initToolbar(); // kind of obsolete?
connect(m_watches, SIGNAL(addWatch()), SLOT(slotAddWatch())); connect(m_watches, TQ_SIGNAL(addWatch()), TQ_SLOT(slotAddWatch()));
connect(m_watches, SIGNAL(deleteWatch()), m_debugger, SLOT(slotDeleteWatch())); connect(m_watches, TQ_SIGNAL(deleteWatch()), m_debugger, TQ_SLOT(slotDeleteWatch()));
connect(m_watches, SIGNAL(textDropped(const QString&)), SLOT(slotAddWatch(const QString&))); connect(m_watches, TQ_SIGNAL(textDropped(const TQString&)), TQ_SLOT(slotAddWatch(const TQString&)));
connect(&m_filesWindow->m_findDlg, SIGNAL(closed()), SLOT(updateUI())); connect(&m_filesWindow->m_findDlg, TQ_SIGNAL(closed()), TQ_SLOT(updateUI()));
connect(m_filesWindow, SIGNAL(newFileLoaded()), connect(m_filesWindow, TQ_SIGNAL(newFileLoaded()),
SLOT(slotNewFileLoaded())); TQ_SLOT(slotNewFileLoaded()));
connect(m_filesWindow, SIGNAL(toggleBreak(const QString&,int,const DbgAddr&,bool)), connect(m_filesWindow, TQ_SIGNAL(toggleBreak(const TQString&,int,const DbgAddr&,bool)),
this, SLOT(slotToggleBreak(const QString&,int,const DbgAddr&,bool))); this, TQ_SLOT(slotToggleBreak(const TQString&,int,const DbgAddr&,bool)));
connect(m_filesWindow, SIGNAL(enadisBreak(const QString&,int,const DbgAddr&)), connect(m_filesWindow, TQ_SIGNAL(enadisBreak(const TQString&,int,const DbgAddr&)),
this, SLOT(slotEnaDisBreak(const QString&,int,const DbgAddr&))); this, TQ_SLOT(slotEnaDisBreak(const TQString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(activateFileLine(const QString&,int,const DbgAddr&)), connect(m_debugger, TQ_SIGNAL(activateFileLine(const TQString&,int,const DbgAddr&)),
m_filesWindow, SLOT(activate(const QString&,int,const DbgAddr&))); m_filesWindow, TQ_SLOT(activate(const TQString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(executableUpdated()), connect(m_debugger, TQ_SIGNAL(executableUpdated()),
m_filesWindow, SLOT(reloadAllFiles())); m_filesWindow, TQ_SLOT(reloadAllFiles()));
connect(m_debugger, SIGNAL(updatePC(const QString&,int,const DbgAddr&,int)), connect(m_debugger, TQ_SIGNAL(updatePC(const TQString&,int,const DbgAddr&,int)),
m_filesWindow, SLOT(updatePC(const QString&,int,const DbgAddr&,int))); m_filesWindow, TQ_SLOT(updatePC(const TQString&,int,const DbgAddr&,int)));
// value popup communication // value popup communication
connect(m_filesWindow, SIGNAL(initiateValuePopup(const QString&)), connect(m_filesWindow, TQ_SIGNAL(initiateValuePopup(const TQString&)),
m_debugger, SLOT(slotValuePopup(const QString&))); m_debugger, TQ_SLOT(slotValuePopup(const TQString&)));
connect(m_debugger, SIGNAL(valuePopup(const QString&)), connect(m_debugger, TQ_SIGNAL(valuePopup(const TQString&)),
m_filesWindow, SLOT(slotShowValueTip(const QString&))); m_filesWindow, TQ_SLOT(slotShowValueTip(const TQString&)));
// disassembling // disassembling
connect(m_filesWindow, SIGNAL(disassemble(const QString&, int)), connect(m_filesWindow, TQ_SIGNAL(disassemble(const TQString&, int)),
m_debugger, SLOT(slotDisassemble(const QString&, int))); m_debugger, TQ_SLOT(slotDisassemble(const TQString&, int)));
connect(m_debugger, SIGNAL(disassembled(const QString&,int,const std::list<DisassembledCode>&)), connect(m_debugger, TQ_SIGNAL(disassembled(const TQString&,int,const std::list<DisassembledCode>&)),
m_filesWindow, SLOT(slotDisassembled(const QString&,int,const std::list<DisassembledCode>&))); m_filesWindow, TQ_SLOT(slotDisassembled(const TQString&,int,const std::list<DisassembledCode>&)));
connect(m_filesWindow, SIGNAL(moveProgramCounter(const QString&,int,const DbgAddr&)), connect(m_filesWindow, TQ_SIGNAL(moveProgramCounter(const TQString&,int,const DbgAddr&)),
m_debugger, SLOT(setProgramCounter(const QString&,int,const DbgAddr&))); m_debugger, TQ_SLOT(setProgramCounter(const TQString&,int,const DbgAddr&)));
// program stopped // program stopped
connect(m_debugger, SIGNAL(programStopped()), SLOT(slotProgramStopped())); connect(m_debugger, TQ_SIGNAL(programStopped()), TQ_SLOT(slotProgramStopped()));
connect(&m_backTimer, SIGNAL(timeout()), SLOT(slotBackTimer())); connect(&m_backTimer, TQ_SIGNAL(timeout()), TQ_SLOT(slotBackTimer()));
// tab width // 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 breakpoint table
connect(m_bpTable, SIGNAL(activateFileLine(const QString&,int,const DbgAddr&)), connect(m_bpTable, TQ_SIGNAL(activateFileLine(const TQString&,int,const DbgAddr&)),
m_filesWindow, SLOT(activate(const QString&,int,const DbgAddr&))); m_filesWindow, TQ_SLOT(activate(const TQString&,int,const DbgAddr&)));
connect(m_debugger, SIGNAL(updateUI()), m_bpTable, SLOT(updateUI())); connect(m_debugger, TQ_SIGNAL(updateUI()), m_bpTable, TQ_SLOT(updateUI()));
connect(m_debugger, SIGNAL(breakpointsChanged()), m_bpTable, SLOT(updateBreakList())); connect(m_debugger, TQ_SIGNAL(breakpointsChanged()), m_bpTable, TQ_SLOT(updateBreakList()));
connect(m_debugger, SIGNAL(breakpointsChanged()), m_bpTable, SLOT(updateUI())); connect(m_debugger, TQ_SIGNAL(breakpointsChanged()), m_bpTable, TQ_SLOT(updateUI()));
connect(m_debugger, SIGNAL(registersChanged(const std::list<RegisterInfo>&)), connect(m_debugger, TQ_SIGNAL(registersChanged(const std::list<RegisterInfo>&)),
m_registers, SLOT(updateRegisters(const std::list<RegisterInfo>&))); m_registers, TQ_SLOT(updateRegisters(const std::list<RegisterInfo>&)));
connect(m_debugger, SIGNAL(memoryDumpChanged(const QString&, const std::list<MemoryDump>&)), connect(m_debugger, TQ_SIGNAL(memoryDumpChanged(const TQString&, const std::list<MemoryDump>&)),
m_memoryWindow, SLOT(slotNewMemoryDump(const QString&, const std::list<MemoryDump>&))); m_memoryWindow, TQ_SLOT(slotNewMemoryDump(const TQString&, const std::list<MemoryDump>&)));
connect(m_debugger, SIGNAL(saveProgramSpecific(KConfigBase*)), connect(m_debugger, TQ_SIGNAL(saveProgramSpecific(TDEConfigBase*)),
m_memoryWindow, SLOT(saveProgramSpecific(KConfigBase*))); m_memoryWindow, TQ_SLOT(saveProgramSpecific(TDEConfigBase*)));
connect(m_debugger, SIGNAL(restoreProgramSpecific(KConfigBase*)), connect(m_debugger, TQ_SIGNAL(restoreProgramSpecific(TDEConfigBase*)),
m_memoryWindow, SLOT(restoreProgramSpecific(KConfigBase*))); m_memoryWindow, TQ_SLOT(restoreProgramSpecific(TDEConfigBase*)));
// thread window // thread window
connect(m_debugger, SIGNAL(threadsChanged(const std::list<ThreadInfo>&)), connect(m_debugger, TQ_SIGNAL(threadsChanged(const std::list<ThreadInfo>&)),
m_threads, SLOT(updateThreads(const std::list<ThreadInfo>&))); m_threads, TQ_SLOT(updateThreads(const std::list<ThreadInfo>&)));
connect(m_threads, SIGNAL(setThread(int)), connect(m_threads, TQ_SIGNAL(setThread(int)),
m_debugger, SLOT(setThread(int))); m_debugger, TQ_SLOT(setThread(int)));
// view menu changes when docking state changes // 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 // popup menu of the local variables window
connect(m_localVariables, SIGNAL(contextMenuRequested(QListViewItem*, const QPoint&, int)), connect(m_localVariables, TQ_SIGNAL(contextMenuRequested(TQListViewItem*, const TQPoint&, int)),
this, SLOT(slotLocalsPopup(QListViewItem*, const QPoint&))); this, TQ_SLOT(slotLocalsPopup(TQListViewItem*, const TQPoint&)));
restoreSettings(kapp->config()); restoreSettings(tdeApp->config());
updateUI(); updateUI();
m_bpTable->updateUI(); m_bpTable->updateUI();
@ -157,7 +157,7 @@ DebuggerMainWnd::DebuggerMainWnd(const char* name) :
DebuggerMainWnd::~DebuggerMainWnd() DebuggerMainWnd::~DebuggerMainWnd()
{ {
saveSettings(kapp->config()); saveSettings(tdeApp->config());
// must delete m_debugger early since it references our windows // must delete m_debugger early since it references our windows
delete m_debugger; delete m_debugger;
m_debugger = 0; m_debugger = 0;
@ -176,42 +176,42 @@ DebuggerMainWnd::~DebuggerMainWnd()
void DebuggerMainWnd::initKAction() void DebuggerMainWnd::initKAction()
{ {
// file menu // file menu
KAction* open = KStdAction::open(this, SLOT(slotFileOpen()), TDEAction* open = KStdAction::open(this, TQ_SLOT(slotFileOpen()),
actionCollection()); actionCollection());
open->setText(i18n("&Open Source...")); open->setText(i18n("&Open Source..."));
KStdAction::close(m_filesWindow, SLOT(slotClose()), actionCollection()); KStdAction::close(m_filesWindow, TQ_SLOT(slotClose()), actionCollection());
(void)new KAction(i18n("&Reload Source"), "reload", 0, m_filesWindow, (void)new TDEAction(i18n("&Reload Source"), "reload", 0, m_filesWindow,
SLOT(slotFileReload()), actionCollection(), TQ_SLOT(slotFileReload()), actionCollection(),
"file_reload"); "file_reload");
(void)new KAction(i18n("&Executable..."), "execopen", 0, this, (void)new TDEAction(i18n("&Executable..."), "execopen", 0, this,
SLOT(slotFileExe()), actionCollection(), TQ_SLOT(slotFileExe()), actionCollection(),
"file_executable"); "file_executable");
m_recentExecAction = new KRecentFilesAction(i18n("Recent E&xecutables"), 0, m_recentExecAction = new TDERecentFilesAction(i18n("Recent E&xecutables"), 0,
this, SLOT(slotRecentExec(const KURL&)), this, TQ_SLOT(slotRecentExec(const KURL&)),
actionCollection(), "file_executable_recent"); 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"); actionCollection(), "file_core_dump");
KStdAction::quit(kapp, SLOT(closeAllWindows()), actionCollection()); KStdAction::quit(tdeApp, TQ_SLOT(closeAllWindows()), actionCollection());
// settings menu // settings menu
(void)new KAction(i18n("This &Program..."), 0, this, (void)new TDEAction(i18n("This &Program..."), 0, this,
SLOT(slotFileProgSettings()), actionCollection(), TQ_SLOT(slotFileProgSettings()), actionCollection(),
"settings_program"); "settings_program");
(void)new KAction(i18n("&Global Options..."), 0, this, (void)new TDEAction(i18n("&Global Options..."), 0, this,
SLOT(slotFileGlobalSettings()), actionCollection(), TQ_SLOT(slotFileGlobalSettings()), actionCollection(),
"settings_global"); "settings_global");
KStdAction::keyBindings(this, SLOT(slotConfigureKeys()), actionCollection()); KStdAction::keyBindings(this, TQ_SLOT(slotConfigureKeys()), actionCollection());
KStdAction::showStatusbar(this, SLOT(slotViewStatusbar()), actionCollection()); KStdAction::showStatusbar(this, TQ_SLOT(slotViewStatusbar()), actionCollection());
// view menu // view menu
(void)new KToggleAction(i18n("&Find"), "find", CTRL+Key_F, m_filesWindow, (void)new TDEToggleAction(i18n("&Find"), "edit-find", CTRL+Key_F, m_filesWindow,
SLOT(slotViewFind()), actionCollection(), TQ_SLOT(slotViewFind()), actionCollection(),
"view_find"); "view_find");
(void)KStdAction::findNext(m_filesWindow, SLOT(slotFindForward()), actionCollection(), "view_findnext"); (void)KStdAction::findNext(m_filesWindow, TQ_SLOT(slotFindForward()), actionCollection(), "view_findnext");
(void)KStdAction::findPrev(m_filesWindow, SLOT(slotFindBackward()), actionCollection(), "view_findprev"); (void)KStdAction::findPrev(m_filesWindow, TQ_SLOT(slotFindBackward()), actionCollection(), "view_findprev");
i18n("Source &code"); 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("Stac&k"), m_btWindow, "view_stack"},
{ i18n("&Locals"), m_localVariables, "view_locals"}, { i18n("&Locals"), m_localVariables, "view_locals"},
{ i18n("&Watched expressions"), m_watches, "view_watched_expressions"}, { 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++) { for (unsigned i = 0; i < sizeof(dw)/sizeof(dw[0]); i++) {
KDockWidget* d = dockParent(dw[i].w); KDockWidget* d = dockParent(dw[i].w);
(void)new KToggleAction(dw[i].text, 0, d, SLOT(changeHideShowState()), (void)new TDEToggleAction(dw[i].text, 0, d, TQ_SLOT(changeHideShowState()),
actionCollection(), dw[i].id); actionCollection(), dw[i].id.latin1());
} }
// execution menu // execution menu
KAction* a = new KAction(i18n("&Run"), "pgmrun", Key_F5, m_debugger, TDEAction* a = new TDEAction(i18n("&Run"), "pgmrun", Key_F5, m_debugger,
SLOT(programRun()), actionCollection(), "exec_run"); TQ_SLOT(programRun()), actionCollection(), "exec_run");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Step &into"), "pgmstep", Key_F8, m_debugger, a = new TDEAction(i18n("Step &into"), "pgmstep", Key_F8, m_debugger,
SLOT(programStep()), actionCollection(), TQ_SLOT(programStep()), actionCollection(),
"exec_step_into"); "exec_step_into");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Step &over"), "pgmnext", Key_F10, m_debugger, a = new TDEAction(i18n("Step &over"), "pgmnext", Key_F10, m_debugger,
SLOT(programNext()), actionCollection(), TQ_SLOT(programNext()), actionCollection(),
"exec_step_over"); "exec_step_over");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Step o&ut"), "pgmfinish", Key_F6, m_debugger, a = new TDEAction(i18n("Step o&ut"), "pgmfinish", Key_F6, m_debugger,
SLOT(programFinish()), actionCollection(), TQ_SLOT(programFinish()), actionCollection(),
"exec_step_out"); "exec_step_out");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Run to &cursor"), Key_F7, this, a = new TDEAction(i18n("Run to &cursor"), Key_F7, this,
SLOT(slotExecUntil()), actionCollection(), TQ_SLOT(slotExecUntil()), actionCollection(),
"exec_run_to_cursor"); "exec_run_to_cursor");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Step i&nto by instruction"), "pgmstepi", a = new TDEAction(i18n("Step i&nto by instruction"), "pgmstepi",
SHIFT+Key_F8, m_debugger, SLOT(programStepi()), SHIFT+Key_F8, m_debugger, TQ_SLOT(programStepi()),
actionCollection(), "exec_step_into_by_insn"); actionCollection(), "exec_step_into_by_insn");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
a = new KAction(i18n("Step o&ver by instruction"), "pgmnexti", a = new TDEAction(i18n("Step o&ver by instruction"), "pgmnexti",
SHIFT+Key_F10, m_debugger, SLOT(programNexti()), SHIFT+Key_F10, m_debugger, TQ_SLOT(programNexti()),
actionCollection(), "exec_step_over_by_insn"); actionCollection(), "exec_step_over_by_insn");
connect(a, SIGNAL(activated()), this, SLOT(intoBackground())); connect(a, TQ_SIGNAL(activated()), this, TQ_SLOT(intoBackground()));
(void)new KAction(i18n("&Program counter to current line"), 0, (void)new TDEAction(i18n("&Program counter to current line"), 0,
m_filesWindow, SLOT(slotMoveProgramCounter()), m_filesWindow, TQ_SLOT(slotMoveProgramCounter()),
actionCollection(), "exec_movepc"); actionCollection(), "exec_movepc");
(void)new KAction(i18n("&Break"), 0, m_debugger, (void)new TDEAction(i18n("&Break"), 0, m_debugger,
SLOT(programBreak()), actionCollection(), TQ_SLOT(programBreak()), actionCollection(),
"exec_break"); "exec_break");
(void)new KAction(i18n("&Kill"), 0, m_debugger, (void)new TDEAction(i18n("&Kill"), 0, m_debugger,
SLOT(programKill()), actionCollection(), TQ_SLOT(programKill()), actionCollection(),
"exec_kill"); "exec_kill");
(void)new KAction(i18n("Re&start"), 0, m_debugger, (void)new TDEAction(i18n("Re&start"), 0, m_debugger,
SLOT(programRunAgain()), actionCollection(), TQ_SLOT(programRunAgain()), actionCollection(),
"exec_restart"); "exec_restart");
(void)new KAction(i18n("A&ttach..."), 0, this, (void)new TDEAction(i18n("A&ttach..."), 0, this,
SLOT(slotExecAttach()), actionCollection(), TQ_SLOT(slotExecAttach()), actionCollection(),
"exec_attach"); "exec_attach");
(void)new KAction(i18n("&Arguments..."), 0, this, (void)new TDEAction(i18n("&Arguments..."), 0, this,
SLOT(slotExecArgs()), actionCollection(), TQ_SLOT(slotExecArgs()), actionCollection(),
"exec_arguments"); "exec_arguments");
// breakpoint menu // breakpoint menu
(void)new KAction(i18n("Set/Clear &breakpoint"), "brkpt", Key_F9, (void)new TDEAction(i18n("Set/Clear &breakpoint"), "brkpt", Key_F9,
m_filesWindow, SLOT(slotBrkptSet()), actionCollection(), m_filesWindow, TQ_SLOT(slotBrkptSet()), actionCollection(),
"breakpoint_set"); "breakpoint_set");
(void)new KAction(i18n("Set &temporary breakpoint"), SHIFT+Key_F9, (void)new TDEAction(i18n("Set &temporary breakpoint"), SHIFT+Key_F9,
m_filesWindow, SLOT(slotBrkptSetTemp()), actionCollection(), m_filesWindow, TQ_SLOT(slotBrkptSetTemp()), actionCollection(),
"breakpoint_set_temporary"); "breakpoint_set_temporary");
(void)new KAction(i18n("&Enable/Disable breakpoint"), CTRL+Key_F9, (void)new TDEAction(i18n("&Enable/Disable breakpoint"), CTRL+Key_F9,
m_filesWindow, SLOT(slotBrkptEnable()), actionCollection(), m_filesWindow, TQ_SLOT(slotBrkptEnable()), actionCollection(),
"breakpoint_enable"); "breakpoint_enable");
// only in popup menus // only in popup menus
(void)new KAction(i18n("Watch Expression"), 0, this, (void)new TDEAction(i18n("Watch Expression"), 0, this,
SLOT(slotLocalsToWatch()), actionCollection(), TQ_SLOT(slotLocalsToWatch()), actionCollection(),
"watch_expression"); "watch_expression");
(void)new KAction(i18n("Edit Value"), Key_F2, this, (void)new TDEAction(i18n("Edit Value"), Key_F2, this,
SLOT(slotEditValue()), actionCollection(), TQ_SLOT(slotEditValue()), actionCollection(),
"edit_value"); "edit_value");
// all actions force an UI update // all actions force an UI update
QValueList<KAction*> actions = actionCollection()->actions(); TQValueList<TDEAction*> actions = actionCollection()->actions();
QValueList<KAction*>::Iterator it = actions.begin(); TQValueList<TDEAction*>::Iterator it = actions.begin();
for (; it != actions.end(); ++it) { for (; it != actions.end(); ++it) {
connect(*it, SIGNAL(activated()), this, SLOT(updateUI())); connect(*it, TQ_SIGNAL(activated()), this, TQ_SLOT(updateUI()));
} }
createGUI("kdbgui.rc"); createGUI("kdbgui.rc");
@ -306,9 +306,9 @@ void DebuggerMainWnd::initKAction()
void DebuggerMainWnd::initToolbar() void DebuggerMainWnd::initToolbar()
{ {
KToolBar* toolbar = toolBar("mainToolBar"); TDEToolBar* toolbar = toolBar("mainToolBar");
toolbar->insertAnimatedWidget(ID_STATUS_BUSY, toolbar->insertAnimatedWidget(ID_STATUS_BUSY,
actionCollection()->action("exec_break"), SLOT(activate()), actionCollection()->action("exec_break"), TQ_SLOT(activate()),
"pulse", -1); "pulse", -1);
toolbar->alignItemRight(ID_STATUS_BUSY, true); toolbar->alignItemRight(ID_STATUS_BUSY, true);
m_animRunning = false; m_animRunning = false;
@ -333,20 +333,20 @@ bool DebuggerMainWnd::queryClose()
// instance properties // instance properties
void DebuggerMainWnd::saveProperties(KConfig* config) void DebuggerMainWnd::saveProperties(TDEConfig* config)
{ {
// session management // session management
QString executable = ""; TQString executable = "";
if (m_debugger != 0) { if (m_debugger != 0) {
executable = m_debugger->executable(); executable = m_debugger->executable();
} }
config->writeEntry("executable", executable); config->writeEntry("executable", executable);
} }
void DebuggerMainWnd::readProperties(KConfig* config) void DebuggerMainWnd::readProperties(TDEConfig* config)
{ {
// session management // session management
QString execName = config->readEntry("executable"); TQString execName = config->readEntry("executable");
TRACE("readProperties: executable=" + execName); TRACE("readProperties: executable=" + execName);
if (!execName.isEmpty()) { if (!execName.isEmpty()) {
@ -358,25 +358,25 @@ const char WindowGroup[] = "Windows";
const char RecentExecutables[] = "RecentExecutables"; const char RecentExecutables[] = "RecentExecutables";
const char LastSession[] = "LastSession"; const char LastSession[] = "LastSession";
void DebuggerMainWnd::saveSettings(KConfig* config) void DebuggerMainWnd::saveSettings(TDEConfig* config)
{ {
KConfigGroupSaver g(config, WindowGroup); TDEConfigGroupSaver g(config, WindowGroup);
writeDockConfig(config); writeDockConfig(config);
fixDockConfig(config, false); // downgrade fixDockConfig(config, false); // downgrade
m_recentExecAction->saveEntries(config, RecentExecutables); m_recentExecAction->saveEntries(config, RecentExecutables);
KConfigGroupSaver g2(config, LastSession); TDEConfigGroupSaver g2(config, LastSession);
config->writeEntry("Width0Locals", m_localVariables->columnWidth(0)); config->writeEntry("Width0Locals", m_localVariables->columnWidth(0));
config->writeEntry("Width0Watches", m_watches->columnWidth(0)); config->writeEntry("Width0Watches", m_watches->columnWidth(0));
DebuggerMainWndBase::saveSettings(config); 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 fixDockConfig(config, true); // upgrade
readDockConfig(config); readDockConfig(config);
@ -384,7 +384,7 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
// Workaround bug #87787: KDockManager stores the titles of the KDockWidgets // Workaround bug #87787: KDockManager stores the titles of the KDockWidgets
// in the config files, although they are localized: // in the config files, although they are localized:
// If the user changes the language, the titles remain in the previous language. // 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("Stack"), m_btWindow },
{ i18n("Locals"), m_localVariables }, { i18n("Locals"), m_localVariables },
{ i18n("Watches"), m_watches }, { i18n("Watches"), m_watches },
@ -399,13 +399,13 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
KDockWidget* w = dockParent(dw[i].w); KDockWidget* w = dockParent(dw[i].w);
w->setTabPageLabel(dw[i].text); w->setTabPageLabel(dw[i].text);
// this actually changes the captions in the tabs: // this actually changes the captions in the tabs:
QEvent ev(QEvent::CaptionChange); TQEvent ev(TQEvent::CaptionChange);
w->event(&ev); w->event(&ev);
} }
m_recentExecAction->loadEntries(config, RecentExecutables); m_recentExecAction->loadEntries(config, RecentExecutables);
KConfigGroupSaver g2(config, LastSession); TDEConfigGroupSaver g2(config, LastSession);
int w; int w;
w = config->readNumEntry("Width0Locals", -1); w = config->readNumEntry("Width0Locals", -1);
if (w >= 0 && w < 30000) if (w >= 0 && w < 30000)
@ -421,8 +421,8 @@ void DebuggerMainWnd::restoreSettings(KConfig* config)
void DebuggerMainWnd::updateUI() void DebuggerMainWnd::updateUI()
{ {
KToggleAction* viewFind = TDEToggleAction* viewFind =
static_cast<KToggleAction*>(actionCollection()->action("view_find")); static_cast<TDEToggleAction*>(actionCollection()->action("view_find"));
viewFind->setChecked(m_filesWindow->m_findDlg.isVisible()); viewFind->setChecked(m_filesWindow->m_findDlg.isVisible());
viewFind->setEnabled(m_filesWindow->hasWindows()); viewFind->setEnabled(m_filesWindow->hasWindows());
actionCollection()->action("breakpoint_set")->setEnabled(m_debugger->canChangeBreakpoints()); actionCollection()->action("breakpoint_set")->setEnabled(m_debugger->canChangeBreakpoints());
@ -473,7 +473,7 @@ void DebuggerMainWnd::updateUI()
} }
// update statusbar // update statusbar
QString newStatus; TQString newStatus;
if (m_debugger->isProgramActive()) if (m_debugger->isProgramActive())
newStatus = m_statusActive; newStatus = m_statusActive;
if (newStatus != m_lastActiveStatusText) { 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 = TDEToggleAction* item =
static_cast<KToggleAction*>(actionCollection()->action(action)); static_cast<TDEToggleAction*>(actionCollection()->action(action.latin1()));
bool canChange = canChangeDockVisibility(w); bool canChange = canChangeDockVisibility(w);
item->setEnabled(canChange); item->setEnabled(canChange);
item->setChecked(canChange && isDockVisible(w)); item->setChecked(canChange && isDockVisible(w));
@ -499,12 +499,12 @@ void DebuggerMainWnd::updateLineItems()
void DebuggerMainWnd::slotAddWatch() void DebuggerMainWnd::slotAddWatch()
{ {
if (m_debugger != 0) { if (m_debugger != 0) {
QString t = m_watches->watchText(); TQString t = m_watches->watchText();
m_debugger->addWatch(t); m_debugger->addWatch(t);
} }
} }
void DebuggerMainWnd::slotAddWatch(const QString& text) void DebuggerMainWnd::slotAddWatch(const TQString& text)
{ {
if (m_debugger != 0) { if (m_debugger != 0) {
m_debugger->addWatch(text); m_debugger->addWatch(text);
@ -518,7 +518,7 @@ void DebuggerMainWnd::slotNewFileLoaded()
m_filesWindow->updateLineItems(m_debugger); m_filesWindow->updateLineItems(m_debugger);
} }
KDockWidget* DebuggerMainWnd::dockParent(QWidget* w) KDockWidget* DebuggerMainWnd::dockParent(TQWidget* w)
{ {
while ((w = w->parentWidget()) != 0) { while ((w = w->parentWidget()) != 0) {
if (w->isA("KDockWidget")) if (w->isA("KDockWidget"))
@ -527,20 +527,20 @@ KDockWidget* DebuggerMainWnd::dockParent(QWidget* w)
return 0; return 0;
} }
bool DebuggerMainWnd::isDockVisible(QWidget* w) bool DebuggerMainWnd::isDockVisible(TQWidget* w)
{ {
KDockWidget* d = dockParent(w); KDockWidget* d = dockParent(w);
return d != 0 && d->mayBeHide(); return d != 0 && d->mayBeHide();
} }
bool DebuggerMainWnd::canChangeDockVisibility(QWidget* w) bool DebuggerMainWnd::canChangeDockVisibility(TQWidget* w)
{ {
KDockWidget* d = dockParent(w); KDockWidget* d = dockParent(w);
return d != 0 && (d->mayBeHide() || d->mayBeShow()); return d != 0 && (d->mayBeHide() || d->mayBeShow());
} }
// upgrades the entries from version 0.0.4 to 0.0.5 and back // 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"; static const char dockGroup[] = "dock_setting_default";
if (!c->hasGroup(dockGroup)) if (!c->hasGroup(dockGroup))
@ -550,16 +550,16 @@ void DebuggerMainWnd::fixDockConfig(KConfig* c, bool upgrade)
static const char newVersion[] = "0.0.5"; static const char newVersion[] = "0.0.5";
const char* from = upgrade ? oldVersion : newVersion; const char* from = upgrade ? oldVersion : newVersion;
const char* to = upgrade ? newVersion : oldVersion; const char* to = upgrade ? newVersion : oldVersion;
QMap<QString,QString> e = c->entryMap(dockGroup); TQMap<TQString,TQString> e = c->entryMap(dockGroup);
if (e["Version"] != from) if (e["Version"] != from)
return; return;
KConfigGroupSaver g(c, dockGroup); TDEConfigGroupSaver g(c, dockGroup);
c->writeEntry("Version", to); c->writeEntry("Version", to);
TRACE(upgrade ? "upgrading dockconfig" : "downgrading dockconfig"); TRACE(upgrade ? "upgrading dockconfig" : "downgrading dockconfig");
// turn all orientation entries from 0 to 1 and from 1 to 0 // 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) for (i = e.begin(); i != e.end(); ++i)
{ {
if (i.key().right(12) == ":orientation") { if (i.key().right(12) == ":orientation") {
@ -577,15 +577,15 @@ TTYWindow* DebuggerMainWnd::ttyWindow()
return m_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 // check the file name
QFileInfo fi(exe); TQFileInfo fi(exe);
bool success = fi.isFile(); bool success = fi.isFile();
if (!success) 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)); KMessageBox::sorry(this, msg.arg(exe));
} }
else else
@ -602,7 +602,7 @@ bool DebuggerMainWnd::debugProgram(const QString& exe, const QString& lang)
m_filesWindow->setExtraDirectory(m_lastDirectory); m_filesWindow->setExtraDirectory(m_lastDirectory);
// set caption to basename part of executable // set caption to basename part of executable
QString caption = fi.fileName(); TQString caption = fi.fileName();
setCaption(caption); setCaption(caption);
} }
else else
@ -634,7 +634,7 @@ void DebuggerMainWnd::slotDebuggerStarting()
DebuggerMainWndBase::slotDebuggerStarting(); DebuggerMainWndBase::slotDebuggerStarting();
} }
void DebuggerMainWnd::slotToggleBreak(const QString& fileName, int lineNo, void DebuggerMainWnd::slotToggleBreak(const TQString& fileName, int lineNo,
const DbgAddr& address, bool temp) const DbgAddr& address, bool temp)
{ {
// lineNo is zero-based // 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) const DbgAddr& address)
{ {
// lineNo is zero-based // 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()) { if (!tty.isEmpty()) {
connect(m_outputTermProc, SIGNAL(processExited(KProcess*)), connect(m_outputTermProc, TQ_SIGNAL(processExited(TDEProcess*)),
SLOT(slotTermEmuExited())); TQ_SLOT(slotTermEmuExited()));
} }
return tty; return tty;
} }
@ -692,13 +692,13 @@ void DebuggerMainWnd::slotBackTimer()
void DebuggerMainWnd::slotRecentExec(const KURL& url) void DebuggerMainWnd::slotRecentExec(const KURL& url)
{ {
QString exe = url.path(); TQString exe = url.path();
debugProgram(exe, ""); 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 + " " + m_headerFilter + i18n("|All source files\n");
f += m_sourceFilter + i18n("|Source files\n"); f += m_sourceFilter + i18n("|Source files\n");
f += m_headerFilter + i18n("|Header 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 * 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 = TQPopupMenu* popup =
static_cast<QPopupMenu*>(factory()->container("popup_locals", this)); static_cast<TQPopupMenu*>(factory()->container("popup_locals", this));
if (popup == 0) { if (popup == 0) {
return; return;
} }
@ -731,7 +731,7 @@ void DebuggerMainWnd::slotLocalsToWatch()
VarTree* item = m_localVariables->selectedItem(); VarTree* item = m_localVariables->selectedItem();
if (item != 0 && m_debugger != 0) { if (item != 0 && m_debugger != 0) {
QString text = item->computeExpr(); TQString text = item->computeExpr();
m_debugger->addWatch(text); m_debugger->addWatch(text);
} }
} }
@ -742,7 +742,7 @@ void DebuggerMainWnd::slotLocalsToWatch()
void DebuggerMainWnd::slotEditValue() void DebuggerMainWnd::slotEditValue()
{ {
// does one of the value trees have the focus // does one of the value trees have the focus
QWidget* f = kapp->focusWidget(); TQWidget* f = tdeApp->focusWidget();
ExprWnd* wnd; ExprWnd* wnd;
if (f == m_localVariables) { if (f == m_localVariables) {
wnd = m_localVariables; wnd = m_localVariables;
@ -763,7 +763,7 @@ void DebuggerMainWnd::slotEditValue()
{ {
TRACE("edit value"); TRACE("edit value");
// determine the text to edit // determine the text to edit
QString text = m_debugger->driver()->editableValue(expr); TQString text = m_debugger->driver()->editableValue(expr);
wnd->editValue(expr, text); wnd->editValue(expr, text);
} }
} }
@ -772,10 +772,10 @@ void DebuggerMainWnd::slotFileOpen()
{ {
// start browsing in the active file's directory // start browsing in the active file's directory
// fall back to last used directory (executable) // fall back to last used directory (executable)
QString dir = m_lastDirectory; TQString dir = m_lastDirectory;
QString fileName = m_filesWindow->activeFileName(); TQString fileName = m_filesWindow->activeFileName();
if (!fileName.isEmpty()) { if (!fileName.isEmpty()) {
QFileInfo fi(fileName); TQFileInfo fi(fileName);
dir = fi.dirPath(); dir = fi.dirPath();
} }
@ -785,7 +785,7 @@ void DebuggerMainWnd::slotFileOpen()
if (!fileName.isEmpty()) if (!fileName.isEmpty())
{ {
QFileInfo fi(fileName); TQFileInfo fi(fileName);
m_lastDirectory = fi.dirPath(); m_lastDirectory = fi.dirPath();
m_filesWindow->setExtraDirectory(m_lastDirectory); m_filesWindow->setExtraDirectory(m_lastDirectory);
m_filesWindow->activateFile(fileName); m_filesWindow->activateFile(fileName);
@ -797,7 +797,7 @@ void DebuggerMainWnd::slotFileExe()
if (m_debugger->isIdle()) if (m_debugger->isIdle())
{ {
// open a new executable // 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); m_lastDirectory, 0, this);
if (executable.isEmpty()) if (executable.isEmpty())
return; return;
@ -810,7 +810,7 @@ void DebuggerMainWnd::slotFileCore()
{ {
if (m_debugger->canStart()) if (m_debugger->canStart())
{ {
QString corefile = myGetFileName(i18n("Select core dump"), TQString corefile = myGetFileName(i18n("Select core dump"),
m_lastDirectory, 0, this); m_lastDirectory, 0, this);
if (!corefile.isEmpty()) { if (!corefile.isEmpty()) {
m_debugger->useCoreFile(corefile, false); m_debugger->useCoreFile(corefile, false);
@ -838,7 +838,7 @@ void DebuggerMainWnd::slotExecUntil()
{ {
if (m_debugger != 0) if (m_debugger != 0)
{ {
QString file; TQString file;
int lineNo; int lineNo;
if (m_filesWindow->activeLine(file, lineNo)) if (m_filesWindow->activeLine(file, lineNo))
m_debugger->runUntil(file, lineNo); m_debugger->runUntil(file, lineNo);
@ -850,7 +850,7 @@ void DebuggerMainWnd::slotExecAttach()
#ifdef PS_COMMAND #ifdef PS_COMMAND
ProcAttachPS dlg(this); ProcAttachPS dlg(this);
// seed filter with executable name // seed filter with executable name
QFileInfo fi = m_debugger->executable(); TQFileInfo fi = m_debugger->executable();
dlg.filterEdit->setText(fi.fileName()); dlg.filterEdit->setText(fi.fileName());
#else #else
ProcAttach dlg(this); ProcAttach dlg(this);

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

File diff suppressed because it is too large Load Diff

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

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

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

File diff suppressed because it is too large Load Diff

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

@ -1,42 +1,13 @@
[Desktop Entry] [Desktop Entry]
Exec=kdbg -caption "%c" %i
Icon=kdbg
Type=Application
X-DocPath=kdbg/index.html
Name=KDbg Name=KDbg
GenericName=Debugger 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=Debug programs
Comment[br]=Goulevioù dizraenañ
Comment[ca]=Programes per localització d'errors Type=Application
Comment[cs]=Ladídí program Exec=kdbg -caption "%c" %i
Comment[da]=Afluseprogrammer Icon=kdbg
Comment[de]=Programme debuggen Categories=Qt;TDE;Development;Debugger;
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
Terminal=false 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. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <kapplication.h> #include <tdeapplication.h>
#include <klocale.h> /* i18n */ #include <tdelocale.h> /* i18n */
#include <kmessagebox.h> #include <tdemessagebox.h>
#include <kglobal.h> #include <tdeglobal.h>
#include <kstandarddirs.h> #include <kstandarddirs.h>
#include <kcmdlineargs.h> #include <tdecmdlineargs.h>
#include <kaboutdata.h> #include <tdeaboutdata.h>
#include <kpopupmenu.h> #include <tdepopupmenu.h>
#include <kmenubar.h> #include <tdemenubar.h>
#include "dbgmainwnd.h" #include "dbgmainwnd.h"
#include "typetable.h" #include "typetable.h"
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
@ -33,10 +33,10 @@
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
KAboutData aboutData("kdbg", "KDbg", TDEAboutData aboutData("kdbg", "KDbg",
VERSION, VERSION,
I18N_NOOP("A Debugger"), I18N_NOOP("A Debugger"),
KAboutData::License_GPL, TDEAboutData::License_GPL,
"(c) 1998-2010 Johannes Sixt", "(c) 1998-2010 Johannes Sixt",
0, /* any text */ 0, /* any text */
"http://www.kdbg.org/", "http://www.kdbg.org/",
@ -48,9 +48,9 @@ int main(int argc, char** argv)
aboutData.addCredit("Daniel Kristjansson", aboutData.addCredit("Daniel Kristjansson",
I18N_NOOP("Register groups and formating"), I18N_NOOP("Register groups and formating"),
"danielk@cat.nyu.edu"); "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 }, { "t <file>", I18N_NOOP("transcript of conversation with the debugger"), 0 },
{ "r <device>", I18N_NOOP("remote debugging via <device>"), 0 }, { "r <device>", I18N_NOOP("remote debugging via <device>"), 0 },
{ "l <language>", I18N_NOOP("specify language: C, XSLT"), ""}, { "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}, { "+[core]", I18N_NOOP("a core file to use"), 0},
{ 0, 0, 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"); DebuggerMainWnd* debugger = new DebuggerMainWnd("kdbg_main");
@ -75,7 +75,7 @@ int main(int argc, char** argv)
// session management // session management
bool restored = false; bool restored = false;
if (app.isRestored()) { if (app.isRestored()) {
if (KMainWindow::canBeRestored(1)) { if (TDEMainWindow::canBeRestored(1)) {
debugger->restore(1); debugger->restore(1);
restored = true; restored = true;
} }
@ -87,13 +87,13 @@ int main(int argc, char** argv)
// handle options // handle options
KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); TDECmdLineArgs *args = TDECmdLineArgs::parsedArgs();
QString transcript = args->getOption("t"); TQString transcript = args->getOption("t");
QString remote = args->getOption("r"); TQString remote = args->getOption("r");
if (!remote.isEmpty()) if (!remote.isEmpty())
debugger->setRemoteDevice(remote); debugger->setRemoteDevice(remote);
QString lang = args->getOption("l"); TQString lang = args->getOption("l");
// deprecated option; overrides -l // deprecated option; overrides -l
if (args->isSet("x")){ if (args->isSet("x")){
@ -107,8 +107,8 @@ int main(int argc, char** argv)
} }
debugger->setTranscript(transcript); debugger->setTranscript(transcript);
QString pid = args->getOption("p"); TQString pid = args->getOption("p");
QString programArgs = args->getOption("a"); TQString programArgs = args->getOption("a");
if (!restored && args->count() > 0) { if (!restored && args->count() > 0) {
// attach to process? // attach to process?
@ -125,8 +125,8 @@ int main(int argc, char** argv)
TRACE("cannot start debugger"); TRACE("cannot start debugger");
KMessageBox::error(debugger, i18n("Cannot start debugger.")); KMessageBox::error(debugger, i18n("Cannot start debugger."));
debugger->setCoreFile(QString()); debugger->setCoreFile(TQString());
debugger->setAttachPid(QString()); debugger->setAttachPid(TQString());
} else { } else {
if (!programArgs.isEmpty()) { if (!programArgs.isEmpty()) {
debugger->overrideProgramArguments(programArgs); debugger->overrideProgramArguments(programArgs);

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

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

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

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

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

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

@ -8,33 +8,33 @@
#define PgmArgs_included #define PgmArgs_included
#include "pgmargsbase.h" #include "pgmargsbase.h"
#include <qlineedit.h> #include <tqlineedit.h>
#include <qdict.h> #include <tqdict.h>
#include "envvar.h" #include "envvar.h"
class QStringList; class TQStringList;
class PgmArgs : public PgmArgsBase class PgmArgs : public PgmArgsBase
{ {
Q_OBJECT TQ_OBJECT
public: public:
PgmArgs(QWidget* parent, const QString& pgm, QDict<EnvVar>& envVars, PgmArgs(TQWidget* parent, const TQString& pgm, TQDict<EnvVar>& envVars,
const QStringList& allOptions); const TQStringList& allOptions);
virtual ~PgmArgs(); virtual ~PgmArgs();
void setArgs(const QString& text) { programArgs->setText(text); } void setArgs(const TQString& text) { programArgs->setText(text); }
QString args() const { return programArgs->text(); } TQString args() const { return programArgs->text(); }
void setOptions(const QStringList& selectedOptions); void setOptions(const TQStringList& selectedOptions);
QStringList options() const; TQStringList options() const;
void setWd(const QString& wd) { wdEdit->setText(wd); } void setWd(const TQString& wd) { wdEdit->setText(wd); }
QString wd() const { return wdEdit->text(); } TQString wd() const { return wdEdit->text(); }
QDict<EnvVar>& envVars() { return m_envVars; } TQDict<EnvVar>& envVars() { return m_envVars; }
protected: protected:
QDict<EnvVar> m_envVars; TQDict<EnvVar> m_envVars;
void initEnvList(); void initEnvList();
void parseEnvInput(QString& name, QString& value); void parseEnvInput(TQString& name, TQString& value);
void modifyVar(bool resurrect); void modifyVar(bool resurrect);
protected slots: 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"> <!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>PgmArgsBase</class> <class>PgmArgsBase</class>
<widget class="QDialog"> <widget class="TQDialog">
<property name="name"> <property name="name">
<cstring>PgmArgsBase</cstring> <cstring>PgmArgsBase</cstring>
</property> </property>
@ -28,7 +28,7 @@
<property name="spacing"> <property name="spacing">
<number>6</number> <number>6</number>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout1</cstring> <cstring>layout1</cstring>
</property> </property>
@ -36,11 +36,11 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QTabWidget"> <widget class="TQTabWidget">
<property name="name"> <property name="name">
<cstring>tabWidget</cstring> <cstring>tabWidget</cstring>
</property> </property>
<widget class="QWidget"> <widget class="TQWidget">
<property name="name"> <property name="name">
<cstring>argsPage</cstring> <cstring>argsPage</cstring>
</property> </property>
@ -51,7 +51,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout2</cstring> <cstring>layout2</cstring>
</property> </property>
@ -59,7 +59,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLabel"> <widget class="TQLabel">
<property name="name"> <property name="name">
<cstring>labelArgs</cstring> <cstring>labelArgs</cstring>
</property> </property>
@ -70,7 +70,7 @@
<cstring>programArgs</cstring> <cstring>programArgs</cstring>
</property> </property>
</widget> </widget>
<widget class="QLineEdit"> <widget class="TQLineEdit">
<property name="name"> <property name="name">
<cstring>programArgs</cstring> <cstring>programArgs</cstring>
</property> </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> <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> </property>
</widget> </widget>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout3</cstring> <cstring>layout3</cstring>
</property> </property>
@ -86,30 +86,24 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>insertFile</cstring> <cstring>insertFile</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>Insert &amp;file name...</string> <string>Insert &amp;file name...</string>
</property> </property>
<property name="accel">
<string>Alt+F</string>
</property>
<property name="whatsThis" stdset="0"> <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> <string>Browse for a file; the full path name will be inserted at the current cursor location in the edit box above.</string>
</property> </property>
</widget> </widget>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>insertDir</cstring> <cstring>insertDir</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>Insert &amp;directory name...</string> <string>Insert &amp;directory name...</string>
</property> </property>
<property name="accel">
<string>Alt+D</string>
</property>
<property name="whatsThis" stdset="0"> <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> <string>Browse for a directory; the full path name will be inserted at the current cursor location in the edit box above.</string>
</property> </property>
@ -154,7 +148,7 @@
</widget> </widget>
</hbox> </hbox>
</widget> </widget>
<widget class="QWidget"> <widget class="TQWidget">
<property name="name"> <property name="name">
<cstring>wdPage</cstring> <cstring>wdPage</cstring>
</property> </property>
@ -165,7 +159,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout6</cstring> <cstring>layout6</cstring>
</property> </property>
@ -173,7 +167,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLineEdit"> <widget class="TQLineEdit">
<property name="name"> <property name="name">
<cstring>wdEdit</cstring> <cstring>wdEdit</cstring>
</property> </property>
@ -181,7 +175,7 @@
<string>Specify here the initial working directory where the program is run.</string> <string>Specify here the initial working directory where the program is run.</string>
</property> </property>
</widget> </widget>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout5</cstring> <cstring>layout5</cstring>
</property> </property>
@ -189,16 +183,13 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>wdBrowse</cstring> <cstring>wdBrowse</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;Browse...</string> <string>&amp;Browse...</string>
</property> </property>
<property name="accel">
<string>Alt+B</string>
</property>
<property name="whatsThis" stdset="0"> <property name="whatsThis" stdset="0">
<string>Browse for the initial working directory where the program is run.</string> <string>Browse for the initial working directory where the program is run.</string>
</property> </property>
@ -243,7 +234,7 @@
</widget> </widget>
</hbox> </hbox>
</widget> </widget>
<widget class="QWidget"> <widget class="TQWidget">
<property name="name"> <property name="name">
<cstring>envPage</cstring> <cstring>envPage</cstring>
</property> </property>
@ -254,7 +245,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout9</cstring> <cstring>layout9</cstring>
</property> </property>
@ -262,7 +253,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout7</cstring> <cstring>layout7</cstring>
</property> </property>
@ -270,7 +261,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLabel"> <widget class="TQLabel">
<property name="name"> <property name="name">
<cstring>envLabel</cstring> <cstring>envLabel</cstring>
</property> </property>
@ -281,7 +272,7 @@
<cstring>envVar</cstring> <cstring>envVar</cstring>
</property> </property>
</widget> </widget>
<widget class="QLineEdit"> <widget class="TQLineEdit">
<property name="name"> <property name="name">
<cstring>envVar</cstring> <cstring>envVar</cstring>
</property> </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> <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> </property>
</widget> </widget>
<widget class="QListView"> <widget class="TQListView">
<column> <column>
<property name="text"> <property name="text">
<string>Name</string> <string>Name</string>
@ -324,7 +315,7 @@
</widget> </widget>
</vbox> </vbox>
</widget> </widget>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout8</cstring> <cstring>layout8</cstring>
</property> </property>
@ -332,30 +323,24 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonModify</cstring> <cstring>buttonModify</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;Modify</string> <string>&amp;Modify</string>
</property> </property>
<property name="accel">
<string>Alt+M</string>
</property>
<property name="whatsThis" stdset="0"> <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> <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> </property>
</widget> </widget>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonDelete</cstring> <cstring>buttonDelete</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;Delete</string> <string>&amp;Delete</string>
</property> </property>
<property name="accel">
<string>Alt+D</string>
</property>
<property name="whatsThis" stdset="0"> <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> <string>Deletes the selected environment variable from the list. This cannot be used to delete environment variables that are inherited.</string>
</property> </property>
@ -383,7 +368,7 @@
</widget> </widget>
</hbox> </hbox>
</widget> </widget>
<widget class="QWidget"> <widget class="TQWidget">
<property name="name"> <property name="name">
<cstring>xsldbgOptionsPage</cstring> <cstring>xsldbgOptionsPage</cstring>
</property> </property>
@ -394,7 +379,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QListBox"> <widget class="TQListBox">
<property name="name"> <property name="name">
<cstring>xsldbgOptions</cstring> <cstring>xsldbgOptions</cstring>
</property> </property>
@ -405,7 +390,7 @@
</hbox> </hbox>
</widget> </widget>
</widget> </widget>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout4</cstring> <cstring>layout4</cstring>
</property> </property>
@ -419,7 +404,7 @@
<property name="spacing"> <property name="spacing">
<number>6</number> <number>6</number>
</property> </property>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonHelp</cstring> <cstring>buttonHelp</cstring>
</property> </property>
@ -450,16 +435,13 @@
</size> </size>
</property> </property>
</spacer> </spacer>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonOk</cstring> <cstring>buttonOk</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;OK</string> <string>&amp;OK</string>
</property> </property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault"> <property name="autoDefault">
<bool>true</bool> <bool>true</bool>
</property> </property>
@ -467,16 +449,13 @@
<bool>true</bool> <bool>true</bool>
</property> </property>
</widget> </widget>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonCancel</cstring> <cstring>buttonCancel</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;Cancel</string> <string>&amp;Cancel</string>
</property> </property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault"> <property name="autoDefault">
<bool>true</bool> <bool>true</bool>
</property> </property>

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

@ -7,43 +7,43 @@
#ifndef PGMSETTINGS_H #ifndef PGMSETTINGS_H
#define PGMSETTINGS_H #define PGMSETTINGS_H
#include <qtabdialog.h> #include <tqtabdialog.h>
class QButtonGroup; class TQButtonGroup;
class QLineEdit; class TQLineEdit;
class ChooseDriver : public QWidget class ChooseDriver : public TQWidget
{ {
public: public:
ChooseDriver(QWidget* parent); ChooseDriver(TQWidget* parent);
void setDebuggerCmd(const QString& cmd); void setDebuggerCmd(const TQString& cmd);
QString debuggerCmd() const; TQString debuggerCmd() const;
protected: protected:
QLineEdit* m_debuggerCmd; TQLineEdit* m_debuggerCmd;
}; };
class OutputSettings : public QWidget class OutputSettings : public TQWidget
{ {
Q_OBJECT TQ_OBJECT
public: public:
OutputSettings(QWidget* parent); OutputSettings(TQWidget* parent);
void setTTYLevel(int l); void setTTYLevel(int l);
int ttyLevel() const { return m_ttyLevel; } int ttyLevel() const { return m_ttyLevel; }
protected: protected:
int m_ttyLevel; int m_ttyLevel;
QButtonGroup* m_group; TQButtonGroup* m_group;
protected slots: protected slots:
void slotLevelChanged(int); void slotLevelChanged(int);
}; };
class ProgramSettings : public QTabDialog class ProgramSettings : public TQTabDialog
{ {
Q_OBJECT TQ_OBJECT
public: public:
ProgramSettings(QWidget* parent, QString exeName, bool modal = true); ProgramSettings(TQWidget* parent, TQString exeName, bool modal = true);
public: public:
ChooseDriver m_chooseDriver; 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. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <klocale.h> /* i18n */ #include <tdelocale.h> /* i18n */
#include <qlayout.h> #include <tqlayout.h>
#include "prefdebugger.h" #include "prefdebugger.h"
PrefDebugger::PrefDebugger(QWidget* parent) : PrefDebugger::PrefDebugger(TQWidget* parent) :
QWidget(parent, "debugger"), TQWidget(parent, "debugger"),
m_grid(this, 5, 2, 10), m_grid(this, 5, 2, 10),
m_defaultHint(this, "default_hint"), m_defaultHint(this, "default_hint"),
m_debuggerCCppLabel(this, "debugger_label"), m_debuggerCCppLabel(this, "debugger_label"),

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

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

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

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

@ -8,15 +8,15 @@
#define ProcAttach_included #define ProcAttach_included
#include "procattachbase.h" #include "procattachbase.h"
#include <qvaluevector.h> #include <tqvaluevector.h>
#include <qdialog.h> #include <tqdialog.h>
#include <qlabel.h> #include <tqlabel.h>
#include <qlineedit.h> #include <tqlineedit.h>
#include <qpushbutton.h> #include <tqpushbutton.h>
#include <qlayout.h> #include <tqlayout.h>
class KProcess; class TDEProcess;
/* /*
* This is the full-featured version of the dialog. It is used when the * This is the full-featured version of the dialog. It is used when the
@ -25,33 +25,33 @@ class KProcess;
class ProcAttachPS : public ProcAttachBase class ProcAttachPS : public ProcAttachBase
{ {
Q_OBJECT TQ_OBJECT
public: public:
ProcAttachPS(QWidget* parent); ProcAttachPS(TQWidget* parent);
~ProcAttachPS(); ~ProcAttachPS();
QString text() const; TQString text() const;
protected: protected:
void runPS(); void runPS();
virtual void refresh(); virtual void refresh();
virtual void filterEdited(const QString& text); virtual void filterEdited(const TQString& text);
virtual void selectedChanged(); virtual void selectedChanged();
protected slots: protected slots:
void slotTextReceived(KProcess* proc, char* buffer, int buflen); void slotTextReceived(TDEProcess* proc, char* buffer, int buflen);
void slotPSDone(); void slotPSDone();
protected: protected:
void pushLine(); void pushLine();
bool setVisibility(QListViewItem* i, const QString& text); bool setVisibility(TQListViewItem* i, const TQString& text);
KProcess* m_ps; TDEProcess* m_ps;
// parse state // parse state
int m_pidCol; //!< The PID column in the ps output int m_pidCol; //!< The PID column in the ps output
int m_ppidCol; //!< The parent-PID column in the ps output int m_ppidCol; //!< The parent-PID column in the ps output
QCString m_token; TQCString m_token;
QValueVector<QString> m_line; TQValueVector<TQString> m_line;
}; };
@ -60,22 +60,22 @@ protected:
* when there is no suitable ps command. * when there is no suitable ps command.
*/ */
class ProcAttach : public QDialog class ProcAttach : public TQDialog
{ {
public: public:
ProcAttach(QWidget* parent); ProcAttach(TQWidget* parent);
virtual ~ProcAttach(); virtual ~ProcAttach();
void setText(const QString& text) { m_processId.setText(text); } void setText(const TQString& text) { m_processId.setText(text); }
QString text() const { return m_processId.text(); } TQString text() const { return m_processId.text(); }
protected: protected:
QLabel m_label; TQLabel m_label;
QLineEdit m_processId; TQLineEdit m_processId;
QPushButton m_buttonOK; TQPushButton m_buttonOK;
QPushButton m_buttonCancel; TQPushButton m_buttonCancel;
QVBoxLayout m_layout; TQVBoxLayout m_layout;
QHBoxLayout m_buttons; TQHBoxLayout m_buttons;
}; };
#endif // ProcAttach_included #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"> <!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>ProcAttachBase</class> <class>ProcAttachBase</class>
<author>Johannes Sixt</author> <author>Johannes Sixt</author>
<widget class="QDialog"> <widget class="TQDialog">
<property name="name"> <property name="name">
<cstring>ProcAttachBase</cstring> <cstring>ProcAttachBase</cstring>
</property> </property>
@ -23,7 +23,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout7</cstring> <cstring>layout7</cstring>
</property> </property>
@ -31,7 +31,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout6</cstring> <cstring>layout6</cstring>
</property> </property>
@ -39,7 +39,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QLabel"> <widget class="TQLabel">
<property name="name"> <property name="name">
<cstring>filterLabel</cstring> <cstring>filterLabel</cstring>
</property> </property>
@ -50,7 +50,7 @@
<cstring>filterEdit</cstring> <cstring>filterEdit</cstring>
</property> </property>
</widget> </widget>
<widget class="QLineEdit"> <widget class="TQLineEdit">
<property name="name"> <property name="name">
<cstring>filterEdit</cstring> <cstring>filterEdit</cstring>
</property> </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> <string>Type the name of the process or its process ID (PID) here to reduce the number of entries in the list.</string>
</property> </property>
</widget> </widget>
<widget class="QToolButton"> <widget class="TQToolButton">
<property name="name"> <property name="name">
<cstring>filterClear</cstring> <cstring>filterClear</cstring>
</property> </property>
@ -85,7 +85,7 @@
</widget> </widget>
</hbox> </hbox>
</widget> </widget>
<widget class="QListView"> <widget class="TQListView">
<column> <column>
<property name="text"> <property name="text">
<string>Command</string> <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> <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> </property>
</widget> </widget>
<widget class="QLayoutWidget"> <widget class="TQLayoutWidget">
<property name="name"> <property name="name">
<cstring>layout3</cstring> <cstring>layout3</cstring>
</property> </property>
@ -143,7 +143,7 @@
<property name="name"> <property name="name">
<cstring>unnamed</cstring> <cstring>unnamed</cstring>
</property> </property>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonRefresh</cstring> <cstring>buttonRefresh</cstring>
</property> </property>
@ -179,7 +179,7 @@
</size> </size>
</property> </property>
</spacer> </spacer>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonOk</cstring> <cstring>buttonOk</cstring>
</property> </property>
@ -189,9 +189,6 @@
<property name="text"> <property name="text">
<string>&amp;OK</string> <string>&amp;OK</string>
</property> </property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault"> <property name="autoDefault">
<bool>true</bool> <bool>true</bool>
</property> </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> <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> </property>
</widget> </widget>
<widget class="QPushButton"> <widget class="TQPushButton">
<property name="name"> <property name="name">
<cstring>buttonCancel</cstring> <cstring>buttonCancel</cstring>
</property> </property>
<property name="text"> <property name="text">
<string>&amp;Cancel</string> <string>&amp;Cancel</string>
</property> </property>
<property name="accel">
<string></string>
</property>
<property name="autoDefault"> <property name="autoDefault">
<bool>true</bool> <bool>true</bool>
</property> </property>
@ -243,9 +237,9 @@
</connection> </connection>
<connection> <connection>
<sender>filterEdit</sender> <sender>filterEdit</sender>
<signal>textChanged(const QString&amp;)</signal> <signal>textChanged(const TQString&amp;)</signal>
<receiver>ProcAttachBase</receiver> <receiver>ProcAttachBase</receiver>
<slot>filterEdited(const QString&amp;)</slot> <slot>filterEdited(const TQString&amp;)</slot>
</connection> </connection>
<connection> <connection>
<sender>filterClear</sender> <sender>filterClear</sender>
@ -269,7 +263,7 @@
</tabstops> </tabstops>
<slots> <slots>
<slot specifier="pure virtual">refresh()</slot> <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> <slot specifier="pure virtual">selectedChanged()</slot>
</slots> </slots>
<layoutdefaults spacing="6" margin="10"/> <layoutdefaults spacing="6" margin="10"/>

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

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

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

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

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

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

@ -1,6 +1,6 @@
// test <repeats 30 times> in arrays // test <repeats 30 times> in arrays
#include <qstring.h> #include <tqstring.h>
struct Big { struct Big {
struct bog { struct bog {
@ -26,7 +26,7 @@ int main()
for (int i = 1; i < 29; i++) for (int i = 1; i < 29; i++)
apf[i] = f; apf[i] = f;
QString s[300]; TQString s[300];
for (int i = 0; i < 300; i++) for (int i = 0; i < 300; i++)
s[i].sprintf("String %d", 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) {} V(const T& v) : std::vector<T>(10, v) {}
void anotherone(const T& v) void anotherone(const T& v)
{ {
push_back(v); this->push_back(v);
} }
}; };

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

@ -651,17 +651,3 @@ Ie if you have loaded a stylsheet file of ../en/xsldoc.xsl you can do this
</cmd> </cmd>
</xsldoc> </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> </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 "threadlist.h"
#include "dbgdriver.h" #include "dbgdriver.h"
#include <klocale.h> #include <tdelocale.h>
#include <kiconloader.h> #include <kiconloader.h>
#include <qbitmap.h> #include <tqbitmap.h>
#include <qpainter.h> #include <tqpainter.h>
class ThreadEntry : public QListViewItem, public ThreadInfo class ThreadEntry : public TQListViewItem, public ThreadInfo
{ {
public: public:
ThreadEntry(QListView* parent, const ThreadInfo& thread); ThreadEntry(TQListView* parent, const ThreadInfo& thread);
void setFunction(const QString& func); void setFunction(const TQString& func);
bool m_delete; /* used for updating the list */ bool m_delete; /* used for updating the list */
}; };
ThreadEntry::ThreadEntry(QListView* parent, const ThreadInfo& thread) : ThreadEntry::ThreadEntry(TQListView* parent, const ThreadInfo& thread) :
QListViewItem(parent, thread.threadName, thread.function), TQListViewItem(parent, thread.threadName, thread.function),
ThreadInfo(thread), ThreadInfo(thread),
m_delete(false) m_delete(false)
{ {
} }
void ThreadEntry::setFunction(const QString& func) void ThreadEntry::setFunction(const TQString& func)
{ {
function = func; function = func;
setText(1, function); setText(1, function);
} }
ThreadList::ThreadList(QWidget* parent, const char* name) : ThreadList::ThreadList(TQWidget* parent, const char* name) :
QListView(parent, name) TQListView(parent, name)
{ {
addColumn(i18n("Thread ID"), 150); addColumn(i18n("Thread ID"), 150);
addColumn(i18n("Location")); addColumn(i18n("Location"));
@ -45,8 +45,8 @@ ThreadList::ThreadList(QWidget* parent, const char* name) :
m_focusIcon = UserIcon("pcinner"); m_focusIcon = UserIcon("pcinner");
makeNoFocusIcon(); makeNoFocusIcon();
connect(this, SIGNAL(currentChanged(QListViewItem*)), connect(this, TQ_SIGNAL(currentChanged(TQListViewItem*)),
this, SLOT(slotCurrentChanged(QListViewItem*))); this, TQ_SLOT(slotCurrentChanged(TQListViewItem*)));
} }
ThreadList::~ThreadList() ThreadList::~ThreadList()
@ -56,7 +56,7 @@ ThreadList::~ThreadList()
void ThreadList::updateThreads(const std::list<ThreadInfo>& threads) void ThreadList::updateThreads(const std::list<ThreadInfo>& threads)
{ {
// reset flag in all items // 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; 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 // 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); ThreadEntry* te = static_cast<ThreadEntry*>(e);
e = e->nextSibling(); /* step ahead before deleting it ;-) */ e = e->nextSibling(); /* step ahead before deleting it ;-) */
if (te->m_delete) { if (te->m_delete) {
@ -87,7 +87,7 @@ void ThreadList::updateThreads(const std::list<ThreadInfo>& threads)
ThreadEntry* ThreadList::threadById(int id) 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); ThreadEntry* te = static_cast<ThreadEntry*>(e);
if (te->id == id) { if (te->id == id) {
return te; return te;
@ -104,13 +104,13 @@ void ThreadList::makeNoFocusIcon()
{ {
m_noFocusIcon = m_focusIcon; m_noFocusIcon = m_focusIcon;
{ {
QPainter p(&m_noFocusIcon); TQPainter p(&m_noFocusIcon);
p.fillRect(0,0, m_noFocusIcon.width(),m_noFocusIcon.height(), QColor(white)); p.fillRect(0,0, m_noFocusIcon.width(),m_noFocusIcon.height(), TQColor(white));
} }
m_noFocusIcon.setMask(m_noFocusIcon.createHeuristicMask()); m_noFocusIcon.setMask(m_noFocusIcon.createHeuristicMask());
} }
void ThreadList::slotCurrentChanged(QListViewItem* newItem) void ThreadList::slotCurrentChanged(TQListViewItem* newItem)
{ {
if (newItem == 0) if (newItem == 0)
return; return;

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

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

@ -7,10 +7,10 @@
#ifndef TTYWND_H #ifndef TTYWND_H
#define TTYWND_H #define TTYWND_H
#include <qtextedit.h> #include <tqtextedit.h>
class QSocketNotifier; class TQSocketNotifier;
class QPopupMenu; class TQPopupMenu;
/** /**
* This class is cortesy Judin Max <novaprint@mtu-net.ru>. * 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 * 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. * 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: public:
STTY(); STTY();
~STTY(); ~STTY();
QString slaveTTY(){ return m_slavetty; }; TQString slaveTTY(){ return m_slavetty; };
protected slots: protected slots:
void outReceived(int); void outReceived(int);
@ -41,24 +41,24 @@ signals:
protected: protected:
int m_masterfd; int m_masterfd;
int m_slavefd; int m_slavefd;
QSocketNotifier* m_outNotifier; TQSocketNotifier* m_outNotifier;
QString m_slavetty; TQString m_slavetty;
bool findTTY(); bool findTTY();
}; };
class TTYWindow : public QTextEdit class TTYWindow : public TQTextEdit
{ {
Q_OBJECT TQ_OBJECT
public: public:
TTYWindow(QWidget* parent, const char* name); TTYWindow(TQWidget* parent, const char* name);
~TTYWindow(); ~TTYWindow();
QString activate(); TQString activate();
void deactivate(); void deactivate();
protected: protected:
STTY* m_tty; STTY* m_tty;
virtual QPopupMenu* createPopupMenu(const QPoint& pos); virtual TQPopupMenu* createPopupMenu(const TQPoint& pos);
int m_hPos; //!< tracks horizontal cursor position int m_hPos; //!< tracks horizontal cursor position
protected slots: protected slots:

@ -4,13 +4,14 @@
* See the file COPYING in the toplevel directory of the source directory. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <qdir.h> #include <tqdir.h>
#include <qptrlist.h> #include <tqptrlist.h>
#include <kglobal.h> #include <tdeglobal.h>
#include <kstandarddirs.h> #include <kstandarddirs.h>
#include <ksimpleconfig.h> #include <ksimpleconfig.h>
#include <list> #include <list>
#include <algorithm> #include <algorithm>
#include <functional>
#include <iterator> #include <iterator>
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "config.h" #include "config.h"
@ -40,7 +41,7 @@ void TypeTable::loadTypeTables()
{ {
typeTablesInited = true; typeTablesInited = true;
const QStringList files = KGlobal::dirs()->findAllResources("types", "*.kdbgtt", const TQStringList files = TDEGlobal::dirs()->findAllResources("types", "*.kdbgtt",
false, true); false, true);
if (files.isEmpty()) { if (files.isEmpty()) {
@ -48,7 +49,7 @@ void TypeTable::loadTypeTables()
return; 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.push_back(TypeTable());
typeTables.back().loadFromFile(*p); typeTables.back().loadFromFile(*p);
} }
@ -56,7 +57,7 @@ void TypeTable::loadTypeTables()
TypeTable::TypeTable() : TypeTable::TypeTable() :
m_printQStringDataCmd(0) m_printTQStringDataCmd(0)
{ {
m_typeDict.setAutoDelete(true); m_typeDict.setAutoDelete(true);
// aliasDict keeps only pointers to items into typeDict // aliasDict keeps only pointers to items into typeDict
@ -65,7 +66,7 @@ TypeTable::TypeTable() :
TypeTable::~TypeTable() TypeTable::~TypeTable()
{ {
delete[] m_printQStringDataCmd; delete[] m_printTQStringDataCmd;
while (!m_templates.empty()) { while (!m_templates.empty()) {
delete m_templates.begin()->second; delete m_templates.begin()->second;
m_templates.erase(m_templates.begin()); m_templates.erase(m_templates.begin());
@ -77,7 +78,7 @@ static const char TypeTableGroup[] = "Type Table";
static const char LibDisplayName[] = "LibDisplayName"; static const char LibDisplayName[] = "LibDisplayName";
static const char ShlibRE[] = "ShlibRE"; static const char ShlibRE[] = "ShlibRE";
static const char EnableBuiltin[] = "EnableBuiltin"; static const char EnableBuiltin[] = "EnableBuiltin";
static const char PrintQStringCmd[] = "PrintQStringCmd"; static const char PrintTQStringCmd[] = "PrintTQStringCmd";
static const char TypesEntryFmt[] = "Types%d"; static const char TypesEntryFmt[] = "Types%d";
static const char DisplayEntry[] = "Display"; static const char DisplayEntry[] = "Display";
static const char AliasEntry[] = "Alias"; static const char AliasEntry[] = "Alias";
@ -86,7 +87,7 @@ static const char ExprEntryFmt[] = "Expr%d";
static const char FunctionGuardEntryFmt[] = "FunctionGuard%d"; static const char FunctionGuardEntryFmt[] = "FunctionGuard%d";
void TypeTable::loadFromFile(const QString& fileName) void TypeTable::loadFromFile(const TQString& fileName)
{ {
TRACE("reading file " + fileName); TRACE("reading file " + fileName);
KSimpleConfig cf(fileName, true); /* read-only */ KSimpleConfig cf(fileName, true); /* read-only */
@ -98,26 +99,26 @@ void TypeTable::loadFromFile(const QString& fileName)
m_displayName = cf.readEntry(LibDisplayName); m_displayName = cf.readEntry(LibDisplayName);
if (m_displayName.isEmpty()) { if (m_displayName.isEmpty()) {
// use file name instead // use file name instead
QFileInfo fi(fileName); TQFileInfo fi(fileName);
m_displayName = fi.baseName(true); m_displayName = fi.baseName(true);
} }
m_shlibNameRE = QRegExp(cf.readEntry(ShlibRE)); m_shlibNameRE = TQRegExp(cf.readEntry(ShlibRE));
m_enabledBuiltins = cf.readListEntry(EnableBuiltin); m_enabledBuiltins = cf.readListEntry(EnableBuiltin);
QString printQString = cf.readEntry(PrintQStringCmd); TQString printTQString = cf.readEntry(PrintTQStringCmd);
const char* ascii = printQString.ascii(); const char* ascii = printTQString.ascii();
if (ascii == 0) if (ascii == 0)
ascii = ""; ascii = "";
m_printQStringDataCmd = new char[strlen(ascii)+1]; m_printTQStringDataCmd = new char[strlen(ascii)+1];
strcpy(m_printQStringDataCmd, ascii); strcpy(m_printTQStringDataCmd, ascii);
/* /*
* Get the types. We search for entries of kind Types1, Types2, etc. * Get the types. We search for entries of kind Types1, Types2, etc.
* because a single entry Types could get rather long for large * because a single entry Types could get rather long for large
* libraries. * libraries.
*/ */
QString typesEntry; TQString typesEntry;
for (int i = 1; ; i++) { for (int i = 1; ; i++) {
// next bunch of types // next bunch of types
cf.setGroup(TypeTableGroup); cf.setGroup(TypeTableGroup);
@ -125,11 +126,11 @@ void TypeTable::loadFromFile(const QString& fileName)
if (!cf.hasKey(typesEntry)) if (!cf.hasKey(typesEntry))
break; break;
QStringList typeNames = cf.readListEntry(typesEntry, ','); TQStringList typeNames = cf.readListEntry(typesEntry, ',');
// now read them // now read them
QString alias; TQString alias;
for (QStringList::iterator it = typeNames.begin(); it != typeNames.end(); ++it) for (TQStringList::iterator it = typeNames.begin(); it != typeNames.end(); ++it)
{ {
cf.setGroup(*it); cf.setGroup(*it);
// check if this is an alias // check if this is an alias
@ -150,10 +151,10 @@ void TypeTable::loadFromFile(const QString& fileName)
} // for all Types%d } // for all Types%d
} }
void TypeTable::readType(KConfigBase& cf, const QString& type) void TypeTable::readType(TDEConfigBase& cf, const TQString& type)
{ {
// the display string // the display string
QString expr = cf.readEntry(DisplayEntry); TQString expr = cf.readEntry(DisplayEntry);
TypeInfo* info = new TypeInfo(expr); TypeInfo* info = new TypeInfo(expr);
if (info->m_numExprs == 0) { if (info->m_numExprs == 0) {
@ -165,8 +166,8 @@ void TypeTable::readType(KConfigBase& cf, const QString& type)
info->m_templatePattern = cf.readEntry(TemplateEntry); info->m_templatePattern = cf.readEntry(TemplateEntry);
// Expr1, Expr2, etc... // Expr1, Expr2, etc...
QString exprEntry; TQString exprEntry;
QString funcGuardEntry; TQString funcGuardEntry;
for (int j = 0; j < info->m_numExprs; j++) { for (int j = 0; j < info->m_numExprs; j++) {
exprEntry.sprintf(ExprEntryFmt, j+1); exprEntry.sprintf(ExprEntryFmt, j+1);
expr = cf.readEntry(exprEntry); expr = cf.readEntry(exprEntry);
@ -182,25 +183,25 @@ void TypeTable::readType(KConfigBase& cf, const QString& type)
m_typeDict.insert(type, info); m_typeDict.insert(type, info);
else else
m_templates[type] = info; 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); 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); 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(); return m_enabledBuiltins.find(feature) != m_enabledBuiltins.end();
} }
TypeInfo::TypeInfo(const QString& displayString) TypeInfo::TypeInfo(const TQString& displayString)
{ {
// decompose the input into the parts // decompose the input into the parts
int i = 0; int i = 0;
@ -227,9 +228,9 @@ TypeInfo::~TypeInfo()
ProgramTypeTable::ProgramTypeTable() : ProgramTypeTable::ProgramTypeTable() :
m_parseQt2QStrings(false), m_parseTQt2TQStrings(false),
m_QCharIsShort(false), m_QCharIsShort(false),
m_printQStringDataCmd(0) m_printTQStringDataCmd(0)
{ {
m_types.setAutoDelete(false); /* paranoia */ m_types.setAutoDelete(false); /* paranoia */
m_aliasDict.setAutoDelete(false); /* paranoia */ m_aliasDict.setAutoDelete(false); /* paranoia */
@ -247,24 +248,24 @@ void ProgramTypeTable::loadTypeTable(TypeTable* table)
const TypeTable::TypeMap& t = table->templates(); const TypeTable::TypeMap& t = table->templates();
std::transform(t.begin(), t.end(), std::transform(t.begin(), t.end(),
std::inserter(m_templates, m_templates.begin()), std::inserter(m_templates, m_templates.begin()),
std::ptr_fun(template2Info)); std::ref(template2Info));
// check whether to enable builtin QString support // check whether to enable builtin TQString support
if (!m_parseQt2QStrings) { if (!m_parseTQt2TQStrings) {
m_parseQt2QStrings = table->isEnabledBuiltin("QString::Data"); m_parseTQt2TQStrings = table->isEnabledBuiltin("TQString::Data");
} }
if (!m_QCharIsShort) { if (!m_QCharIsShort) {
m_QCharIsShort = table->isEnabledBuiltin("QCharIsShort"); m_QCharIsShort = table->isEnabledBuiltin("TQCharIsShort");
} }
if (!m_printQStringDataCmd && *table->printQStringDataCmd()) { if (!m_printTQStringDataCmd && *table->printTQStringDataCmd()) {
m_printQStringDataCmd = table->printQStringDataCmd(); m_printTQStringDataCmd = table->printTQStringDataCmd();
} }
} }
ProgramTypeTable::TemplateMap::value_type ProgramTypeTable::TemplateMap::value_type
ProgramTypeTable::template2Info(const TypeTable::TypeMap::value_type& tt) 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()); TemplateMap::value_type result(args.front(), TemplateInfo());
result.second.type = tt.second; 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 * The first entry of the returned list is the template name, the remaining
* entries are the arguments. * entries are the arguments.
*/ */
QStringList ProgramTypeTable::splitTemplateArgs(const QString& t) TQStringList ProgramTypeTable::splitTemplateArgs(const TQString& t)
{ {
QStringList result; TQStringList result;
result.push_back(t); result.push_back(t);
int i = t.find('<'); int i = t.find('<');
@ -302,14 +303,14 @@ QStringList ProgramTypeTable::splitTemplateArgs(const QString& t)
nest--; nest--;
else if (nest == 0 && t[i] == ',') { else if (nest == 0 && t[i] == ',') {
// found end of argument // found end of argument
QString arg = t.mid(start, i-start); TQString arg = t.mid(start, i-start);
result.push_back(arg); result.push_back(arg);
start = i+1; // skip ',' start = i+1; // skip ','
} }
} }
// accept the template only if the closing '>' is the last character // accept the template only if the closing '>' is the last character
if (nest < 0 && unsigned(i) == t.length()) { 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); result.push_back(arg);
} else { } else {
result.clear(); result.clear();
@ -318,7 +319,7 @@ QStringList ProgramTypeTable::splitTemplateArgs(const QString& t)
return result; return result;
} }
TypeInfo* ProgramTypeTable::lookup(QString type) TypeInfo* ProgramTypeTable::lookup(TQString type)
{ {
/* /*
* Registered aliases contain the complete template parameter list. * Registered aliases contain the complete template parameter list.
@ -337,7 +338,7 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
/* /*
* The hard part: Look up a template. * The hard part: Look up a template.
*/ */
QStringList parts = splitTemplateArgs(type); TQStringList parts = splitTemplateArgs(type);
if (parts.size() == 1) if (parts.size() == 1)
return 0; // not a template 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) 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()) if (parts.size() < pat.size())
continue; // too few arguments continue; // too few arguments
@ -360,8 +361,8 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
if (parts.size() > pat.size() && pat.back() != "*") if (parts.size() > pat.size() && pat.back() != "*")
continue; // too many arguments and no wildcard continue; // too many arguments and no wildcard
QStringList::const_iterator t = parts.begin(); TQStringList::const_iterator t = parts.begin();
QStringList::const_iterator p = pat.begin(); TQStringList::const_iterator p = pat.begin();
unsigned accumPenalty = 0; unsigned accumPenalty = 0;
bool equal = true; bool equal = true;
unsigned penalty = ~(~0U>>1); // 1 in the leading bit unsigned penalty = ~(~0U>>1); // 1 in the leading bit
@ -386,15 +387,15 @@ TypeInfo* ProgramTypeTable::lookup(QString type)
return result; 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); ASSERT(lookup(name) == 0 || lookup(name) == type);
m_aliasDict.insert(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 // look up the library
for (std::list<TypeTable>::iterator t = typeTables.begin(); t != typeTables.end(); ++t) 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. * See the file COPYING in the toplevel directory of the source directory.
*/ */
#include <qdict.h> #include <tqdict.h>
#include <qstring.h> #include <tqstring.h>
#include <qregexp.h> #include <tqregexp.h>
#include <qstringlist.h> #include <tqstringlist.h>
#include <map> #include <map>
class KConfigBase; class TDEConfigBase;
/** /**
* The maximum number of sub-expressions that may appear in a single struct * The maximum number of sub-expressions that may appear in a single struct
@ -21,7 +21,7 @@ const int typeInfoMaxExpr = 5;
struct TypeInfo struct TypeInfo
{ {
TypeInfo(const QString& displayString); TypeInfo(const TQString& displayString);
~TypeInfo(); ~TypeInfo();
/** /**
@ -35,13 +35,13 @@ struct TypeInfo
* between the percent signs '%' of the display expression; hence, * between the percent signs '%' of the display expression; hence,
* there is one part more than there are sub-expressions. * 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, * This is a list of partial expressions. Each contains one or more \%s,
* which will be replaced by the parent expression. The results are * which will be replaced by the parent expression. The results are
* substituted for the percent signs in m_displayString. * 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, * 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 * 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 * corresponding expression from m_exprStrings is not evaluated. (This
* is used to guard function calls.) * 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 * This is the type name including template arguments that contain a
* pattern: A single '*' as template parameter matches one template * pattern: A single '*' as template parameter matches one template
* argument, except that a '*' as the last template parameter matches * argument, except that a '*' as the last template parameter matches
* all remaining template argument. * all remaining template argument.
*/ */
QString m_templatePattern; TQString m_templatePattern;
/** /**
* Returns a pointer to a TypeInfo that identifies wchar_t * Returns a pointer to a TypeInfo that identifies wchar_t
*/ */
@ -77,7 +77,7 @@ public:
TypeTable(); TypeTable();
~TypeTable(); ~TypeTable();
typedef std::map<QString,TypeInfo*> TypeMap; typedef std::map<TQString,TypeInfo*> TypeMap;
/** /**
* Load all known type libraries. * Load all known type libraries.
@ -87,7 +87,7 @@ public:
/** /**
* Copy type infos to the specified dictionary. * Copy type infos to the specified dictionary.
*/ */
void copyTypes(QDict<TypeInfo>& dict); void copyTypes(TQDict<TypeInfo>& dict);
/** /**
* Returns the template types * Returns the template types
@ -97,34 +97,34 @@ public:
/** /**
* Does the file name match this library? * Does the file name match this library?
*/ */
bool matchFileName(const QString& fileName) const { bool matchFileName(const TQString& fileName) const {
return m_shlibNameRE.match(fileName) >= 0; return m_shlibNameRE.exactMatch(fileName) >= 0;
} }
/** /**
* Is the specified builtin feature enabled in this type library? * 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: protected:
/** /**
* Loads the structure type information from the configuration files. * Loads the structure type information from the configuration files.
*/ */
static void loadTypeTables(); static void loadTypeTables();
void loadFromFile(const QString& fileName); void loadFromFile(const TQString& fileName);
void readType(KConfigBase& cf, const QString& type); void readType(TDEConfigBase& cf, const TQString& type);
QDict<TypeInfo> m_typeDict; TQDict<TypeInfo> m_typeDict;
QDict<TypeInfo> m_aliasDict; TQDict<TypeInfo> m_aliasDict;
TypeMap m_templates; TypeMap m_templates;
QString m_displayName; TQString m_displayName;
QRegExp m_shlibNameRE; TQRegExp m_shlibNameRE;
QStringList m_enabledBuiltins; TQStringList m_enabledBuiltins;
char* m_printQStringDataCmd; char* m_printTQStringDataCmd;
}; };
@ -141,7 +141,7 @@ public:
/** /**
* Load types belonging to the specified libraries. * 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 * Load types belonging to the specified type table
@ -153,41 +153,41 @@ public:
* *
* If the type is unknown, 0 is returned. * If the type is unknown, 0 is returned.
*/ */
TypeInfo* lookup(QString type); TypeInfo* lookup(TQString type);
/** /**
* Adds a new alias for a type name. * 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; } 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: protected:
QDict<TypeInfo> m_types; TQDict<TypeInfo> m_types;
QDict<TypeInfo> m_aliasDict; TQDict<TypeInfo> m_aliasDict;
struct TemplateInfo { struct TemplateInfo {
QStringList templateArgs; TQStringList templateArgs;
TypeInfo* type; 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 TemplateMap m_templates; //!< one or more template patterns per template name
static TemplateMap::value_type static TemplateMap::value_type
template2Info(const TypeTable::TypeMap::value_type& tt); template2Info(const TypeTable::TypeMap::value_type& tt);
static QStringList splitTemplateArgs(const QString& t); static TQStringList splitTemplateArgs(const TQString& t);
bool m_parseQt2QStrings; bool m_parseTQt2TQStrings;
bool m_QCharIsShort; 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] [Type Table]
Types1=QString,QCString,QDir,QFileInfo,QFile Types1=TQString,QCString,QDir,QFileInfo,QFile
Types2=QObject Types2=TQObject
Types3=QMap,QValueList,QValueVector Types3=QMap,QValueList,QValueVector
Types4=QPoint,QRect Types4=QPoint,QRect
LibDisplayName=libqt 3.x LibDisplayName=libtqt 3.x
ShlibRE=libqt-mt\.so\.3$ ShlibRE=libtqt-mt\.so\.3$
EnableBuiltin=QString::Data,QCharIsShort EnableBuiltin=TQString::Data,QCharIsShort
PrintQStringCmd=print ($qstrunicode=($qstrdata=(%s))->unicode)?(*(unsigned short*)$qstrunicode)@(($qstrlen=(unsigned int)($qstrdata->len))>100?100:$qstrlen):1==0\n PrintQStringCmd=print ($qstrunicode=($qstrdata=(%s))->unicode)?(*(unsigned short*)$qstrunicode)@(($qstrlen=(unsigned int)($qstrdata->len))>100?100:$qstrlen):1==0\n
[QString] [TQString]
Display={ % } Display={ % }
Expr1=/QString::Data (%s).d Expr1=/TQString::Data (%s).d
[QCString] [QCString]
Display={ % } Display={ % }
Expr1=(%s).shd->data Expr1=(%s).shd->data
[QObject] [TQObject]
Display={ name=% } Display={ name=% }
Expr1=(%s).objname Expr1=(%s).objname
[QDir] [QDir]
Display={ path=% filter=% } Display={ path=% filter=% }
Expr1=/QString::Data (%s).dPath.d Expr1=/TQString::Data (%s).dPath.d
Expr2=/QString::Data (%s).nameFilt.d Expr2=/TQString::Data (%s).nameFilt.d
[QFileInfo] [QFileInfo]
Display={ name=% } Display={ name=% }
Expr1=/QString::Data (%s).fn.d Expr1=/TQString::Data (%s).fn.d
[QFile] [QFile]
Display={ name=% } Display={ name=% }
Expr1=/QString::Data (%s).fn.d Expr1=/TQString::Data (%s).fn.d
[QMap] [QMap]
Template=QMap<*> Template=QMap<*>

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

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

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

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

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