Signed-off-by: gregory guy <gregory-tde@laposte.net>pull/4/head
@ -0,0 +1,80 @@
|
||||
############################################
|
||||
# #
|
||||
# Improvements and feedbacks are welcome #
|
||||
# #
|
||||
# This file is released under GPL >= 3 #
|
||||
# #
|
||||
############################################
|
||||
|
||||
|
||||
cmake_minimum_required( VERSION 2.8.12 )
|
||||
|
||||
|
||||
#### general package setup
|
||||
|
||||
project( kdbg )
|
||||
set( VERSION R14.1.0 )
|
||||
|
||||
|
||||
#### include essential cmake modules
|
||||
|
||||
include( FindPkgConfig )
|
||||
include( CheckFunctionExists )
|
||||
include( CheckSymbolExists )
|
||||
include( CheckIncludeFile )
|
||||
include( CheckLibraryExists )
|
||||
include( CheckCSourceCompiles )
|
||||
include( CheckCXXSourceCompiles )
|
||||
|
||||
|
||||
#### include our cmake modules
|
||||
|
||||
set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/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 -UTQT_NO_ASCII_CAST -UTQT_NO_COMPAT )
|
||||
|
||||
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} )
|
||||
tde_conditional_add_subdirectory( BUILD_TRANSLATIONS po )
|
||||
|
||||
|
||||
##### 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,45 @@
|
||||
#define VERSION "@VERSION@"
|
||||
|
||||
// Defined if you have fvisibility and fvisibility-inlines-hidden support.
|
||||
#cmakedefine __KDE_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
|
@ -0,0 +1,71 @@
|
||||
tde_conditional_add_subdirectory( BUILD_DOC doc )
|
||||
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}
|
||||
)
|
@ -0,0 +1 @@
|
||||
tde_auto_add_subdirectories( )
|
@ -0,0 +1,8 @@
|
||||
file( GLOB _htmls RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.html )
|
||||
|
||||
install(
|
||||
FILES ${_htmls}
|
||||
DESTINATION ${HTML_INSTALL_DIR}/de/${PROJECT_NAME}
|
||||
)
|
||||
|
||||
|
@ -0,0 +1,8 @@
|
||||
file( GLOB _htmls RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.html )
|
||||
|
||||
install(
|
||||
FILES ${_htmls}
|
||||
DESTINATION ${HTML_INSTALL_DIR}/en/${PROJECT_NAME}
|
||||
)
|
||||
|
||||
|
@ -0,0 +1,5 @@
|
||||
INSTALL(
|
||||
FILES ${PROJECT_NAME}.1
|
||||
DESTINATION ${MAN_INSTALL_DIR}/man1
|
||||
COMPONENT doc
|
||||
)
|
@ -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 Qt's QString 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).
|
@ -0,0 +1,8 @@
|
||||
file( GLOB _htmls RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.html )
|
||||
|
||||
install(
|
||||
FILES ${_htmls}
|
||||
DESTINATION ${HTML_INSTALL_DIR}/ru/${PROJECT_NAME}
|
||||
)
|
||||
|
||||
|
@ -1,237 +0,0 @@
|
||||
#include <kdialog.h>
|
||||
#include <tdelocale.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 <ntqvariant.h>
|
||||
#include <ntqpushbutton.h>
|
||||
#include <ntqtabwidget.h>
|
||||
#include <ntqwidget.h>
|
||||
#include <ntqlabel.h>
|
||||
#include <ntqlineedit.h>
|
||||
#include <ntqheader.h>
|
||||
#include <ntqlistview.h>
|
||||
#include <ntqlistbox.h>
|
||||
#include <ntqlayout.h>
|
||||
#include <ntqtooltip.h>
|
||||
#include <ntqwhatsthis.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( TQWidget* parent, const char* name, bool modal, WFlags fl )
|
||||
: TQDialog( parent, name, modal, fl )
|
||||
{
|
||||
if ( !name )
|
||||
setName( "PgmArgsBase" );
|
||||
setSizeGripEnabled( TRUE );
|
||||
PgmArgsBaseLayout = new TQHBoxLayout( this, 11, 6, "PgmArgsBaseLayout");
|
||||
|
||||
layout1 = new TQVBoxLayout( 0, 0, 6, "layout1");
|
||||
|
||||
tabWidget = new TQTabWidget( this, "tabWidget" );
|
||||
|
||||
argsPage = new TQWidget( tabWidget, "argsPage" );
|
||||
argsPageLayout = new TQHBoxLayout( argsPage, 11, 6, "argsPageLayout");
|
||||
|
||||
layout2 = new TQVBoxLayout( 0, 0, 6, "layout2");
|
||||
|
||||
labelArgs = new TQLabel( argsPage, "labelArgs" );
|
||||
layout2->addWidget( labelArgs );
|
||||
|
||||
programArgs = new TQLineEdit( argsPage, "programArgs" );
|
||||
layout2->addWidget( programArgs );
|
||||
|
||||
layout3 = new TQHBoxLayout( 0, 0, 6, "layout3");
|
||||
|
||||
insertFile = new TQPushButton( argsPage, "insertFile" );
|
||||
layout3->addWidget( insertFile );
|
||||
|
||||
insertDir = new TQPushButton( argsPage, "insertDir" );
|
||||
layout3->addWidget( insertDir );
|
||||
spacer1 = new TQSpacerItem( 61, 20, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
|
||||
layout3->addItem( spacer1 );
|
||||
layout2->addLayout( layout3 );
|
||||
spacer2 = new TQSpacerItem( 81, 180, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
|
||||
layout2->addItem( spacer2 );
|
||||
argsPageLayout->addLayout( layout2 );
|
||||
tabWidget->insertTab( argsPage, TQString::fromLatin1("") );
|
||||
|
||||
wdPage = new TQWidget( tabWidget, "wdPage" );
|
||||
wdPageLayout = new TQHBoxLayout( wdPage, 11, 6, "wdPageLayout");
|
||||
|
||||
layout6 = new TQVBoxLayout( 0, 0, 6, "layout6");
|
||||
|
||||
wdEdit = new TQLineEdit( wdPage, "wdEdit" );
|
||||
layout6->addWidget( wdEdit );
|
||||
|
||||
layout5 = new TQHBoxLayout( 0, 0, 6, "layout5");
|
||||
|
||||
wdBrowse = new TQPushButton( wdPage, "wdBrowse" );
|
||||
layout5->addWidget( wdBrowse );
|
||||
spacer4 = new TQSpacerItem( 321, 31, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
|
||||
layout5->addItem( spacer4 );
|
||||
layout6->addLayout( layout5 );
|
||||
spacer5 = new TQSpacerItem( 111, 161, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
|
||||
layout6->addItem( spacer5 );
|
||||
wdPageLayout->addLayout( layout6 );
|
||||
tabWidget->insertTab( wdPage, TQString::fromLatin1("") );
|
||||
|
||||
envPage = new TQWidget( tabWidget, "envPage" );
|
||||
envPageLayout = new TQHBoxLayout( envPage, 11, 6, "envPageLayout");
|
||||
|
||||
layout9 = new TQHBoxLayout( 0, 0, 6, "layout9");
|
||||
|
||||
layout7 = new TQVBoxLayout( 0, 0, 6, "layout7");
|
||||
|
||||
envLabel = new TQLabel( envPage, "envLabel" );
|
||||
layout7->addWidget( envLabel );
|
||||
|
||||
envVar = new TQLineEdit( envPage, "envVar" );
|
||||
layout7->addWidget( envVar );
|
||||
|
||||
envList = new TQListView( 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( TQListView::Single );
|
||||
layout7->addWidget( envList );
|
||||
layout9->addLayout( layout7 );
|
||||
|
||||
layout8 = new TQVBoxLayout( 0, 0, 6, "layout8");
|
||||
|
||||
buttonModify = new TQPushButton( envPage, "buttonModify" );
|
||||
layout8->addWidget( buttonModify );
|
||||
|
||||
buttonDelete = new TQPushButton( envPage, "buttonDelete" );
|
||||
layout8->addWidget( buttonDelete );
|
||||
spacer6 = new TQSpacerItem( 51, 141, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
|
||||
layout8->addItem( spacer6 );
|
||||
layout9->addLayout( layout8 );
|
||||
envPageLayout->addLayout( layout9 );
|
||||
tabWidget->insertTab( envPage, TQString::fromLatin1("") );
|
||||
|
||||
xsldbgOptionsPage = new TQWidget( tabWidget, "xsldbgOptionsPage" );
|
||||
xsldbgOptionsPageLayout = new TQHBoxLayout( xsldbgOptionsPage, 11, 6, "xsldbgOptionsPageLayout");
|
||||
|
||||
xsldbgOptions = new TQListBox( xsldbgOptionsPage, "xsldbgOptions" );
|
||||
xsldbgOptions->setSelectionMode( TQListBox::Multi );
|
||||
xsldbgOptionsPageLayout->addWidget( xsldbgOptions );
|
||||
tabWidget->insertTab( xsldbgOptionsPage, TQString::fromLatin1("") );
|
||||
layout1->addWidget( tabWidget );
|
||||
|
||||
layout4 = new TQHBoxLayout( 0, 0, 6, "layout4");
|
||||
|
||||
buttonHelp = new TQPushButton( this, "buttonHelp" );
|
||||
buttonHelp->setAutoDefault( TRUE );
|
||||
layout4->addWidget( buttonHelp );
|
||||
spacer3 = new TQSpacerItem( 20, 20, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
|
||||
layout4->addItem( spacer3 );
|
||||
|
||||
buttonOk = new TQPushButton( this, "buttonOk" );
|
||||
buttonOk->setAutoDefault( TRUE );
|
||||
buttonOk->setDefault( TRUE );
|
||||
layout4->addWidget( buttonOk );
|
||||
|
||||
buttonCancel = new TQPushButton( this, "buttonCancel" );
|
||||
buttonCancel->setAutoDefault( TRUE );
|
||||
layout4->addWidget( buttonCancel );
|
||||
layout1->addLayout( layout4 );
|
||||
PgmArgsBaseLayout->addLayout( layout1 );
|
||||
languageChange();
|
||||
resize( TQSize(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, TQt 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:" ) );
|
||||
TQWhatsThis::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( TQKeySequence( tr2i18n( "Alt+F" ) ) );
|
||||
TQWhatsThis::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( TQKeySequence( tr2i18n( "Alt+D" ) ) );
|
||||
TQWhatsThis::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" ) );
|
||||
TQWhatsThis::add( wdEdit, tr2i18n( "Specify here the initial working directory where the program is run." ) );
|
||||
wdBrowse->setText( tr2i18n( "&Browse..." ) );
|
||||
wdBrowse->setAccel( TQKeySequence( tr2i18n( "Alt+B" ) ) );
|
||||
TQWhatsThis::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>):" ) );
|
||||
TQWhatsThis::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" ) );
|
||||
TQWhatsThis::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( TQKeySequence( tr2i18n( "Alt+M" ) ) );
|
||||
TQWhatsThis::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( TQKeySequence( tr2i18n( "Alt+D" ) ) );
|
||||
TQWhatsThis::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( TQKeySequence( tr2i18n( "F1" ) ) );
|
||||
buttonOk->setText( tr2i18n( "&OK" ) );
|
||||
buttonOk->setAccel( TQKeySequence( TQString::null ) );
|
||||
buttonCancel->setText( tr2i18n( "&Cancel" ) );
|
||||
buttonCancel->setAccel( TQKeySequence( TQString::null ) );
|
||||
}
|
||||
|
||||
#include "pgmargsbase.moc"
|
@ -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
|
||||
)
|
@ -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;(()))()) ))))",
|
||||
"))) )())))) (((((( )))))() )))",
|
||||
"))) )()))))))) ))))))))() )))",
|
||||
")) ())))))))))))))))))))))( ))",
|
||||
")) ())))))))))))))))))))))))( ))",
|
||||
"))))))))))))))))))))))))))))))))"
|
||||
};
|
@ -0,0 +1,19 @@
|
||||
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)
|
Before Width: | Height: | Size: 440 B After Width: | Height: | Size: 440 B |
Before Width: | Height: | Size: 443 B After Width: | Height: | Size: 443 B |
Before Width: | Height: | Size: 443 B After Width: | Height: | Size: 443 B |
Before Width: | Height: | Size: 446 B After Width: | Height: | Size: 446 B |
Before Width: | Height: | Size: 451 B After Width: | Height: | Size: 451 B |
Before Width: | Height: | Size: 455 B After Width: | Height: | Size: 455 B |
Before Width: | Height: | Size: 455 B After Width: | Height: | Size: 455 B |
Before Width: | Height: | Size: 466 B After Width: | Height: | Size: 466 B |
Before Width: | Height: | Size: 465 B After Width: | Height: | Size: 465 B |
Before Width: | Height: | Size: 471 B After Width: | Height: | Size: 471 B |
Before Width: | Height: | Size: 477 B After Width: | Height: | Size: 477 B |
Before Width: | Height: | Size: 478 B After Width: | Height: | Size: 478 B |
Before Width: | Height: | Size: 486 B After Width: | Height: | Size: 486 B |
Before Width: | Height: | Size: 503 B After Width: | Height: | Size: 503 B |
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 494 B |
Before Width: | Height: | Size: 483 B After Width: | Height: | Size: 483 B |
Before Width: | Height: | Size: 493 B After Width: | Height: | Size: 493 B |
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 499 B |
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 494 B |
Before Width: | Height: | Size: 489 B After Width: | Height: | Size: 489 B |
Before Width: | Height: | Size: 480 B After Width: | Height: | Size: 480 B |
Before Width: | Height: | Size: 482 B After Width: | Height: | Size: 482 B |
Before Width: | Height: | Size: 480 B After Width: | Height: | Size: 480 B |
Before Width: | Height: | Size: 469 B After Width: | Height: | Size: 469 B |
Before Width: | Height: | Size: 459 B After Width: | Height: | Size: 459 B |
Before Width: | Height: | Size: 462 B After Width: | Height: | Size: 462 B |
Before Width: | Height: | Size: 455 B After Width: | Height: | Size: 455 B |
Before Width: | Height: | Size: 448 B After Width: | Height: | Size: 448 B |
Before Width: | Height: | Size: 445 B After Width: | Height: | Size: 445 B |
@ -1,137 +0,0 @@
|
||||
#include <kdialog.h>
|
||||
#include <tdelocale.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 <ntqvariant.h>
|
||||
#include <ntqpushbutton.h>
|
||||
#include <ntqlabel.h>
|
||||
#include <ntqlineedit.h>
|
||||
#include <ntqtoolbutton.h>
|
||||
#include <ntqheader.h>
|
||||
#include <ntqlistview.h>
|
||||
#include <ntqlayout.h>
|
||||
#include <ntqtooltip.h>
|
||||
#include <ntqwhatsthis.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( TQWidget* parent, const char* name, bool modal, WFlags fl )
|
||||
: TQDialog( parent, name, modal, fl )
|
||||
{
|
||||
if ( !name )
|
||||
setName( "ProcAttachBase" );
|
||||
setSizeGripEnabled( TRUE );
|
||||
ProcAttachBaseLayout = new TQHBoxLayout( this, 10, 6, "ProcAttachBaseLayout");
|
||||
|
||||
layout7 = new TQVBoxLayout( 0, 0, 6, "layout7");
|
||||
|
||||
layout6 = new TQHBoxLayout( 0, 0, 6, "layout6");
|
||||
|
||||
filterLabel = new TQLabel( this, "filterLabel" );
|
||||
layout6->addWidget( filterLabel );
|
||||
|
||||
filterEdit = new TQLineEdit( this, "filterEdit" );
|
||||
filterEdit->setSizePolicy( TQSizePolicy( (TQSizePolicy::SizeType)7, (TQSizePolicy::SizeType)5, 0, 0, filterEdit->sizePolicy().hasHeightForWidth() ) );
|
||||
filterEdit->setMaxLength( 20 );
|
||||
layout6->addWidget( filterEdit );
|
||||
|
||||
filterClear = new TQToolButton( this, "filterClear" );
|
||||
layout6->addWidget( filterClear );
|
||||
layout7->addLayout( layout6 );
|
||||
|
||||
processList = new TQListView( this, "processList" );
|
||||
processList->addColumn( tr2i18n( "Command" ) );
|
||||
processList->addColumn( tr2i18n( "PID" ) );
|
||||
processList->addColumn( tr2i18n( "PPID" ) );
|
||||
processList->setMinimumSize( TQSize( 300, 200 ) );
|
||||
processList->setAllColumnsShowFocus( TRUE );
|
||||
layout7->addWidget( processList );
|
||||
|
||||
layout3 = new TQHBoxLayout( 0, 0, 6, "layout3");
|
||||
|
||||
buttonRefresh = new TQPushButton( this, "buttonRefresh" );
|
||||
buttonRefresh->setSizePolicy( TQSizePolicy( (TQSizePolicy::SizeType)1, (TQSizePolicy::SizeType)0, 0, 0, buttonRefresh->sizePolicy().hasHeightForWidth() ) );
|
||||
layout3->addWidget( buttonRefresh );
|
||||
spacingBtns = new TQSpacerItem( 242, 20, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
|
||||
layout3->addItem( spacingBtns );
|
||||
|
||||
buttonOk = new TQPushButton( this, "buttonOk" );
|
||||
buttonOk->setEnabled( FALSE );
|
||||
buttonOk->setAutoDefault( TRUE );
|
||||
buttonOk->setDefault( TRUE );
|
||||
layout3->addWidget( buttonOk );
|
||||
|
||||
buttonCancel = new TQPushButton( this, "buttonCancel" );
|
||||
buttonCancel->setAutoDefault( TRUE );
|
||||
layout3->addWidget( buttonCancel );
|
||||
layout7->addLayout( layout3 );
|
||||
ProcAttachBaseLayout->addLayout( layout7 );
|
||||
languageChange();
|
||||
resize( TQSize(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 TQString&) ), this, SLOT( filterEdited(const TQString&) ) );
|
||||
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, TQt 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:" ) );
|
||||
TQWhatsThis::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( "..." ) );
|
||||
TQToolTip::add( filterClear, tr2i18n( "Clear filter" ) );
|
||||
TQWhatsThis::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" ) );
|
||||
TQWhatsThis::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" ) );
|
||||
TQWhatsThis::add( buttonRefresh, tr2i18n( "This button updates the list of processes." ) );
|
||||
buttonOk->setText( tr2i18n( "&OK" ) );
|
||||
buttonOk->setAccel( TQKeySequence( TQString::null ) );
|
||||
TQWhatsThis::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( TQKeySequence( TQString::null ) );
|
||||
}
|
||||
|
||||
#include "procattachbase.moc"
|
@ -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
|
||||
)
|
@ -0,0 +1,6 @@
|
||||
file( GLOB _types RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.kdbgtt )
|
||||
|
||||
install(
|
||||
FILES ${_types}
|
||||
DESTINATION ${DATA_INSTALL_DIR}/${PROJECT_NAME}/types
|
||||
)
|
@ -0,0 +1,14 @@
|
||||
file( GLOB_RECURSE po_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po )
|
||||
string( REGEX REPLACE "[ \r\n\t]+" ";" _linguas "$ENV{LINGUAS}" )
|
||||
|
||||
foreach( _po ${po_files} )
|
||||
get_filename_component( _lang ${_po} NAME_WE )
|
||||
if( "${_linguas}" MATCHES "^;*$" OR ";${_linguas};" MATCHES ";${_lang};" )
|
||||
if( "${_po}" MATCHES "^([^/]*)/.*" )
|
||||
string( REGEX REPLACE "^([^/]*)/.*" "\\1" _component "${_po}" )
|
||||
else( )
|
||||
set( _component "${PROJECT_NAME}" )
|
||||
endif( )
|
||||
tde_create_translation( FILES ${_po} LANG ${_lang} OUTPUT_NAME ${_component} )
|
||||
endif( )
|
||||
endforeach( )
|