| 39808986 | 2014-03-29 04:12:02 | Timothy Pearson |
Add preliminary support for uploading crash reports to a central server without requiring Bugzilla |
||
|
A drkonqi/bugdescription.cpp A drkonqi/bugdescription.h A drkonqi/bugdescriptiondialog.cpp A drkonqi/bugdescriptiondialog.h A drkonqi/sha1.cc A drkonqi/sha1.h M drkonqi/CMakeLists.txt M drkonqi/toplevel.cpp M drkonqi/toplevel.h |
||
diff --git a/drkonqi/CMakeLists.txt b/drkonqi/CMakeLists.txt
index 47866c4..6296ae3 100644
--- a/drkonqi/CMakeLists.txt
+++ b/drkonqi/CMakeLists.txt
@@ -31,7 +31,9 @@
tde_add_executable( drkonqi AUTOMOC
SOURCES
krashdcopinterface.skel main.cpp debugger.cpp
- krashconf.cpp drbugreport.cpp backtrace.cpp toplevel.cpp
+ bugdescription.cpp bugdescriptiondialog.cpp
+ sha1.cc krashconf.cpp drbugreport.cpp
+ backtrace.cpp toplevel.cpp
LINK tdeio-shared
DESTINATION ${BIN_INSTALL_DIR}
)
diff --git a/drkonqi/bugdescription.cpp b/drkonqi/bugdescription.cpp
new file mode 100644
index 0000000..620ae95
--- /dev/null
+++ b/drkonqi/bugdescription.cpp
@@ -0,0 +1,75 @@
+/* This file is part of the TDE project
+ Copyright (C) 2014 Timothy Pearson <kb9vqf@...>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include <tqmultilineedit.h>
+#include <tqlineedit.h>
+#include <tqlabel.h>
+
+#include <tdemessagebox.h>
+#include <tdelocale.h>
+
+#include "bugdescription.moc"
+#include "bugdescription.h"
+
+BugDescription::BugDescription(TQWidget *parent, bool modal,
+ const TDEAboutData *aboutData)
+ : BugDescriptionDialog(parent, modal, aboutData)
+{
+}
+
+void BugDescription::setText(const TQString &str)
+{
+ m_lineedit->setText(str);
+ m_startstring = str.simplifyWhiteSpace();
+}
+
+TQString BugDescription::emailAddress()
+{
+ return m_email->text();
+}
+
+TQString BugDescription::crashDescription()
+{
+ return m_lineedit->text();
+}
+
+void BugDescription::fullReportViewMode( bool enabled ) {
+ if (enabled) {
+ m_email->hide();
+ m_emailLabel->hide();
+ m_descriptionLabel->hide();
+ m_lineedit->setReadOnly(true);
+ showButtonCancel(false);
+ setCaption(i18n("Crash Report"));
+ }
+ else {
+ m_email->show();
+ m_emailLabel->show();
+ m_descriptionLabel->show();
+ m_lineedit->setReadOnly(false);
+ showButtonCancel(true);
+ setCaption(i18n("Bug Description"));
+ }
+}
+
+void BugDescription::slotOk()
+{
+ BugDescriptionDialog::slotOk();
+}
+
diff --git a/drkonqi/bugdescription.h b/drkonqi/bugdescription.h
new file mode 100644
index 0000000..04d31d3
--- /dev/null
+++ b/drkonqi/bugdescription.h
@@ -0,0 +1,58 @@
+/* This file is part of the TDE project
+ Copyright (C) 2014 Timothy Pearson <kb9vqf@...>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#ifndef BUGDESCRIPTION_H
+#define BUGDESCRIPTION_H
+
+class TDEAboutData;
+
+#include "bugdescriptiondialog.h"
+
+class BugDescription : public BugDescriptionDialog
+{
+ TQ_OBJECT
+
+ public:
+ /**
+ * Constructor.
+ */
+ BugDescription(TQWidget *parent = 0, bool modal = true, const TDEAboutData *aboutData = 0);
+
+ public:
+ /**
+ * Allows the debugger to set the default text in the editor.
+ */
+ void setText(const TQString &str);
+
+ TQString emailAddress();
+ TQString crashDescription();
+
+ void fullReportViewMode( bool enabled );
+
+ protected slots:
+ /**
+ * OK has been clicked
+ */
+ virtual void slotOk( void );
+
+ private:
+ TQString m_startstring;
+};
+
+#endif
diff --git a/drkonqi/bugdescriptiondialog.cpp b/drkonqi/bugdescriptiondialog.cpp
new file mode 100644
index 0000000..6d6b2d7
--- /dev/null
+++ b/drkonqi/bugdescriptiondialog.cpp
@@ -0,0 +1,121 @@
+/* This file is part of the TDE project
+ Copyright (C) 2014 Timothy Pearson <kb9vqf@...>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include <tqhbuttongroup.h>
+#include <tqpushbutton.h>
+#include <tqlabel.h>
+#include <tqlayout.h>
+#include <tqmultilineedit.h>
+#include <tqradiobutton.h>
+#include <tqregexp.h>
+
+#include <tdeapplication.h>
+#include <tdeconfig.h>
+#include <kdebug.h>
+#include <klineedit.h>
+#include <tdelocale.h>
+#include <tdemessagebox.h>
+#include <kprocess.h>
+#include <kstandarddirs.h>
+#include <kstdguiitem.h>
+#include <kurl.h>
+#include <kurllabel.h>
+
+#include "bugdescriptiondialog.h"
+
+#include <stdio.h>
+#include <pwd.h>
+#include <unistd.h>
+
+#include <sys/utsname.h>
+
+#include <kcombobox.h>
+#include <config.h>
+#include <tdetempfile.h>
+#include <tqtextstream.h>
+#include <tqfile.h>
+
+class BugDescriptionDialogPrivate {
+ public:
+};
+
+BugDescriptionDialog::BugDescriptionDialog( TQWidget * parentw, bool modal, const TDEAboutData *aboutData )
+ : KDialogBase( Plain,
+ i18n("Bug Description"),
+ Ok | Cancel,
+ Ok,
+ parentw,
+ "BugDescriptionDialog",
+ modal, // modal
+ true // separator
+ )
+{
+ d = new BugDescriptionDialogPrivate;
+
+ TQWidget * parent = plainPage();
+
+ TQVBoxLayout * lay = new TQVBoxLayout( parent, 0, spacingHint() );
+
+ TQGridLayout *glay = new TQGridLayout( lay, 4, 3 );
+ glay->setColStretch( 1, 10 );
+ glay->setColStretch( 2, 10 );
+
+ showButtonOK( true );
+
+ // Email
+ TQHBoxLayout * hlay = new TQHBoxLayout( lay );
+ m_emailLabel = new TQLabel( i18n("Contact Email: "), parent );
+ hlay->addWidget( m_emailLabel );
** Diff limit reached (max: 250 lines) **
|
||