[education/rkward] rkward: More cppchekc warnings
Thomas Friedrichsmeier
null at kde.org
Sat Jan 31 08:17:04 GMT 2026
Git commit 07a30a15fb16bbdcc8b8a93662aaaeaa6e747cdd by Thomas Friedrichsmeier.
Committed on 31/01/2026 at 08:16.
Pushed by tfry into branch 'master'.
More cppchekc warnings
M +1 -1 rkward/dataeditor/rkeditor.h
M +1 -1 rkward/dataeditor/rkeditordataframe.h
M +3 -4 rkward/dataeditor/rkvareditmodel.h
M +1 -1 rkward/dataeditor/twintable.h
M +1 -1 rkward/dataeditor/twintablemember.h
M +1 -1 rkward/dialogs/rkerrordialog.cpp
M +2 -2 rkward/misc/editformatdialog.h
M +4 -4 rkward/misc/editlabelsdialog.h
M +2 -2 rkward/misc/multistringselector.h
M +1 -1 rkward/misc/rkradiogroup.cpp
M +1 -1 rkward/misc/rksaveobjectchooser.h
M +1 -1 rkward/plugin/rkabstractoptionselector.h
M +1 -1 rkward/plugin/rkcheckbox.h
M +1 -1 rkward/plugin/rkcomponent.h
M +1 -1 rkward/plugin/rkcomponentcontext.h
M +1 -1 rkward/plugin/rkcomponentmap.h
M +10 -10 rkward/plugin/rkcomponentproperties.h
M +1 -1 rkward/plugin/rkdropdown.h
M +1 -1 rkward/plugin/rkformula.h
M +1 -1 rkward/plugin/rkinput.h
M +1 -1 rkward/plugin/rkmatrixinput.h
M +1 -1 rkward/plugin/rkoptionset.h
M +1 -1 rkward/plugin/rkpluginbrowser.h
M +1 -1 rkward/plugin/rkpluginframe.h
M +1 -1 rkward/plugin/rkpluginsaveobject.h
M +1 -1 rkward/plugin/rkpluginspinbox.h
M +1 -1 rkward/plugin/rkpreviewbox.h
M +1 -1 rkward/plugin/rkradio.h
M +1 -1 rkward/plugin/rkstandardcomponent.h
M +2 -2 rkward/plugin/rkstandardcomponentgui.h
M +1 -2 rkward/plugin/rktabpage.h
M +1 -2 rkward/plugin/rktext.h
M +1 -1 rkward/plugin/rkvalueselector.h
M +1 -1 rkward/plugin/rkvarselector.h
M +1 -1 rkward/plugin/rkvarslot.h
M +1 -1 rkward/rbackend/rkbackendtransmitter.h
M +1 -1 rkward/rbackend/rkfrontendtransmitter.h
M +1 -0 rkward/rbackend/rkrbackendprotocol_shared.cpp
M +1 -1 rkward/rbackend/rkwarddevice/rkgraphicsdevice_backendtransmitter.h
M +1 -1 rkward/rbackend/rkwarddevice/rkgraphicsdevice_frontendtransmitter.h
M +1 -1 rkward/rkconsole.cpp
M +1 -1 rkward/rkconsole.h
M +2 -5 rkward/robjectviewer.h
M +1 -1 rkward/windows/katepluginintegration.cpp
M +1 -1 rkward/windows/rcontrolwindow.h
M +1 -1 rkward/windows/rkcallstackviewer.h
M +1 -1 rkward/windows/rkcommandlog.h
M +1 -1 rkward/windows/rkdebugconsole.h
M +1 -1 rkward/windows/rkdebugmessagewindow.h
M +0 -1 rkward/windows/rkfilebrowser.cpp
M +1 -1 rkward/windows/rkfilebrowser.h
M +1 -1 rkward/windows/rkhelpsearchwindow.h
M +2 -2 rkward/windows/rkhtmlwindow.cpp
M +1 -1 rkward/windows/rkhtmlwindow.h
M +2 -2 rkward/windows/robjectbrowser.h
https://invent.kde.org/education/rkward/-/commit/07a30a15fb16bbdcc8b8a93662aaaeaa6e747cdd
diff --git a/rkward/dataeditor/rkeditor.h b/rkward/dataeditor/rkeditor.h
index 7892a215c..67daf3de7 100644
--- a/rkward/dataeditor/rkeditor.h
+++ b/rkward/dataeditor/rkeditor.h
@@ -29,7 +29,7 @@ class RKEditor : public RKMDIWindow {
protected:
RKEditor(QWidget *parent);
- virtual ~RKEditor();
+ ~RKEditor() override;
public:
/// flushes all pending edit operations and syncs the data to R. Implement in the child classes
diff --git a/rkward/dataeditor/rkeditordataframe.h b/rkward/dataeditor/rkeditordataframe.h
index c9dee2a5c..7de4cda6a 100644
--- a/rkward/dataeditor/rkeditordataframe.h
+++ b/rkward/dataeditor/rkeditordataframe.h
@@ -31,7 +31,7 @@ class RKEditorDataFrame : public TwinTable {
@param parent parent widget */
RKEditorDataFrame(const QString &new_object_name, QWidget *parent);
/** destructor */
- ~RKEditorDataFrame();
+ ~RKEditorDataFrame() override;
void flushChanges() override;
diff --git a/rkward/dataeditor/rkvareditmodel.h b/rkward/dataeditor/rkvareditmodel.h
index 946535aba..0b15603ee 100644
--- a/rkward/dataeditor/rkvareditmodel.h
+++ b/rkward/dataeditor/rkvareditmodel.h
@@ -26,7 +26,6 @@ class RKRowNames;
class RKVarEditModelBase : public QAbstractTableModel {
public:
explicit RKVarEditModelBase(QObject *parent) : QAbstractTableModel(parent), var_col_offset(0) {};
- virtual ~RKVarEditModelBase() {};
virtual RKTextMatrix getTextMatrix(const QItemSelectionRange &range) const = 0;
virtual void blankRange(const QItemSelectionRange &range) = 0;
@@ -44,7 +43,7 @@ class RKVarEditModel : public RKVarEditModelBase, public RObjectListener {
Q_OBJECT
public:
explicit RKVarEditModel(QObject *parent);
- ~RKVarEditModel();
+ ~RKVarEditModel() override;
/** set the editor that is using this model. This is useful to find out, e.g. which window should be raised, when calling "Edit" on an object represented in this data-model. Also, the editor will be notified, if all objects in the model have been removed. */
void setEditor(RKEditor *editor) { myeditor = editor; };
@@ -161,7 +160,7 @@ class RKVarEditMetaModel : public RKVarEditModelBase {
protected:
friend class RKVarEditModel;
explicit RKVarEditMetaModel(RKVarEditModel *data_model);
- ~RKVarEditMetaModel();
+ ~RKVarEditMetaModel() override;
void beginAddDataObject(int index);
void endAddDataObject();
@@ -178,7 +177,7 @@ class RKVarEditDataFrameModel : public RKVarEditModel {
RKVarEditDataFrameModel(RContainerObject *dataframe, QObject *parent);
/** ctor that constructs a new empty data frame */
RKVarEditDataFrameModel(const QString &validized_name, RContainerObject *parent_object, RCommandChain *chain, int initial_cols, QObject *parent);
- ~RKVarEditDataFrameModel();
+ ~RKVarEditDataFrameModel() override;
bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override;
bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override;
diff --git a/rkward/dataeditor/twintable.h b/rkward/dataeditor/twintable.h
index 7bda4acb1..095c27ffa 100644
--- a/rkward/dataeditor/twintable.h
+++ b/rkward/dataeditor/twintable.h
@@ -32,7 +32,7 @@ class TwinTable : public RKEditor, public RObjectListener, public KXMLGUIClient
Q_OBJECT
public:
explicit TwinTable(QWidget *parent = nullptr);
- ~TwinTable();
+ ~TwinTable() override;
/** Pastes clipboard content to the current table */
void paste(RKEditor::PasteMode paste_mode);
/** Clear the currently selected cells */
diff --git a/rkward/dataeditor/twintablemember.h b/rkward/dataeditor/twintablemember.h
index 452c16430..88cf5ebf3 100644
--- a/rkward/dataeditor/twintablemember.h
+++ b/rkward/dataeditor/twintablemember.h
@@ -26,7 +26,7 @@ class TwinTableMember : public RKTableView {
Q_OBJECT
public:
explicit TwinTableMember(QWidget *parent);
- ~TwinTableMember();
+ ~TwinTableMember() override;
TwinTableMember *getTwin() { return twin; };
/** ends editing. Actually it's just a simple wrapper around QTable::endEdit () */
void stopEditing();
diff --git a/rkward/dialogs/rkerrordialog.cpp b/rkward/dialogs/rkerrordialog.cpp
index 19dff4edc..b99ea36eb 100644
--- a/rkward/dialogs/rkerrordialog.cpp
+++ b/rkward/dialogs/rkerrordialog.cpp
@@ -66,7 +66,7 @@ class RKBugzillaReportDialog : public QDialog {
QTemporaryFile proxy;
proxy.setFileTemplate(QDir::tempPath() + u"/rkwardbugXXXXXX.html"_s); // Force .html-suffix, as it appears to be required on Windows
proxy.setAutoRemove(false);
- proxy.open();
+ RK_ASSERT(proxy.open());
QTextStream out(&proxy);
out << "<html><head><title>Relaying to " SUBMIT_ADDRESS "</title></head><body onLoad=\"document.getElementById('form').submit();\">\n";
out << "<h1>" << i18n("Forwarding you to the KDE bugtracking system") << "</h1>\n";
diff --git a/rkward/misc/editformatdialog.h b/rkward/misc/editformatdialog.h
index 690786b35..30cbd61af 100644
--- a/rkward/misc/editformatdialog.h
+++ b/rkward/misc/editformatdialog.h
@@ -30,7 +30,7 @@ class EditFormatDialog : public QDialog {
/** ctor */
explicit EditFormatDialog(QWidget *parent);
/** dtor */
- ~EditFormatDialog();
+ ~EditFormatDialog() override;
/** initializes the GUI-options from the settings for the variable */
void initialize(const RKVariable::FormattingOptions &options, const QString &varname);
@@ -47,7 +47,7 @@ class EditFormatDialogProxy : public QWidget {
Q_OBJECT
public:
explicit EditFormatDialogProxy(QWidget *parent);
- ~EditFormatDialogProxy();
+ ~EditFormatDialogProxy() override;
void initialize(const RKVariable::FormattingOptions &options, const QString &varname);
RKVariable::FormattingOptions getOptions() const { return options; };
diff --git a/rkward/misc/editlabelsdialog.h b/rkward/misc/editlabelsdialog.h
index a5e9b0677..a8aeb85d7 100644
--- a/rkward/misc/editlabelsdialog.h
+++ b/rkward/misc/editlabelsdialog.h
@@ -24,7 +24,7 @@ class RKVarLevelsTable : public RKTableView {
Q_OBJECT
public:
RKVarLevelsTable(QWidget *parent, const RObject::ValueLabels &labels);
- ~RKVarLevelsTable();
+ ~RKVarLevelsTable() override;
public Q_SLOTS:
/** cut */
void cut();
@@ -44,7 +44,7 @@ class RKVarLevelsTable : public RKTableView {
class RKVarLevelsTableModel : public QAbstractTableModel {
public:
RKVarLevelsTableModel(const RObject::ValueLabels &labels, QObject *parent);
- ~RKVarLevelsTableModel();
+ ~RKVarLevelsTableModel() override;
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
@@ -70,7 +70,7 @@ class EditLabelsDialog : public QDialog {
@param parent a QWidget parent */
EditLabelsDialog(QWidget *parent, const RObject::ValueLabels &labels, const QString &varname);
- ~EditLabelsDialog();
+ ~EditLabelsDialog() override;
/** reimplemented to make sure pending edit operations are not lost */
void accept() override;
@@ -86,7 +86,7 @@ class EditLabelsDialogProxy : public QWidget {
Q_OBJECT
public:
explicit EditLabelsDialogProxy(QWidget *parent);
- ~EditLabelsDialogProxy();
+ ~EditLabelsDialogProxy() override;
void initialize(const RObject::ValueLabels &labels, const QString &varname);
diff --git a/rkward/misc/multistringselector.h b/rkward/misc/multistringselector.h
index b6418889e..4025d5bb9 100644
--- a/rkward/misc/multistringselector.h
+++ b/rkward/misc/multistringselector.h
@@ -28,7 +28,7 @@ class RKMultiStringSelectorV2 : public QWidget {
Q_OBJECT
public:
explicit RKMultiStringSelectorV2(const QString &label, QWidget *parent = nullptr);
- virtual ~RKMultiStringSelectorV2();
+ ~RKMultiStringSelectorV2() override;
void setModel(QAbstractItemModel *model, int main_column = -1);
void setAlwaysAddAtBottom(bool always_add_at_bottom) { add_at_bottom = always_add_at_bottom; };
public Q_SLOTS:
@@ -58,7 +58,7 @@ class MultiStringSelector : public RKMultiStringSelectorV2 {
Q_OBJECT
public:
explicit MultiStringSelector(const QString &label, QWidget *parent = nullptr);
- ~MultiStringSelector();
+ ~MultiStringSelector() override;
/** get list of current strings (in the correct order, of course) */
QStringList getValues();
diff --git a/rkward/misc/rkradiogroup.cpp b/rkward/misc/rkradiogroup.cpp
index 0d90201c1..98b3f31f2 100644
--- a/rkward/misc/rkradiogroup.cpp
+++ b/rkward/misc/rkradiogroup.cpp
@@ -16,7 +16,7 @@ SPDX-License-Identifier: GPL-2.0-or-later
* automatically be removed, in case the button is deleted independent of the controlled widget. */
class RKRadioGroupButton : public QRadioButton {
public:
- explicit RKRadioGroupButton(const QString &label) : QRadioButton(label) {};
+ explicit RKRadioGroupButton(const QString &label) : QRadioButton(label), controlled(nullptr) {};
void control(QWidget *controlled) {
RKRadioGroupButton::controlled = controlled;
controlled->installEventFilter(this);
diff --git a/rkward/misc/rksaveobjectchooser.h b/rkward/misc/rksaveobjectchooser.h
index 06b0f4211..fdde98b85 100644
--- a/rkward/misc/rksaveobjectchooser.h
+++ b/rkward/misc/rksaveobjectchooser.h
@@ -22,7 +22,7 @@ class RKSaveObjectChooser : public QWidget, public RObjectListener {
Q_OBJECT
public:
RKSaveObjectChooser(QWidget *parent, const QString &initial);
- ~RKSaveObjectChooser();
+ ~RKSaveObjectChooser() override;
QString currentFullName() const { return current_full_name; };
QString currentBaseName() const;
diff --git a/rkward/plugin/rkabstractoptionselector.h b/rkward/plugin/rkabstractoptionselector.h
index 0dd086975..eb0abe778 100644
--- a/rkward/plugin/rkabstractoptionselector.h
+++ b/rkward/plugin/rkabstractoptionselector.h
@@ -23,7 +23,7 @@ class RKAbstractOptionSelector : public RKComponent {
Q_OBJECT
public:
RKAbstractOptionSelector(RKComponent *parent_component, QWidget *parent_widget);
- ~RKAbstractOptionSelector();
+ ~RKAbstractOptionSelector() override;
/** Find the option number with the corresponding string. If not found, returns -1
@param option_string the option string to search for
@returns the id (0, 1, 2...) of the corresponding option, or -1 if not found */
diff --git a/rkward/plugin/rkcheckbox.h b/rkward/plugin/rkcheckbox.h
index c80d88a23..751691732 100644
--- a/rkward/plugin/rkcheckbox.h
+++ b/rkward/plugin/rkcheckbox.h
@@ -24,7 +24,7 @@ class RKCheckBox : public RKComponent {
Q_OBJECT
public:
RKCheckBox(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKCheckBox();
+ ~RKCheckBox() override;
int type() override { return ComponentCheckBox; };
RKComponentPropertyBool *state;
QVariant value(const QString &modifier = QString()) override {
diff --git a/rkward/plugin/rkcomponent.h b/rkward/plugin/rkcomponent.h
index 144f217de..74fcdb29a 100644
--- a/rkward/plugin/rkcomponent.h
+++ b/rkward/plugin/rkcomponent.h
@@ -163,7 +163,7 @@ class RKComponent : public QWidget, public RKComponentBase {
@param parent_widget The parent QWidget. This may be the same as the parent_component or a different specific widget.. If 0, this RKComponent will be represented by a top-level widget */
RKComponent(RKComponent *parent_component, QWidget *parent_widget);
/** destructor */
- virtual ~RKComponent();
+ ~RKComponent() override;
int type() override { return Component; };
/** change notification mechanism. Call this, if something in the component changed that could result in a change in code/values/satisfaction state. Default implementation propagates the change upwards to parent components, if any, but does not do anything further. Reimplement, for instance, to regenerate code */
virtual void changed();
diff --git a/rkward/plugin/rkcomponentcontext.h b/rkward/plugin/rkcomponentcontext.h
index 1cf508785..286559792 100644
--- a/rkward/plugin/rkcomponentcontext.h
+++ b/rkward/plugin/rkcomponentcontext.h
@@ -38,7 +38,7 @@ class RKContextHandler : public QObject, public RKComponentBase, public KXMLGUIC
/** constructor. Protected. Use RKContextMap::makeContextHandler() instead. */
RKContextHandler(QObject *parent, const QDomDocument &gui_xml, const QString &id);
/** desctructor. Should be called automatically, as this is QObject */
- ~RKContextHandler();
+ ~RKContextHandler() override;
/** add a QAction to the context. To be called from RKContext::makeContextHandler(). */
void addAction(const QString &id, RKComponentHandle *handle);
private Q_SLOTS:
diff --git a/rkward/plugin/rkcomponentmap.h b/rkward/plugin/rkcomponentmap.h
index c735e9709..b5314a89a 100644
--- a/rkward/plugin/rkcomponentmap.h
+++ b/rkward/plugin/rkcomponentmap.h
@@ -211,7 +211,7 @@ class RKComponentMap : public QObject, public RKComponentGUIXML, public KXMLGUIC
Q_OBJECT
public:
RKComponentMap();
- ~RKComponentMap();
+ ~RKComponentMap() override;
/** adds all Plugins / components in a .pluginmap-file. Also takes care of creating the menu-items, etc.
@returns status info of number of plugins (i.e. stand-alone components/menu-entries) added successfully / failed */
diff --git a/rkward/plugin/rkcomponentproperties.h b/rkward/plugin/rkcomponentproperties.h
index 7290d9254..1bebaec8c 100644
--- a/rkward/plugin/rkcomponentproperties.h
+++ b/rkward/plugin/rkcomponentproperties.h
@@ -29,7 +29,7 @@ class RKComponentPropertyBase : public QObject, public RKComponentBase {
/** constructor. Pass a valid QObject as parent so the property will be auto-destructed when no longer needed */
RKComponentPropertyBase(QObject *parent, bool required);
/** destructor */
- virtual ~RKComponentPropertyBase();
+ ~RKComponentPropertyBase() override;
/** supplies the current value. Since more than one value may be supplied, modifier can be used to select a value. Default implementation only has a single string, however. Reimplemented from RKComponentBase */
QVariant value(const QString &modifier = QString()) override;
/** set the value in string form.
@@ -66,7 +66,7 @@ class RKComponentPropertyBase : public QObject, public RKComponentBase {
class RKComponentPropertyAbstractList : public RKComponentPropertyBase {
public:
RKComponentPropertyAbstractList(QObject *parent, bool required);
- virtual ~RKComponentPropertyAbstractList();
+ ~RKComponentPropertyAbstractList() override;
/** how many items can this property hold? Use default values (0) to remove constraints
@param min_num_items Minimum number of items for this property to be valid
@param min_num_items_if_any Some properties may be valid, if they hold either no items at all, or at least a certain number of items
@@ -101,7 +101,7 @@ class RKComponentPropertyStringList : public RKComponentPropertyAbstractList {
public:
RKComponentPropertyStringList(QObject *parent, bool required);
/** destructor */
- ~RKComponentPropertyStringList();
+ ~RKComponentPropertyStringList() override;
/** for RTTI. see RKComponentBase::RKComponentTypes */
int type() override { return PropertyStringList; };
/** reimplemented to return all current strings */
@@ -143,7 +143,7 @@ class RKComponentPropertyBool : public RKComponentPropertyBase {
@param default_state value to use, if invalid string value was set */
RKComponentPropertyBool(QObject *parent, bool required, bool default_state = true, const QString &value_true = QStringLiteral("true"), const QString &value_false = QStringLiteral("false"));
/** destructor */
- ~RKComponentPropertyBool();
+ ~RKComponentPropertyBool() override;
/** Set this property to the inverted, i.e. true if set to false and vice-versa. Used for the "not" sub-property. */
void setInverted(bool invert) { inverted = invert; };
/** sets the bool value. Also takes care of notifying dependent components */
@@ -186,7 +186,7 @@ class RKComponentPropertyInt : public RKComponentPropertyBase {
@param default_value value to use, if invalid string value was set */
RKComponentPropertyInt(QObject *parent, bool required, int default_value);
/** destructor */
- ~RKComponentPropertyInt();
+ ~RKComponentPropertyInt() override;
/** sets the int value. Also takes care of notifying dependent components */
bool setIntValue(int new_value);
/** set lower boundary. Default parameter will effectively remove the boundary. You should call this *before* connecting to any other properties, so limits can be reconciled */
@@ -234,7 +234,7 @@ class RKComponentPropertyDouble : public RKComponentPropertyBase {
@param default_value value to use, if invalid string value was set */
RKComponentPropertyDouble(QObject *parent, bool required, double default_value);
/** destructor */
- ~RKComponentPropertyDouble();
+ ~RKComponentPropertyDouble() override;
/** sets the int value. Also takes care of notifying dependent components */
bool setDoubleValue(double new_value);
/** reimplemented from RKComponentPropertyBase to convert to int value according to current settings */
@@ -292,7 +292,7 @@ class RKComponentPropertyRObjects : public RKComponentPropertyAbstractList, publ
/** constructor */
RKComponentPropertyRObjects(QObject *parent, bool required);
/** destructor */
- ~RKComponentPropertyRObjects();
+ ~RKComponentPropertyRObjects() override;
/** add an object value */
bool addObjectValue(RObject *object);
/** Set property to only accept certain classes. If you provide an empty list, all classes will be accepted*/
@@ -375,7 +375,7 @@ class RKComponentPropertyCode : public RKComponentPropertyBase {
/** constructor */
RKComponentPropertyCode(QObject *parent, bool required);
/** destructor */
- ~RKComponentPropertyCode();
+ ~RKComponentPropertyCode() override;
/** the preprocess code */
QString preprocess() { return preprocess_code; };
/** the calculate code */
@@ -430,7 +430,7 @@ class RKComponentPropertyConvert : public RKComponentPropertyBool {
public:
/** constructor. Note that this property *requires* an RKComponent as parent (the one at the top of all the source properties) */
explicit RKComponentPropertyConvert(RKComponent *parent);
- ~RKComponentPropertyConvert();
+ ~RKComponentPropertyConvert() override;
int type() override { return PropertyConvert; };
/** Mode of operation. see setMode () */
@@ -489,7 +489,7 @@ class RKComponentPropertySwitch : public RKComponentPropertyBase {
@param standards the values to match against. Note: Providing an empty list make the switch operate in boolean mode,
switching between the first two sources / values, based on the boolean value of the condition_prop. */
RKComponentPropertySwitch(RKComponent *parent, const QStringList &def_values, const QStringList &standards);
- ~RKComponentPropertySwitch();
+ ~RKComponentPropertySwitch() override;
/** set the sources, i.e. the properties to operate on */
void setSources(const QString &condition_prop, const QStringList &value_props);
diff --git a/rkward/plugin/rkdropdown.h b/rkward/plugin/rkdropdown.h
index 7be229564..ea22621dc 100644
--- a/rkward/plugin/rkdropdown.h
+++ b/rkward/plugin/rkdropdown.h
@@ -21,7 +21,7 @@ class RKDropDown : public RKAbstractOptionSelector {
Q_OBJECT
public:
RKDropDown(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKDropDown();
+ ~RKDropDown() override;
int type() override { return ComponentDropDown; };
public Q_SLOTS:
// workaround for a qt bug (3.3.7)
diff --git a/rkward/plugin/rkformula.h b/rkward/plugin/rkformula.h
index edb517906..67980ea8c 100644
--- a/rkward/plugin/rkformula.h
+++ b/rkward/plugin/rkformula.h
@@ -28,7 +28,7 @@ class RKFormula : public RKComponent {
Q_OBJECT
public:
RKFormula(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKFormula();
+ ~RKFormula() override;
QVariant value(const QString &modifier = QString()) override { return model->value(modifier); };
QStringList getUiLabelPair() const override;
diff --git a/rkward/plugin/rkinput.h b/rkward/plugin/rkinput.h
index c5d78e796..e94b9b3c5 100644
--- a/rkward/plugin/rkinput.h
+++ b/rkward/plugin/rkinput.h
@@ -24,7 +24,7 @@ class RKInput : public RKComponent {
Q_OBJECT
public:
RKInput(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKInput();
+ ~RKInput() override;
RKComponentPropertyBase *text;
QVariant value(const QString &modifier = QString()) override { return (text->value(modifier)); };
diff --git a/rkward/plugin/rkmatrixinput.h b/rkward/plugin/rkmatrixinput.h
index 0e703522c..71e04ae30 100644
--- a/rkward/plugin/rkmatrixinput.h
+++ b/rkward/plugin/rkmatrixinput.h
@@ -25,7 +25,7 @@ class RKMatrixInput : public RKComponent {
Q_OBJECT
public:
RKMatrixInput(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKMatrixInput();
+ ~RKMatrixInput() override;
int type() override { return ComponentMatrixInput; };
bool isValid() override { return is_valid; };
QVariant value(const QString &modifier = QString()) override;
diff --git a/rkward/plugin/rkoptionset.h b/rkward/plugin/rkoptionset.h
index be1725ec1..d13cdcd88 100644
--- a/rkward/plugin/rkoptionset.h
+++ b/rkward/plugin/rkoptionset.h
@@ -29,7 +29,7 @@ class RKOptionSet : public RKComponent {
Q_OBJECT
public:
RKOptionSet(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKOptionSet();
+ ~RKOptionSet() override;
int type() override { return ComponentOptionSet; };
bool isValid() override;
/** reimplemented from RKComponent */
diff --git a/rkward/plugin/rkpluginbrowser.h b/rkward/plugin/rkpluginbrowser.h
index 5c3d44e80..06129efee 100644
--- a/rkward/plugin/rkpluginbrowser.h
+++ b/rkward/plugin/rkpluginbrowser.h
@@ -30,7 +30,7 @@ class RKPluginBrowser : public RKComponent {
Q_OBJECT
public:
RKPluginBrowser(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKPluginBrowser();
+ ~RKPluginBrowser() override;
RKComponentPropertyBase *selection;
QVariant value(const QString &modifier = QString()) override { return (selection->value(modifier)); };
diff --git a/rkward/plugin/rkpluginframe.h b/rkward/plugin/rkpluginframe.h
index 21dc6ba26..9584e3175 100644
--- a/rkward/plugin/rkpluginframe.h
+++ b/rkward/plugin/rkpluginframe.h
@@ -22,7 +22,7 @@ class RKPluginFrame : public RKComponent {
Q_OBJECT
public:
RKPluginFrame(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKPluginFrame();
+ ~RKPluginFrame() override;
/** returns the page child elements should be drawn in */
QWidget *getPage();
diff --git a/rkward/plugin/rkpluginsaveobject.h b/rkward/plugin/rkpluginsaveobject.h
index 5053a17b0..eddfc91ca 100644
--- a/rkward/plugin/rkpluginsaveobject.h
+++ b/rkward/plugin/rkpluginsaveobject.h
@@ -25,7 +25,7 @@ class RKPluginSaveObject : public RKComponent {
Q_OBJECT
public:
RKPluginSaveObject(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKPluginSaveObject();
+ ~RKPluginSaveObject() override;
QVariant value(const QString &modifier = QString()) override;
QStringList getUiLabelPair() const override;
diff --git a/rkward/plugin/rkpluginspinbox.h b/rkward/plugin/rkpluginspinbox.h
index 6269aca38..b9d11d0e5 100644
--- a/rkward/plugin/rkpluginspinbox.h
+++ b/rkward/plugin/rkpluginspinbox.h
@@ -23,8 +23,8 @@ class RKPluginSpinBox : public RKComponent {
Q_OBJECT
public:
RKPluginSpinBox(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
+ ~RKPluginSpinBox() override;
- ~RKPluginSpinBox();
QVariant value(const QString &modifier = QString()) override;
QStringList getUiLabelPair() const override;
int type() override { return ComponentSpinBox; };
diff --git a/rkward/plugin/rkpreviewbox.h b/rkward/plugin/rkpreviewbox.h
index 83d8245f4..7717570ef 100644
--- a/rkward/plugin/rkpreviewbox.h
+++ b/rkward/plugin/rkpreviewbox.h
@@ -27,7 +27,7 @@ class RKPreviewBox : public RKComponent {
Q_OBJECT
public:
RKPreviewBox(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKPreviewBox();
+ ~RKPreviewBox() override;
int type() override { return ComponentPreviewBox; };
RKComponentPropertyBool *state;
QVariant value(const QString &modifier = QString()) override;
diff --git a/rkward/plugin/rkradio.h b/rkward/plugin/rkradio.h
index 8e3ed4562..6992b9504 100644
--- a/rkward/plugin/rkradio.h
+++ b/rkward/plugin/rkradio.h
@@ -19,7 +19,7 @@ class RKRadio : public RKAbstractOptionSelector {
Q_OBJECT
public:
RKRadio(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKRadio();
+ ~RKRadio() override;
int type() override { return ComponentRadio; };
protected:
diff --git a/rkward/plugin/rkstandardcomponent.h b/rkward/plugin/rkstandardcomponent.h
index f4ee31f50..c12f51d2b 100644
--- a/rkward/plugin/rkstandardcomponent.h
+++ b/rkward/plugin/rkstandardcomponent.h
@@ -35,7 +35,7 @@ class RKStandardComponent : public RKComponent {
@param filename Filename of the XML-file to construct this component from */
RKStandardComponent(RKComponent *parent_component, QWidget *parent_widget, const QString &filename, const QString &id);
/** destructor */
- ~RKStandardComponent();
+ ~RKStandardComponent() override;
/** reimplemented to update code on changes*/
void changed() override;
/** reimplemented to return true, if the RKStandardComponent is in Wizard mode */
diff --git a/rkward/plugin/rkstandardcomponentgui.h b/rkward/plugin/rkstandardcomponentgui.h
index dd23c3495..ca61f2c17 100644
--- a/rkward/plugin/rkstandardcomponentgui.h
+++ b/rkward/plugin/rkstandardcomponentgui.h
@@ -20,7 +20,7 @@ class RKStandardComponentStack : public QStackedWidget {
public:
/** constructor. */
explicit RKStandardComponentStack(QWidget *parent);
- ~RKStandardComponentStack();
+ ~RKStandardComponentStack() override;
/** see RKStandardComponent::havePage () */
bool havePage(bool next);
/** see RKStandardComponent::movePage () */
@@ -67,7 +67,7 @@ class RKStandardComponentGUI : public QWidget {
Q_OBJECT
public:
RKStandardComponentGUI(RKStandardComponent *component, RKComponentPropertyCode *code_property, bool enslaved);
- ~RKStandardComponentGUI();
+ ~RKStandardComponentGUI() override;
QWidget *mainWidget() { return main_widget; };
diff --git a/rkward/plugin/rktabpage.h b/rkward/plugin/rktabpage.h
index bc3213ea4..55a217f08 100644
--- a/rkward/plugin/rktabpage.h
+++ b/rkward/plugin/rktabpage.h
@@ -23,8 +23,7 @@ class RKTabPage : public RKComponent {
Q_OBJECT
public:
RKTabPage(const QDomElement &element, RKComponent *parent_component, QTabWidget *parent_widget);
-
- ~RKTabPage();
+ ~RKTabPage() override;
/** @returns the page child elements should be drawn in */
QWidget *getPage() { return this; };
diff --git a/rkward/plugin/rktext.h b/rkward/plugin/rktext.h
index 85094e752..bd0dfac18 100644
--- a/rkward/plugin/rktext.h
+++ b/rkward/plugin/rktext.h
@@ -22,8 +22,7 @@ class RKText : public RKComponent {
Q_OBJECT
public:
RKText(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
-
- ~RKText();
+ ~RKText() override;
RKComponentPropertyBase *text;
QVariant value(const QString &modifier = QString()) override { return (text->value(modifier)); };
diff --git a/rkward/plugin/rkvalueselector.h b/rkward/plugin/rkvalueselector.h
index 8631dfa12..ace3c33af 100644
--- a/rkward/plugin/rkvalueselector.h
+++ b/rkward/plugin/rkvalueselector.h
@@ -23,7 +23,7 @@ class RKValueSelector : public RKComponent {
Q_OBJECT
public:
RKValueSelector(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKValueSelector();
+ ~RKValueSelector() override;
int type() override { return ComponentValueSelector; };
QVariant value(const QString &modifier = QString()) override;
QStringList getUiLabelPair() const override;
diff --git a/rkward/plugin/rkvarselector.h b/rkward/plugin/rkvarselector.h
index c9b638dec..a369f8c83 100644
--- a/rkward/plugin/rkvarselector.h
+++ b/rkward/plugin/rkvarselector.h
@@ -29,7 +29,7 @@ class RKVarSelector : public RKComponent {
Q_OBJECT
public:
RKVarSelector(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKVarSelector();
+ ~RKVarSelector() override;
int type() override { return ComponentVarSelector; };
private Q_SLOTS:
void objectSelectionChanged();
diff --git a/rkward/plugin/rkvarslot.h b/rkward/plugin/rkvarslot.h
index 7ab57a46d..ae49197c2 100644
--- a/rkward/plugin/rkvarslot.h
+++ b/rkward/plugin/rkvarslot.h
@@ -29,7 +29,7 @@ class RKVarSlot : public RKComponent {
Q_OBJECT
public:
RKVarSlot(const QDomElement &element, RKComponent *parent_component, QWidget *parent_widget);
- ~RKVarSlot();
+ ~RKVarSlot() override;
int type() override { return ComponentVarSlot; };
QVariant value(const QString &modifier = QString()) override { return (available->value(modifier)); };
QStringList getUiLabelPair() const override;
diff --git a/rkward/rbackend/rkbackendtransmitter.h b/rkward/rbackend/rkbackendtransmitter.h
index 0aeb34899..a06c1b37c 100644
--- a/rkward/rbackend/rkbackendtransmitter.h
+++ b/rkward/rbackend/rkbackendtransmitter.h
@@ -16,7 +16,7 @@ class RKRBackendTransmitter : public RKAbstractTransmitter {
Q_OBJECT
public:
RKRBackendTransmitter(const QString &servername, const QString &token);
- ~RKRBackendTransmitter();
+ ~RKRBackendTransmitter() override;
void publicmsleep(int delay) { msleep(delay); };
diff --git a/rkward/rbackend/rkfrontendtransmitter.h b/rkward/rbackend/rkfrontendtransmitter.h
index b73f1f84f..9edd2ccf0 100644
--- a/rkward/rbackend/rkfrontendtransmitter.h
+++ b/rkward/rbackend/rkfrontendtransmitter.h
@@ -20,7 +20,7 @@ class RKFrontendTransmitter : public RKAbstractTransmitter, public RKROutputBuff
Q_OBJECT
public:
RKFrontendTransmitter(RKRBackendProtocolFrontend *frontend);
- ~RKFrontendTransmitter();
+ ~RKFrontendTransmitter() override;
void run() override;
diff --git a/rkward/rbackend/rkrbackendprotocol_shared.cpp b/rkward/rbackend/rkrbackendprotocol_shared.cpp
index a9dc26647..c8ffc1855 100644
--- a/rkward/rbackend/rkrbackendprotocol_shared.cpp
+++ b/rkward/rbackend/rkrbackendprotocol_shared.cpp
@@ -17,6 +17,7 @@ RCommandProxy::RCommandProxy(const QString &command, int type) : outer_command(n
id = -1;
status = 0;
interruptible_stage = false;
+ has_been_run_up_to = 0;
}
RCommandProxy::~RCommandProxy() {
diff --git a/rkward/rbackend/rkwarddevice/rkgraphicsdevice_backendtransmitter.h b/rkward/rbackend/rkwarddevice/rkgraphicsdevice_backendtransmitter.h
index cb494fb44..d5dbac2b7 100644
--- a/rkward/rbackend/rkwarddevice/rkgraphicsdevice_backendtransmitter.h
+++ b/rkward/rbackend/rkwarddevice/rkgraphicsdevice_backendtransmitter.h
@@ -20,7 +20,7 @@ class QLocalSocket;
Also it provides the namespace for some statics.
As the protocol is really quite simple (only the backend send requests, only one request at a time), so is the transmitter. */
class RKGraphicsDeviceBackendTransmitter : public QThread {
- ~RKGraphicsDeviceBackendTransmitter();
+ ~RKGraphicsDeviceBackendTransmitter() override;
public:
static void kill();
diff --git a/rkward/rbackend/rkwarddevice/rkgraphicsdevice_frontendtransmitter.h b/rkward/rbackend/rkwarddevice/rkgraphicsdevice_frontendtransmitter.h
index 224961b1c..47276be12 100644
--- a/rkward/rbackend/rkwarddevice/rkgraphicsdevice_frontendtransmitter.h
+++ b/rkward/rbackend/rkwarddevice/rkgraphicsdevice_frontendtransmitter.h
@@ -21,7 +21,7 @@ class RKGraphicsDeviceFrontendTransmitter : public QObject {
Q_OBJECT
public:
RKGraphicsDeviceFrontendTransmitter();
- ~RKGraphicsDeviceFrontendTransmitter();
+ ~RKGraphicsDeviceFrontendTransmitter() override;
QString serverName() const { return server_name; };
static double lwdscale;
static void suppressShowingCreatedWindows(bool suppress) { suppress_windows = suppress; };
diff --git a/rkward/rkconsole.cpp b/rkward/rkconsole.cpp
index 9134e5e21..d6e00db59 100644
--- a/rkward/rkconsole.cpp
+++ b/rkward/rkconsole.cpp
@@ -703,7 +703,7 @@ void RKConsole::userSaveHistory(const QUrl &_url) {
}
QTemporaryFile tempfile;
- tempfile.open();
+ RK_ASSERT(tempfile.open());
tempfile.write(QString(commandHistory().join(QStringLiteral("\n")) + u'\n').toLocal8Bit().data());
tempfile.close();
diff --git a/rkward/rkconsole.h b/rkward/rkconsole.h
index f3e55bcbf..bbc2188a9 100644
--- a/rkward/rkconsole.h
+++ b/rkward/rkconsole.h
@@ -41,7 +41,7 @@ class RKConsole : public RKMDIWindow, public RKScriptContextProvider {
/** Constructor. */
RKConsole(QWidget *parent, bool tool_window, const char *name = nullptr);
/** Destructor */
- ~RKConsole();
+ ~RKConsole() override;
/** Returns the command currently being edited (not executed yet) */
QString currentEditingLine() const;
diff --git a/rkward/robjectviewer.h b/rkward/robjectviewer.h
index 7f1075cfe..154ea3bf7 100644
--- a/rkward/robjectviewer.h
+++ b/rkward/robjectviewer.h
@@ -29,7 +29,7 @@ A simple object viewer. You pass it an object in the constructor. It will extrac
class RObjectViewer : public RKMDIWindow, public RObjectListener {
Q_OBJECT
public:
- ~RObjectViewer();
+ ~RObjectViewer() override;
RObject *object() { return _object; };
@@ -69,7 +69,7 @@ class RObjectViewerWidget : public QWidget {
Q_OBJECT
protected:
RObjectViewerWidget(QWidget *parent, RObject *object);
- virtual ~RObjectViewerWidget();
+ ~RObjectViewerWidget() override;
public:
void objectKilled() { _object = nullptr; };
@@ -97,7 +97,6 @@ class RObjectViewerWidget : public QWidget {
class RObjectSummaryWidget : public RObjectViewerWidget {
public:
RObjectSummaryWidget(QWidget *parent, RObject *object) : RObjectViewerWidget(parent, object) {};
- ~RObjectSummaryWidget() {};
/** reimplemented from RObjectViewerWidget to call "summary" */
RCommand *makeCommand() override;
@@ -107,7 +106,6 @@ class RObjectSummaryWidget : public RObjectViewerWidget {
class RObjectPrintWidget : public RObjectViewerWidget {
public:
RObjectPrintWidget(QWidget *parent, RObject *object) : RObjectViewerWidget(parent, object) {}
- ~RObjectPrintWidget() {};
/** reimplemented from RObjectViewerWidget to call "print" */
RCommand *makeCommand() override;
@@ -117,7 +115,6 @@ class RObjectPrintWidget : public RObjectViewerWidget {
class RObjectStructureWidget : public RObjectViewerWidget {
public:
RObjectStructureWidget(QWidget *parent, RObject *object) : RObjectViewerWidget(parent, object) {};
- ~RObjectStructureWidget() {};
/** reimplemented from RObjectViewerWidget to call "str" */
RCommand *makeCommand() override;
diff --git a/rkward/windows/katepluginintegration.cpp b/rkward/windows/katepluginintegration.cpp
index 8a2a2d9a8..838d08399 100644
--- a/rkward/windows/katepluginintegration.cpp
+++ b/rkward/windows/katepluginintegration.cpp
@@ -49,7 +49,7 @@ class KatePluginWindow : public RKMDIWindow {
initializeActivationSignals();
setFocusPolicy(Qt::ClickFocus);
}
- ~KatePluginWindow() {
+ ~KatePluginWindow() override {
RK_TRACE(APP);
}
diff --git a/rkward/windows/rcontrolwindow.h b/rkward/windows/rcontrolwindow.h
index 38a93d8ee..bfd41e057 100644
--- a/rkward/windows/rcontrolwindow.h
+++ b/rkward/windows/rcontrolwindow.h
@@ -33,7 +33,7 @@ class RControlWindow : public RKMDIWindow {
@param parent parent QWidget, usually RKGlobals::rkApp () or similar */
RControlWindow(QWidget *parent, bool tool_window, const char *name = nullptr);
/** destructor */
- ~RControlWindow();
+ ~RControlWindow() override;
/** reimplemented to start listening to the RCommandStackModel when showing. */
void showEvent(QShowEvent *e) override;
diff --git a/rkward/windows/rkcallstackviewer.h b/rkward/windows/rkcallstackviewer.h
index 54c91a24d..44504e09b 100644
--- a/rkward/windows/rkcallstackviewer.h
+++ b/rkward/windows/rkcallstackviewer.h
@@ -20,7 +20,7 @@ class RKCallstackViewer : public RKMDIWindow {
Q_OBJECT
public:
RKCallstackViewer(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKCallstackViewer();
+ ~RKCallstackViewer() override;
/** reimplemented to create the real widget only when the viewer is shown for the first time */
void showEvent(QShowEvent *e) override;
diff --git a/rkward/windows/rkcommandlog.h b/rkward/windows/rkcommandlog.h
index 235abd8d7..825170079 100644
--- a/rkward/windows/rkcommandlog.h
+++ b/rkward/windows/rkcommandlog.h
@@ -41,7 +41,7 @@ class RKCommandLog : public RKMDIWindow {
/** Command has finished. If the command has failed, it may be necessary to print some more information */
void rCommandDone(RCommand *command);
RKCommandLog(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKCommandLog();
+ ~RKCommandLog() override;
public Q_SLOTS:
/** configures the log_view-window */
void configureLog();
diff --git a/rkward/windows/rkdebugconsole.h b/rkward/windows/rkdebugconsole.h
index fab8a2b4d..163069da4 100644
--- a/rkward/windows/rkdebugconsole.h
+++ b/rkward/windows/rkdebugconsole.h
@@ -20,7 +20,7 @@ class RKDebugConsole : public RKMDIWindow {
Q_OBJECT
public:
RKDebugConsole(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKDebugConsole();
+ ~RKDebugConsole() override;
static RKDebugConsole *instance() { return _instance; };
diff --git a/rkward/windows/rkdebugmessagewindow.h b/rkward/windows/rkdebugmessagewindow.h
index 060bba33f..84ca17cae 100644
--- a/rkward/windows/rkdebugmessagewindow.h
+++ b/rkward/windows/rkdebugmessagewindow.h
@@ -18,7 +18,7 @@ class QTextEdit;
class RKDebugMessageWindow : public RKMDIWindow {
public:
RKDebugMessageWindow(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKDebugMessageWindow();
+ ~RKDebugMessageWindow() override;
/** reimplemented to create the real widget only when the viewer is shown */
void showEvent(QShowEvent *e) override;
diff --git a/rkward/windows/rkfilebrowser.cpp b/rkward/windows/rkfilebrowser.cpp
index d369cee8b..6ac8f4472 100644
--- a/rkward/windows/rkfilebrowser.cpp
+++ b/rkward/windows/rkfilebrowser.cpp
@@ -100,7 +100,6 @@ RKFileBrowserWidget::RKFileBrowserWidget(QWidget *parent) : QWidget(parent) {
layout->addWidget(urlbox);
dir = new KDirOperator(QUrl(), this);
- dir->setPreviewWidget(nullptr);
KConfigGroup config = KSharedConfig::openConfig()->group(QStringLiteral("file browser window"));
dir->readConfig(config);
dir->setViewMode(KFile::Tree);
diff --git a/rkward/windows/rkfilebrowser.h b/rkward/windows/rkfilebrowser.h
index c86ddb4a5..71152ad29 100644
--- a/rkward/windows/rkfilebrowser.h
+++ b/rkward/windows/rkfilebrowser.h
@@ -26,7 +26,7 @@ class RKFileBrowser : public RKMDIWindow {
Q_OBJECT
public:
RKFileBrowser(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKFileBrowser();
+ ~RKFileBrowser() override;
/** reimplemented to create the real file browser widget only when the file browser is shown for the first time */
void showEvent(QShowEvent *e) override;
diff --git a/rkward/windows/rkhelpsearchwindow.h b/rkward/windows/rkhelpsearchwindow.h
index 82a0be219..68934122b 100644
--- a/rkward/windows/rkhelpsearchwindow.h
+++ b/rkward/windows/rkhelpsearchwindow.h
@@ -29,7 +29,7 @@ class RKHelpSearchWindow : public RKMDIWindow {
Q_OBJECT
public:
RKHelpSearchWindow(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RKHelpSearchWindow();
+ ~RKHelpSearchWindow() override;
/** small convenience function to get context help for RKCommandEditorWindow and RKConsole.
@param context_line The current line
@param cursor_pos cursor position in the current line
diff --git a/rkward/windows/rkhtmlwindow.cpp b/rkward/windows/rkhtmlwindow.cpp
index 2b70ea293..ff99418cf 100644
--- a/rkward/windows/rkhtmlwindow.cpp
+++ b/rkward/windows/rkhtmlwindow.cpp
@@ -594,7 +594,7 @@ bool RKHTMLWindow::openURL(const QUrl &url) {
if (!mtype.inherits(QStringLiteral("text/html"))) {
RK_DEBUG(APP, DL_WARNING, "Applying workaround for https://bugs.kde.org/show_bug.cgi?id=405386");
QFile f(url.toLocalFile());
- f.open(QIODevice::ReadOnly);
+ RK_ASSERT(f.open(QIODevice::ReadOnly));
page->setHtmlWrapper(QString::fromUtf8(f.readAll()), url.adjusted(QUrl::RemoveFilename));
f.close();
} else {
@@ -826,7 +826,7 @@ void RKHTMLWindow::useMode(WindowMode new_mode) {
void RKHTMLWindow::startNewCacheFile() {
delete current_cache_file;
current_cache_file = new QTemporaryFile(QDir::tempPath() + u"/rkward_XXXXXX.html"_s);
- current_cache_file->open();
+ RK_ASSERT(current_cache_file->open());
}
void RKHTMLWindow::fileDoesNotExistMessage() {
diff --git a/rkward/windows/rkhtmlwindow.h b/rkward/windows/rkhtmlwindow.h
index 03ff03578..54ca96951 100644
--- a/rkward/windows/rkhtmlwindow.h
+++ b/rkward/windows/rkhtmlwindow.h
@@ -56,7 +56,7 @@ class RKHTMLWindow : public RKMDIWindow {
@param parent parent QWidget, usually RKGlobals::rkApp () or similar */
explicit RKHTMLWindow(QWidget *parent, WindowMode mode = HTMLHelpWindow);
/** destructor */
- ~RKHTMLWindow();
+ ~RKHTMLWindow() override;
/** open given URL. Returns false, if the URL is not an existing local file. Loading a non-local URL may succeed, even if this returns false! */
bool openURL(const QUrl &url);
/** Show the given content, assuming HTML mimetype. */
diff --git a/rkward/windows/robjectbrowser.h b/rkward/windows/robjectbrowser.h
index 497974910..ab01c7017 100644
--- a/rkward/windows/robjectbrowser.h
+++ b/rkward/windows/robjectbrowser.h
@@ -30,7 +30,7 @@ Note: Most actual functionality is realized in RObjectBrowserInternal, which is
class RObjectBrowser : public RKMDIWindow {
public:
RObjectBrowser(QWidget *parent, bool tool_window, const char *name = nullptr);
- ~RObjectBrowser();
+ ~RObjectBrowser() override;
void unlock();
static RObjectBrowser *mainBrowser() { return object_browser; };
/** reimplemented to create the real file browser widget only when the file browser is shown for the first time */
@@ -55,7 +55,7 @@ class RObjectBrowserInternal : public QWidget, public RKScriptContextProvider {
Q_OBJECT
public:
explicit RObjectBrowserInternal(QWidget *parent, RObjectBrowser *browser);
- ~RObjectBrowserInternal();
+ ~RObjectBrowserInternal() override;
private Q_SLOTS:
void updateButtonClicked();
void contextMenuCallback(RObject *object, bool *suppress);
More information about the rkward-tracker
mailing list